





"""simple docstring"""
def      __lowerCamelCase   (							a_     :		int = 50_00_00_00							)			->      int:
      __SCREAMING_SNAKE_CASE   :Optional[int]						=  set()
      __SCREAMING_SNAKE_CASE   :Optional[int]						=  int((limit - 24) ** (1 / 2)							)

      __SCREAMING_SNAKE_CASE   :Optional[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 ,   a_							)							)							)

      for primea in primes:
            __SCREAMING_SNAKE_CASE   :List[Any]						=  primea * primea
            for primea in primes:
                  __SCREAMING_SNAKE_CASE   :Dict						=  primea * primea * primea
                  if square + cube >= limit - 16:
                        break
                  for primea in primes:
                        __SCREAMING_SNAKE_CASE   :Tuple						=  primea * primea * primea * primea
                        __SCREAMING_SNAKE_CASE   :Optional[int]						=  square + cube + tetr
                        if total >= limit:
                              break
                        ret.add(a_							)

      return len(a_							)


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






"""simple docstring"""
def      __lowerCamelCase   (							a_     :		list							)			->      list:

      if len(a_							) < 2:
            return collection

      def circle_sort_util(a_     :		list ,   a_     :		int ,   a_     :		int							) -> bool:
            __SCREAMING_SNAKE_CASE   :int						=  False

            if low == high:
                  return swapped

            __SCREAMING_SNAKE_CASE   :int						=  low
            __SCREAMING_SNAKE_CASE   :Tuple						=  high

            while left < right:
                  if collection[left] > collection[right]:
                        __SCREAMING_SNAKE_CASE				,__SCREAMING_SNAKE_CASE   :str						=  (
                            collection[right],
                            collection[left],
                        )
                        __SCREAMING_SNAKE_CASE   :Optional[int]						=  True

                  left += 1
                  right -= 1

            if left == right and collection[left] > collection[right + 1]:
                  __SCREAMING_SNAKE_CASE				,__SCREAMING_SNAKE_CASE   :Tuple						=  (
                      collection[right + 1],
                      collection[left],
                  )

                  __SCREAMING_SNAKE_CASE   :Tuple						=  True

            __SCREAMING_SNAKE_CASE   :int						=  low + int((high - low) / 2							)
            __SCREAMING_SNAKE_CASE   :int						=  circle_sort_util(a_ ,   a_ ,   a_							)
            __SCREAMING_SNAKE_CASE   :Union[str, Any]						=  circle_sort_util(a_ ,   mid + 1 ,   a_							)

            return swapped or left_swap or right_swap

      __SCREAMING_SNAKE_CASE   :Optional[Any]						=  True

      while is_not_sorted is True:
            __SCREAMING_SNAKE_CASE   :Tuple						=  circle_sort_util(a_ ,   0 ,   len(a_							) - 1							)

      return collection


if __name__ == "__main__":
  lowerCamelCase_								=		input("Enter numbers separated by a comma:\n").strip()
  lowerCamelCase_								=		[int(item) for item in user_input.split(",")]
  print(circle_sort(unsorted))