input: 
  def create_square_dictionary(numbers: List[int]) -> Dict[int, int]:
      """
      Create a dictionary where the keys are the elements of the input list and the values are their squares.
  
      >>> create_square_dictionary([1, 2, 3, 4, 5])
      {1: 1, 2: 4, 3: 9, 4: 16, 5: 25}
      >>> create_square_dictionary([0, -1, -2, 3])
      {0: 0, -1: 1, -2: 4, 3: 9}
      """
  
output:     result = {}
      for num in numbers:
          result[num] = num ** 2
      return result