anchor.diff:            page_size = 0 :: integer(),
             run :: #run{}
            }).
  +
  +%% Model testing things:
  +%% Define true to fake bad behavior that model **must** notice & fail!
  +
  +-ifndef(TRIP_no_append_duplicates).
  +-define(TRIP_no_append_duplicates, false).
  +-endif.
  +-ifndef(TRIP_bad_read).
  +-define(TRIP_bad_read, false).
  +-endif.
  +-ifndef(TRIP_bad_scan_forward).
  +-define(TRIP_bad_scan_forward, false).
  +-endif.
   
   initial_state() ->
       #state{}.
  
positive.code:                           PidI = {self(), I},
                            event_logger:event(log_make_call(PidI, {read, LPN}),
                                               TS1),
                            Pm = read_result_mangle(P),
                            event_logger:event(log_make_result(PidI, Pm), TS2)
                        end || {{LPN, P}, I} <- PageIs],
                       Ps = [{LPN, read_result_mangle(P)} ||
  
negative.code:              end
           end).
  
  perhaps_trip_append_page(false, Res, _Page) ->
      Res;
  perhaps_trip_append_page(true, {ok, LPN}, _Page) when LPN > 3 ->
      io:format(user, "TRIP: append_page\n", []),
      {ok, 3};
  perhaps_trip_append_page(true, Else, _Page) ->
      Else.
  
  perhaps_trip_read_approx(false, Res, _LPN) ->
      Res;
  perhaps_trip_read_approx(true, _Res, 3 = LPN) ->
      io:format(user, "TRIP: read_approx LPN ~p", [LPN]),
      <<"FAKE!">>;
  perhaps_trip_read_approx(true, Res, _LPN) ->
      Res.
  
  perhaps_trip_scan_forward(false, Res, _EndLPN) ->
      Res;
  perhaps_trip_scan_forward(true, _Res, 20) ->
      io:format(user, "TRIP: scan_forward\n", []),
      <<"magic number bingo, you are a winner">>;
  perhaps_trip_scan_forward(true, Res, _EndLPN) ->
      Res.
  
  -endif. % PULSE
  -endif. % TEST
  
  