anchor.diff:      end.
   
   
  +point_at(IO, Offset) ->
  +    {ok, _Position} = file:position(IO, {bof, Offset}),
  +    read_point(IO).
  +
  +
   mod(A, B) when A < 0 -> erlang:abs(A) rem B;
   mod(A, B) -> A rem B.
   
  
positive.code:     % read higher point
      % XXX: might be passed in already?
      HighOffset = Higher#archive_header.offset,
      file:position(IO, HighOffset),
      {HighInterval, _} = read_point(IO),
      HighFirstOffset = get_data_point_offset(Higher, LowerStart, HighInterval),
  
      HigherSeconds = Higher#archive_header.seconds,
  
negative.code:             % find highest precision and lower archives to update
              {Archive, LowerArchives} = highest_precision_archive(TimeDiff, Header#metadata.archives),
  
              % read base data point
              {BaseInterval, _Value} = point_at(IO, Archive#archive_header.offset),
              Position = get_data_point_offset(Archive, TimeStamp, BaseInterval),
  
              % write data point based on initial data point
  