code: def pop(self, index=None):
          
          if index is None:
              index = len(self._col_list) - 1
  
          key = self._get_object_key(self._col_list[index])
          del self._col_dict[key]
  
          return self._col_list.pop(index)
docs: L.pop([index]) -> item -- remove and return item at index (default last).
          Raises IndexError if list is empty or index is out of range.