change the order of these steps