anchor.diff:      property Evaluation[aPlayer: TKMHandIndex]: TKMArmyEval read GetEvaluation;
       property AllianceEvaluation[aPlayer: TKMHandIndex; aAlliance: TKMAllianceType]: TKMArmyEval read GetAllianceStrength;
   
  -    //function AttackForceChance(aOponent: TKMHandIndex; aGroups: TKMUnitGroupArray): Single;
  +    function CompareStrength(aPlayer, aOponent: TKMHandIndex): Single;
       function CompareAllianceStrength(aPlayer, aOponent: TKMHandIndex): Single;
       procedure UpdateState(aTick: Cardinal);
     end;
  
positive.code: 
  
  procedure TKMArmyEvaluation.UpdateState(aTick: Cardinal);
  var
    PL: TKMHandIndex;
  begin
    PL := aTick mod gHands.Count;
    if gHands[PL].Enabled then
      EvaluatePower(PL, True);
  end;
  
  
negative.code: procedure TKMArmyEvaluation.Save(SaveStream: TKMemoryStream);
  begin
    SaveStream.WriteA('ArmyEvaluation');
    SaveStream.Write(fEvals, SizeOf(fEvals));
  end;
  
  
  procedure TKMArmyEvaluation.Load(LoadStream: TKMemoryStream);
  begin
    LoadStream.ReadAssert('ArmyEvaluation');
    LoadStream.Read(fEvals, SizeOf(fEvals));
  end;
  
  
  