some extensions to support dispid