anchor.diff:           end;
          end;
       }
  -   (* PBufferHigh := @{$ifdef CPUX86}Store.{$endif}Buffer[(NodeInfo shr COUNTER_OFFSET) and $f];
  +    PBufferHigh := @{$ifdef CPUX86}Store.{$endif}Buffer[(NodeInfo shr COUNTER_OFFSET) and $f];
       PBufferBase := @{$ifdef CPUX86}Store.{$endif}Buffer[1];
       PBufferCurrent := @{$ifdef CPUX86}Store.{$endif}Buffer[0];
       while (PBufferBase <> PBufferHigh) do
       begin
         ChildNode := PBufferBase^;
  -      {$ifNdef CPUX86}ChildSortValue := ChildNode.SortValue;{$endif}
  -
  -      Left := PBufferCurrent^;
  -      if (Left.SortValue > {$ifNdef CPUX86}ChildSortValue{$else}ChildNode.SortValue{$endif}) then
  +      ChildSortValue := ChildNode.SortValue;
  +
  +      Node := PBufferCurrent^;
  +      if (Node.SortValue > ChildSortValue) then
         begin
          repeat
  -          PMapNodeBuffer(PBufferCurrent)[1] := Left;
  +          PMapNodeBuffer(PBufferCurrent)[1] := Node;
             if (PBufferCurrent = @{$ifdef CPUX86}Store.{$endif}Buffer[0]) then Break;
   
             Dec(PBufferCurrent);
  -          Left := PBufferCurrent^;
  -          if (Left.SortValue > {$ifNdef CPUX86}ChildSortValue{$else}ChildNode.SortValue{$endif}) then Continue;
  +          Node := PBufferCurrent^;
  +          if (Node.SortValue > ChildSortValue) then Continue;
             Inc(PBufferCurrent);
             Break;
           until (False);
  
positive.code:           Right := ChildNode.Next;
            Left.Next := Right;
            Right.Prev := Left;
          end; *)
        end;
  
        // add child node to buffer
  
negative.code:   next_current, current_initialize;
  const
    NODEPTR_FLAGS = NODEPTR_FLAG_HEURISTED + NODEPTR_FLAG_ALLOCATED;
    PARENT_BITS_CLEAR_MASK = not Cardinal($00ff000 + 7);
    COUNTER_OFFSET = 16;
  type
    TMapNodeBuffer = array[0..7] of PCPFNode;
  