
def 						a__     (						_UpperCamelCase     :	int							):
   if number != int(_UpperCamelCase							):
      raise ValueError('''factorial() only accepts integral values'''							)
   if number < 0:
      raise ValueError('''factorial() not defined for negative values'''							)
   __lowerCamelCase  							=      1
   for i in range(1	,number + 1							):
      value *= i
   return value





def 						a__     (						_UpperCamelCase     :	int							):
   if not isinstance(_UpperCamelCase	,_UpperCamelCase							):
      raise ValueError('''factorial() only accepts integral values'''							)
   if n < 0:
      raise ValueError('''factorial() not defined for negative values'''							)
   return 1 if n == 0 or n == 1 else n * factorial(n - 1							)


if __name__ == "__main__":
  import doctest

  doctest.testmod()

  a_								=   int(input("""Enter a positive integer: """).strip() or 0)
  print(f"factorial{n} is {factorial(n)}")











import platform
from argparse import ArgumentParser

import huggingface_hub
import pandas
import pyarrow

from datasets import __version__ as version
from datasets.commands import BaseDatasetsCLICommand





def 						a__     (						_UpperCamelCase     :	Optional[Any]							):
   return EnvironmentCommand()





class 	__lowerCAmelCase       (		lowerCAmelCase__				):




 @staticmethod
 def     lowerCamelCase (  __UpperCAmelCase			):



    '''simple docstring'''
    __lowerCamelCase  							=      parser.add_parser('''env'''		,			help='''Print relevant system environment info.'''			)
    download_parser.set_defaults(func=__UpperCAmelCase			)




 def     lowerCamelCase (  self			):



    '''simple docstring'''
    __lowerCamelCase  							=      {
        '''`datasets` version''': version,
        '''Platform''': platform.platform(),
        '''Python version''': platform.python_version(),
        '''Huggingface_hub version''': huggingface_hub.__version__,
        '''PyArrow version''': pyarrow.__version__,
        '''Pandas version''': pandas.__version__,
    }

    print('''\nCopy-and-paste the text below in your GitHub issue.\n'''			)
    print(self.format_dict(__UpperCAmelCase			)			)

    return info




 @staticmethod
 def     lowerCamelCase (  __UpperCAmelCase			):



    '''simple docstring'''
    return "\n".join([F"""- {prop}: {val}""" for prop, val in d.items()]			) + "\n"






