plus0xxplussxysplusxytimes0y0timessxyplusytimesxypsxxp00minusx0xminus0x0minusxsypminusxyisZero0trueisZerosxfalsefacIterxyifisZeroxminusxs0ytimesyxiftruexyzyiffalsexyzfacIterxzfactorialxfacIterxs0plussxyplusxytimessxytimesxytimessxyplusytimesxyminusxsyminusxyminusxsypminusxyfacIterxytimesyxfacIterxyminusxs0facIterxyisZeroxfacIterxyifisZeroxminusxs0ytimesyxiffalsexyzfacIterxzfactorialxfacIterxs0truefactorialxfacIterxs0falsefacIterxyifisZeroxminusxs0ytimesyxiffalsexyzfacIterxztruefacIterxyisZeroxfalsefacIterxyminusxs0falseminusxsyminusxytrueminus22minusxsypminusxyfalsefacIterxytimesyxfalsetimessxytimesxytruetimes21timessxyplusytimesxyfalseplussxyplusxytrueplus21