activefgXYmarkfXfgXYactivefX1X2factiveX1X2activegXgactiveXfmarkX1X2markfX1X2gmarkXmarkgXproperfX1X2fproperX1properX2propergXgproperXfokX1okX2okfX1X2gokXokgXtopmarkXtopproperXtopokXtopactiveXactivefgXYfXfgXYactivefX1X2activeX1activefX1X2factiveX1X2activegXactiveXactivegXgactiveXfmarkX1X2fX1X2gmarkXgXproperfX1X2properX2properfX1X2properX1properfX1X2fproperX1properX2propergXproperXpropergXgproperXfokX1okX2fX1X2gokXgXtopmarkXproperXtopmarkXtopproperXtopokXactiveXtopokXtopactiveXtruetopokXtopactiveXtopmarkXtopproperXtrue1top11010top1412ok1114proper1010mark1013active1114f211020g1110topokXtopactiveX1top1110top1210ok1114proper1010mark1010active1010f211020g1210topokXactiveXfalseactivefX1X2activeX1activegXactiveXtrue1active1510top1011ok1110proper1110mark1010active1811f271024g1110activegXactiveX1active1219top1010ok1016proper1416mark1214active1110f2810214g1214activegXgactiveXfalseactivefX1X2factiveX1X2falseactivefgXYfXfgXYfalsetopmarkXproperXfalseproperfX1X2properX2properfX1X2properX1propergXproperXtrue1proper1818top1011ok1110proper1810mark1010active1512f271223g1111propergXgproperXfalsegmarkXgXgokXgXtrue1g1618top1018ok1110proper1410mark1115active1410f281020g1111gokXgX1g1410top1810ok1415proper1010mark1010active1010f241020g1410properfX1X2fproperX1properX2falsefmarkX1X2fX1X2fokX1okX2fX1X2true1f201120top1014ok1819proper1714mark14110active1110f241022g1514fmarkX1X2fX1X21f211024top1014ok1010proper1712mark1411active1410f211020g1712