updated order of execution