В процессе оптимизации LazDiscret2 выяснил, что применение оператора FOR … IN … DO для перечислимых классов внутри циклов с большим число повторений может привести к увеличению времени исполнения. Причины этого показаны в статье.