def signextend_(self, global_state: GlobalState) -> List[GlobalState]:
        """

        :param global_state:
        :return:
        """
        state = global_state.mstate
        s0, s1 = state.stack.pop(), state.stack.pop()

        try:
            s0 = util.get_concrete_int(s0)
            s1 = util.get_concrete_int(s1)
        except TypeError:
            return []

        if s0 <= 31:
            testbit = s0 * 8 + 7
            if s1 & (1 << testbit):
                state.stack.append(s1 | (TT256 - (1 << testbit)))
            else:
                state.stack.append(s1 & ((1 << testbit) - 1))
        else:
            state.stack.append(s1)

        return [global_state]
def signextend_ ( self , global_state : GlobalState ) -> List [ GlobalState ] : state = global_state . mstate s0 , s1 = state . stack . pop ( ) , state . stack . pop ( ) try : s0 = util . get_concrete_int ( s0 ) s1 = util . get_concrete_int ( s1 ) except TypeError : return [ ] if s0 <= 31 : testbit = s0 * 8 + 7 if s1 & ( 1 << testbit ) : state . stack . append ( s1 | ( TT256 - ( 1 << testbit ) ) ) else : state . stack . append ( s1 & ( ( 1 << testbit ) - 1 ) ) else : state . stack . append ( s1 ) return [ global_state ]
:param global_state:
        :return: