runner does not switch if it doesnt need to