zee's refactoring