Дублирования легко избежать, реализовав всё по 1 разу, а в остальных методах просто вызывать уже реализованные
Специфика задачи такова, что реализация каждого действия А и так не более 1 строчки, поэтому перевызовы создадут кучу оберток над очень скромным содержанием. Именно поэтому такой вариант не очень и устраивает.