Modify the package structure and refactor