
import math







def        A__					(						lowerCamelCase     ,    lowerCamelCase						)  ->	int:
				if 0 not in (x, y):
								# We use the relation x^y = y*log10(x), where 10 is the base.
								return y * math.logaa(__A						)
				else:
								if x == 0:  # 0 raised to any number is 0
												return 0
								elif y == 0:
												return 1  # any number raised to 0 is 1
				raise AssertionError("""This should never happen"""						)


if __name__ == "__main__":  # Main function
							# Read two numbers from input and typecast them to int using map function.
							# Here x is the base and y is the power.
							lowerCamelCase_						: List[Any]         =  """Enter the base and the power separated by a comma: """
							lowerCamelCase_   ,       lowerCamelCase_						: str         =  map(int, input(prompt).split(""","""))
							lowerCamelCase_   ,       lowerCamelCase_						: str         =  map(int, input(prompt).split(""","""))

							# We find the log of each number, using the function res(), which takes two
							# arguments.
							lowerCamelCase_						: List[Any]         =  res(xa, ya)
							lowerCamelCase_						: List[str]         =  res(xa, ya)

							# We check for the largest number
							if resa > resa:
														print("""Largest number is""", xa, """^""", ya)
							elif resa > resa:
														print("""Largest number is""", xa, """^""", ya)
							else:
														print("""Both are equal""")








import argparse

import numpy as np
import torch

from transformers import SpeechTaHifiGan, SpeechTaHifiGanConfig, logging


logging.set_verbosity_info()
lowerCamelCase_						: Optional[int]         =  logging.get_logger("""transformers.models.speecht5""")







def        A__					(						lowerCamelCase     ,    lowerCamelCase     ,    lowerCamelCase						)  ->	Optional[Any]:
				hf_model.apply_weight_norm()

				UpperCamelCase_:							Union[str, Any]	=						checkpoint["""input_conv.weight_g"""]
				UpperCamelCase_:							Optional[int]	=						checkpoint["""input_conv.weight_v"""]
				UpperCamelCase_:							List[Any]	=						checkpoint["""input_conv.bias"""]

				for i in range(len(config.upsample_rates						)						):
								UpperCamelCase_:							List[str]	=						checkpoint[F'''upsamples.{i}.1.weight_g''']
								UpperCamelCase_:							Dict	=						checkpoint[F'''upsamples.{i}.1.weight_v''']
								UpperCamelCase_:							List[str]	=						checkpoint[F'''upsamples.{i}.1.bias''']

				for i in range(len(config.upsample_rates						) * len(config.resblock_kernel_sizes						)						):
								for j in range(len(config.resblock_dilation_sizes						)						):
												UpperCamelCase_:							Tuple	=						checkpoint[F'''blocks.{i}.convs1.{j}.1.weight_g''']
												UpperCamelCase_:							Any	=						checkpoint[F'''blocks.{i}.convs1.{j}.1.weight_v''']
												UpperCamelCase_:							Tuple	=						checkpoint[F'''blocks.{i}.convs1.{j}.1.bias''']

												UpperCamelCase_:							Union[str, Any]	=						checkpoint[F'''blocks.{i}.convs2.{j}.1.weight_g''']
												UpperCamelCase_:							Any	=						checkpoint[F'''blocks.{i}.convs2.{j}.1.weight_v''']
												UpperCamelCase_:							int	=						checkpoint[F'''blocks.{i}.convs2.{j}.1.bias''']

				UpperCamelCase_:							int	=						checkpoint["""output_conv.1.weight_g"""]
				UpperCamelCase_:							Tuple	=						checkpoint["""output_conv.1.weight_v"""]
				UpperCamelCase_:							List[str]	=						checkpoint["""output_conv.1.bias"""]

				hf_model.remove_weight_norm()







@torch.no_grad()
def        A__					(						lowerCamelCase     ,    lowerCamelCase     ,    lowerCamelCase     ,    lowerCamelCase=None     ,    lowerCamelCase=None     ,    )  ->	Optional[int]:
				if config_path is not None:
								UpperCamelCase_:							Union[str, Any]	=						SpeechTaHifiGanConfig.from_pretrained(lowerCamelCase						)
				else:
								UpperCamelCase_:							str	=						SpeechTaHifiGanConfig()

				UpperCamelCase_:							Union[str, Any]	=						SpeechTaHifiGan(lowerCamelCase						)

				UpperCamelCase_:							str	=						torch.load(lowerCamelCase						)
				load_weights(orig_checkpoint["""model"""]["""generator"""]     ,    lowerCamelCase     ,    lowerCamelCase						)

				UpperCamelCase_:							Union[str, Any]	=						np.load(lowerCamelCase						)
				UpperCamelCase_:							int	=						stats[0].reshape(-1						)
				UpperCamelCase_:							Union[str, Any]	=						stats[1].reshape(-1						)
				UpperCamelCase_:							Dict	=						torch.from_numpy(lowerCamelCase						).float()
				UpperCamelCase_:							Optional[Any]	=						torch.from_numpy(lowerCamelCase						).float()

				model.save_pretrained(lowerCamelCase						)

				if repo_id:
								print("""Pushing to the hub..."""						)
								model.push_to_hub(lowerCamelCase						)


if __name__ == "__main__":
							lowerCamelCase_						: Union[str, Any]         =  argparse.ArgumentParser()
							parser.add_argument("""--checkpoint_path""", required=True, default=None, type=str, help="""Path to original checkpoint""")
							parser.add_argument("""--stats_path""", required=True, default=None, type=str, help="""Path to stats.npy file""")
							parser.add_argument("""--config_path""", default=None, type=str, help="""Path to hf config.json of model to convert""")
							parser.add_argument(
							    """--pytorch_dump_folder_path""", required=True, default=None, type=str, help="""Path to the output PyTorch model."""
							)
							parser.add_argument(
							    """--push_to_hub""", default=None, type=str, help="""Where to upload the converted model on the 🤗 hub."""
							)

							lowerCamelCase_						: Optional[int]         =  parser.parse_args()
							convert_hifigan_checkpoint(
							    args.checkpoint_path,
							    args.stats_path,
							    args.pytorch_dump_folder_path,
							    args.config_path,
							    args.push_to_hub,
							)






