leq0ytrueleqsx0falseleqsxsyleqxyiftruexyxiffalsexyy-x0x-sxsy-xymod0y0modsx00modsxsyifleqyxmod-sxsysysxleqsxsyleqxy-sxsy-xymodsxsy-sxsymodsxsymod-sxsysymodsxsyleqyxmodsxsyifleqyxmod-sxsysysxtruemodsxsymod-sxsysytruemodsxsyifleqyxmod-sxsysysxfalsemodsxsyleqyxfalseleqsxsyleqxytruemodsxsy-sxsyfalse-sxsy-xytrue