+ dz3 and small refactoring