Why does the new num_id being different mean we should break out? I thought that was already checked in the while function?