根据需求部分细节修改