code: def pop(self,
              num_items: int,
              type_hint: str) -> Union[int, bytes, Tuple[Union[int, bytes], ...]]:
          
          try:
              if num_items == 1:
                  return next(self._pop(num_items, type_hint))
              else:
                  return tuple(self._pop(num_items, type_hint))
          except IndexError:
              raise InsufficientStack("No stack items")
docs: Pop an item off the stack.
  
          Note: This function is optimized for speed over readability.