fromXconsXn__fromn__sXsel0consXXSXselsNconsXXSselNactivateXSminusX00minussXsYminusXYquot0sY0quotsXsYsquotminusXYsYzWquotXSnilnilzWquotnilXSnilzWquotconsXXSconsYYSconsquotXYn__zWquotactivateXSactivateYSfromXn__fromXsXn__sXzWquotX1X2n__zWquotX1X2activaten__fromXfromactivateXactivaten__sXsactivateXactivaten__zWquotX1X2zWquotactivateX1activateX2activateXXselsNconsXXSselNactivateXSselsNconsXXSactivateXSminussXsYminusXYquotsXsYsquotminusXYsYquotsXsYquotminusXYsYquotsXsYminusXYzWquotconsXXSconsYYSquotXYzWquotconsXXSconsYYSactivateXSzWquotconsXXSconsYYSactivateYSactivaten__fromXfromactivateXactivaten__fromXactivateXactivaten__sXsactivateXactivaten__sXactivateXactivaten__zWquotX1X2zWquotactivateX1activateX2activaten__zWquotX1X2activateX1activaten__zWquotX1X2activateX2trueselsNconsXXSselNactivateXStrue1234567891sel211s1111cons20activate10n__from10from10n__s10n__zWquot20zWquot20quot20nil00000minus20selsNconsXXSactivateXSfalse12345678zWquotconsXXSconsYYSactivateXSactivaten__fromXactivateXactivaten__sXactivateXactivaten__zWquotX1X2zWquotactivateX1activateX2zWquotconsXXSconsYYSactivateYSactivaten__zWquotX1X2activateX1activaten__zWquotX1X2activateX2true12345671zWquot21112cons212activate111n__from111n__s111n__zWquot211112activate111from111s111zWquot211112quot20nil01000minus211zWquotconsXXSconsYYSactivateXSactivaten__fromXactivateXactivaten__sXactivateXzWquotconsXXSconsYYSactivateYSactivaten__fromXfromactivateXactivaten__sXsactivateXactivaten__zWquotX1X2zWquotactivateX1activateX2activateXXzWquotconsXXSconsYYSconsquotXYn__zWquotactivateXSactivateYSsXn__sXfromXconsXn__fromn__sXfromXn__fromXzWquotXSnilnilzWquotnilXSnilzWquotX1X2n__zWquotX1X2zWquotconsXXSconsYYSactivateXSfalse2zWquotconsXXSconsYYSactivateYSfalse1activaten__sXactivateXactivaten__fromXactivateXtrue1activate111n__s1111n__from1111zWquotconsXXSconsYYSquotXYfalse1234quotsXsYquotminusXYsYtrue1231quot211s1111minus20000n__s10minusX00minussXsYminusXYquotsXsYminusXYfalse1minussXsYminusXYtrue1minus212s1111quotsXsYsquotminusXYsYfalseactivaten__fromXfromactivateXfalseactivaten__sXsactivateXfalse