anchor.diff:        N, fun(Acc) -> maps:put(O, V, Acc) end,
         maps:from_list([{O, V}]), T).
   
  -new(Size) ->
  -    {ok, H} = mcache:new(Size, []),
  +new(Size, Opts) ->
  +    {ok, H} = mcache:new(Size, Opts),
       {H, #{}, []}.
   
   insert({H, T, Ds}, N, O, V) ->
  
positive.code: 
  prop_limit_ok() ->
      ?FORALL(
         MaxSize, c_size(),
         ?FORALL(Cache, cache(MaxSize),
                 begin
                     %% io:format("~p~n", [Cache]),
                     {H, _, _} = eval(Cache),
  
negative.code: val() ->
      ?LET(N, nat(),  <<N:64>>).
  
  cache(MaxSize, Opts) ->
      ?SIZED(Size, cache(MaxSize, Opts, Size)).
  
  
  key() ->
  