version down, refactoring