3.x to 4.x migration