refactoring dim...