






"""simple docstring"""

from __future__ import annotations

from bisect import bisect_left
from functools import total_ordering
from heapq import merge

@total_ordering
class 						A_							(      snake_case_  ):







				def __lt__(							self							:						Any						,    __lowerCamelCase							:						Any	)				->					int:
										return self[-1] < other[-1]







				def __eq__(							self							:						int						,    __lowerCamelCase							:						List[Any]	)				->					Dict:
										return self[-1] == other[-1]






def _lowerCAmelCase	(  __lowerCamelCase:list   ):

						'''simple docstring'''






						__magic_name__     :   List[Any]            =     []
						# sort into stacks
						for element in collection:
												__magic_name__     :   Union[str, Any]            =     Stack([element]   )
												__magic_name__     :   str            =     bisect_left(__lowerCamelCase ,						__lowerCamelCase   )
												if i != len(__lowerCamelCase   ):
																		stacks[i].append(__lowerCamelCase   )
												else:
																		stacks.append(__lowerCamelCase   )

    # use a heap-based merge to merge stack efficiently
						__magic_name__     :   List[str]            =     merge(*(reversed(__lowerCamelCase   ) for stack in stacks)   )
						return collection


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











"""simple docstring"""

def _lowerCAmelCase	(  __lowerCamelCase:int   ):

						'''simple docstring'''






						__magic_name__            =     n ** (1 / 3)
						return (val * val * val) == n


if __name__ == "__main__":
			print(perfect_cube(27))
			print(perfect_cube(4))



