anchor.diff:      function GetDirection: TKMDirection;
       function GetPosition: TKMPoint;
       procedure SetSelected(aValue: TKMUnitWarrior);
  +    function GetSelected: TKMUnitWarrior;
     public
       //Each group can have initial order
       //SendGroup - walk to some location
  
positive.code:       end;
  
    //Keep the selected unit Selected
    if NewGroup.HasMember(fSelected) or aSplitSingle then
      NewGroup.fSelected := fSelected;
  
    //Select single splitted unit
    if aSplitSingle
      and (gGame.ControlledHandIndex = NewGroup.Owner) //Only select unit for player, that issued order (group owner)
      and (gGame.ControlledHandIndex <> -1)
      and (gMySpectator.Selected = Self) then //Selection is still on that group (in MP game there could be a delay, when player could select other target already)
      gMySpectator.Selected := NewGroup;
  
negative.code:   Assert(I <> -1, 'No such member');
  
    if (aMember = fSelected) then
      SelectNearestMember;
  
    fMembers.Delete(I);
  
  