





def 						__SCREAMING_SNAKE_CASE  (				UpperCamelCase__			,			UpperCamelCase__ )  ->				str:







			'''simple docstring'''

			if b == 0:
						return 1
			if (b % 2) == 0:
						return actual_power(UpperCamelCase__			,			int(b / 2 ) ) * actual_power(UpperCamelCase__			,			int(b / 2 ) )
			else:
						return a * actual_power(UpperCamelCase__			,			int(b / 2 ) ) * actual_power(UpperCamelCase__			,			int(b / 2 ) )





def 						__SCREAMING_SNAKE_CASE  (				UpperCamelCase__			,			UpperCamelCase__ )  ->				float:







			'''simple docstring'''

			if b < 0:
						return 1 / actual_power(UpperCamelCase__			,			UpperCamelCase__ )
			return actual_power(UpperCamelCase__			,			UpperCamelCase__ )


if __name__ == "__main__":
				print(power(-2, -3))










def 						__SCREAMING_SNAKE_CASE  (				UpperCamelCase__ )  ->				list[int]:







			'''simple docstring'''

			if length <= 0 or not isinstance(UpperCamelCase__			,			UpperCamelCase__ ):
						raise ValueError('''Length must be a positive integer.''' )
			return [n * (2 * n - 1) for n in range(UpperCamelCase__ )]


if __name__ == "__main__":
				print(hexagonal_numbers(length=5))
				print(hexagonal_numbers(length=10))



