     [header] ++ [top] ++ middle ++ [bottom]
   end
 
-  def header(size) do
+  defp header(size) do
     last_col = ?a + size - 1
     spacer = "   "
     offset = "      "

    |> Kernel.<>(offset)
  end

  def collect_rows(grid) do
    size = size(grid)
    grid_line = Utils.draw_grid_line(size, :middle)


    |> Enum.intersperse(grid_line)
  end

  defp chunk_by_rows(grid, count) do
    grid
    |> Enum.sort_by(fn {coord, _} -> coord end)
    |> Stream.map(fn {_, square} -> inspect(square) end)
    |> Stream.chunk(count)
  end

  defp label_rows(rows, grid_size) do
    rows
    |> Stream.with_index
    |> Stream.map(fn {row, index} ->
