reinstate the original (and dangerous) autopush in C