переписано с использованием сервиса