Still on the long way of refactoring.