migrating task refactor