editor refactored