anchor.diff:  -spec accept_ext_value(binary(), fun(), binary(), binary(),
   	[{binary(), binary()}], 0..1000,
   	[{binary(), binary()} | binary()], binary()) -> any().
  -accept_ext_value(Data = << $", _/bits >>, Fun,
  -		Type, SubType, Params, Quality, Acc, Attr) ->
  -	quoted_string(Data,
  +accept_ext_value(Data, Fun, Type, SubType, Params, Quality, Acc, Attr) ->
  +	word(Data,
   		fun (Rest, Value) ->
  -				accept_ext(Rest, Fun,
  -					Type, SubType, Params, Quality, [{Attr, Value}|Acc])
  -		end);
  -accept_ext_value(Data, Fun, Type, SubType, Params, Quality, Acc, Attr) ->
  -	token(Data,
  -		fun (_Rest, <<>>) -> {error, badarg};
  -			(Rest, Value) ->
   				accept_ext(Rest, Fun,
   					Type, SubType, Params, Quality, [{Attr, Value}|Acc])
   		end).
  
positive.code: 	alpha(Rest, Fun, << Acc/binary, C2 >>);
  alpha(Data, Fun, Acc) ->
  	Fun(Data, Acc).
  
  %% @doc Parse a case-insensitive token.
  %%
  
negative.code: 		fun (Rest, Quality) ->
  			accept_ext(Rest, Fun, Type, SubType, Acc, Quality, [])
  		end);
  media_range_param_value(Data, Fun, Type, SubType, Acc, Attr) ->
  	word(Data,
  		fun (Rest, Value) ->
  			media_range_params(Rest, Fun,
  				Type, SubType, [{Attr, Value}|Acc])
  		end).
  
  -spec accept_ext(binary(), fun(), binary(), binary(),
  