add data migration logic