anchor.diff:      Else.
   
   read_approx(#run{seq=Seq, proj=Proj}, SeedInt) ->
  -    Max = corfurl_sequencer:get(Seq, 0),
  -    %% The sequencer may be lying to us, shouganai.
  -    LPN = (SeedInt rem Max) + 1,
  +    LPN = pick_an_LPN(Seq, SeedInt),
       ?LOG({read, LPN},
            begin
                Res = read_result_mangle(corfurl:read_page(Proj, LPN)),
  
positive.code:          end).
  
  scan_forward(#run{seq=Seq, proj=Proj}, SeedInt, NumPages) ->
      Max = corfurl_sequencer:get(Seq, 0),
      StartLPN = if SeedInt == 1 -> 1;
                    true         -> (SeedInt rem Max) + 1
                 end,
      %% Our job is complicated by the ?LOG() macro, which isn't good enough
      %% for our purpose: we must lie about the starting timestamp, to make
  
negative.code: log_make_result(Pid, Result) ->
      {result, Pid, Result}.
  
  pick_an_LPN(Seq, SeedInt) ->
      Max = corfurl_sequencer:get(Seq, 0),
      %% The sequencer may be lying to us, shouganai.
      if SeedInt > Max -> (SeedInt rem Max) + 1;
         true          -> SeedInt
      end.
  
  -define(LOG(Tag, MkCall),
          event_logger:event(log_make_call(Tag)),
          LOG__Result = MkCall,
  