Наследование listener и чистка кода