add more function for migration