anchor.diff:  insert(VC, C=#clog{at=Id, smallest=bottom, data=Tree}) ->
       Key = pvc_vclock:get_time(Id, VC),
       %% If smallest is bottom, set the first time we get to it
  -    %% We assume that the entries will be added in order
  +    %% IMPORTANT: We assume that the entries will be added in order
       C#clog{smallest=Key, data=gb_trees:insert(Key, VC, Tree)};
   
   insert(VC, C=#clog{at=Id, smallest=Smallest, data=Tree}) ->
  
positive.code:     end;
  
  get_smaller_from_dots(Dots, VC, #clog{data=Tree}) ->
      %% TODO(borja/misc): Can we optimize here? (smallest > VC[Id])
      case catch get_smaller_from_dots(Dots, VC, gb_trees:balance(Tree), pvc_vclock:new()) of
          {found, Max} ->
              Max;
  
negative.code:             {Smallest, Tree};
          true ->
              StartingAt = Smallest,
              %% Here smallest will never be bottom, there's always some data
              Edge = Smallest + (Size - ?MAX_VERSIONS),
              NewTree = gc_tree(StartingAt, Edge, Tree),
              {Edge, NewTree}
  