anchor.diff:    // Top initialization
     Node := StartNode.Next;
     Store.Top.Node := Node;
  -  Node.Prev := StartNode;
  -  Store.Top.SortValue := SORTVALUE_LIMIT;
  +  Store.Top.SortValue := SORTVALUE_LIMIT{Node.SortValue};
   
     // finding loop from Start to Finish
     Node := StartNode;
  
positive.code:     function GetTile(const X, Y: Word): Byte;
      procedure SetTile(const X, Y: Word; Value: Byte);
      procedure GrowNodeAllocator(var Buffer: TCPFInfo);
      function CalculateHeuristics(const Start, Finish: TPoint): NativeInt;
      function AllocateHeuristedNode(const X, Y: NativeInt): PCPFNode;
  //    procedure ClearMapCells(Node: PCPFNode; Count: NativeUInt); overload;
  //    procedure ClearMapCells(Node: PCPFNode{as list}); overload;
      function DoFindPathLoop(StartNode: PCPFNode): PCPFNode;
  
negative.code:   {$endif}
    {$if Defined(DEBUG) and not Defined(CPFLIB)}
  
    // anti hint
    TTileMapPtr(nil).FlushHeuristedNodes(TCPFStart(nil^), TCPFNode(nil^));
    TTileMapPtr(nil).CalculateHeuristics(PPoint(nil)^, PPoint(nil)^);
    TTileMapPtr(nil).AddHeuristedNodes(nil, nil);
    {$ifend}
  