anchor.diff:              _ -> 1000
           end,
       spawn_link(fun() -> get_trapping_create(N) end),
  -    All = do_get_trapping(N, []),
  +    All = do_get_trapping(N, [], Chk),
       N = get_trapping_check_result(lists:sort(All), 1),
       erlang:garbage_collect(),
       get_trapping_erase(N),
       chk(Chk).
   
  -do_get_trapping(N, Prev) ->
  -    case persistent_term:get() of
  +do_get_trapping(N, Prev, Chk) ->
  +    case pget(Chk) of
           Prev when length(Prev) >= N ->
               All = [P || {{?MODULE,{get_trapping,_}},_}=P <- Prev],
               case length(All) of
                   N -> All;
  -                _ -> do_get_trapping(N, Prev)
  +                _ -> do_get_trapping(N, Prev, Chk)
               end;
           New ->
               receive after 1 -> ok end,
  -            do_get_trapping(N, New)
  +            do_get_trapping(N, New, Chk)
       end.
   
   get_trapping_create(0) ->
  
positive.code:     _ = [V = persistent_term:get(K) || {K,V} <- Kvs],
  
      %% Now delete the persistent terms in random order.
      collisions_delete(lists:keysort(2, Kvs)),
  
      chk(Chk).
  
  collisions_delete([{Key,Val}|Kvs]) ->
      Val = persistent_term:get(Key),
      true = persistent_term:erase(Key),
      true = lists:sort(persistent_term:get()) =:= lists:sort(Kvs),
      _ = [V = persistent_term:get(K) || {K,V} <- Kvs],
      collisions_delete(Kvs);
  collisions_delete([]) ->
      ok.
  
  colliding_keys() ->
  
negative.code: -module(persistent_term_SUITE).
  -include_lib("common_test/include/ct.hrl").
  
  -export([all/0,suite/0,init_per_suite/1,end_per_suite/1,
  	 basic/1,purging/1,sharing/1,get_trapping/1,
           info/1,info_trapping/1,killed_while_trapping/1,
           off_heap_values/1,keys/1,collisions/1,
  