





from __future__ import annotations

import bisect




def _a (  SCREAMING_SNAKE_CASE__      :  list[int]			,				SCREAMING_SNAKE_CASE__      :  int			,				SCREAMING_SNAKE_CASE__      :  int = 0			,				SCREAMING_SNAKE_CASE__      :  int = -1       )	->    int:

							'''simple docstring'''






							if hi < 0:
														SCREAMING_SNAKE_CASE__       :      Optional[Any]     =						len(SCREAMING_SNAKE_CASE__       )

							while lo < hi:
														SCREAMING_SNAKE_CASE__       :      Optional[int]     =						lo + (hi - lo) // 2
														if sorted_collection[mid] < item:
																					SCREAMING_SNAKE_CASE__       :      int     =						mid + 1
														else:
																					SCREAMING_SNAKE_CASE__       :      Any     =						mid

							return lo




def _a (  SCREAMING_SNAKE_CASE__      :  list[int]			,				SCREAMING_SNAKE_CASE__      :  int			,				SCREAMING_SNAKE_CASE__      :  int = 0			,				SCREAMING_SNAKE_CASE__      :  int = -1       )	->    int:

							'''simple docstring'''






							if hi < 0:
														SCREAMING_SNAKE_CASE__       :      str     =						len(SCREAMING_SNAKE_CASE__       )

							while lo < hi:
														SCREAMING_SNAKE_CASE__       :      List[str]     =						lo + (hi - lo) // 2
														if sorted_collection[mid] <= item:
																					SCREAMING_SNAKE_CASE__       :      str     =						mid + 1
														else:
																					SCREAMING_SNAKE_CASE__       :      str     =						mid

							return lo




def _a (  SCREAMING_SNAKE_CASE__      :  list[int]			,				SCREAMING_SNAKE_CASE__      :  int			,				SCREAMING_SNAKE_CASE__      :  int = 0			,				SCREAMING_SNAKE_CASE__      :  int = -1       )	->    None:

							'''simple docstring'''






							sorted_collection.insert(bisect_left(SCREAMING_SNAKE_CASE__			,				SCREAMING_SNAKE_CASE__			,				SCREAMING_SNAKE_CASE__			,				SCREAMING_SNAKE_CASE__       )			,				SCREAMING_SNAKE_CASE__       )




def _a (  SCREAMING_SNAKE_CASE__      :  list[int]			,				SCREAMING_SNAKE_CASE__      :  int			,				SCREAMING_SNAKE_CASE__      :  int = 0			,				SCREAMING_SNAKE_CASE__      :  int = -1       )	->    None:

							'''simple docstring'''






							sorted_collection.insert(bisect_right(SCREAMING_SNAKE_CASE__			,				SCREAMING_SNAKE_CASE__			,				SCREAMING_SNAKE_CASE__			,				SCREAMING_SNAKE_CASE__       )			,				SCREAMING_SNAKE_CASE__       )




def _a (  SCREAMING_SNAKE_CASE__      :  list[int]			,				SCREAMING_SNAKE_CASE__      :  int       )	->    int | None:

							'''simple docstring'''






							SCREAMING_SNAKE_CASE__       :      List[Any]     =						0
							SCREAMING_SNAKE_CASE__       :      Any     =						len(SCREAMING_SNAKE_CASE__       ) - 1

							while left <= right:
														SCREAMING_SNAKE_CASE__       :      List[str]     =						left + (right - left) // 2
														SCREAMING_SNAKE_CASE__       :      List[Any]     =						sorted_collection[midpoint]
														if current_item == item:
																					return midpoint
														elif item < current_item:
																					SCREAMING_SNAKE_CASE__       :      Dict     =						midpoint - 1
														else:
																					SCREAMING_SNAKE_CASE__       :      Any     =						midpoint + 1
							return None




def _a (  SCREAMING_SNAKE_CASE__      :  list[int]			,				SCREAMING_SNAKE_CASE__      :  int       )	->    int | None:

							'''simple docstring'''






							SCREAMING_SNAKE_CASE__       :      Any     =						bisect.bisect_left(SCREAMING_SNAKE_CASE__			,				SCREAMING_SNAKE_CASE__       )
							if index != len(SCREAMING_SNAKE_CASE__       ) and sorted_collection[index] == item:
														return index
							return None




def _a (  SCREAMING_SNAKE_CASE__      :  list[int]			,				SCREAMING_SNAKE_CASE__      :  int			,				SCREAMING_SNAKE_CASE__      :  int			,				SCREAMING_SNAKE_CASE__      :  int       )	->    int | None:

							'''simple docstring'''






							if right < left:
														return None

							SCREAMING_SNAKE_CASE__       :      Optional[Any]     =						left + (right - left) // 2

							if sorted_collection[midpoint] == item:
														return midpoint
							elif sorted_collection[midpoint] > item:
														return binary_search_by_recursion(SCREAMING_SNAKE_CASE__			,				SCREAMING_SNAKE_CASE__			,				SCREAMING_SNAKE_CASE__			,				midpoint - 1       )
							else:
														return binary_search_by_recursion(SCREAMING_SNAKE_CASE__			,				SCREAMING_SNAKE_CASE__			,				midpoint + 1			,				SCREAMING_SNAKE_CASE__       )


if __name__ == "__main__":
		_lowerCamelCase :    List[str]  							= input('''Enter numbers separated by comma:\n''').strip()
		_lowerCamelCase :    Any  							= sorted(int(item) for item in user_input.split(''','''))
		_lowerCamelCase :    Optional[int]  							= int(input('''Enter a single number to be found in the list:\n'''))
		_lowerCamelCase :    Optional[Any]  							= binary_search(collection, target)
		if result is None:
				print(f"{target} was not found in {collection}.")
		else:
				print(f"{target} was found at position {result} in {collection}.")













def _a (  SCREAMING_SNAKE_CASE__      :  int = 50_00_00_00       )	->    int:

							'''simple docstring'''






							SCREAMING_SNAKE_CASE__       :      str     =						set()
							SCREAMING_SNAKE_CASE__       :      Dict     =						int((limit - 24) ** (1 / 2)       )

							SCREAMING_SNAKE_CASE__       :      Any     =						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			,				SCREAMING_SNAKE_CASE__       )       )       )

							for primea in primes:
														SCREAMING_SNAKE_CASE__       :      Optional[int]     =						primea * primea
														for primea in primes:
																					SCREAMING_SNAKE_CASE__       :      Union[str, Any]     =						primea * primea * primea
																					if square + cube >= limit - 16:
																												break
																					for primea in primes:
																												SCREAMING_SNAKE_CASE__       :      List[str]     =						primea * primea * primea * primea
																												SCREAMING_SNAKE_CASE__       :      Optional[int]     =						square + cube + tetr
																												if total >= limit:
																																			break
																												ret.add(SCREAMING_SNAKE_CASE__       )

							return len(SCREAMING_SNAKE_CASE__       )


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






