anchor.diff:    public
       constructor Create(aPlayer: TKMHandIndex; aPredictor: TKMCityPredictor);
       destructor Destroy(); override;
  +    procedure Save(SaveStream: TKMemoryStream);
  +    procedure Load(LoadStream: TKMemoryStream);
  +    procedure SyncLoad();
   
       property Planner: TKMCityPlanner read fPlanner;
       property WorkersPos: TKMPointArray read fWorkersPos;
  
positive.code:     procedure LockHouseLoc(aHT: TKMHouseType; aLoc: TKMPoint);
      procedure UnlockHouseLoc(aHT: TKMHouseType; aLoc: TKMPoint);
  
      procedure Save(SaveStream: TKMemoryStream);
      procedure Load(LoadStream: TKMemoryStream);
  
      procedure LogStatus(var aBalanceText: UnicodeString);
      procedure Paint();
  
negative.code:   I, Node1Idx, Node2Idx, HouseIdx: Integer;
    Loc: TKMPoint;
  begin
    Result := cs_NoNodeAvailable;
    FieldsComplete := False;
    // Find at least 2 non active build nodes
    Node1Idx := -1;
  