+x0x+xsys+xy*x00*xsy+*xyxgex0truege0syfalsegesxsygexy-x0x-sxsy-xyfactxiffactxgexss0iffactxtrue*xfact-xs0iffactxfalses0+xsy+xy*xsy*xy*xsy+*xyxgesxsygexy-sxsy-xyfactxgexss0factxiffactxgexss0iffactxtrue-xs0iffactxtruefact-xs0iffactxtrue*xfact-xs0trueiffactxtruefact-xs0factxiffactxgexss0trueiffactxtrue*xfact-xs0false*xsy*xytrue*xsy+*xyxfalse+xsy+xytrueiffactxtrue-xs0false-sxsy-xytruefactxgexss0falsegesxsygexytrue