flattennilnilflattenunitxflattenxflatten++xy++flattenxflattenyflatten++unitxy++flattenxflattenyflattenflattenxflattenxrevnilnilrevunitxunitxrev++xy++revyrevxrevrevxx++xnilx++nilyy++++xyz++x++yz1rev1110++211120unit1111flatten1110nil02flattennilnilflatten++xy++flattenxflattenyflattenflattenxflattenxrevnilnilrevunitxunitxrev++xy++revyrevxrevrevxx++++xyz++x++yz1rev1212++211122unit1115flatten1410nil00flattennilnilflattenflattenxflattenxrev++xy++revyrevx++++xyz++x++yz1rev1411++211121flatten1210nil00flattennilnilflattenflattenxflattenx++++xyz++x++yz1++221126flatten1110nil01flattennilnilflattenflattenxflattenx1flatten1211nil00