'Pop the top frame from the stack. Return the new stack.'

def pop(self):

    if (self.next is None):
        raise SimEmptyCallStackError('Cannot    pop    a    frame    from    an    empty    call    stack.')
    new_list = self.next.copy()
    if (self.state is not None):
        self.state.register_plugin('callstack', new_list)
        self.state.history.recent_stack_actions.append(CallStackAction(hash(new_list), len(new_list), 'pop', ret_site_addr=self.ret_addr))
    return new_list
