anchor.diff:      {ok, Value, Data1, Pos1}.
   
   unmarshal_signature([], Res) ->
  -    Res;
  +    {Res, []};
  +
  +unmarshal_signature([$a, ${, KeySig|R], Res) ->
  +    KeyType = unmarshal_signature(KeySig),
  +    {[ValueType], Sig} = unmarshal_signature(R, []),
  +    unmarshal_signature(Sig, Res ++ [{dict, KeyType, ValueType}]);
  +
   unmarshal_signature([$a|R], Res) ->
  -    [Type | Types] = unmarshal_signature(R, []),
  -    Res ++ [{array, Type}] ++ Types;
  +    {[Type | Types], []} = unmarshal_signature(R, []),
  +    {Res ++ [{array, Type}] ++ Types, []};
   
   unmarshal_signature([$(|R], Res) ->
  -    {Types, Rest} = unmarshal_struct_signature(R, []),
  +    {Types, Rest} = unmarshal_signature(R, []),
   
       unmarshal_signature(Rest, Res ++ [{struct, Types}]);
  +
  +unmarshal_signature([$)|R], Res) ->
  +    {Res, R};
  +
  +unmarshal_signature([$}|R], Res) ->
  +    {Res, R};
   
   unmarshal_signature([Signature|R], Res) ->
       Type = unmarshal_signature(Signature),
       unmarshal_signature(R, Res ++ [Type]).
   
  +
  +%% unmarshal_dict_signature([$}|R], Res) ->
  +%%     Res;
  +%% unmarshal_dict_signature([Signature|R], Res) ->
  +%%     unmarshal_signature(
   
   unmarshal_struct_signature([$)|R], Res) ->
       {Res, R};
  
positive.code: marshal(variant, Value, Pos) when is_integer(Value), Value < 0 ->
      marshal_int_variant(Value, Pos);
  marshal(variant, Value, Pos) when is_integer(Value), Value >= 0 ->
      marshal_uint_variant(Value, Pos).
  
  
  marshal_int_variant(Value, Pos) when Value >= -32768 ->
  
negative.code:     {ok, list_to_tuple(Res), Data2, Pos2};
  %%     {ok, Res, Data2, Pos2};
  
  unmarshal({dict, KeyType, ValueType}, Data, Pos) ->
      {ok, Length, Data1, Pos1} = unmarshal(uint32, Data, Pos),
      {ok, Res, Data2, Pos2} = unmarshal_array({struct, [KeyType, ValueType]}, Length, Data1, Pos1),
      {ok, Res, Data2, Pos2};
  
  unmarshal(variant, Data, Pos) ->
      {ok, Signature, Data1, Pos1} = unmarshal(signature, Data, Pos),
      [Type] = unmarshal_signature(Signature),
  