anchor.diff:      L = lists:map(fun(A) ->
   			  H = string:strip(A,left),
   			  Index = string:chr(H, $=),
  -			  Name = string:substr(H, 1, Index - 1),
  +			  Name = httpd_util:to_lower(string:substr(H, 1, Index - 1)),
   			  Value = string:substr(H, Index + 1),
   			  {Name, unescape(Value)}
   		  end, Param),
       dict:from_list(L).    
   
  +dict_to_param(Dict) ->
  +    list_to_parameters(dict:to_list(Dict)).
  +    
  +list_to_parameters([]) ->
  +    [];
  +list_to_parameters([{Key, Value}]) ->
  +    [Key ++ "=" ++ Value];
  +list_to_parameters([{Key, Value} | Rest]) ->
  +    [Key ++ "=" ++ Value, list_to_parameters(Rest)].
  +    
  +
   httparg(String) ->
       Headers = string:tokens(String, "&"),
       param_to_dict(Headers).
  
positive.code:     end;
  
  name_header(String) ->
      logger:log(debug, "n: ~p", [String]),
      case String of
  	[$< | Rest2] ->
  	    Index2 = string:chr(Rest2, $>),
  
negative.code: 
  contact([]) ->
      [];
      
  contact(["'*'"]) ->
      logger:log(debug, "n: wildcard contact header (IS THIS SYNTAX USED?)"),
      [{none, {wildcard, []}}];
  
  contact(["*"]) ->
      logger:log(debug, "n: wildcard contact header"),
      [{none, {wildcard, []}}];
  
  contact(["'*';" ++ Parameters]) ->
      logger:log(debug, "n: wildcard contact header (parameters ~p) (IS THIS SYNTAX USED?)", [Parameters]),
      [{none, {wildcard, [Parameters]}}];
  
  contact(["*;" ++ Parameters]) ->
      logger:log(debug, "n: wildcard contact header (parameters ~p)", [Parameters]),
      [{none, {wildcard, [Parameters]}}];
  
  contact([String | Rest]) ->
      Headers = comma(String),
      lists:append(lists:map(fun(H) ->
  				   name_header(H)
  			   end, Headers),
  		 contact(Rest)).
  
  contact_params([]) ->
      none;
  contact_params({_, {wildcard, Parameters}}) ->
      param_to_dict(Parameters);
  contact_params({_, _, _, _, Parameters}) ->
      param_to_dict(Parameters).
  
  via([]) ->
      [];
  