anchor.diff:  	     -234.4355, 1.0e-34, 1.0e64,
   	     [23, 234, 0.23],
   	     [0,42,<<"sum">>, [1,2]], [1,42, nil, [3]],
  -	     {[{1,2},{<<"hoge">>,nil}]},
  +	     {[{1,2},{<<"hoge">>,nil}]}, % map
   	     -234, -50000,
   	     42
   	    ],
  -    Port = open_port({spawn, "ruby testcase_generator.rb"}, [binary]),
  -    timer:sleep(1),
       receive
  -	{Port, {data, Data}}->
  -	    compare_all(Tests, msgpack:unpack_all(Data))
  -    after 1024-> ?assert(false)   end,
  +	{Port, {data, Data}}-> compare_all(Tests, msgpack:unpack_all(Data))
  +    after 1024-> ?assert(false)  end,
       port_close(Port).
   
   other_test()->
  
positive.code:     << 16#D3:8, N:64/big-signed-integer-unit:1 >>.
  
  % float : erlang's float is always IEEE 754 64bit format.
  %pack_float(F) when is_float(F)->
  %    << 16#CA:8, F:32/big-float-unit:1 >>.
  %    pack_double(F).
  % double
  
negative.code: 
  % unpack then all
  -spec unpack_(Bin::binary()) -> {msgpack_term(), binary()} | {error, reason()} | no_return().
  unpack_(Bin) when not is_binary(Bin)->    throw(badarg);
  unpack_(Bin) when bit_size(Bin) >= 8 ->
      case Bin of
  % ATOMS
  