anchor.diff:    {PL} = jd(KVs),
     ets:insert_new(Tab,[{ikey(binary_to_elems(K)),je(V)} || {K,V} <- PL]).
   
  -inserter(Tab,{K,V}) ->
  +inserter(Tab,{Ks,V}) ->
  +  K = ikey(Ks),
     case ets:insert_new(Tab,{K,V}) of
       false-> throw({409,{exists,Tab,K}});
       true -> true
     end.
  +
  +key_getter(Tab) ->
  +  ets:foldr(fun({K,_},A) -> [elems_to_binary(K)|A] end,[],Tab).
   
   getter(Tab,Key) ->
     case ets:select(Tab,[{{Key,'_'},[],['$_']}]) of
  
positive.code:   ?assertEqual({200,"true"},
                 rets_client:put(localhost,tibbe,ddd,[{a,"A"},{b,b},{c,123.3}])),
    ?assertEqual({200,"AAA"},
                 rets_client:get(localhost,tibbe,aaa)),
    ?assertEqual({200,bBbB},
                 rets_client:get(localhost,tibbe,bbb)),
    ?assertEqual({200,123.1},
  
negative.code: lelem("_") -> '_';
  lelem(E)   -> l2b(E).
  
  %% exporting keys
  elems_to_binary(T) ->
    list_to_binary(join(tuple_to_list(T),<<"/">>)).
  
  join([E],_) -> [E];
  join([E|R],D) -> [E,D|join(R,D)].
  
  %% importing keys
  binary_to_elems(B) ->
    string:tokens(binary_to_list(B),"/").
  
  