input: Write a function to execute a valid insertion sort on a given list of integers.
  
  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 -= 1
    arr[j + 1] = key
   return arr
  
  assert insertion_sort([3, 7, 4, 9, 5, 2, 6, 1]) == [1, 2, 3, 4, 5, 6, 7, 9]
  assert insertion_sort([10, -1, 2, 5, 0, 1]) == [-1, 0, 1, 2, 5, 10]
  assert insertion_sort([]) == []
  assert insertion_sort([1, 2, 3, 4, 5]) == [1, 2, 3, 4, 5]
  assert insertion_sort([5, 4, 3, 2, 1]) == [1, 2, 3, 4, 5]
output: 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 -= 1
    arr[j + 1] = key
   return arr