修正了好多bug（通过测试）