anchor.diff:          ext_opts = [
               {<<"reg-id">>,<<"1">>},
               {<<"+sip.instance">>,
  -                <<"\"<urn:uuid:00000000-0000-0000-0000-000097ee887e>\"">>}]
  +                <<"<urn:uuid:00000000-0000-0000-0000-000097ee887e>">>}]
       }] =
           uris("<sip:xxxx@192.168.1.2:5060;transport=TCP;ob>;reg-id=1;"
                "+sip.instance=\"<urn:uuid:00000000-0000-0000-0000-000097ee887e>\""),
       [#uri{
  -        domain = <<"host">>, opts = [{<<"key">>,<<"\"my \\\"\"">>}],
  -        headers = [{<<"hd">>,<<"\"your \\\"\"">>}]
  +        domain = <<"host">>, opts = [{<<"key">>,<<"my \\\"\"?hd=\"your \\\"">>}]
       }] = uris("<sip:host;key=\"my \\\"\"?hd=\"your \\\"\">").
   
   
  
positive.code:     [#uri{
          disp=(<<"\"My name\" ">>), user=(<<"user">>), pass=(<<"pass">>), 
          domain= <<"host">>, port=5061, opts=[{<<"transport">>,<<"tcp">>}],
          headers=[<<"head1">>], ext_opts=[{<<"op1">>,<<"\"1\"">>}]
      }] = uris(" \"My name\" <sip:user:pass@host:5061;transport=tcp?head1> ; op1=\"1\""),
      [#uri{
          disp=(<<"Name   ">>), domain= <<"host">>, port=5061,
  
negative.code:             opts([], Block, Uri1)
      end;
  
  opts_value([92, $"|_Rest], _Key, _Acc, false, _InnerQuoted, _Block, _Uri) ->
      {error, opts_value, ?LINE};
  
  opts_value([92, $"|Rest], Key, Acc, true, InnerQuoted, Block, Uri) ->
      opts_value(Rest, Key, [$", 92|Acc], true, not InnerQuoted, Block, Uri);
  
  opts_value([$"|Rest], Key, Acc, Quoted, false, Block, Uri) ->
      opts_value(Rest, Key, Acc, not Quoted, false, Block, Uri);
  
  opts_value([Ch|_]=Rest, Key, Acc, false, _InnerQuoted, Block, Uri)
              when Ch==$;; Ch==$?; Ch==$>; Ch==$, ->
      case Acc of
          [] ->
  