 
   defp has_tag_on(message, header) do
     {_display_name, _uri, params} = message.headers[header]
+
     case params do
       %{"tag" => value} ->
         if String.length(value) > 0 do
           :ok
         else
-          {:error, "empty #{inspect header} tag"}
+          {:error, "empty #{inspect(header)} tag"}
         end
+
       _otherwise ->
-        {:error, "#{inspect header} does not have tag"}
+        {:error, "#{inspect(header)} does not have tag"}
     end
   end
 
   defp has_matching_cseq(request) do
     method = request.start_line.method
+
     case request.headers.cseq do
       {_sequence, ^method} ->
         :ok

  @spec pop_header_back(t, header, any) :: {multiple_value | any, t}
  def pop_header_back(message, header, default \\ nil) do
    {values, new_headers} = Map.pop(message.headers, header, [])
    case Enum.reverse(values) do
      [] ->
          {default, %{message | headers: new_headers}}
      [value] ->
          {value, %{message | headers: new_headers}}
      [last|tail] ->
          {last, %{message | headers:
              Map.put(message.headers, header, Enum.reverse(tail))}}
    end
  end


  @spec fetch_header_back!(t, header) :: multiple_value | no_return
  def fetch_header_back!(message, header) do
    values = fetch_header!(message, header)

    if Enum.empty?(values) do
      nil
    else
