





from math import asin, atan, cos, radians, sin, sqrt, tan

lowerCAmelCase_     =     637_8137.0
lowerCAmelCase_     =     635_6752.31_4245
lowerCAmelCase_     =     637_8137


def      lowerCamelCase_						(   lowerCAmelCase:						int     ,				lowerCAmelCase:						Union[str, Any]     ,				lowerCAmelCase:						Any     ,				lowerCAmelCase:						Optional[Any]					)->		Optional[int]:
  _snake_case :					Union[str, Any]								=						(AXIS_A - AXIS_B) / AXIS_A
  _snake_case :					str								=						atan((1 - flattening) * tan(radians(A__					)					)					)
  _snake_case :					Union[str, Any]								=						atan((1 - flattening) * tan(radians(A__					)					)					)
  _snake_case :					List[Any]								=						radians(A__					)
  _snake_case :					Dict								=						radians(A__					)
  # Equation
  _snake_case :					int								=						sin((phi_a - phi_a) / 2					)
  _snake_case :					Optional[int]								=						sin((lambda_a - lambda_a) / 2					)
  # Square both values
  sin_sq_phi *= sin_sq_phi
  sin_sq_lambda *= sin_sq_lambda
  _snake_case :					str								=						sqrt(sin_sq_phi + (cos(A__					) * cos(A__					) * sin_sq_lambda)					)
  return 2 * RADIUS * asin(A__					)


if __name__ == "__main__":
      import doctest

      doctest.testmod()









a__   :					Tuple 						=      "Tobias Carryer"

from time import time



class    UpperCAmelCase__:

   '''simple docstring'''




   def __init__(    self	:      str      ,					lowerCAmelCase	:      List[str]      ,					lowerCAmelCase	:      Any      ,					lowerCAmelCase	:      str      ,					lowerCAmelCase	:      str=int(time()))						->					List[Any]:  # noqa: B008




         """simple docstring"""

         lowercase__  =	multiplier
         lowercase__  =	increment
         lowercase__  =	modulo
         lowercase__  =	seed



   def       UpperCAmelCase		(    self	:      int)						->					Tuple:




         """simple docstring"""

         lowercase__  =	(self.multiplier * self.seed + self.increment) % self.modulo
         return self.seed


if __name__ == "__main__":
       # Show the LCG in action.
       a__   :					str 						=      LinearCongruentialGenerator(1_66_45_25, 10_13_90_42_23, 2 << 31)
       while True:
              print(lcg.next_number())
