input: Write a function to execute a valid insertion sort on a given list of integers. If the input list is empty, return an empty list.
  def insertion_sort(arr):
   for i in range(1, len(arr)):
   key = arr[i]
   j = i -1
   while j >= 0 and key < arr[j] :
      arr[j + 1] = arr[j]
      j = j - 1
   arr[j + 1] = key
  
  return arr
  
  assert insertion_sort([3, 1, 2])==[1, 2, 3]
  assert insertion_sort([5, 4, 3, 2, 1])==[1, 2, 3, 4, 5]
  assert insertion_sort([9, 8, 7, 1, 2, 3, 4, 5])==[1, 2, 3, 4, 5, 7, 8, 9]
  assert insertion_sort([])==[]
  assert insertion_sort([1])==[1]
output: def insertion_sort(arr):
      if not arr:
          return []
      for i in range(1, len(arr)):
          key = arr[i]
          j = i - 1
          while j >= 0 and key < arr[j]:
              arr[j + 1] = arr[j]
              j = j - 1
          arr[j + 1] = key
      return arr