anchor.diff:  		$A -> parse_sarr(Bytes,Format,Acc);	% schema array
   		$a -> parse_arr(Bytes,Format,Acc);	% dynamic array
   		$O -> parse_sobj(Bytes,Format,Acc);	% schema object
  -		$o -> parse_obj(Bytes,Format,Acc);	% dynamic object
  +		$o -> parse_obj(Bytes,Format,Acc)	% dynamic object
   	end.
   
   %% tag B
  
positive.code: 	parse_object(Values, [ { Key, $a, parse_array(Array,[]) } | Acc ]);
  parse_object(<<Keylen:16/big-integer,Key:Keylen/binary,$o,Count:16/big-integer,Object:Count/binary,Values/binary>>, Acc) ->
  	parse_object(Values, [ { Key, $o, parse_object(Object,[]) } | Acc ]); 	
  parse_array(<<Keylen:16/big-integer,Key:Keylen/binary,_,Values/binary>>, Acc) ->
  	io:format("invalid tag in object~n").
  
  
  
negative.code: %%
  parse(<<Schema:8,Bytes/binary>>, Acc) -> 
  	Format = schema:lookup(Schema),
  	parse(Bytes,Format,Acc).
  
  parse(<<>>,[],Acc) ->
  	lists:reverse(Acc);
  parse(<<>>,_Format,_Acc) ->
  	io:format("incomplete message~n");
  parse(<<Bytes/binary>>,[], Acc ) ->
  	io:format("extra data ~p~n", [ Bytes ]),
  