input: def insertion_sort(list: List[Union[int, float]]) -> List[Union[int, float]]:
      """
      Sorts a list of numbers using the insertion sort algorithm.
      
      >>> insertion_sort([3, 2, 1])
      [1, 2, 3]
      >>> insertion_sort([5, 1, 4, 3, 2])
      [1, 2, 3, 4, 5]
      """
output:     for i in range(1, len(list)):
          key = list[i]
          j = i - 1
          while j >= 0 and list[j] > key:
              list[j + 1] = list[j]
              j -= 1
          list[j + 1] = key
      return list