
'''simple docstring'''
def 		A_(     A						:		int = 5000_0000):
							UpperCamelCase   			=     set()
							UpperCamelCase   			=     int((limit - 24) ** (1 / 2))

							UpperCamelCase   			=     set(range(3		,     prime_square_limit + 1		,     2))
							primes.add(2)
							for p in range(3		,     prime_square_limit + 1		,     2):
														if p not in primes:
																					continue
														primes.difference_update(set(range(p * p		,     prime_square_limit + 1		,     A)))

							for primea in primes:
														UpperCamelCase   			=     primea * primea
														for primea in primes:
																					UpperCamelCase   			=     primea * primea * primea
																					if square + cube >= limit - 16:
																												break
																					for primea in primes:
																												UpperCamelCase   			=     primea * primea * primea * primea
																												UpperCamelCase   			=     square + cube + tetr
																												if total >= limit:
																																			break
																												ret.add(A)

							return len(A)


if __name__ == "__main__":
						print(f"""{solution() = }""")








"""simple docstring"""






def 				A_       ( snake_case__       ,					snake_case__ = " "		)					->  list:
			_UpperCamelCase					:List[str]					     =	[]

			_UpperCamelCase					:int					     =	0
			for index, char in enumerate(snake_case__		):
						if char == separator:
									split_words.append(string[last_index:index]		)
									_UpperCamelCase					:Dict					     =	index + 1
						elif index + 1 == len(snake_case__		):
									split_words.append(string[last_index : index + 1]		)
			return split_words


if __name__ == "__main__":
					from doctest import testmod

					testmod()

