



from __future__ import annotations



def  lowercase    (				SCREAMING_SNAKE_CASE__    :		int			,    SCREAMING_SNAKE_CASE__    :		int			,    SCREAMING_SNAKE_CASE__    :		int			)					->       tuple[float, float]:
 assert (
     c % greatest_common_divisor(SCREAMING_SNAKE_CASE__			,    SCREAMING_SNAKE_CASE__			) == 0
 )  # greatest_common_divisor(a,b) function implemented below
 ((_snake_case)		,      (_snake_case)		,      (_snake_case))      :					Dict					=   extended_gcd(SCREAMING_SNAKE_CASE__			,    SCREAMING_SNAKE_CASE__			)  # extended_gcd(a,b) function implemented below
 _snake_case      :					Optional[Any]					=   c / d
 return (r * x, r * y)



def  lowercase    (				SCREAMING_SNAKE_CASE__    :		int			,    SCREAMING_SNAKE_CASE__    :		int			,    SCREAMING_SNAKE_CASE__    :		int			,    SCREAMING_SNAKE_CASE__    :		int = 2			)					->       None:
 ((_snake_case)		,      (_snake_case))      :					Optional[int]					=   diophantine(SCREAMING_SNAKE_CASE__			,    SCREAMING_SNAKE_CASE__			,    SCREAMING_SNAKE_CASE__			)  # Initial value
 _snake_case      :					List[str]					=   greatest_common_divisor(SCREAMING_SNAKE_CASE__			,    SCREAMING_SNAKE_CASE__			)
 _snake_case      :					Any					=   a // d
 _snake_case      :					str					=   b // d

 for i in range(SCREAMING_SNAKE_CASE__			):
  _snake_case      :					Any					=   xa + i * q
  _snake_case      :					List[str]					=   ya - i * p
  print(SCREAMING_SNAKE_CASE__			,    SCREAMING_SNAKE_CASE__			)



def  lowercase    (				SCREAMING_SNAKE_CASE__    :		int			,    SCREAMING_SNAKE_CASE__    :		int			)					->       int:
 if a < b:
  _snake_case		,      _snake_case      :					List[str]					=   b, a

 while a % b != 0:
  _snake_case		,      _snake_case      :					str					=   b, a % b

 return b



def  lowercase    (				SCREAMING_SNAKE_CASE__    :		int			,    SCREAMING_SNAKE_CASE__    :		int			)					->       tuple[int, int, int]:
 assert a >= 0 and b >= 0

 if b == 0:
  _snake_case		,      _snake_case		,      _snake_case      :					int					=   a, 1, 0
 else:
  ((_snake_case)		,      (_snake_case)		,      (_snake_case))      :					Any					=   extended_gcd(SCREAMING_SNAKE_CASE__			,    a % b			)
  _snake_case      :					List[str]					=   q
  _snake_case      :					Dict					=   p - q * (a // b)

 assert a % d == 0 and b % d == 0
 assert d == a * x + b * y

 return (d, x, y)


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

  testmod(name="""diophantine""", verbose=True)
  testmod(name="""diophantine_all_soln""", verbose=True)
  testmod(name="""extended_gcd""", verbose=True)
  testmod(name="""greatest_common_divisor""", verbose=True)





def  lowercase    (				SCREAMING_SNAKE_CASE__    :		Any			)					->       Optional[int]:
 _snake_case      :					Any					=   [701, 301, 132, 57, 23, 10, 4, 1]
 for gap in gaps:
  for i in range(SCREAMING_SNAKE_CASE__			,    len(SCREAMING_SNAKE_CASE__			)			):
   _snake_case      :					List[Any]					=   collection[i]
   _snake_case      :					List[str]					=   i
   while j >= gap and collection[j - gap] > insert_value:
    _snake_case      :					int					=   collection[j - gap]
    j -= gap
   if j != i:
    _snake_case      :					Tuple					=   insert_value
 return collection


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

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