fromXconsXn__fromn__sXsel0consXXSXselsNconsXXSselNactivateXSminusX00minussXsYminusXYquot0sY0quotsXsYsquotminusXYsYzWquotXSnilnilzWquotnilXSnilzWquotconsXXSconsYYSconsquotXYn__zWquotactivateXSactivateYSfromXn__fromXsXn__sXzWquotX1X2n__zWquotX1X2activaten__fromXfromactivateXactivaten__sXsactivateXactivaten__zWquotX1X2zWquotactivateX1activateX2activateXXselsNconsXXSselNactivateXSselsNconsXXSactivateXSminussXsYminusXYquotsXsYsquotminusXYsYquotsXsYquotminusXYsYquotsXsYminusXYzWquotconsXXSconsYYSquotXYzWquotconsXXSconsYYSactivateXSzWquotconsXXSconsYYSactivateYSactivaten__fromXfromactivateXactivaten__fromXactivateXactivaten__sXsactivateXactivaten__sXactivateXactivaten__zWquotX1X2zWquotactivateX1activateX2activaten__zWquotX1X2activateX1activaten__zWquotX1X2activateX2trueselsNconsXXSselNactivateXStrue123456789sel21selsNconsXXSactivateXSfalse12345678zWquotconsXXSconsYYSactivateXSactivaten__fromXactivateXactivaten__sXactivateXactivaten__zWquotX1X2zWquotactivateX1activateX2zWquotconsXXSconsYYSactivateYSactivaten__zWquotX1X2activateX1activaten__zWquotX1X2activateX2true12345671zWquot21112cons212activate111n__from111n__s111n__zWquot211112activate111from111s111zWquot211112quot20nil01000minus211zWquotconsXXSconsYYSactivateXSactivaten__fromXactivateXactivaten__sXactivateXzWquotconsXXSconsYYSactivateYSactivaten__fromXfromactivateXactivaten__sXsactivateXactivaten__zWquotX1X2zWquotactivateX1activateX2activateXXzWquotconsXXSconsYYSconsquotXYn__zWquotactivateXSactivateYSsXn__sXfromXconsXn__fromn__sXfromXn__fromXzWquotXSnilnilzWquotnilXSnilzWquotX1X2n__zWquotX1X2zWquotconsXXSconsYYSactivateXSfalse2zWquotconsXXSconsYYSactivateYSfalse1activaten__sXactivateXactivaten__fromXactivateXtrueactivate11zWquotconsXXSconsYYSquotXYfalse1234quotsXsYquotminusXYsYtrue1231quot211s1111minus20000n__s10minusX00minussXsYminusXYquotsXsYminusXYfalse1minussXsYminusXYtrueminus22quotsXsYsquotminusXYsYfalseactivaten__fromXfromactivateXfalseactivaten__sXsactivateXfalse