after merge Zhaiqiang code