Решение не проходит валидацию по 3 пункту. Подсказка ментора: "При возникновении исключения InterruptOperationException, в методе main класса CashMachine нужно попрощайся с пользователем в блоке catch используя ConsoleHelper". Исключение выбрасывается в ConsoleHelper.readString() при условии, что введенная строка эквивалентна "EXIT" независимо от регистра, и пробрасывается наверх до main(). В том же методе readString() обрабатывается IOException, хотя я планировал его пробросить и обработать в другом месте, но валик ругался на то что readString() должен пробросить только 1 исключение. В CashMachine все тело метода main() заключено в блок try/catch и отлавливается именно InterruptOperationException, после чего через ConsoleHelper.writeMessage() выводится строка прощания с пользователем и программа завершается. если в try/catch оборачивать не все тело main() а только operation = ConsoleHelper.askOperation(); CommandExecutor.execute(operation); то результат не меняется (естественно в этом случае в catch operation = Operation.EXIT иначе прога будет жить в бесконечном цикле). Теперь, после того как вы прочли это и посмотрели код - поясните мне, что я упускаю из вида, потому как кажется, что перебрал всё.