more optimized migration