half00halfs00halfssxshalfxle0ytruelesx0falselesxsylexyinc00incsxsincxlogxlog2x0log2xyiflexs0xincyiftruexsyyiffalsexylog2halfxyhalfssxhalfxlesxsylexyincsxincxlogxlog2x0log2xyincylog2xylexs0log2xyiflexs0xincyiffalsexyhalfxiffalsexylog2halfxytruelogxlog2x0falseiffalsexylog2halfxylog2xyiflexs0xincytrueiffalsexyhalfxfalsehalfssxhalfxtruehalf11log2xylexs0falselesxsylexytruele22log2xyincyfalseincsxincxtrueinc11