input: from typing import List
  
  
  def factorial(n: int) -> int:
      """ Calculate the factorial of a given number. The factorial of a non-negative integer n is the product of all positive integers less than or equal to n. 
      >>> factorial(5)
      120
      >>> factorial(0)
      1
      """
output:     if n == 0:
          return 1
      result = 1
      for i in range(1, n + 1):
          result *= i
      return result