anchor.diff:      end.
   
   add_maybe_gc(T, Data) ->
  -    _Size = ets:info(T, size),
  -    %TODO: add gc here
  +    Size = ets:info(T, size),
  +    GC_Threshold = gc_threshold(),
  +    if
  +        Size >= GC_Threshold -> ?SERVER ! {gc, T};
  +        true -> ok
  +    end,
       ets:insert(T, Data).
  +
  +gc_threshold() -> 100000.
   
   new_bucket_with_data(Data = {Id, T, _V, TimeStamp}) ->
       TabStr = "bucket_tab_" ++ integer_to_list(Id) ++ "_" ++ atom_to_list(T),
  
positive.code: get_data2(#bucket{tab = T}) ->
      ets:tab2list(T).
  
  handle_info(_Unknown, State) ->
      {noreply, State}.
  
  terminate(_Reason, _State) ->
      ok.
  
negative.code:     gen_server:call(?SERVER, {get_data, Key}).
  
  init([]) ->
      {ok, #state{tabs=make_buckets()}}.
  
  make_buckets() -> orddict:new().
  