code: def pop(self, *types):
      stack = self.stack
      if not stack:
          raise PSError("stack underflow")
      object = stack[-1]
      if types:
          if object.type not in types:
              raise PSError(
                  "typecheck, expected %s, found %s"
                  % (repr(types), object.type)
              )
      del stack[-1]
      return object
  
imports: from fontTools.misc.textTools import bytechr, byteord, bytesjoin, tobytes, tostr
  from fontTools.misc import eexec
  from .psOperators import PSOperators, ps_StandardEncoding, ps_array, ps_boolean, ps_dict, ps_integer, ps_literal, ps_mark, ps_name, ps_operator, ps_procedure, ps_procmark, ps_real, ps_string
  import re
  from collections.abc import Callable
  from string import whitespace
  import logging
label_desc: Use image node_id 15 for calling the PSInterpreter obj's underlying member method code with example usage: obj.pop() and returns: object