refactoring
copyright