function分離