activefgXYmarkfXfgXYactivefX1X2factiveX1X2activegXgactiveXfmarkX1X2markfX1X2gmarkXmarkgXproperfX1X2fproperX1properX2propergXgproperXfokX1okX2okfX1X2gokXokgXtopmarkXtopproperXtopokXtopactiveXactivefgXYfXfgXYactivefX1X2factiveX1X2activefX1X2activeX1activegXgactiveXactivegXactiveXfmarkX1X2fX1X2gmarkXgXproperfX1X2fproperX1properX2properfX1X2properX1properfX1X2properX2propergXgproperXpropergXproperXfokX1okX2fX1X2gokXgXtopmarkXtopproperXtopmarkXproperXtopokXtopactiveXtopokXactiveXtruetopokXtopactiveXtopmarkXtopproperXtrue12345678910111top111ok1111active111mark1111proper111f211g1111top111topokXactiveXfalse2457910activegXactiveXactivefX1X2activeX1true257891active111g1111f2111active111mark1111proper1111ok111top111activefgXYfXfgXYfalse23578activefX1X2factiveX1X2false3567activegXgactiveXfalse5topmarkXproperXfalse4properfX1X2properX2properfX1X2properX1propergXproperXtrue31proper111f21112g1111active1111mark11proper111ok111top10properfX1X2properX2properfX1X2properX11proper111f211112active111g10mark10proper111ok10top10properfX1X2fproperX1properX2false3fokX1okX2fX1X2fmarkX1X2fX1X2true21f212ok1111mark10active10f211g111proper10top111fmarkX1X2fX1X21f211mark1111active1111f211g1111proper111ok10top10propergXgproperXfalsegokXgXgmarkXgXtrue1g111ok111mark1111active111f211g1111proper111top111gokXgX1g111ok1111active1111f2111g111mark11proper111top10