def unpack(cls, string):

        ret = []
        for i in range(len(string) / 2):
            (n, v) = ord(string[i*2]), ord(string[i*2+1])

            # Is there a bitwise operation to do this?
            if v == 0xFFFF:
                v = -1

            ret += [v] * n

        return ret
Decodes the Facebook signed_request parts
dataset/ETHPy150Open AppScale/appscale/AppServer/google/appengine/_internal/antlr3/dfa.py/DFA.unpack--crossover with--dataset/ETHPy150Open demianbrecht/flask-canvas/flask_canvas.py/_decode