code: 
  
  
  
  import warnings
  from collections.abc import Callable
  from typing import Any
  
  import numpy
  from matplotlib import pyplot
  
  __A       					=		0.2_5 + 0.0J
  __A       					=		-0.4 + 0.6J
  __A       					=		-0.1 + 0.651J
  __A       					=		-2.0
  __A       					=		56
  __A       					=		2.0
  __A       					=		666
  
  
  
  def  __a  (					lowerCAmelCase_     :      complex    ,lowerCAmelCase_     :      numpy.ndarray       )   ->				numpy.ndarray:
  
  
  
  
  
  
  						'''simple docstring'''
  
  
  
  						return numpy.exp(lowerCAmelCase_       ) + c_parameter
  
  
  
  def  __a  (					lowerCAmelCase_     :      complex    ,lowerCAmelCase_     :      numpy.ndarray       )   ->				numpy.ndarray:
  
  
  
  
  
  
  						'''simple docstring'''
  
  
  
  						return z_values * z_values + c_parameter
  
  
  
  def  __a  (					lowerCAmelCase_     :      float    ,lowerCAmelCase_     :      int       )   ->				numpy.ndarray:
  
  
  
  
  
  
  						'''simple docstring'''
  
  
  
  						UpperCAmelCase_=     numpy.linspace(-window_size    ,lowerCAmelCase_    ,lowerCAmelCase_       )
  						UpperCAmelCase_=     x.reshape((nb_pixels, 1)       )
  						UpperCAmelCase_=     numpy.linspace(-window_size    ,lowerCAmelCase_    ,lowerCAmelCase_       )
  						UpperCAmelCase_=     y.reshape((1, nb_pixels)       )
  						return x + 1.0J * y
  
  
  
  def  __a  (					lowerCAmelCase_     :      Callable[[Any, numpy.ndarray], numpy.ndarray]    ,lowerCAmelCase_     :      Any    ,lowerCAmelCase_     :      int    ,lowerCAmelCase_     :      numpy.ndarray    ,lowerCAmelCase_     :      float | None = None    ,)   ->				numpy.ndarray:
  
  
  
  
  
  
  						'''simple docstring'''
  
  
  
  						UpperCAmelCase_=     z_a.astype("""complex64"""       )
  						for _ in range(lowerCAmelCase_       ):
  												UpperCAmelCase_=     eval_function(lowerCAmelCase_    ,lowerCAmelCase_       )
  												if infinity is not None:
  																		numpy.nan_to_num(lowerCAmelCase_    ,copy=lowerCAmelCase_    ,nan=lowerCAmelCase_       )
  																		UpperCAmelCase_=     infinity
  						return z_n
  
  
  
  def  __a  (					lowerCAmelCase_     :      str    ,lowerCAmelCase_     :      Any    ,lowerCAmelCase_     :      float    ,lowerCAmelCase_     :      numpy.ndarray    ,)   ->				None:
  
  
  
  
  
  
  						'''simple docstring'''
  
  
  
  						UpperCAmelCase_=     (abs(lowerCAmelCase_       )).transpose()
  						UpperCAmelCase_=     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  __a  (					)   ->				None:
  
  
  
  
  
  
  						'''simple docstring'''
  
  
  
  						warnings.filterwarnings(
  						    """ignore"""    ,category=lowerCAmelCase_    ,message="""overflow encountered in multiply"""       )
  						warnings.filterwarnings(
  						    """ignore"""    ,category=lowerCAmelCase_    ,message="""invalid value encountered in multiply"""    ,)
  						warnings.filterwarnings(
  						    """ignore"""    ,category=lowerCAmelCase_    ,message="""overflow encountered in absolute"""       )
  						warnings.filterwarnings(
  						    """ignore"""    ,category=lowerCAmelCase_    ,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       					=		161
  	__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       					=		1_0_0_0_0.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)
  
  
  
  
  
style_context: 
  
  
  
  from __future__ import annotations
  
  
  
  def  __a  (					lowerCAmelCase_     :      int       )   ->				int | None:
  
  
  
  
  
  
  						'''simple docstring'''
  
  
  
  						for r in range(1    ,lowerCAmelCase_       ):
  												UpperCAmelCase_=     []
  												for x in range(n - 1       ):
  																		UpperCAmelCase_=     pow(lowerCAmelCase_    ,lowerCAmelCase_    ,lowerCAmelCase_       )
  																		if val in li:
  																								break
  																		li.append(lowerCAmelCase_       )
  												else:
  																		return r
  						return None
  
  
  if __name__ == "__main__":
  	__A       					=		int(input('''Enter a prime number q: '''))
  	__A       					=		find_primitive(q)
  	if a is None:
  		print(f'Cannot find the primitive for the value: {a!r}')
  	else:
  		__A       					=		int(input('''Enter private key of A: '''))
  		__A       					=		pow(a, a_private, q)
  		__A       					=		int(input('''Enter private key of B: '''))
  		__A       					=		pow(a, b_private, q)
  
  		__A       					=		pow(b_public, a_private, q)
  		__A       					=		pow(a_public, b_private, q)
  
  		print('''The key value generated by A is: ''', a_secret)
  		print('''The key value generated by B is: ''', b_secret)
  
  
  
  
  