anchor.diff:  end;
   
   
  +//function TKMArmyEvaluation.AttackForceChance(aOponent: TKMHandIndex; aGroups: TKMUnitGroupArray): Single;
  +//var
  +//
  +//begin
  +//  EnemyEval := Evaluation[aOponent];
  +//end;
  +
  +
   // Approximate way how to compute strength of 2 alliances
   function TKMArmyEvaluation.CompareAllianceStrength(aPlayer, aOponent: TKMHandIndex): Single;
   type
  
positive.code:     property Evaluation[aPlayer: TKMHandIndex]: TKMArmyEval read GetEvaluation;
      property AllianceEvaluation[aPlayer: TKMHandIndex; aAlliance: TAllianceType]: TKMArmyEval read GetAllianceStrength;
  
      function CompareAllianceStrength(aPlayer, aOponent: TKMHandIndex): Single;
      procedure UpdateState(aTick: Cardinal);
    end;
  
negative.code: 
  
  procedure TKMArmyEvaluation.Save(SaveStream: TKMemoryStream);
  begin
    SaveStream.WriteA('ArmyEvaluation');
    SaveStream.Write(fEvals, SizeOf(TKMGameEval));
  end;
  
  
  procedure TKMArmyEvaluation.Load(LoadStream: TKMemoryStream);
  begin
    LoadStream.ReadAssert('ArmyEvaluation');
    LoadStream.Read(fEvals, SizeOf(TKMGameEval));
  end;
  
  
  