refactor
fix copyright