



import warnings
from collections.abc import Callable
from typing import Any

import numpy
from matplotlib import pyplot

a__      =		0.25 + 0.0J
a__      =		-0.4 + 0.6J
a__      =		-0.1 + 0.651J
a__      =		-2.0
a__      =		56
a__      =		2.0
a__      =		6_66



def  lowercase    (				SCREAMING_SNAKE_CASE__    :		complex			,    SCREAMING_SNAKE_CASE__    :		numpy.ndarray			)					->       numpy.ndarray:
 return numpy.exp(SCREAMING_SNAKE_CASE__			) + c_parameter



def  lowercase    (				SCREAMING_SNAKE_CASE__    :		complex			,    SCREAMING_SNAKE_CASE__    :		numpy.ndarray			)					->       numpy.ndarray:
 return z_values * z_values + c_parameter



def  lowercase    (				SCREAMING_SNAKE_CASE__    :		float			,    SCREAMING_SNAKE_CASE__    :		int			)					->       numpy.ndarray:
 _snake_case      :					str					=   numpy.linspace(-window_size			,    SCREAMING_SNAKE_CASE__			,    SCREAMING_SNAKE_CASE__			)
 _snake_case      :					Any					=   x.reshape((nb_pixels, 1)			)
 _snake_case      :					Tuple					=   numpy.linspace(-window_size			,    SCREAMING_SNAKE_CASE__			,    SCREAMING_SNAKE_CASE__			)
 _snake_case      :					List[Any]					=   y.reshape((1, nb_pixels)			)
 return x + 1.0j * y



def  lowercase    (				SCREAMING_SNAKE_CASE__    :		Callable[[Any, numpy.ndarray], numpy.ndarray]			,    SCREAMING_SNAKE_CASE__    :		Any			,    SCREAMING_SNAKE_CASE__    :		int			,    SCREAMING_SNAKE_CASE__    :		numpy.ndarray			,    SCREAMING_SNAKE_CASE__    :		float | None = None			,    )					->       numpy.ndarray:
 _snake_case      :					Optional[Any]					=   z_a.astype("""complex64"""			)
 for _ in range(SCREAMING_SNAKE_CASE__			):
  _snake_case      :					str					=   eval_function(SCREAMING_SNAKE_CASE__			,    SCREAMING_SNAKE_CASE__			)
  if infinity is not None:
   numpy.nan_to_num(SCREAMING_SNAKE_CASE__			,    copy=SCREAMING_SNAKE_CASE__			,    nan=SCREAMING_SNAKE_CASE__			)
   _snake_case      :					List[str]					=   infinity
 return z_n



def  lowercase    (				SCREAMING_SNAKE_CASE__    :		str			,    SCREAMING_SNAKE_CASE__    :		Any			,    SCREAMING_SNAKE_CASE__    :		float			,    SCREAMING_SNAKE_CASE__    :		numpy.ndarray			,    )					->       None:
 _snake_case      :					Optional[int]					=   (abs(SCREAMING_SNAKE_CASE__			)).transpose()
 _snake_case      :					Dict					=   abs_z_final[::-1, :]
 pyplot.matshow(abs_z_final < escape_radius			)
 pyplot.title(F'''Julia set of ${function_label}$, $c={function_params}$'''			)
 pyplot.show()



def  lowercase    (				)					->       None:
 warnings.filterwarnings(
     """ignore"""			,    category=SCREAMING_SNAKE_CASE__			,    message="""overflow encountered in multiply"""			)
 warnings.filterwarnings(
     """ignore"""			,    category=SCREAMING_SNAKE_CASE__			,    message="""invalid value encountered in multiply"""			,    )
 warnings.filterwarnings(
     """ignore"""			,    category=SCREAMING_SNAKE_CASE__			,    message="""overflow encountered in absolute"""			)
 warnings.filterwarnings(
     """ignore"""			,    category=SCREAMING_SNAKE_CASE__			,    message="""overflow encountered in exp"""			)


if __name__ == "__main__":
  a__      =		prepare_grid(window_size, nb_pixels)

  ignore_overflow_warnings()  # See file header for explanations

  a__      =		24
  a__      =		2 * abs(c_cauliflower) + 1
  a__      =		iterate_function(
      eval_quadratic_polynomial,
      c_cauliflower,
      nb_iterations,
      z_a,
      infinity=1.1 * escape_radius,
  )
  show_results("""z^2+c""", c_cauliflower, escape_radius, z_final)

  a__      =		64
  a__      =		2 * abs(c_polynomial_a) + 1
  a__      =		iterate_function(
      eval_quadratic_polynomial,
      c_polynomial_a,
      nb_iterations,
      z_a,
      infinity=1.1 * escape_radius,
  )
  show_results("""z^2+c""", c_polynomial_a, escape_radius, z_final)

  a__      =		1_61
  a__      =		2 * abs(c_polynomial_a) + 1
  a__      =		iterate_function(
      eval_quadratic_polynomial,
      c_polynomial_a,
      nb_iterations,
      z_a,
      infinity=1.1 * escape_radius,
  )
  show_results("""z^2+c""", c_polynomial_a, escape_radius, z_final)

  a__      =		12
  a__      =		10_000.0
  a__      =		iterate_function(
      eval_exponential,
      c_exponential,
      nb_iterations,
      z_a + 2,
      infinity=1.0E10,
  )
  show_results("""e^z+c""", c_exponential, escape_radius, z_final)





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))
