evaluator and random generator