anchor.diff:  ets_do({match_delete, Tab, Pattern}) -> ets:match_delete(Tab, Pattern);
   ets_do({info, Tab}) -> [{P,ets:info(Tab,P)}
   			|| P <- [name, type, size, named_table, keypos, protection]];
  -ets_do({key_walk, Tab, Dir}) -> sort_if_unordered(key_walk(Tab, Dir), Tab).
  +ets_do({key_walk, Tab, Dir}) -> sort_if_unordered(key_walk(Tab, Dir), Tab);
  +ets_do({match_limit_walk, Tab, Pattern, Limit}) ->
  +    sort_if_unordered(cont_walk(match(Tab, Pattern, Limit), fun match/1), Tab).
   
   
   sort_if_unordered(L, Tab) ->
  
positive.code:     Acc;
  key_walk(Tab, Key, NextFun, Acc) ->
      key_walk(Tab, NextFun(Tab,Key), NextFun, [Key | Acc]).
  
  %% ===========================================
  %% Run erlang:Fun(Args) here
  
negative.code: 	   {insert_new, table_name(), table_tuple()},
  	   {insert_new, table_name(), much_smaller(list(table_tuple()))},
  	   {lookup, table_name(), table_key()},
  	   {lookup_element, table_name(), table_key(), much_smaller(int())},
  	   {member, table_name(), table_key()},
  	   {delete, table_name()},
  	   {delete, table_name(), table_key()},
  	   {match_object, table_name(), much_smaller(table_tuple_pattern())},
  	   {match_delete, table_name(), much_smaller(table_tuple_pattern())},
  	   {info, table_name()},
  	   {key_walk, table_name(), ?SUCHTHAT(X, oneof([forward, backward]), X/=backward)},  % Implementation of prev & last is missing yet
  	   {match_limit_walk, table_name(), much_smaller(table_tuple_pattern()), much_smaller(int())}  % Implementation of prev & last is missing yet
  	  ]).
  
  any2() ->
  