revert to handling M_PI individually