anchor.diff:  				   Port = case util:isnumeric(P) of
   					      true ->
   						  list_to_integer(P);
  -					      %% XXX how are badly formated entries handled ?
  +    					      %% XXX how are badly formated entries handled ?
   					      %% silently ignoring them seems like a bad choice
   					      _ ->
   						  none
  
positive.code: %%           Header = keylist record()
  %% Descrip.: parse header data
  %% Returns : {Seq, Method} | {unparseable, String}
  %%--------------------------------------------------------------------
  cseq(Header) when is_record(Header, keylist) ->
      cseq(keylist:fetch('cseq', Header));
  
  cseq([String]) ->
      case string:tokens(String, " ") of
  	[Seq, Method] ->
  	    {Seq, Method};
  	_ ->
  	    {unparseable, String}
      end.
  
  %%--------------------------------------------------------------------
  %% Function:
  %% Descrip.: print data parsed with cseq/1
  %% Returns :
  %%--------------------------------------------------------------------
  cseq_print({Seq, Method}) ->
      Seq ++ " " ++ Method.
  
  %%--------------------------------------------------------------------
  %% Function: callid(Header)
  %%           Header = keylist record()
  %% Descrip.: get call from header
  %% Returns : string()
  %%--------------------------------------------------------------------
  callid(Header) when is_record(Header, keylist) ->
      [CallId] = keylist:fetch('call-id', Header),
  
negative.code: %% they may benefit from their own record type.
  %%--------------------------------------------------------------------
  contact(Header) when is_record(Header, keylist) ->
      contact(Header, contact).
  
  route(Header) when is_record(Header, keylist) ->
      contact(Header, route).
  
  record_route(Header) when is_record(Header, keylist) ->
      contact(Header, 'record-route').
  
  contact(Header, Name) when is_record(Header, keylist), is_atom(Name); is_list(Name) ->
      V = keylist:fetch(Name, Header),
      contact:parse(V).
  
  %%--------------------------------------------------------------------
  