complete the project by version 1