

def  UpperCAmelCase__      ( UpperCAmelCase__,    UpperCAmelCase__			)     ->     int:
       return int((input_a, input_a).count(0			) == 0			)
def  UpperCAmelCase__      ( )     ->     None:
       assert and_gate(0,    0			) == 0
       assert and_gate(0,    1			) == 0
       assert and_gate(1,    0			) == 0
       assert and_gate(1,    1			) == 1


if __name__ == "__main__":
      test_and_gate()
      print(and_gate(1, 0))
      print(and_gate(0, 0))
      print(and_gate(0, 1))
      print(and_gate(1, 1))



'''simple docstring'''







from functools import lru_cache
@lru_cache
def  UpperCAmelCase__      ( UpperCAmelCase__			)     ->     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()
