extracted minor classes