shuffling around order of things in predP helps some
nuking p ? e1 : e2 form appears to give some speedup; lets see what tests fail