

'''simple docstring'''

def      __magic_name__							(			A       , A				)      ->		List[Any]:
	snake_case							=					1
	while b > 0:
		if b & 1:
			res *= a

		a *= a
		b >>= 1

	return res

def      __magic_name__							(			A       , A       , A				)      ->		Optional[Any]:
	snake_case							=					1
	while b > 0:
		if b & 1:
			snake_case							=					((res % c) * (a % c)) % c

		a *= a
		b >>= 1

	return res








"""simple docstring"""





def     _A    (    UpperCamelCase_	:			str)      ->		int:
   '''simple docstring'''


   __lowercase								=		0
   for plain_chr in plain_text:
      __lowercase								=		(
          ord(UpperCamelCase_) + (hash_value << 6) + (hash_value << 16) - hash_value
      )
   return hash_value




