описана реализация