anchor.diff:    for i:=-LinkRadius to LinkRadius do
       for k:=-LinkRadius to LinkRadius do
       begin
  -      FoundUnit := fPlayers.Player[byte(fOwner)].UnitsHitTest(aLoc.X+i,aLoc.Y+k);
  +      FoundUnit := fPlayers.Player[byte(fOwner)].UnitsHitTest(aLoc.X+i, aLoc.Y+k);
         if (FoundUnit is TKMUnitWarrior) and (TKMUnitWarrior(FoundUnit).fAutoLinkState = wl_Linkable) and
            (FoundUnit.GetUnitType = GetUnitType) then //For initial linking they must be the same type, not just same group type
         begin
           Result := TKMUnitWarrior(FoundUnit);
  -        break;
  +        exit; //@Lewin: I guess it's 'exit' instead of 'break', right?
         end;
       end
   end;
  
positive.code:   //Commanders also tell troops to ask for some food
    if (fCommander = nil) and (fMembers <> nil) then
      for i := 0 to fMembers.Count-1 do
      begin
        TKMUnitWarrior(fMembers.Items[i]).OrderFood;
      end;
    Halt;
  end;
  
  
negative.code:   if not MultipleTypes then
      NewCommander := fMembers.Items[((fMembers.Count+1) div 2)+(min(fUnitsPerRow,(fMembers.Count+1) div 2) div 2)-1];
    fMembers.Remove(NewCommander);
  
    NewCommander.fUnitsPerRow := fUnitsPerRow;
    NewCommander.fTimeSinceHungryReminder := fTimeSinceHungryReminder; //If we are hungry then don't repeat message each time we split, give new commander our counter
    NewCommander.fCommander := nil;
  