anchor.diff:              XX
               %% Let it crash: error_unwritten
       end.
  +
  +%% read_page(Proj, LPN) ->
  +%%     case corfurl:read_page(Proj, 
  +    
  +
  +%%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% %%%%% 
   
   restart_sequencer(#proj{epoch=Epoch, dir=Dir} = P) ->
       case corfurl:latest_projection_epoch_number(Dir) of
  
positive.code: -define(LONG_TIME, 5*1000).
  %% -define(LONG_TIME, 30*1000).
  
  append_page(P, Page) ->
      append_page(P, Page, 1).
  
  append_page(#proj{seq={Sequencer,_,_}} = P, Page, Retries)
    when Retries < 50 ->
      try
          case corfurl_sequencer:get(Sequencer, 1) of
              {ok, LPN} ->
                  case append_page2(P, LPN, Page) of
                      lost_race ->
                          append_page(P, Page, Retries - 1);
                      error_badepoch ->
                          case poll_for_new_epoch_projection(P) of
                              {ok, NewP} ->
                                  append_page(NewP, Page, Retries-1);
                              Else ->
                                  {Else, P}
                          end;
  
negative.code:         exit:Exit ->
              {failed, incomplete_code, Exit}
      end;
  append_page(Proj, _Page, _Retries) ->
      {error_badepoch, Proj}.
  
  append_page2(Proj, LPN, Page) ->
      case corfurl:write_page(Proj, LPN, Page) of
          ok ->
              {ok, LPN};
          X when X == error_overwritten; X == error_trimmed ->
  