anchor.diff:  %% RFC3261 7.1: The SIP-Version string is case-insensitive, but implementations MUST send upper-case.
   -spec parse_start_line(binary()) -> #sip_request{} | #sip_response{}.
   parse_start_line(StartLine) when is_binary(StartLine) ->
  -    case binary:split(StartLine, <<" ">>, [global]) of
  -        [Method, RequestURI, <<?SIPVERSION>>]
  -          ->
  +    % split on three parts
  +    [First, Rest] = binary:split(StartLine, <<" ">>),
  +    [Second, Third] = binary:split(Rest, <<" ">>),
  +    case {First, Second, Third} of
  +        {Method, RequestURI, <<?SIPVERSION>>} ->
               #sip_request{method = sip_binary:binary_to_existing_atom(sip_binary:to_upper(Method)),
                            uri = RequestURI};
   
  -        [<<?SIPVERSION>>, <<A,B,C>>, ReasonPhrase] when
  -            $1 =< A andalso A =< $6 andalso % 1xx - 6xx
  -            $0 =< B andalso B =< $9 andalso
  -            $0 =< C andalso C =< $9
  -          ->
  +        {<<?SIPVERSION>>, <<A,B,C>>, ReasonPhrase} when
  +          $1 =< A andalso A =< $6 andalso % 1xx - 6xx
  +          $0 =< B andalso B =< $9 andalso
  +          $0 =< C andalso C =< $9 ->
               #sip_response{status = list_to_integer([A, B, C]),
                             reason = ReasonPhrase}
       end.
  
positive.code:      ?_assertEqual(true, is_response(Response)),
       ?_assertEqual(true, is_provisional_response(ProvResponse)),
       ?_assertEqual(false, is_provisional_response(Response)),
       ?_assertEqual(<<"INVITE sip:urn:service:test SIP/2.0\r\nContent-Length: 5\r\nx-custom: Nothing\r\n\r\nHello">>, to_binary(Request)),
       ?_assertEqual(<<"SIP/2.0 200 Ok\r\nContent-Length: 5\r\n\r\nHello">>, to_binary(Response))
      ].
  
negative.code: %% Exports
  %%-----------------------------------------------------------------
  -export([is_request/1, is_response/1, to_binary/1]).
  -export([is_provisional_response/1, is_redirect_response/1, method/1]).
  -export([parse_stream/2, parse_datagram/1, parse_all_headers/1, sort_headers/1]).
  -export([create_ack/2, create_response/3]).
  -export([validate_request/1]).
  -export([update_top_header/3, replace_top_header/3]).
  -export([top_header/2, top_via_branch/1, foldl_headers/4]).
  
  %%-----------------------------------------------------------------
  %% Macros
  