predict, plan, execute