полностью скопировал из IKO DrawRange() и GenerationRange()