some 'refactoring'