anchor.diff:      LPN = (SeedInt rem Max) + 1,
       ?LOG({read, LPN},
            corfurl:read_page(Proj, LPN)).
  +-else. % TEST_TRIP_bad_read
  +
  +read_approx(#run{seq=Seq, proj=Proj}, SeedInt) ->
  +    Fake = <<"FAKE!">>,
  +    Max = corfurl_sequencer:get(Seq, 0),
  +    LPN = (SeedInt rem Max) + 1,
  +    ?LOG({read, LPN},
  +         if LPN > 4 ->
  +                 io:format("read_approx: ~p -> ~p\n", [LPN, Fake]),
  +                 {ok, Fake};
  +            true ->
  +                 Res = corfurl:read_page(Proj, LPN),
  +                 %% io:format("read_approx: ~p -> ~P\n", [LPN, Res, 6]),
  +                 Res
  +         end).
  +
  +-endif. % TEST_TRIP_bad_read
   
   -endif. % PULSE
   -endif. % TEST
  
positive.code:                        [{lpn, LPN, Pg}]         % Compare here
                 end,
                 Events),
      %%QQQ = -5,
      %%if length(Trace) < QQQ -> io:format("Trace ~p\n", [Trace]), io:format("Events ~p\n", [Events]), io:format("Mods ~p\n", [Mods]); true -> ok end,
  
  
negative.code: 
      InitialDict = orddict:from_list([{LPN, [error_unwritten]} ||
                                          {lpn, LPN, _} <- FinalStatus]),
      {ValuesR, _} =
          lists:mapfoldl(
            fun({TS1, TS2, StEnds}, Dict1) ->
                    Dict2 = lists:foldl(
  