anchor.diff:              {_, _} = internal_read(Key, Type, SnapshotTime, ignore, OpsCache, SnapshotCache, true),
   	    %% Have to get the new ops dict because the interal_read can change it
   	    Length1 = ets:lookup_element(OpsCache, Key, 2),
  -	    true = ets:update_element(OpsCache, Key, [{Length1+4,{NewId,DownstreamOp}}, {2,Length1+1}]);
  +	    true = ets:update_element(OpsCache, Key, [{Length1+?FIRST_OP,{NewId,DownstreamOp}}, {2,Length1+1}]);
           false ->
  -	    true = ets:update_element(OpsCache, Key, [{Length + 4, {NewId,DownstreamOp}}, {2,Length+1}])
  +	    true = ets:update_element(OpsCache, Key, [{Length+?FIRST_OP,{NewId,DownstreamOp}}, {2,Length+1}])
       end.
   
   
  
positive.code: %% So can add a stop function to ordered_filter
  %% Or can have the filter function return a tuple, one vale for stopping
  %% one for including
      Res = lists:filter(fun({_OpId,Op}) ->
  			       OpCommitTime=Op#clocksi_payload.commit_time,
  			       (belongs_to_snapshot_op(Threshold,OpCommitTime,Op#clocksi_payload.snapshot_time))
  		       end, OpsDict),
      NewOps = case Res of
  		 [] ->
  		     [First|_Rest] = OpsDict,
  		     [First];
  		 _ ->
  		     Res
  	     end,
      {length(NewOps),NewOps}.
  
  %% @doc Insert an operation and start garbage collection triggered by writes.
  %% the mechanism is very simple; when there are more than OPS_THRESHOLD
  
negative.code: 		    [] ->
  			{0, [], LatestSnapshot1,SnapshotCommitTime1,IsFirst1};
  		    [Tuple] ->
  			{Key,Length1,_OpId,AllOps} = tuple_to_key(Tuple),
  			{Length1, AllOps, LatestSnapshot1, SnapshotCommitTime1, IsFirst1}
  		end
  	end,
      case Length of
  