public static StatisticalSummary test(Agent controller, EvaluationOptions options, int seed) {
   StatisticalSummary ss = new StatisticalSummary();
   int kills = 0;
   int timeLeft = 0;
   int marioMode = 0;
   float marioStatus = 0;
   for (int i = 0; i < numberOfTrials; i++) {
     options.setLevelLength(200 + (i * 128) + (seed % (i + 1)));
     options.setLevelType(i % 3);
     options.setLevelRandSeed(seed + i);
     controller.reset();
     options.setAgent(controller);
     Evaluator evaluator = new Evaluator(options);
     EvaluationInfo result = evaluator.evaluate().get(0);
     ss.add(result.computeDistancePassed());
     kills += result.computeKillsTotal();
     timeLeft += result.timeLeft;
     marioMode += result.marioMode;
     marioStatus += result.marioStatus;
   }
   killsSum += kills;
   marioStatusSum += marioStatus;
   timeLeftSum += timeLeft;
   marioModeSum += marioMode;
   return ss;
 }