
'''simple docstring'''

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

__snake_case:  Optional[int]												=			6_37_81_37.0
__snake_case:  Tuple												=			6_35_67_52.31_42_45
__snake_case:  Tuple												=			6_37_81_37






def 	_snake_case						(      A_       :    List[Any]     ,		A_       :    List[Any]     ,		A_       :    str     ,		A_       :    int   ):
  """simple docstring"""







  a_      :	List[Any]      =							(AXIS_A - AXIS_B) / AXIS_A
  a_      :	Optional[int]      =							atan((1 - flattening) * tan(radians(_lowerCAmelCase   )   )   )
  a_      :	Tuple      =							atan((1 - flattening) * tan(radians(_lowerCAmelCase   )   )   )
  a_      :	Tuple      =							radians(_lowerCAmelCase   )
  a_      :	Any      =							radians(_lowerCAmelCase   )
  # Equation
  a_      :	Dict      =							sin((phi_a - phi_a) / 2   )
  a_      :	Tuple      =							sin((lambda_a - lambda_a) / 2   )
  # Square both values
  sin_sq_phi *= sin_sq_phi
  sin_sq_lambda *= sin_sq_lambda
  a_      :	int      =							sqrt(sin_sq_phi + (cos(_lowerCAmelCase   ) * cos(_lowerCAmelCase   ) * sin_sq_lambda)   )
  return 2 * RADIUS * asin(_lowerCAmelCase   )


if __name__ == "__main__":
    import doctest

    doctest.testmod()




'''simple docstring'''

from __future__ import annotations






def 	_snake_case						(      A_       :    int   ):
  """simple docstring"""







  a_      :	Optional[Any]      =							2
  a_      :	int      =							[]
  while i * i <= n:
    if n % i:
      i += 1
    else:
      n //= i
      factors.append(A_   )
  if n > 1:
    factors.append(A_   )
  return factors


if __name__ == "__main__":
    import doctest

    doctest.testmod()


