merge from qii/weiciyuan