     {nil, nil}
   end
 
-  defp do_zip_each([h | t], acc) do
-    {t, [h | acc]}
+  defp do_zip_each([head | tail], acc) do
+    {tail, [head | acc]}
   end
 
   defp do_zip_each([], _) do

    list
  end

  defp do_update_at([h | t], index, fun) do
    [h | do_update_at(t, index - 1, fun)]
  end

  defp do_update_at([], _index, _fun) do

    [value | list]
  end

  defp do_insert_at([head | tail], index, value) do
    [head | do_insert_at(tail, index - 1, value)]
  end

  # update_at
