提取共有函数