第一版本的所有代码