

from ..utils import DummyObject, requires_backends



class 					_a		(metaclass=__magic_name__       ):


     '''simple docstring'''






     UpperCAmelCase__:     Optional[int]													= ['''torch''', '''scipy''']






     def __init__(				self					, *A__					, **A__    ):
      requires_backends(self					, ["""torch""", """scipy"""]    )






     @classmethod
     def 						__A    (				cls					, *A__					, **A__    ):
      requires_backends(cls					, ["""torch""", """scipy"""]    )






     @classmethod
     def 						__A    (				cls					, *A__					, **A__    ):
      requires_backends(cls					, ["""torch""", """scipy"""]    )






from functools import lru_cache

@lru_cache
def 		UpperCamelCase      (lowercase_:				int      )  ->   int:
	if num < 0:
		raise ValueError("""Number should not be negative."""      )

	return 1 if num in (0, 1) else num * factorial(num - 1      )


if __name__ == "__main__":
	import doctest

	doctest.testmod()



