"""simple docstring"""







from __future__ import annotations

UpperCamelCase_    :    List[str]											=						"""Alexander Joslin"""


def 					a__ (						UpperCAmelCase__    :     int     )->		int:

						if number <= 0:
												UpperCAmelCase__   		=						f'n must be greater than 0. Got n = {number}'
												raise ValueError(UpperCAmelCase__     )

						UpperCAmelCase__   		=						[number + 1] * (number + 1)

						# starting position
						UpperCAmelCase__   		=						0
						for i in range(1						,     UpperCAmelCase__     ):
												UpperCAmelCase__   		=						min(table[i + 1]						,     table[i] + 1     )
												# check if out of bounds
												if i * 2 <= number:
																		UpperCAmelCase__   		=						min(table[i * 2]						,     table[i] + 1     )
												# check if out of bounds
												if i * 3 <= number:
																		UpperCAmelCase__   		=						min(table[i * 3]						,     table[i] + 1     )
						return table[number]


if __name__ == "__main__":
						import doctest

						doctest.testmod()


"""simple docstring"""







def 					a__ (						UpperCAmelCase__    :     List[Any]     )->		Dict:
						UpperCAmelCase__   		=						[7_0_1, 3_0_1, 1_3_2, 5_7, 2_3, 1_0, 4, 1]
						for gap in gaps:
												for i in range(UpperCAmelCase__						,     len(UpperCAmelCase__     )     ):
																		UpperCAmelCase__   		=						collection[i]
																		UpperCAmelCase__   		=						i
																		while j >= gap and collection[j - gap] > insert_value:
																								UpperCAmelCase__   		=						collection[j - gap]
																								j -= gap
																		if j != i:
																								UpperCAmelCase__   		=						insert_value
						return collection


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

						testmod()
						UpperCamelCase_    :    Union[str, Any]											=						input("""Enter numbers separated by a comma:\n""").strip()
						UpperCamelCase_    :    int											=						[int(item) for item in user_input.split(""",""")]
						print(shell_sort(unsorted))

