anchor.diff:  end;
   
   
  -//Repeat order after specified aGroup or repeat self order if no aGroup is specified
  -procedure TKMUnitGroup.OrderRepeat(aGroup: TKMUnitGroup);
  -var Group: TKMUnitGroup;
  -begin
  -  if aGroup = nil then
  -    Group := Self
  -  else
  -  begin
  -    Group := aGroup;
  -    fOrder := Group.fOrder;
  -    if fOrder <> goNone then        //when there is no order, then use own fOrderLoc
  -      fOrderLoc := Group.fOrderLoc; //otherwise - copy from target group
  -  end;
  +//Copy order from specified aGroup
  +procedure TKMUnitGroup.CopyOrderFrom(aGroup: TKMUnitGroup);
  +begin
  +  fOrder := aGroup.fOrder;
  +  if fOrder <> goNone then          //when there is no order, then use own fOrderLoc
  +    fOrderLoc := aGroup.fOrderLoc;  //otherwise - copy from target group
   
     case fOrder of
       goNone:         OrderHalt(False);
  -    goWalkTo:       OrderWalk(Group.fOrderLoc.Loc, False);
  -    goAttackHouse:  if OrderTargetHouse <> nil then OrderAttackHouse(Group.OrderTargetHouse, False);
  -    goAttackUnit:   if OrderTargetUnit <> nil then OrderAttackUnit(Group.OrderTargetUnit, False);
  +    goWalkTo:       OrderWalk(fOrderLoc.Loc, False);
  +    goAttackHouse:  if OrderTargetHouse <> nil then OrderAttackHouse(aGroup.OrderTargetHouse, False);
  +    goAttackUnit:   if OrderTargetUnit <> nil then OrderAttackUnit(aGroup.OrderTargetUnit, False);
       goStorm:        ;
     end;
   end;
  
positive.code:     procedure OrderHalt(aClearOffenders: Boolean);
      procedure OrderLinkTo(aTargetGroup: TKMUnitGroup; aClearOffenders: Boolean);
      procedure OrderNone;
      procedure OrderRepeat; overload;
      procedure OrderRepeat(aGroup: TKMUnitGroup); overload;
      function OrderSplit(aClearOffenders: Boolean; aSplitSingle: Boolean = False): TKMUnitGroup;
      function OrderSplitUnit(aUnit: TKMUnit; aClearOffenders: Boolean): TKMUnitGroup;
      procedure OrderSplitLinkTo(aGroup: TKMUnitGroup; aCount: Word; aClearOffenders: Boolean);
  
negative.code: 
    //Tell both groups to reposition
    OrderRepeat;
    NewGroup.CopyOrderFrom(Self);
  
    Result := NewGroup; //Return the new group in case somebody is interested in it
  end;
  