'''simple docstring'''


def    _lowerCamelCase       ( lowerCamelCase_   :				Tuple      ,	lowerCamelCase_   :				Union[str, Any]  ):



     """simple docstring"""





     UpperCAmelCase_				:  str  = 1
     while b > 0:
          if b & 1:
               res *= a

          a *= a
          b >>= 1

     return res





def    _lowerCamelCase       ( lowerCamelCase_   :				str      ,	lowerCamelCase_   :				Optional[Any]      ,	lowerCamelCase_   :				Union[str, Any]  ):



     """simple docstring"""





     UpperCAmelCase_				:  Any  = 1
     while b > 0:
          if b & 1:
               UpperCAmelCase_				:  Union[str, Any]  = ((res % c) * (a % c)) % c

          a *= a
          b >>= 1

     return res









def   UpperCamelCase(   lowercase_     ,   lowercase_				)      ->							Union[str, Any]:





  '''simple docstring'''





  if len(str(lowercase_				)				) == 1 or len(str(lowercase_				)				) == 1:
    return a * b

  snake_case_					= max(len(str(lowercase_				)				)     ,   len(str(lowercase_				)				)				)
  snake_case_					= ma // 2

  snake_case_		,							snake_case_					= divmod(lowercase_     ,   10**ma				)
  snake_case_		,							snake_case_					= divmod(lowercase_     ,   10**ma				)

  snake_case_					= karatsuba(lowercase_     ,   lowercase_				)
  snake_case_					= karatsuba((aa + aa)     ,   (ba + ba)				)
  snake_case_					= karatsuba(lowercase_     ,   lowercase_				)

  return (z * 10 ** (2 * ma)) + ((y - z - x) * 10 ** (ma)) + (x)



def   UpperCamelCase(   )      ->							Dict:





  '''simple docstring'''





  print(karatsuba(15463     ,   23489				)				)


if __name__ == "__main__":
    main()