anchor.diff:    Result := nil;
   
     for I := 0 to fCount - 1 do
  -  if (I <> aExceptHand) and (fHandsList[aExceptHand].Alliances[I] = aAlliance) then
  +  if (I <> aIndex) and (fHandsList[aIndex].Alliances[I] = aAlliance) then
     begin
       U := fHandsList[I].Units.GetClosestUnit(aLoc);
       if (U <> nil)
  
positive.code:     function HousesHitTest(X,Y: Integer): TKMHouse;
      function UnitsHitTest(X, Y: Integer): TKMUnit;
      function GroupsHitTest(X, Y: Integer): TKMUnitGroup;
      function GetClosestUnit(aLoc: TKMPoint; aExceptHand: THandIndex; aAlliance: TAllianceType): TKMUnit;
      function GetClosestHouse(aLoc: TKMPoint; aIndex: THandIndex; aAlliance: TAllianceType; aOnlyCompleted: Boolean = True): TKMHouse;
      function DistanceToEnemyTowers(aLoc: TKMPoint; aIndex: THandIndex): Single;
      procedure GetUnitsInRect(aRect: TKMRect; List: TList);
  
negative.code: end;
  
  
  //Check opponents for closest Unit with given Alliance setting
  function TKMHandsCollection.GetClosestUnit(aLoc: TKMPoint; aIndex: THandIndex; aAlliance: TAllianceType): TKMUnit;
  var
    I: Integer;
    U: TKMUnit;
  