


from math import factorial, pi







def    _snake_case (       __snake_case					,  __snake_case = 3_0    )     ->     float:






      '''simple docstring'''







      if not isinstance(__snake_case					,  (int, float)    ):
            raise ValueError("maclaurin_sin() requires either an int or float for theta"    )

      if not isinstance(__snake_case					,  __snake_case    ) or accuracy <= 0:
            raise ValueError("maclaurin_sin() requires a positive int for accuracy"    )

      UpperCAmelCase_  :	List[Any]				      =		float(__snake_case    )
      UpperCAmelCase_  :	Tuple				      =		theta // (2 * pi)
      theta -= 2 * div * pi
      return sum(
          (-1) ** r * theta ** (2 * r + 1) / factorial(2 * r + 1    ) for r in range(__snake_case    )    )







def    _snake_case (       __snake_case					,  __snake_case = 3_0    )     ->     float:






      '''simple docstring'''







      if not isinstance(__snake_case					,  (int, float)    ):
            raise ValueError("maclaurin_cos() requires either an int or float for theta"    )

      if not isinstance(__snake_case					,  __snake_case    ) or accuracy <= 0:
            raise ValueError("maclaurin_cos() requires a positive int for accuracy"    )

      UpperCAmelCase_  :	List[Any]				      =		float(__snake_case    )
      UpperCAmelCase_  :	int				      =		theta // (2 * pi)
      theta -= 2 * div * pi
      return sum((-1) ** r * theta ** (2 * r) / factorial(2 * r    ) for r in range(__snake_case    )    )


if __name__ == "__main__":
   import doctest

   doctest.testmod()

   print(maclaurin_sin(10))
   print(maclaurin_sin(-10))
   print(maclaurin_sin(10, 15))
   print(maclaurin_sin(-10, 15))

   print(maclaurin_cos(5))
   print(maclaurin_cos(-5))
   print(maclaurin_cos(10, 15))
   print(maclaurin_cos(-10, 15))





import argparse

import torch

from transformers import FunnelBaseModel, FunnelConfig, FunnelModel, load_tf_weights_in_funnel
from transformers.utils import logging


logging.set_verbosity_info()







def    _snake_case (       __snake_case					,  __snake_case					,  __snake_case					,  __snake_case    )     ->     Optional[Any]:






      '''simple docstring'''







      UpperCAmelCase_  :	List[str]				      =		FunnelConfig.from_json_file(__snake_case    )
      print(F"""Building PyTorch model from configuration: {config}"""    )
      UpperCAmelCase_  :	str				      =		FunnelBaseModel(__snake_case    ) if base_model else FunnelModel(__snake_case    )

      # Load weights from tf checkpoint
      load_tf_weights_in_funnel(__snake_case					,  __snake_case					,  __snake_case    )

      # Save pytorch-model
      print(F"""Save PyTorch model to {pytorch_dump_path}"""    )
      torch.save(model.state_dict()					,  __snake_case    )


if __name__ == "__main__":
   __lowerCamelCase         =			argparse.ArgumentParser()
   # Required parameters
   parser.add_argument(
       '''--tf_checkpoint_path''', default=None, type=str, required=True, help='''Path to the TensorFlow checkpoint path.'''
   )
   parser.add_argument(
       '''--config_file''',
       default=None,
       type=str,
       required=True,
       help='''The config json file corresponding to the pre-trained model. \nThis specifies the model architecture.''',
   )
   parser.add_argument(
       '''--pytorch_dump_path''', default=None, type=str, required=True, help='''Path to the output PyTorch model.'''
   )
   parser.add_argument(
       '''--base_model''', action='''store_true''', help='''Whether you want just the base model (no decoder) or not.'''
   )
   __lowerCamelCase         =			parser.parse_args()
   convert_tf_checkpoint_to_pytorch(
       args.tf_checkpoint_path, args.config_file, args.pytorch_dump_path, args.base_model
   )
