Rewrite the structure and new version initial upload