code: public void unintern(InternTable table)
    {
      // This implementation is inherited by Identifier and Literal which have no children,
      // but is overridden in Operator, which does.
      refCount--;
      if (refCount < 0)
        throw new IllegalStateException();
      if (refCount == 0)
      {
        Object res = table.remove(this);
        if (res == null)
          throw new IllegalStateException();
      }
    }
docs: Removes this Selector from an InternTable
  
  @param table the InternTable context from which this Selector should be removed