Adding a timeout feature, moved the upgrade set to the bottom