add function migration