activeeq00marktrueactiveeqsXsYmarkeqXYactiveeqXYmarkfalseactiveinfXmarkconsXinfsXactivetake0XmarknilactivetakesXconsYLmarkconsYtakeXLactivelengthnilmark0activelengthconsXLmarkslengthLactiveinfXinfactiveXactivetakeX1X2takeactiveX1X2activetakeX1X2takeX1activeX2activelengthXlengthactiveXinfmarkXmarkinfXtakemarkX1X2marktakeX1X2takeX1markX2marktakeX1X2lengthmarkXmarklengthXpropereqX1X2eqproperX1properX2proper0ok0propertrueoktruepropersXsproperXproperfalseokfalseproperinfXinfproperXproperconsX1X2consproperX1properX2propertakeX1X2takeproperX1properX2properniloknilproperlengthXlengthproperXeqokX1okX2okeqX1X2sokXoksXinfokXokinfXconsokX1okX2okconsX1X2takeokX1okX2oktakeX1X2lengthokXoklengthXtopmarkXtopproperXtopokXtopactiveXactiveeqsXsYeqXYactiveinfXsXactiveinfXinfsXactiveinfXconsXinfsXactivetakesXconsYLtakeXLactivetakesXconsYLconsYtakeXLactivelengthconsXLlengthLactivelengthconsXLslengthLactiveinfXactiveXactiveinfXinfactiveXactivetakeX1X2activeX1activetakeX1X2takeactiveX1X2activetakeX1X2activeX2activetakeX1X2takeX1activeX2activelengthXactiveXactivelengthXlengthactiveXinfmarkXinfXtakemarkX1X2takeX1X2takeX1markX2takeX1X2lengthmarkXlengthXpropereqX1X2properX2propereqX1X2properX1propereqX1X2eqproperX1properX2propersXproperXpropersXsproperXproperinfXproperXproperinfXinfproperXproperconsX1X2properX2properconsX1X2properX1properconsX1X2consproperX1properX2propertakeX1X2properX2propertakeX1X2properX1propertakeX1X2takeproperX1properX2properlengthXproperXproperlengthXlengthproperXeqokX1okX2eqX1X2sokXsXinfokXinfXconsokX1okX2consX1X2takeokX1okX2takeX1X2lengthokXlengthXtopmarkXproperXtopmarkXtopproperXtopokXactiveXtopokXtopactiveXtruetopokXtopactiveXtopmarkXtopproperXtruetopokXactiveXfalseactiveinfXactiveXactivetakeX1X2activeX1activetakeX1X2activeX2activelengthXactiveXtrueactive11activelengthXlengthactiveXfalseactivetakeX1X2takeX1activeX2falseactivetakeX1X2takeactiveX1X2falseactiveinfXinfactiveXfalseactivelengthconsXLslengthLfalseactivelengthconsXLlengthLfalseactivetakesXconsYLconsYtakeXLfalseactivetakesXconsYLtakeXLfalseactiveinfXconsXinfsXfalseactiveinfXinfsXfalseactiveinfXsXfalseactiveeqsXsYeqXYfalsetopmarkXproperXfalsepropereqX1X2properX2propereqX1X2properX1propersXproperXproperinfXproperXproperconsX1X2properX2properconsX1X2properX1propertakeX1X2properX2propertakeX1X2properX1properlengthXproperXtrueproper11properlengthXlengthproperXfalselengthmarkXlengthXlengthokXlengthXtruelength11propertakeX1X2takeproperX1properX2falsetakemarkX1X2takeX1X2takeX1markX2takeX1X2takeokX1okX2takeX1X2truetake22takemarkX1X2takeX1X2take21properconsX1X2consproperX1properX2falseconsokX1okX2consX1X2truecons22properinfXinfproperXfalseinfmarkXinfXinfokXinfXtrueinf11propersXsproperXfalsesokXsXtrues11propereqX1X2eqproperX1properX2falseeqokX1okX2eqX1X2trueeq22