Merge branch 'version3.0' into ArielQian
Refactor the code

Refactor the code and modify the comments
Refactor the code

Change some comments and refactor
Merge branch 'ArielQian' into version3.0