 
//*********************************************************************
//*                  Microsoft Windows                               **
//*            Copyright(c) Microsoft Corp., 1996-1997               **
//*********************************************************************

#include <mshtmdid.h>
#include <mshtmcid.h>

cpp_quote("#include <olectl.h>")
cpp_quote("EXTERN_C const GUID CMDSETID_Forms3;")
cpp_quote("EXTERN_C const GUID CLSID_MHTMLDocument;")
cpp_quote("EXTERN_C const GUID CLSID_HTMLPluginDocument;")

cpp_quote("#define SID_SHTMLWindow IID_IHTMLWindow2")


[
    control,
    lcid(0x0000),    // lcid =0; locale independent.
    helpstring("Microsoft HTML Object Library"),
    helpfile("mshtml.hlp"),
    version(4.00),  //  WARNING: This version must match VERSION in dllreg.cxx.
    uuid(3050f1c5-98b5-11cf-bb82-00aa00bdce0b)
]

library MSHTML
{
    #ifndef _MAC
    importlib("stdole2.tlb");
    #else
    importlib("mstdole.tlb");
    #endif

    import "ocidl.idl";
	#include <olectl.h>


[
	odl,
	oleautomation,
	dual,
	uuid(3050f25e-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLStyle : IDispatch
{
	[propput, id(DISPID_IHTMLSTYLE_FONTFAMILY), displaybind, bindable] HRESULT fontFamily([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_FONTFAMILY), displaybind, bindable] HRESULT fontFamily([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_FONTSTYLE), displaybind, bindable] HRESULT fontStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_FONTSTYLE), displaybind, bindable] HRESULT fontStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_FONTVARIANT), displaybind, bindable] HRESULT fontVariant([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_FONTVARIANT), displaybind, bindable] HRESULT fontVariant([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_FONTWEIGHT), displaybind, bindable] HRESULT fontWeight([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_FONTWEIGHT), displaybind, bindable] HRESULT fontWeight([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_FONTSIZE), displaybind, bindable] HRESULT fontSize([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_FONTSIZE), displaybind, bindable] HRESULT fontSize([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_FONT), displaybind, bindable, nonbrowsable] HRESULT font([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_FONT), displaybind, bindable, nonbrowsable] HRESULT font([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_COLOR), displaybind, bindable] HRESULT color([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_COLOR), displaybind, bindable] HRESULT color([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_BACKGROUND), displaybind, bindable, nonbrowsable] HRESULT background([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BACKGROUND), displaybind, bindable, nonbrowsable] HRESULT background([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BACKGROUNDCOLOR), displaybind, bindable] HRESULT backgroundColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_BACKGROUNDCOLOR), displaybind, bindable] HRESULT backgroundColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_BACKGROUNDIMAGE), displaybind, bindable] HRESULT backgroundImage([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BACKGROUNDIMAGE), displaybind, bindable] HRESULT backgroundImage([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BACKGROUNDREPEAT), displaybind, bindable] HRESULT backgroundRepeat([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BACKGROUNDREPEAT), displaybind, bindable] HRESULT backgroundRepeat([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BACKGROUNDATTACHMENT), displaybind, bindable] HRESULT backgroundAttachment([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BACKGROUNDATTACHMENT), displaybind, bindable] HRESULT backgroundAttachment([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BACKGROUNDPOSITION), displaybind, bindable, nonbrowsable] HRESULT backgroundPosition([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BACKGROUNDPOSITION), displaybind, bindable, nonbrowsable] HRESULT backgroundPosition([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BACKGROUNDPOSITIONX), displaybind, bindable] HRESULT backgroundPositionX([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_BACKGROUNDPOSITIONX), displaybind, bindable] HRESULT backgroundPositionX([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_BACKGROUNDPOSITIONY), displaybind, bindable] HRESULT backgroundPositionY([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_BACKGROUNDPOSITIONY), displaybind, bindable] HRESULT backgroundPositionY([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_WORDSPACING), displaybind, bindable] HRESULT wordSpacing([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_WORDSPACING), displaybind, bindable] HRESULT wordSpacing([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_LETTERSPACING), displaybind, bindable] HRESULT letterSpacing([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_LETTERSPACING), displaybind, bindable] HRESULT letterSpacing([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_TEXTDECORATION), displaybind, bindable] HRESULT textDecoration([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_TEXTDECORATION), displaybind, bindable] HRESULT textDecoration([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_TEXTDECORATIONNONE), displaybind, bindable] HRESULT textDecorationNone([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSTYLE_TEXTDECORATIONNONE), displaybind, bindable] HRESULT textDecorationNone([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLSTYLE_TEXTDECORATIONUNDERLINE), displaybind, bindable] HRESULT textDecorationUnderline([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSTYLE_TEXTDECORATIONUNDERLINE), displaybind, bindable] HRESULT textDecorationUnderline([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLSTYLE_TEXTDECORATIONOVERLINE), displaybind, bindable] HRESULT textDecorationOverline([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSTYLE_TEXTDECORATIONOVERLINE), displaybind, bindable] HRESULT textDecorationOverline([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLSTYLE_TEXTDECORATIONLINETHROUGH), displaybind, bindable] HRESULT textDecorationLineThrough([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSTYLE_TEXTDECORATIONLINETHROUGH), displaybind, bindable] HRESULT textDecorationLineThrough([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLSTYLE_TEXTDECORATIONBLINK), displaybind, bindable] HRESULT textDecorationBlink([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSTYLE_TEXTDECORATIONBLINK), displaybind, bindable] HRESULT textDecorationBlink([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLSTYLE_VERTICALALIGN), displaybind, bindable] HRESULT verticalAlign([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_VERTICALALIGN), displaybind, bindable] HRESULT verticalAlign([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_TEXTTRANSFORM), displaybind, bindable] HRESULT textTransform([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_TEXTTRANSFORM), displaybind, bindable] HRESULT textTransform([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_TEXTALIGN), displaybind, bindable] HRESULT textAlign([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_TEXTALIGN), displaybind, bindable] HRESULT textAlign([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_TEXTINDENT), displaybind, bindable] HRESULT textIndent([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_TEXTINDENT), displaybind, bindable] HRESULT textIndent([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_LINEHEIGHT), displaybind, bindable] HRESULT lineHeight([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_LINEHEIGHT), displaybind, bindable] HRESULT lineHeight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_MARGINTOP), displaybind, bindable] HRESULT marginTop([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_MARGINTOP), displaybind, bindable] HRESULT marginTop([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_MARGINRIGHT), displaybind, bindable] HRESULT marginRight([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_MARGINRIGHT), displaybind, bindable] HRESULT marginRight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_MARGINBOTTOM), displaybind, bindable] HRESULT marginBottom([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_MARGINBOTTOM), displaybind, bindable] HRESULT marginBottom([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_MARGINLEFT), displaybind, bindable] HRESULT marginLeft([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_MARGINLEFT), displaybind, bindable] HRESULT marginLeft([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_MARGIN), displaybind, bindable, nonbrowsable] HRESULT margin([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_MARGIN), displaybind, bindable, nonbrowsable] HRESULT margin([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_PADDINGTOP), displaybind, bindable] HRESULT paddingTop([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_PADDINGTOP), displaybind, bindable] HRESULT paddingTop([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_PADDINGRIGHT), displaybind, bindable] HRESULT paddingRight([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_PADDINGRIGHT), displaybind, bindable] HRESULT paddingRight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_PADDINGBOTTOM), displaybind, bindable] HRESULT paddingBottom([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_PADDINGBOTTOM), displaybind, bindable] HRESULT paddingBottom([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_PADDINGLEFT), displaybind, bindable] HRESULT paddingLeft([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_PADDINGLEFT), displaybind, bindable] HRESULT paddingLeft([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_PADDING), displaybind, bindable, nonbrowsable] HRESULT padding([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_PADDING), displaybind, bindable, nonbrowsable] HRESULT padding([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDER), displaybind, bindable, nonbrowsable] HRESULT border([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BORDER), displaybind, bindable, nonbrowsable] HRESULT border([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERTOP), displaybind, bindable] HRESULT borderTop([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERTOP), displaybind, bindable] HRESULT borderTop([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERRIGHT), displaybind, bindable] HRESULT borderRight([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERRIGHT), displaybind, bindable] HRESULT borderRight([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERBOTTOM), displaybind, bindable] HRESULT borderBottom([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERBOTTOM), displaybind, bindable] HRESULT borderBottom([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERLEFT), displaybind, bindable] HRESULT borderLeft([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERLEFT), displaybind, bindable] HRESULT borderLeft([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERCOLOR), displaybind, bindable, nonbrowsable] HRESULT borderColor([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERCOLOR), displaybind, bindable, nonbrowsable] HRESULT borderColor([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERTOPCOLOR), displaybind, bindable] HRESULT borderTopColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERTOPCOLOR), displaybind, bindable] HRESULT borderTopColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERRIGHTCOLOR), displaybind, bindable] HRESULT borderRightColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERRIGHTCOLOR), displaybind, bindable] HRESULT borderRightColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERBOTTOMCOLOR), displaybind, bindable] HRESULT borderBottomColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERBOTTOMCOLOR), displaybind, bindable] HRESULT borderBottomColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERLEFTCOLOR), displaybind, bindable] HRESULT borderLeftColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERLEFTCOLOR), displaybind, bindable] HRESULT borderLeftColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERWIDTH), displaybind, bindable, nonbrowsable] HRESULT borderWidth([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERWIDTH), displaybind, bindable, nonbrowsable] HRESULT borderWidth([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERTOPWIDTH), displaybind, bindable] HRESULT borderTopWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERTOPWIDTH), displaybind, bindable] HRESULT borderTopWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERRIGHTWIDTH), displaybind, bindable] HRESULT borderRightWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERRIGHTWIDTH), displaybind, bindable] HRESULT borderRightWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERBOTTOMWIDTH), displaybind, bindable] HRESULT borderBottomWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERBOTTOMWIDTH), displaybind, bindable] HRESULT borderBottomWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERLEFTWIDTH), displaybind, bindable] HRESULT borderLeftWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERLEFTWIDTH), displaybind, bindable] HRESULT borderLeftWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERSTYLE), displaybind, bindable, nonbrowsable] HRESULT borderStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERSTYLE), displaybind, bindable, nonbrowsable] HRESULT borderStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERTOPSTYLE), displaybind, bindable] HRESULT borderTopStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERTOPSTYLE), displaybind, bindable] HRESULT borderTopStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERRIGHTSTYLE), displaybind, bindable] HRESULT borderRightStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERRIGHTSTYLE), displaybind, bindable] HRESULT borderRightStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERBOTTOMSTYLE), displaybind, bindable] HRESULT borderBottomStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERBOTTOMSTYLE), displaybind, bindable] HRESULT borderBottomStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_BORDERLEFTSTYLE), displaybind, bindable] HRESULT borderLeftStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_BORDERLEFTSTYLE), displaybind, bindable] HRESULT borderLeftStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_WIDTH), displaybind, bindable] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_WIDTH), displaybind, bindable] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_HEIGHT), displaybind, bindable] HRESULT height([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_HEIGHT), displaybind, bindable] HRESULT height([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_STYLEFLOAT), displaybind, bindable] HRESULT styleFloat([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_STYLEFLOAT), displaybind, bindable] HRESULT styleFloat([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_CLEAR), displaybind, bindable] HRESULT clear([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_CLEAR), displaybind, bindable] HRESULT clear([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_DISPLAY), displaybind, bindable] HRESULT display([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_DISPLAY), displaybind, bindable] HRESULT display([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_VISIBILITY), displaybind, bindable] HRESULT visibility([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_VISIBILITY), displaybind, bindable] HRESULT visibility([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_LISTSTYLETYPE), displaybind, bindable] HRESULT listStyleType([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_LISTSTYLETYPE), displaybind, bindable] HRESULT listStyleType([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_LISTSTYLEPOSITION), displaybind, bindable] HRESULT listStylePosition([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_LISTSTYLEPOSITION), displaybind, bindable] HRESULT listStylePosition([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_LISTSTYLEIMAGE), displaybind, bindable] HRESULT listStyleImage([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_LISTSTYLEIMAGE), displaybind, bindable] HRESULT listStyleImage([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_LISTSTYLE), displaybind, bindable, nonbrowsable] HRESULT listStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_LISTSTYLE), displaybind, bindable, nonbrowsable] HRESULT listStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_WHITESPACE), displaybind, bindable] HRESULT whiteSpace([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_WHITESPACE), displaybind, bindable] HRESULT whiteSpace([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_TOP), displaybind, bindable] HRESULT top([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_TOP), displaybind, bindable] HRESULT top([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_LEFT), displaybind, bindable] HRESULT left([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_LEFT), displaybind, bindable] HRESULT left([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLSTYLE_POSITION), displaybind, bindable] HRESULT position([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_ZINDEX), displaybind, bindable] HRESULT zIndex([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLE_ZINDEX), displaybind, bindable] HRESULT zIndex([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLE_OVERFLOW), displaybind, bindable] HRESULT overflow([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_OVERFLOW), displaybind, bindable] HRESULT overflow([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_PAGEBREAKBEFORE), displaybind, bindable] HRESULT pageBreakBefore([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_PAGEBREAKBEFORE), displaybind, bindable] HRESULT pageBreakBefore([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_PAGEBREAKAFTER), displaybind, bindable] HRESULT pageBreakAfter([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_PAGEBREAKAFTER), displaybind, bindable] HRESULT pageBreakAfter([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_CSSTEXT), displaybind, bindable, nonbrowsable] HRESULT cssText([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_CSSTEXT), displaybind, bindable, nonbrowsable] HRESULT cssText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_PIXELTOP), displaybind, bindable, hidden] HRESULT pixelTop([in] long v);
	[propget, id(DISPID_IHTMLSTYLE_PIXELTOP), displaybind, bindable, hidden] HRESULT pixelTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLSTYLE_PIXELLEFT), displaybind, bindable, hidden] HRESULT pixelLeft([in] long v);
	[propget, id(DISPID_IHTMLSTYLE_PIXELLEFT), displaybind, bindable, hidden] HRESULT pixelLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLSTYLE_PIXELWIDTH), displaybind, bindable, hidden] HRESULT pixelWidth([in] long v);
	[propget, id(DISPID_IHTMLSTYLE_PIXELWIDTH), displaybind, bindable, hidden] HRESULT pixelWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLSTYLE_PIXELHEIGHT), displaybind, bindable, hidden] HRESULT pixelHeight([in] long v);
	[propget, id(DISPID_IHTMLSTYLE_PIXELHEIGHT), displaybind, bindable, hidden] HRESULT pixelHeight([retval, out] long * p);
	[propput, id(DISPID_IHTMLSTYLE_POSTOP), displaybind, bindable] HRESULT posTop([in] float v);
	[propget, id(DISPID_IHTMLSTYLE_POSTOP), displaybind, bindable] HRESULT posTop([retval, out] float * p);
	[propput, id(DISPID_IHTMLSTYLE_POSLEFT), displaybind, bindable] HRESULT posLeft([in] float v);
	[propget, id(DISPID_IHTMLSTYLE_POSLEFT), displaybind, bindable] HRESULT posLeft([retval, out] float * p);
	[propput, id(DISPID_IHTMLSTYLE_POSWIDTH), displaybind, bindable] HRESULT posWidth([in] float v);
	[propget, id(DISPID_IHTMLSTYLE_POSWIDTH), displaybind, bindable] HRESULT posWidth([retval, out] float * p);
	[propput, id(DISPID_IHTMLSTYLE_POSHEIGHT), displaybind, bindable] HRESULT posHeight([in] float v);
	[propget, id(DISPID_IHTMLSTYLE_POSHEIGHT), displaybind, bindable] HRESULT posHeight([retval, out] float * p);
	[propput, id(DISPID_IHTMLSTYLE_CURSOR), displaybind, bindable] HRESULT cursor([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_CURSOR), displaybind, bindable] HRESULT cursor([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_CLIP), displaybind, bindable] HRESULT clip([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_CLIP), displaybind, bindable] HRESULT clip([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLE_FILTER), displaybind, bindable] HRESULT filter([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLE_FILTER), displaybind, bindable] HRESULT filter([retval, out] BSTR * p);
	[id(DISPID_IHTMLSTYLE_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLSTYLE_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLSTYLE_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[id(DISPID_IHTMLSTYLE_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f3cf-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLRuleStyle : IDispatch
{
	[propput, id(DISPID_IHTMLRULESTYLE_FONTFAMILY), displaybind, bindable] HRESULT fontFamily([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_FONTFAMILY), displaybind, bindable] HRESULT fontFamily([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_FONTSTYLE), displaybind, bindable] HRESULT fontStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_FONTSTYLE), displaybind, bindable] HRESULT fontStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_FONTVARIANT), displaybind, bindable] HRESULT fontVariant([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_FONTVARIANT), displaybind, bindable] HRESULT fontVariant([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_FONTWEIGHT), displaybind, bindable] HRESULT fontWeight([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_FONTWEIGHT), displaybind, bindable] HRESULT fontWeight([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_FONTSIZE), displaybind, bindable] HRESULT fontSize([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_FONTSIZE), displaybind, bindable] HRESULT fontSize([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_FONT), displaybind, bindable, nonbrowsable] HRESULT font([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_FONT), displaybind, bindable, nonbrowsable] HRESULT font([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_COLOR), displaybind, bindable] HRESULT color([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_COLOR), displaybind, bindable] HRESULT color([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BACKGROUND), displaybind, bindable, nonbrowsable] HRESULT background([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BACKGROUND), displaybind, bindable, nonbrowsable] HRESULT background([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDCOLOR), displaybind, bindable] HRESULT backgroundColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDCOLOR), displaybind, bindable] HRESULT backgroundColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDIMAGE), displaybind, bindable] HRESULT backgroundImage([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDIMAGE), displaybind, bindable] HRESULT backgroundImage([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDREPEAT), displaybind, bindable] HRESULT backgroundRepeat([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDREPEAT), displaybind, bindable] HRESULT backgroundRepeat([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDATTACHMENT), displaybind, bindable] HRESULT backgroundAttachment([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDATTACHMENT), displaybind, bindable] HRESULT backgroundAttachment([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITION), displaybind, bindable, nonbrowsable] HRESULT backgroundPosition([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITION), displaybind, bindable, nonbrowsable] HRESULT backgroundPosition([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITIONX), displaybind, bindable] HRESULT backgroundPositionX([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITIONX), displaybind, bindable] HRESULT backgroundPositionX([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITIONY), displaybind, bindable] HRESULT backgroundPositionY([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_BACKGROUNDPOSITIONY), displaybind, bindable] HRESULT backgroundPositionY([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_WORDSPACING), displaybind, bindable] HRESULT wordSpacing([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_WORDSPACING), displaybind, bindable] HRESULT wordSpacing([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_LETTERSPACING), displaybind, bindable] HRESULT letterSpacing([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_LETTERSPACING), displaybind, bindable] HRESULT letterSpacing([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_TEXTDECORATION), displaybind, bindable] HRESULT textDecoration([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_TEXTDECORATION), displaybind, bindable] HRESULT textDecoration([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONNONE), displaybind, bindable] HRESULT textDecorationNone([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONNONE), displaybind, bindable] HRESULT textDecorationNone([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONUNDERLINE), displaybind, bindable] HRESULT textDecorationUnderline([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONUNDERLINE), displaybind, bindable] HRESULT textDecorationUnderline([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONOVERLINE), displaybind, bindable] HRESULT textDecorationOverline([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONOVERLINE), displaybind, bindable] HRESULT textDecorationOverline([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONLINETHROUGH), displaybind, bindable] HRESULT textDecorationLineThrough([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONLINETHROUGH), displaybind, bindable] HRESULT textDecorationLineThrough([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONBLINK), displaybind, bindable] HRESULT textDecorationBlink([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLRULESTYLE_TEXTDECORATIONBLINK), displaybind, bindable] HRESULT textDecorationBlink([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLRULESTYLE_VERTICALALIGN), displaybind, bindable] HRESULT verticalAlign([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_VERTICALALIGN), displaybind, bindable] HRESULT verticalAlign([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_TEXTTRANSFORM), displaybind, bindable] HRESULT textTransform([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_TEXTTRANSFORM), displaybind, bindable] HRESULT textTransform([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_TEXTALIGN), displaybind, bindable] HRESULT textAlign([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_TEXTALIGN), displaybind, bindable] HRESULT textAlign([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_TEXTINDENT), displaybind, bindable] HRESULT textIndent([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_TEXTINDENT), displaybind, bindable] HRESULT textIndent([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_LINEHEIGHT), displaybind, bindable] HRESULT lineHeight([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_LINEHEIGHT), displaybind, bindable] HRESULT lineHeight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_MARGINTOP), displaybind, bindable] HRESULT marginTop([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_MARGINTOP), displaybind, bindable] HRESULT marginTop([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_MARGINRIGHT), displaybind, bindable] HRESULT marginRight([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_MARGINRIGHT), displaybind, bindable] HRESULT marginRight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_MARGINBOTTOM), displaybind, bindable] HRESULT marginBottom([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_MARGINBOTTOM), displaybind, bindable] HRESULT marginBottom([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_MARGINLEFT), displaybind, bindable] HRESULT marginLeft([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_MARGINLEFT), displaybind, bindable] HRESULT marginLeft([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_MARGIN), displaybind, bindable, nonbrowsable] HRESULT margin([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_MARGIN), displaybind, bindable, nonbrowsable] HRESULT margin([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_PADDINGTOP), displaybind, bindable] HRESULT paddingTop([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_PADDINGTOP), displaybind, bindable] HRESULT paddingTop([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_PADDINGRIGHT), displaybind, bindable] HRESULT paddingRight([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_PADDINGRIGHT), displaybind, bindable] HRESULT paddingRight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_PADDINGBOTTOM), displaybind, bindable] HRESULT paddingBottom([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_PADDINGBOTTOM), displaybind, bindable] HRESULT paddingBottom([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_PADDINGLEFT), displaybind, bindable] HRESULT paddingLeft([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_PADDINGLEFT), displaybind, bindable] HRESULT paddingLeft([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_PADDING), displaybind, bindable, nonbrowsable] HRESULT padding([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_PADDING), displaybind, bindable, nonbrowsable] HRESULT padding([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDER), displaybind, bindable, nonbrowsable] HRESULT border([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDER), displaybind, bindable, nonbrowsable] HRESULT border([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERTOP), displaybind, bindable] HRESULT borderTop([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERTOP), displaybind, bindable] HRESULT borderTop([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERRIGHT), displaybind, bindable] HRESULT borderRight([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERRIGHT), displaybind, bindable] HRESULT borderRight([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOM), displaybind, bindable] HRESULT borderBottom([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOM), displaybind, bindable] HRESULT borderBottom([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERLEFT), displaybind, bindable] HRESULT borderLeft([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERLEFT), displaybind, bindable] HRESULT borderLeft([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERCOLOR), displaybind, bindable, nonbrowsable] HRESULT borderColor([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERCOLOR), displaybind, bindable, nonbrowsable] HRESULT borderColor([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERTOPCOLOR), displaybind, bindable] HRESULT borderTopColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERTOPCOLOR), displaybind, bindable] HRESULT borderTopColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERRIGHTCOLOR), displaybind, bindable] HRESULT borderRightColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERRIGHTCOLOR), displaybind, bindable] HRESULT borderRightColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOMCOLOR), displaybind, bindable] HRESULT borderBottomColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOMCOLOR), displaybind, bindable] HRESULT borderBottomColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERLEFTCOLOR), displaybind, bindable] HRESULT borderLeftColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERLEFTCOLOR), displaybind, bindable] HRESULT borderLeftColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERWIDTH), displaybind, bindable, nonbrowsable] HRESULT borderWidth([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERWIDTH), displaybind, bindable, nonbrowsable] HRESULT borderWidth([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERTOPWIDTH), displaybind, bindable] HRESULT borderTopWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERTOPWIDTH), displaybind, bindable] HRESULT borderTopWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERRIGHTWIDTH), displaybind, bindable] HRESULT borderRightWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERRIGHTWIDTH), displaybind, bindable] HRESULT borderRightWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOMWIDTH), displaybind, bindable] HRESULT borderBottomWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOMWIDTH), displaybind, bindable] HRESULT borderBottomWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERLEFTWIDTH), displaybind, bindable] HRESULT borderLeftWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERLEFTWIDTH), displaybind, bindable] HRESULT borderLeftWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERSTYLE), displaybind, bindable, nonbrowsable] HRESULT borderStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERSTYLE), displaybind, bindable, nonbrowsable] HRESULT borderStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERTOPSTYLE), displaybind, bindable] HRESULT borderTopStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERTOPSTYLE), displaybind, bindable] HRESULT borderTopStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERRIGHTSTYLE), displaybind, bindable] HRESULT borderRightStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERRIGHTSTYLE), displaybind, bindable] HRESULT borderRightStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOMSTYLE), displaybind, bindable] HRESULT borderBottomStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERBOTTOMSTYLE), displaybind, bindable] HRESULT borderBottomStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_BORDERLEFTSTYLE), displaybind, bindable] HRESULT borderLeftStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_BORDERLEFTSTYLE), displaybind, bindable] HRESULT borderLeftStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_WIDTH), displaybind, bindable] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_WIDTH), displaybind, bindable] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_HEIGHT), displaybind, bindable] HRESULT height([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_HEIGHT), displaybind, bindable] HRESULT height([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_STYLEFLOAT), displaybind, bindable] HRESULT styleFloat([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_STYLEFLOAT), displaybind, bindable] HRESULT styleFloat([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_CLEAR), displaybind, bindable] HRESULT clear([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_CLEAR), displaybind, bindable] HRESULT clear([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_DISPLAY), displaybind, bindable] HRESULT display([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_DISPLAY), displaybind, bindable] HRESULT display([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_VISIBILITY), displaybind, bindable] HRESULT visibility([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_VISIBILITY), displaybind, bindable] HRESULT visibility([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_LISTSTYLETYPE), displaybind, bindable] HRESULT listStyleType([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_LISTSTYLETYPE), displaybind, bindable] HRESULT listStyleType([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_LISTSTYLEPOSITION), displaybind, bindable] HRESULT listStylePosition([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_LISTSTYLEPOSITION), displaybind, bindable] HRESULT listStylePosition([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_LISTSTYLEIMAGE), displaybind, bindable] HRESULT listStyleImage([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_LISTSTYLEIMAGE), displaybind, bindable] HRESULT listStyleImage([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_LISTSTYLE), displaybind, bindable, nonbrowsable] HRESULT listStyle([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_LISTSTYLE), displaybind, bindable, nonbrowsable] HRESULT listStyle([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_WHITESPACE), displaybind, bindable] HRESULT whiteSpace([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_WHITESPACE), displaybind, bindable] HRESULT whiteSpace([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_TOP), displaybind, bindable] HRESULT top([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_TOP), displaybind, bindable] HRESULT top([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_LEFT), displaybind, bindable] HRESULT left([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_LEFT), displaybind, bindable] HRESULT left([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLRULESTYLE_POSITION), displaybind, bindable] HRESULT position([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_ZINDEX), displaybind, bindable] HRESULT zIndex([in] VARIANT v);
	[propget, id(DISPID_IHTMLRULESTYLE_ZINDEX), displaybind, bindable] HRESULT zIndex([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLRULESTYLE_OVERFLOW), displaybind, bindable] HRESULT overflow([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_OVERFLOW), displaybind, bindable] HRESULT overflow([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_PAGEBREAKBEFORE), displaybind, bindable] HRESULT pageBreakBefore([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_PAGEBREAKBEFORE), displaybind, bindable] HRESULT pageBreakBefore([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_PAGEBREAKAFTER), displaybind, bindable] HRESULT pageBreakAfter([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_PAGEBREAKAFTER), displaybind, bindable] HRESULT pageBreakAfter([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_CSSTEXT), displaybind, bindable, nonbrowsable] HRESULT cssText([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_CSSTEXT), displaybind, bindable, nonbrowsable] HRESULT cssText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_CURSOR), displaybind, bindable] HRESULT cursor([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_CURSOR), displaybind, bindable] HRESULT cursor([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_CLIP), displaybind, bindable] HRESULT clip([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_CLIP), displaybind, bindable] HRESULT clip([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLRULESTYLE_FILTER), displaybind, bindable] HRESULT filter([in] BSTR v);
	[propget, id(DISPID_IHTMLRULESTYLE_FILTER), displaybind, bindable] HRESULT filter([retval, out] BSTR * p);
	[id(DISPID_IHTMLRULESTYLE_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLRULESTYLE_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLRULESTYLE_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
};
[uuid(3050f285-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLStyle
{
	[default]			interface IHTMLStyle;
};
cpp_quote("EXTERN_C const GUID CLSID_CStyle;")
[uuid(3050f3d0-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLRuleStyle
{
	[default]			interface IHTMLRuleStyle;
};
cpp_quote("EXTERN_C const GUID CLSID_CRuleStyle;")
interface IHTMLElement;
[
	odl,
	oleautomation,
	dual,
	uuid(3050f3ee-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLFiltersCollection : IDispatch
{
	[propget, id(DISPID_IHTMLFILTERSCOLLECTION_LENGTH)] HRESULT length([retval, out] long * p);
	[propget, id(DISPID_IHTMLFILTERSCOLLECTION__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown* * p);
	[id(DISPID_IHTMLFILTERSCOLLECTION_ITEM)] HRESULT item([in] VARIANT* pvarIndex,[retval, out] VARIANT* pvarResult);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f3ed-98b5-11cf-bb82-00aa00bdce0b)
]
interface ICSSFilterSite : IUnknown
{
	[] HRESULT GetElement([retval, out] IHTMLElement** ppElem);
	[] HRESULT FireOnFilterChangeEvent();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f3ec-98b5-11cf-bb82-00aa00bdce0b)
]
interface ICSSFilter : IUnknown
{
	[] HRESULT SetSite([in] ICSSFilterSite* pSink);
	[] HRESULT OnAmbientPropertyChange([in] LONG dispid);
};
[uuid(3050f3ef-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLFiltersCollection
{
	[default]			interface IHTMLFiltersCollection;
};
cpp_quote("EXTERN_C const GUID CLSID_CFilterArray;")
[
	hidden,
	uuid(3050f33c-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLElementEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1ff-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLElement : IDispatch
{
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f3f2-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLDatabinding : IDispatch
{
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f357-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLStyleSheetRule : IDispatch
{
	[propput, id(DISPID_IHTMLSTYLESHEETRULE_SELECTORTEXT)] HRESULT selectorText([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLESHEETRULE_SELECTORTEXT)] HRESULT selectorText([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLSTYLESHEETRULE_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLRuleStyle* * p);
	[propget, id(DISPID_IHTMLSTYLESHEETRULE_READONLY)] HRESULT readOnly([retval, out] VARIANT_BOOL * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f2e5-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLStyleSheetRulesCollection : IDispatch
{
	[propget, id(DISPID_IHTMLSTYLESHEETRULESCOLLECTION_LENGTH)] HRESULT length([retval, out] long * p);
	[id(DISPID_IHTMLSTYLESHEETRULESCOLLECTION_ITEM)] HRESULT item([in] long index,[retval, out] IHTMLStyleSheetRule** ppHTMLStyleSheetRule);
};
[uuid(3050f3ce-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLStyleSheetRule
{
	[default]			interface IHTMLStyleSheetRule;
};
cpp_quote("EXTERN_C const GUID CLSID_CStyleSheetRule;")
[uuid(3050f3cd-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLStyleSheetRulesCollection
{
	[default]			interface IHTMLStyleSheetRulesCollection;
};
cpp_quote("EXTERN_C const GUID CLSID_CStyleSheetRuleArray;")
interface IHTMLStyleSheetsCollection;
[
	odl,
	oleautomation,
	dual,
	uuid(3050f2e3-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLStyleSheet : IDispatch
{
	[propput, id(DISPID_IHTMLSTYLESHEET_TITLE)] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLESHEET_TITLE)] HRESULT title([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLSTYLESHEET_PARENTSTYLESHEET)] HRESULT parentStyleSheet([retval, out] IHTMLStyleSheet* * p);
	[propget, id(DISPID_IHTMLSTYLESHEET_OWNINGELEMENT)] HRESULT owningElement([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLSTYLESHEET_DISABLED)] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSTYLESHEET_DISABLED)] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLSTYLESHEET_READONLY)] HRESULT readOnly([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLSTYLESHEET_IMPORTS)] HRESULT imports([retval, out] IHTMLStyleSheetsCollection* * p);
	[propput, id(DISPID_IHTMLSTYLESHEET_HREF)] HRESULT href([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLESHEET_HREF)] HRESULT href([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLSTYLESHEET_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLSTYLESHEET_ID)] HRESULT id([retval, out] BSTR * p);
	[id(DISPID_IHTMLSTYLESHEET_ADDIMPORT)] HRESULT addImport([in] BSTR bstrURL,[defaultvalue(-1), in] long lIndex,[retval, out] long* plIndex);
	[id(DISPID_IHTMLSTYLESHEET_ADDRULE)] HRESULT addRule([in] BSTR bstrSelector,[in] BSTR bstrStyle,[defaultvalue(-1), in] long lIndex,[retval, out] long* plNewIndex);
	[id(DISPID_IHTMLSTYLESHEET_REMOVEIMPORT)] HRESULT removeImport([in] long lIndex);
	[id(DISPID_IHTMLSTYLESHEET_REMOVERULE)] HRESULT removeRule([in] long lIndex);
	[propput, id(DISPID_IHTMLSTYLESHEET_MEDIA)] HRESULT media([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLESHEET_MEDIA)] HRESULT media([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLESHEET_CSSTEXT)] HRESULT cssText([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLESHEET_CSSTEXT)] HRESULT cssText([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLSTYLESHEET_RULES)] HRESULT rules([retval, out] IHTMLStyleSheetRulesCollection* * p);
};
[uuid(3050f2e4-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLStyleSheet
{
	[default]			interface IHTMLStyleSheet;
};
cpp_quote("EXTERN_C const GUID CLSID_CStyleSheet;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f37e-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLStyleSheetsCollection : IDispatch
{
	[propget, id(DISPID_IHTMLSTYLESHEETSCOLLECTION_LENGTH)] HRESULT length([retval, out] long * p);
	[propget, id(DISPID_IHTMLSTYLESHEETSCOLLECTION__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown* * p);
	[id(DISPID_IHTMLSTYLESHEETSCOLLECTION_ITEM)] HRESULT item([in] VARIANT* pvarIndex,[retval, out] VARIANT* pvarResult);
};
[uuid(3050f37f-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLStyleSheetsCollection
{
	[default]			interface IHTMLStyleSheetsCollection;
};
cpp_quote("EXTERN_C const GUID CLSID_CStyleSheetArray;")
[
	hidden,
	uuid(3050f3cc-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLLinkElementEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLLINKELEMENTEVENTS_ONREADYSTATECHANGE)] void onreadystatechange();
	[id(DISPID_HTMLLINKELEMENTEVENTS_ONLOAD)] void onload();
	[id(DISPID_HTMLLINKELEMENTEVENTS_ONERROR)] void onerror();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f205-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLLinkElement : IDispatch
{
	[propput, id(DISPID_IHTMLLINKELEMENT_HREF), displaybind, bindable] HRESULT href([in] BSTR v);
	[propget, id(DISPID_IHTMLLINKELEMENT_HREF), displaybind, bindable] HRESULT href([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_REL), displaybind, bindable] HRESULT rel([in] BSTR v);
	[propget, id(DISPID_IHTMLLINKELEMENT_REL), displaybind, bindable] HRESULT rel([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_REV), displaybind, bindable] HRESULT rev([in] BSTR v);
	[propget, id(DISPID_IHTMLLINKELEMENT_REV), displaybind, bindable] HRESULT rev([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLLINKELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLLINKELEMENT_READYSTATE)] HRESULT readyState([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([in] VARIANT v);
	[propget, id(DISPID_IHTMLLINKELEMENT_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLLINKELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLLINKELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLLINKELEMENT_STYLESHEET)] HRESULT styleSheet([retval, out] IHTMLStyleSheet* * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_DISABLED), bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLLINKELEMENT_DISABLED), bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_MEDIA), displaybind, bindable] HRESULT media([in] BSTR v);
	[propget, id(DISPID_IHTMLLINKELEMENT_MEDIA), displaybind, bindable] HRESULT media([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f524-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLLinkElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_HREF), displaybind, bindable] HRESULT href([in] BSTR v);
	[propget, id(DISPID_IHTMLLINKELEMENT_HREF), displaybind, bindable] HRESULT href([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_REL), displaybind, bindable] HRESULT rel([in] BSTR v);
	[propget, id(DISPID_IHTMLLINKELEMENT_REL), displaybind, bindable] HRESULT rel([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_REV), displaybind, bindable] HRESULT rev([in] BSTR v);
	[propget, id(DISPID_IHTMLLINKELEMENT_REV), displaybind, bindable] HRESULT rev([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLLINKELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLLINKELEMENT_READYSTATE)] HRESULT readyState([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([in] VARIANT v);
	[propget, id(DISPID_IHTMLLINKELEMENT_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLLINKELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLLINKELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLLINKELEMENT_STYLESHEET)] HRESULT styleSheet([retval, out] IHTMLStyleSheet* * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_DISABLED), bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLLINKELEMENT_DISABLED), bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLLINKELEMENT_MEDIA), displaybind, bindable] HRESULT media([in] BSTR v);
	[propget, id(DISPID_IHTMLLINKELEMENT_MEDIA), displaybind, bindable] HRESULT media([retval, out] BSTR * p);
};
[uuid(3050f277-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLLinkElement
{
	[default]			dispinterface DispIHTMLLinkElement;
	[source, default]	dispinterface HTMLLinkElementEvents;
						interface IHTMLLinkElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CLinkElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f220-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLTxtRange : IDispatch
{
	[propget, id(DISPID_IHTMLTXTRANGE_HTMLTEXT)] HRESULT htmlText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTXTRANGE_TEXT)] HRESULT text([in] BSTR v);
	[propget, id(DISPID_IHTMLTXTRANGE_TEXT)] HRESULT text([retval, out] BSTR * p);
	[id(DISPID_IHTMLTXTRANGE_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement** Parent);
	[id(DISPID_IHTMLTXTRANGE_DUPLICATE)] HRESULT duplicate([retval, out] IHTMLTxtRange** Duplicate);
	[id(DISPID_IHTMLTXTRANGE_INRANGE)] HRESULT inRange([in] IHTMLTxtRange* Range,[retval, out] VARIANT_BOOL* InRange);
	[id(DISPID_IHTMLTXTRANGE_ISEQUAL)] HRESULT isEqual([in] IHTMLTxtRange* Range,[retval, out] VARIANT_BOOL* IsEqual);
	[id(DISPID_IHTMLTXTRANGE_SCROLLINTOVIEW)] HRESULT scrollIntoView([defaultvalue(-1), in] VARIANT_BOOL fStart);
	[id(DISPID_IHTMLTXTRANGE_COLLAPSE)] HRESULT collapse([defaultvalue(-1), in] VARIANT_BOOL Start);
	[id(DISPID_IHTMLTXTRANGE_EXPAND)] HRESULT expand([in] BSTR Unit,[retval, out] VARIANT_BOOL* Success);
	[id(DISPID_IHTMLTXTRANGE_MOVE)] HRESULT move([in] BSTR Unit,[defaultvalue(1), in] long Count,[retval, out] long* ActualCount);
	[id(DISPID_IHTMLTXTRANGE_MOVESTART)] HRESULT moveStart([in] BSTR Unit,[defaultvalue(1), in] long Count,[retval, out] long* ActualCount);
	[id(DISPID_IHTMLTXTRANGE_MOVEEND)] HRESULT moveEnd([in] BSTR Unit,[defaultvalue(1), in] long Count,[retval, out] long* ActualCount);
	[id(DISPID_IHTMLTXTRANGE_SELECT)] HRESULT select();
	[id(DISPID_IHTMLTXTRANGE_PASTEHTML)] HRESULT pasteHTML([in] BSTR html);
	[id(DISPID_IHTMLTXTRANGE_MOVETOELEMENTTEXT)] HRESULT moveToElementText([in] IHTMLElement* element);
	[id(DISPID_IHTMLTXTRANGE_SETENDPOINT)] HRESULT setEndPoint([in] BSTR how,[in] IHTMLTxtRange* SourceRange);
	[id(DISPID_IHTMLTXTRANGE_COMPAREENDPOINTS)] HRESULT compareEndPoints([in] BSTR how,[in] IHTMLTxtRange* SourceRange,[retval, out] long* ret);
	[id(DISPID_IHTMLTXTRANGE_FINDTEXT)] HRESULT findText([in] BSTR String,[defaultvalue(1073741823), in] long count,[defaultvalue(0), in] long Flags,[retval, out] VARIANT_BOOL* Success);
	[id(DISPID_IHTMLTXTRANGE_MOVETOPOINT)] HRESULT moveToPoint([in] long x,[in] long y);
	[id(DISPID_IHTMLTXTRANGE_GETBOOKMARK)] HRESULT getBookmark([retval, out] BSTR* Boolmark);
	[id(DISPID_IHTMLTXTRANGE_MOVETOBOOKMARK)] HRESULT moveToBookmark([in] BSTR Bookmark,[retval, out] VARIANT_BOOL* Success);
	[id(DISPID_IHTMLTXTRANGE_QUERYCOMMANDSUPPORTED)] HRESULT queryCommandSupported([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLTXTRANGE_QUERYCOMMANDENABLED)] HRESULT queryCommandEnabled([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLTXTRANGE_QUERYCOMMANDSTATE)] HRESULT queryCommandState([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLTXTRANGE_QUERYCOMMANDINDETERM)] HRESULT queryCommandIndeterm([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLTXTRANGE_QUERYCOMMANDTEXT)] HRESULT queryCommandText([in] BSTR cmdID,[retval, out] BSTR* pcmdText);
	[id(DISPID_IHTMLTXTRANGE_QUERYCOMMANDVALUE)] HRESULT queryCommandValue([in] BSTR cmdID,[retval, out] VARIANT* pcmdValue);
	[id(DISPID_IHTMLTXTRANGE_EXECCOMMAND)] HRESULT execCommand([in] BSTR cmdID,[defaultvalue(0), in] VARIANT_BOOL showUI,[optional, in] VARIANT value,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLTXTRANGE_EXECCOMMANDSHOWHELP)] HRESULT execCommandShowHelp([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
};
[
	hidden,
	uuid(3050f364-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLFormElementEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLFORMELEMENTEVENTS_ONSUBMIT)] VARIANT_BOOL onsubmit();
	[id(DISPID_HTMLFORMELEMENTEVENTS_ONRESET)] VARIANT_BOOL onreset();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1f7-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLFormElement : IDispatch
{
	[propput, id(DISPID_IHTMLFORMELEMENT_ACTION), displaybind, bindable] HRESULT action([in] BSTR v);
	[propget, id(DISPID_IHTMLFORMELEMENT_ACTION), displaybind, bindable] HRESULT action([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_DIR), displaybind, bindable] HRESULT dir([in] BSTR v);
	[propget, id(DISPID_IHTMLFORMELEMENT_DIR), displaybind, bindable] HRESULT dir([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_ENCODING), displaybind, bindable] HRESULT encoding([in] BSTR v);
	[propget, id(DISPID_IHTMLFORMELEMENT_ENCODING), displaybind, bindable] HRESULT encoding([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_METHOD), displaybind, bindable] HRESULT method([in] BSTR v);
	[propget, id(DISPID_IHTMLFORMELEMENT_METHOD), displaybind, bindable] HRESULT method([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLFORMELEMENT_ELEMENTS)] HRESULT elements([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_TARGET), displaybind, bindable] HRESULT target([in] BSTR v);
	[propget, id(DISPID_IHTMLFORMELEMENT_TARGET), displaybind, bindable] HRESULT target([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLFORMELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_ONSUBMIT), displaybind, bindable] HRESULT onsubmit([in] VARIANT v);
	[propget, id(DISPID_IHTMLFORMELEMENT_ONSUBMIT), displaybind, bindable] HRESULT onsubmit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_ONRESET), displaybind, bindable] HRESULT onreset([in] VARIANT v);
	[propget, id(DISPID_IHTMLFORMELEMENT_ONRESET), displaybind, bindable] HRESULT onreset([retval, out] VARIANT * p);
	[id(DISPID_IHTMLFORMELEMENT_SUBMIT)] HRESULT submit();
	[id(DISPID_IHTMLFORMELEMENT_RESET)] HRESULT reset();
	[propput, id(DISPID_IHTMLFORMELEMENT_LENGTH)] HRESULT length([in] long v);
	[propget, id(DISPID_IHTMLFORMELEMENT_LENGTH)] HRESULT length([retval, out] long * p);
	[propget, id(DISPID_IHTMLFORMELEMENT__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown* * p);
	[id(DISPID_IHTMLFORMELEMENT_ITEM)] HRESULT item([optional, in] VARIANT name,[optional, in] VARIANT index,[retval, out] IDispatch** pdisp);
	[id(DISPID_IHTMLFORMELEMENT_TAGS)] HRESULT tags([in] VARIANT tagName,[retval, out] IDispatch** pdisp);
};
[
	hidden,
	uuid(3050f510-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLFormElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_ACTION), displaybind, bindable] HRESULT action([in] BSTR v);
	[propget, id(DISPID_IHTMLFORMELEMENT_ACTION), displaybind, bindable] HRESULT action([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_DIR), displaybind, bindable] HRESULT dir([in] BSTR v);
	[propget, id(DISPID_IHTMLFORMELEMENT_DIR), displaybind, bindable] HRESULT dir([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_ENCODING), displaybind, bindable] HRESULT encoding([in] BSTR v);
	[propget, id(DISPID_IHTMLFORMELEMENT_ENCODING), displaybind, bindable] HRESULT encoding([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_METHOD), displaybind, bindable] HRESULT method([in] BSTR v);
	[propget, id(DISPID_IHTMLFORMELEMENT_METHOD), displaybind, bindable] HRESULT method([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLFORMELEMENT_ELEMENTS)] HRESULT elements([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_TARGET), displaybind, bindable] HRESULT target([in] BSTR v);
	[propget, id(DISPID_IHTMLFORMELEMENT_TARGET), displaybind, bindable] HRESULT target([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLFORMELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_ONSUBMIT), displaybind, bindable] HRESULT onsubmit([in] VARIANT v);
	[propget, id(DISPID_IHTMLFORMELEMENT_ONSUBMIT), displaybind, bindable] HRESULT onsubmit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFORMELEMENT_ONRESET), displaybind, bindable] HRESULT onreset([in] VARIANT v);
	[propget, id(DISPID_IHTMLFORMELEMENT_ONRESET), displaybind, bindable] HRESULT onreset([retval, out] VARIANT * p);
	[id(DISPID_IHTMLFORMELEMENT_SUBMIT)] HRESULT submit();
	[id(DISPID_IHTMLFORMELEMENT_RESET)] HRESULT reset();
	[propput, id(DISPID_IHTMLFORMELEMENT_LENGTH)] HRESULT length([in] long v);
	[propget, id(DISPID_IHTMLFORMELEMENT_LENGTH)] HRESULT length([retval, out] long * p);
	[propget, id(DISPID_IHTMLFORMELEMENT__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown* * p);
	[id(DISPID_IHTMLFORMELEMENT_ITEM)] HRESULT item([optional, in] VARIANT name,[optional, in] VARIANT index,[retval, out] IDispatch** pdisp);
	[id(DISPID_IHTMLFORMELEMENT_TAGS)] HRESULT tags([in] VARIANT tagName,[retval, out] IDispatch** pdisp);
};
[uuid(3050f251-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLFormElement
{
	[default]			dispinterface DispIHTMLFormElement;
	[source, default]	dispinterface HTMLFormElementEvents;
						interface IHTMLFormElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CFormElement;")
[
	hidden,
	uuid(9a4bbf53-4e46-101b-8bbd-00aa003e3b29)
]
dispinterface HTMLControlElementEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONBLUR)] void onblur();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONRESIZE)] void onresize();
};
[
	odl,
	oleautomation,
	dual,
	uuid(04598fc6-866c-11cf-ab7c-00aa00c08fcf)
]
interface IHTMLControlElement : IDispatch
{
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
};
[
	hidden,
	uuid(3050f53f-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLControlElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f218-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLTextElement : IDispatch
{
};
[
	hidden,
	uuid(3050f537-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLTextElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
};
[uuid(3050f26a-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLTextElement
{
	[default]			dispinterface DispIHTMLTextElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLTextElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CTextElement;")
[
	hidden,
	uuid(1FF6AA72-5842-11cf-A707-00AA00C0098D)
]
dispinterface HTMLTextContainerEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONBLUR)] void onblur();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONRESIZE)] void onresize();
	[id(DISPID_HTMLTEXTCONTAINEREVENTS_ONCHANGE)] void onchange();
	[id(DISPID_HTMLTEXTCONTAINEREVENTS_ONSCROLL)] void onscroll();
	[id(DISPID_HTMLTEXTCONTAINEREVENTS_ONSELECT)] void onselect();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f230-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLTextContainer : IDispatch
{
	[id(DISPID_IHTMLTEXTCONTAINER_CREATECONTROLRANGE)] HRESULT createControlRange([retval, out] IDispatch** range);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLHEIGHT), displaybind, bindable] HRESULT scrollHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLWIDTH), displaybind, bindable] HRESULT scrollWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
};
[
	hidden,
	uuid(3050f53e-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLTextContainer
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[id(DISPID_IHTMLTEXTCONTAINER_CREATECONTROLRANGE)] HRESULT createControlRange([retval, out] IDispatch** range);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLHEIGHT), displaybind, bindable] HRESULT scrollHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLWIDTH), displaybind, bindable] HRESULT scrollWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f29c-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLControlRange : IDispatch
{
	[id(DISPID_IHTMLCONTROLRANGE_SELECT)] HRESULT select();
	[id(DISPID_IHTMLCONTROLRANGE_ADD)] HRESULT add([in] IHTMLControlElement* item);
	[id(DISPID_IHTMLCONTROLRANGE_REMOVE)] HRESULT remove([in] long index);
	[id(DISPID_IHTMLCONTROLRANGE_ITEM)] HRESULT item([in] long index,[retval, out] IHTMLElement** pdisp);
	[id(DISPID_IHTMLCONTROLRANGE_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLCONTROLRANGE_QUERYCOMMANDSUPPORTED)] HRESULT queryCommandSupported([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLCONTROLRANGE_QUERYCOMMANDENABLED)] HRESULT queryCommandEnabled([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLCONTROLRANGE_QUERYCOMMANDSTATE)] HRESULT queryCommandState([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLCONTROLRANGE_QUERYCOMMANDINDETERM)] HRESULT queryCommandIndeterm([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLCONTROLRANGE_QUERYCOMMANDTEXT)] HRESULT queryCommandText([in] BSTR cmdID,[retval, out] BSTR* pcmdText);
	[id(DISPID_IHTMLCONTROLRANGE_QUERYCOMMANDVALUE)] HRESULT queryCommandValue([in] BSTR cmdID,[retval, out] VARIANT* pcmdValue);
	[id(DISPID_IHTMLCONTROLRANGE_EXECCOMMAND)] HRESULT execCommand([in] BSTR cmdID,[defaultvalue(0), in] VARIANT_BOOL showUI,[optional, in] VARIANT value,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLCONTROLRANGE_EXECCOMMANDSHOWHELP)] HRESULT execCommandShowHelp([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLCONTROLRANGE_COMMONPARENTELEMENT)] HRESULT commonParentElement([retval, out] IHTMLElement** Parent);
	[propget, id(DISPID_IHTMLCONTROLRANGE_LENGTH)] HRESULT length([retval, out] long * p);
};
[
	hidden,
	uuid(3050f25b-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLImgEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONBLUR)] void onblur();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONRESIZE)] void onresize();
	[id(DISPID_HTMLIMGBASEEVENTS_ONREADYSTATECHANGE)] void onreadystatechange();
	[id(DISPID_HTMLIMGBASEEVENTS_ONLOAD)] void onload();
	[id(DISPID_HTMLIMGBASEEVENTS_ONERROR)] void onerror();
	[id(DISPID_HTMLIMGBASEEVENTS_ONABORT)] void onabort();
};
[
	hidden,
	uuid(3050f2c3-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLInputImageEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONBLUR)] void onblur();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONRESIZE)] void onresize();
	[id(DISPID_HTMLIMGBASEEVENTS_ONREADYSTATECHANGE)] void onreadystatechange();
	[id(DISPID_HTMLIMGBASEEVENTS_ONLOAD)] void onload();
	[id(DISPID_HTMLIMGBASEEVENTS_ONERROR)] void onerror();
	[id(DISPID_HTMLIMGBASEEVENTS_ONABORT)] void onabort();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f240-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLImgElement : IDispatch
{
	[propput, id(DISPID_IHTMLIMGELEMENT_ISMAP), displaybind, bindable] HRESULT isMap([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLIMGELEMENT_ISMAP), displaybind, bindable] HRESULT isMap([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_USEMAP), displaybind, bindable] HRESULT useMap([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_USEMAP), displaybind, bindable] HRESULT useMap([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_MIMETYPE)] HRESULT mimeType([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_FILESIZE)] HRESULT fileSize([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_FILECREATEDDATE)] HRESULT fileCreatedDate([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_FILEMODIFIEDDATE)] HRESULT fileModifiedDate([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_FILEUPDATEDDATE)] HRESULT fileUpdatedDate([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_PROTOCOL)] HRESULT protocol([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_HREF)] HRESULT href([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_NAMEPROP)] HRESULT nameProp([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_BORDER), displaybind, bindable] HRESULT border([in] VARIANT v);
	[propget, id(DISPID_IHTMLIMGELEMENT_BORDER), displaybind, bindable] HRESULT border([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_VSPACE), displaybind, bindable] HRESULT vspace([in] long v);
	[propget, id(DISPID_IHTMLIMGELEMENT_VSPACE), displaybind, bindable] HRESULT vspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_HSPACE), displaybind, bindable] HRESULT hspace([in] long v);
	[propget, id(DISPID_IHTMLIMGELEMENT_HSPACE), displaybind, bindable] HRESULT hspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_ALT), displaybind, bindable] HRESULT alt([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_ALT), displaybind, bindable] HRESULT alt([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_SRC), displaybind, bindable] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_SRC), displaybind, bindable] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_LOWSRC), displaybind, bindable] HRESULT lowsrc([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_LOWSRC), displaybind, bindable] HRESULT lowsrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_VRML), displaybind, bindable] HRESULT vrml([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_VRML), displaybind, bindable] HRESULT vrml([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_DYNSRC), displaybind, bindable] HRESULT dynsrc([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_DYNSRC), displaybind, bindable] HRESULT dynsrc([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_READYSTATE)] HRESULT readyState([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_COMPLETE)] HRESULT complete([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_LOOP), displaybind, bindable] HRESULT loop([in] VARIANT v);
	[propget, id(DISPID_IHTMLIMGELEMENT_LOOP), displaybind, bindable] HRESULT loop([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLIMGELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLIMGELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_ONABORT), displaybind, bindable] HRESULT onabort([in] VARIANT v);
	[propget, id(DISPID_IHTMLIMGELEMENT_ONABORT), displaybind, bindable] HRESULT onabort([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_WIDTH)] HRESULT width([in] long v);
	[propget, id(DISPID_IHTMLIMGELEMENT_WIDTH)] HRESULT width([retval, out] long * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_HEIGHT)] HRESULT height([in] long v);
	[propget, id(DISPID_IHTMLIMGELEMENT_HEIGHT)] HRESULT height([retval, out] long * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_START), displaybind, bindable] HRESULT start([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_START), displaybind, bindable] HRESULT start([retval, out] BSTR * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f2c2-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLInputImage : IDispatch
{
	[propget, id(DISPID_IHTMLINPUTIMAGE_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_BORDER), displaybind, bindable] HRESULT border([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_BORDER), displaybind, bindable] HRESULT border([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_VSPACE), displaybind, bindable] HRESULT vspace([in] long v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_VSPACE), displaybind, bindable] HRESULT vspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_HSPACE), displaybind, bindable] HRESULT hspace([in] long v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_HSPACE), displaybind, bindable] HRESULT hspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_ALT), displaybind, bindable] HRESULT alt([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_ALT), displaybind, bindable] HRESULT alt([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_SRC), displaybind, bindable] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_SRC), displaybind, bindable] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_LOWSRC), displaybind, bindable] HRESULT lowsrc([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_LOWSRC), displaybind, bindable] HRESULT lowsrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_VRML), displaybind, bindable] HRESULT vrml([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_VRML), displaybind, bindable] HRESULT vrml([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_DYNSRC), displaybind, bindable] HRESULT dynsrc([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_DYNSRC), displaybind, bindable] HRESULT dynsrc([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLINPUTIMAGE_READYSTATE)] HRESULT readyState([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLINPUTIMAGE_COMPLETE)] HRESULT complete([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_LOOP), displaybind, bindable] HRESULT loop([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_LOOP), displaybind, bindable] HRESULT loop([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_ONABORT), displaybind, bindable] HRESULT onabort([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_ONABORT), displaybind, bindable] HRESULT onabort([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_WIDTH)] HRESULT width([in] long v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_WIDTH)] HRESULT width([retval, out] long * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_HEIGHT)] HRESULT height([in] long v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_HEIGHT)] HRESULT height([retval, out] long * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_START), displaybind, bindable] HRESULT start([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_START), displaybind, bindable] HRESULT start([retval, out] BSTR * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f38e-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLImageElementFactory : IDispatch
{
	[id(DISPID_IHTMLIMAGEELEMENTFACTORY_CREATE)] HRESULT create([optional, in] VARIANT width,[optional, in] VARIANT height,[retval, out] IHTMLImgElement** );
};
[
	hidden,
	uuid(3050f51c-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLImgElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_ISMAP), displaybind, bindable] HRESULT isMap([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLIMGELEMENT_ISMAP), displaybind, bindable] HRESULT isMap([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_USEMAP), displaybind, bindable] HRESULT useMap([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_USEMAP), displaybind, bindable] HRESULT useMap([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_MIMETYPE)] HRESULT mimeType([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_FILESIZE)] HRESULT fileSize([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_FILECREATEDDATE)] HRESULT fileCreatedDate([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_FILEMODIFIEDDATE)] HRESULT fileModifiedDate([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_FILEUPDATEDDATE)] HRESULT fileUpdatedDate([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_PROTOCOL)] HRESULT protocol([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_HREF)] HRESULT href([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_NAMEPROP)] HRESULT nameProp([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_BORDER), displaybind, bindable] HRESULT border([in] VARIANT v);
	[propget, id(DISPID_IHTMLIMGELEMENT_BORDER), displaybind, bindable] HRESULT border([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_VSPACE), displaybind, bindable] HRESULT vspace([in] long v);
	[propget, id(DISPID_IHTMLIMGELEMENT_VSPACE), displaybind, bindable] HRESULT vspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_HSPACE), displaybind, bindable] HRESULT hspace([in] long v);
	[propget, id(DISPID_IHTMLIMGELEMENT_HSPACE), displaybind, bindable] HRESULT hspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_ALT), displaybind, bindable] HRESULT alt([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_ALT), displaybind, bindable] HRESULT alt([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_SRC), displaybind, bindable] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_SRC), displaybind, bindable] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_LOWSRC), displaybind, bindable] HRESULT lowsrc([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_LOWSRC), displaybind, bindable] HRESULT lowsrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_VRML), displaybind, bindable] HRESULT vrml([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_VRML), displaybind, bindable] HRESULT vrml([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_DYNSRC), displaybind, bindable] HRESULT dynsrc([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_DYNSRC), displaybind, bindable] HRESULT dynsrc([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_READYSTATE)] HRESULT readyState([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLIMGELEMENT_COMPLETE)] HRESULT complete([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_LOOP), displaybind, bindable] HRESULT loop([in] VARIANT v);
	[propget, id(DISPID_IHTMLIMGELEMENT_LOOP), displaybind, bindable] HRESULT loop([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLIMGELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLIMGELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_ONABORT), displaybind, bindable] HRESULT onabort([in] VARIANT v);
	[propget, id(DISPID_IHTMLIMGELEMENT_ONABORT), displaybind, bindable] HRESULT onabort([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_WIDTH)] HRESULT width([in] long v);
	[propget, id(DISPID_IHTMLIMGELEMENT_WIDTH)] HRESULT width([retval, out] long * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_HEIGHT)] HRESULT height([in] long v);
	[propget, id(DISPID_IHTMLIMGELEMENT_HEIGHT)] HRESULT height([retval, out] long * p);
	[propput, id(DISPID_IHTMLIMGELEMENT_START), displaybind, bindable] HRESULT start([in] BSTR v);
	[propget, id(DISPID_IHTMLIMGELEMENT_START), displaybind, bindable] HRESULT start([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f241-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLImg
{
	[default]			dispinterface DispIHTMLImgElement;
	[source, default]	dispinterface HTMLImgEvents;
						interface IHTMLImgElement;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CImgElement;")
[
	hidden,
	uuid(3050f51d-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLInputImage
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLINPUTIMAGE_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_BORDER), displaybind, bindable] HRESULT border([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_BORDER), displaybind, bindable] HRESULT border([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_VSPACE), displaybind, bindable] HRESULT vspace([in] long v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_VSPACE), displaybind, bindable] HRESULT vspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_HSPACE), displaybind, bindable] HRESULT hspace([in] long v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_HSPACE), displaybind, bindable] HRESULT hspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_ALT), displaybind, bindable] HRESULT alt([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_ALT), displaybind, bindable] HRESULT alt([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_SRC), displaybind, bindable] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_SRC), displaybind, bindable] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_LOWSRC), displaybind, bindable] HRESULT lowsrc([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_LOWSRC), displaybind, bindable] HRESULT lowsrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_VRML), displaybind, bindable] HRESULT vrml([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_VRML), displaybind, bindable] HRESULT vrml([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_DYNSRC), displaybind, bindable] HRESULT dynsrc([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_DYNSRC), displaybind, bindable] HRESULT dynsrc([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLINPUTIMAGE_READYSTATE)] HRESULT readyState([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLINPUTIMAGE_COMPLETE)] HRESULT complete([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_LOOP), displaybind, bindable] HRESULT loop([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_LOOP), displaybind, bindable] HRESULT loop([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_ONABORT), displaybind, bindable] HRESULT onabort([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_ONABORT), displaybind, bindable] HRESULT onabort([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_WIDTH)] HRESULT width([in] long v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_WIDTH)] HRESULT width([retval, out] long * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_HEIGHT)] HRESULT height([in] long v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_HEIGHT)] HRESULT height([retval, out] long * p);
	[propput, id(DISPID_IHTMLINPUTIMAGE_START), displaybind, bindable] HRESULT start([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTIMAGE_START), displaybind, bindable] HRESULT start([retval, out] BSTR * p);
};
[uuid(3050f2c4-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLInputImage
{
	[default]			dispinterface DispIHTMLInputImage;
	[source, default]	dispinterface HTMLInputImageEvents;
						interface IHTMLInputImage;
						interface IHTMLControlElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CInputImage;")
[uuid(3050f38f-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLImageElementFactory
{
	[default]			interface IHTMLImageElementFactory;
};
cpp_quote("EXTERN_C const GUID CLSID_CImageElementFactory;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1d8-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLBodyElement : IDispatch
{
	[propput, id(DISPID_IHTMLBODYELEMENT_BACKGROUND), displaybind, bindable] HRESULT background([in] BSTR v);
	[propget, id(DISPID_IHTMLBODYELEMENT_BACKGROUND), displaybind, bindable] HRESULT background([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_BGPROPERTIES), displaybind, bindable] HRESULT bgProperties([in] BSTR v);
	[propget, id(DISPID_IHTMLBODYELEMENT_BGPROPERTIES), displaybind, bindable] HRESULT bgProperties([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_LEFTMARGIN), displaybind, bindable] HRESULT leftMargin([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_LEFTMARGIN), displaybind, bindable] HRESULT leftMargin([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_TOPMARGIN), displaybind, bindable] HRESULT topMargin([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_TOPMARGIN), displaybind, bindable] HRESULT topMargin([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_RIGHTMARGIN), displaybind, bindable] HRESULT rightMargin([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_RIGHTMARGIN), displaybind, bindable] HRESULT rightMargin([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_BOTTOMMARGIN), displaybind, bindable] HRESULT bottomMargin([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_BOTTOMMARGIN), displaybind, bindable] HRESULT bottomMargin([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLBODYELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_BGCOLOR), displaybind, bindable] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_BGCOLOR), displaybind, bindable] HRESULT bgColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_TEXT), displaybind, bindable] HRESULT text([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_TEXT), displaybind, bindable] HRESULT text([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_LINK), displaybind, bindable] HRESULT link([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_LINK), displaybind, bindable] HRESULT link([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_VLINK), displaybind, bindable] HRESULT vLink([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_VLINK), displaybind, bindable] HRESULT vLink([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_ALINK), displaybind, bindable] HRESULT aLink([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_ALINK), displaybind, bindable] HRESULT aLink([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_ONUNLOAD), displaybind, bindable] HRESULT onunload([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_ONUNLOAD), displaybind, bindable] HRESULT onunload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_SCROLL), displaybind, bindable] HRESULT scroll([in] BSTR v);
	[propget, id(DISPID_IHTMLBODYELEMENT_SCROLL), displaybind, bindable] HRESULT scroll([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_ONBEFOREUNLOAD), displaybind, bindable] HRESULT onbeforeunload([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_ONBEFOREUNLOAD), displaybind, bindable] HRESULT onbeforeunload([retval, out] VARIANT * p);
	[id(DISPID_IHTMLBODYELEMENT_CREATETEXTRANGE)] HRESULT createTextRange([retval, out] IHTMLTxtRange** range);
};
[
	hidden,
	uuid(3050f507-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLBodyElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[id(DISPID_IHTMLTEXTCONTAINER_CREATECONTROLRANGE)] HRESULT createControlRange([retval, out] IDispatch** range);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLHEIGHT), displaybind, bindable] HRESULT scrollHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLWIDTH), displaybind, bindable] HRESULT scrollWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_BACKGROUND), displaybind, bindable] HRESULT background([in] BSTR v);
	[propget, id(DISPID_IHTMLBODYELEMENT_BACKGROUND), displaybind, bindable] HRESULT background([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_BGPROPERTIES), displaybind, bindable] HRESULT bgProperties([in] BSTR v);
	[propget, id(DISPID_IHTMLBODYELEMENT_BGPROPERTIES), displaybind, bindable] HRESULT bgProperties([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_LEFTMARGIN), displaybind, bindable] HRESULT leftMargin([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_LEFTMARGIN), displaybind, bindable] HRESULT leftMargin([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_TOPMARGIN), displaybind, bindable] HRESULT topMargin([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_TOPMARGIN), displaybind, bindable] HRESULT topMargin([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_RIGHTMARGIN), displaybind, bindable] HRESULT rightMargin([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_RIGHTMARGIN), displaybind, bindable] HRESULT rightMargin([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_BOTTOMMARGIN), displaybind, bindable] HRESULT bottomMargin([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_BOTTOMMARGIN), displaybind, bindable] HRESULT bottomMargin([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLBODYELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_BGCOLOR), displaybind, bindable] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_BGCOLOR), displaybind, bindable] HRESULT bgColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_TEXT), displaybind, bindable] HRESULT text([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_TEXT), displaybind, bindable] HRESULT text([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_LINK), displaybind, bindable] HRESULT link([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_LINK), displaybind, bindable] HRESULT link([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_VLINK), displaybind, bindable] HRESULT vLink([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_VLINK), displaybind, bindable] HRESULT vLink([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_ALINK), displaybind, bindable] HRESULT aLink([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_ALINK), displaybind, bindable] HRESULT aLink([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_ONUNLOAD), displaybind, bindable] HRESULT onunload([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_ONUNLOAD), displaybind, bindable] HRESULT onunload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_SCROLL), displaybind, bindable] HRESULT scroll([in] BSTR v);
	[propget, id(DISPID_IHTMLBODYELEMENT_SCROLL), displaybind, bindable] HRESULT scroll([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBODYELEMENT_ONBEFOREUNLOAD), displaybind, bindable] HRESULT onbeforeunload([in] VARIANT v);
	[propget, id(DISPID_IHTMLBODYELEMENT_ONBEFOREUNLOAD), displaybind, bindable] HRESULT onbeforeunload([retval, out] VARIANT * p);
	[id(DISPID_IHTMLBODYELEMENT_CREATETEXTRANGE)] HRESULT createTextRange([retval, out] IHTMLTxtRange** range);
};
[uuid(3050f24a-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLBody
{
	[default]			dispinterface DispIHTMLBodyElement;
	[source, default]	dispinterface HTMLTextContainerEvents;
						interface IHTMLBodyElement;
						interface IHTMLTextContainer;
						interface IHTMLControlElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CBodyElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1d9-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLFontElement : IDispatch
{
	[propput, id(DISPID_IHTMLFONTELEMENT_COLOR), displaybind, bindable] HRESULT color([in] VARIANT v);
	[propget, id(DISPID_IHTMLFONTELEMENT_COLOR), displaybind, bindable] HRESULT color([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFONTELEMENT_FACE), displaybind, bindable] HRESULT face([in] BSTR v);
	[propget, id(DISPID_IHTMLFONTELEMENT_FACE), displaybind, bindable] HRESULT face([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFONTELEMENT_SIZE), displaybind, bindable] HRESULT size([in] VARIANT v);
	[propget, id(DISPID_IHTMLFONTELEMENT_SIZE), displaybind, bindable] HRESULT size([retval, out] VARIANT * p);
};
[
	hidden,
	uuid(3050f512-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLFontElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLFONTELEMENT_COLOR), displaybind, bindable] HRESULT color([in] VARIANT v);
	[propget, id(DISPID_IHTMLFONTELEMENT_COLOR), displaybind, bindable] HRESULT color([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFONTELEMENT_FACE), displaybind, bindable] HRESULT face([in] BSTR v);
	[propget, id(DISPID_IHTMLFONTELEMENT_FACE), displaybind, bindable] HRESULT face([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFONTELEMENT_SIZE), displaybind, bindable] HRESULT size([in] VARIANT v);
	[propget, id(DISPID_IHTMLFONTELEMENT_SIZE), displaybind, bindable] HRESULT size([retval, out] VARIANT * p);
};
[uuid(3050f27b-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLFontElement
{
	[default]			dispinterface DispIHTMLFontElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLFontElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CFontElement;")
[
	hidden,
	uuid(3050f29d-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLAnchorEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLANCHOREVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLANCHOREVENTS_ONBLUR)] void onblur();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1da-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLAnchorElement : IDispatch
{
	[propput, id(DISPID_IHTMLANCHORELEMENT_HREF), displaybind, bindable] HRESULT href([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_HREF), displaybind, bindable] HRESULT href([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_TARGET), displaybind, bindable] HRESULT target([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_TARGET), displaybind, bindable] HRESULT target([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_REL), displaybind, bindable] HRESULT rel([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_REL), displaybind, bindable] HRESULT rel([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_REV), displaybind, bindable] HRESULT rev([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_REV), displaybind, bindable] HRESULT rev([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_URN), displaybind, bindable] HRESULT urn([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_URN), displaybind, bindable] HRESULT urn([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_METHODS), displaybind, bindable] HRESULT Methods([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_METHODS), displaybind, bindable] HRESULT Methods([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_HOST)] HRESULT host([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_HOST)] HRESULT host([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_HOSTNAME)] HRESULT hostname([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_HOSTNAME)] HRESULT hostname([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_PATHNAME)] HRESULT pathname([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_PATHNAME)] HRESULT pathname([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_PORT)] HRESULT port([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_PORT)] HRESULT port([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_PROTOCOL)] HRESULT protocol([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_PROTOCOL)] HRESULT protocol([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_SEARCH)] HRESULT search([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_SEARCH)] HRESULT search([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_HASH)] HRESULT hash([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_HASH)] HRESULT hash([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLANCHORELEMENT_PROTOCOLLONG)] HRESULT protocolLong([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLANCHORELEMENT_MIMETYPE)] HRESULT mimeType([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLANCHORELEMENT_NAMEPROP)] HRESULT nameProp([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLANCHORELEMENT_FOCUS)] HRESULT focus();
	[id(DISPID_IHTMLANCHORELEMENT_BLUR)] HRESULT blur();
};
[
	hidden,
	uuid(3050f502-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLAnchorElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_HREF), displaybind, bindable] HRESULT href([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_HREF), displaybind, bindable] HRESULT href([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_TARGET), displaybind, bindable] HRESULT target([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_TARGET), displaybind, bindable] HRESULT target([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_REL), displaybind, bindable] HRESULT rel([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_REL), displaybind, bindable] HRESULT rel([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_REV), displaybind, bindable] HRESULT rev([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_REV), displaybind, bindable] HRESULT rev([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_URN), displaybind, bindable] HRESULT urn([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_URN), displaybind, bindable] HRESULT urn([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_METHODS), displaybind, bindable] HRESULT Methods([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_METHODS), displaybind, bindable] HRESULT Methods([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_HOST)] HRESULT host([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_HOST)] HRESULT host([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_HOSTNAME)] HRESULT hostname([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_HOSTNAME)] HRESULT hostname([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_PATHNAME)] HRESULT pathname([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_PATHNAME)] HRESULT pathname([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_PORT)] HRESULT port([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_PORT)] HRESULT port([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_PROTOCOL)] HRESULT protocol([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_PROTOCOL)] HRESULT protocol([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_SEARCH)] HRESULT search([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_SEARCH)] HRESULT search([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_HASH)] HRESULT hash([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_HASH)] HRESULT hash([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLANCHORELEMENT_PROTOCOLLONG)] HRESULT protocolLong([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLANCHORELEMENT_MIMETYPE)] HRESULT mimeType([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLANCHORELEMENT_NAMEPROP)] HRESULT nameProp([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLANCHORELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLANCHORELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLANCHORELEMENT_FOCUS)] HRESULT focus();
	[id(DISPID_IHTMLANCHORELEMENT_BLUR)] HRESULT blur();
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f248-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLAnchorElement
{
	[default]			dispinterface DispIHTMLAnchorElement;
	[source, default]	dispinterface HTMLAnchorEvents;
						interface IHTMLAnchorElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CAnchorElement;")
[
	hidden,
	uuid(3050f329-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLLabelEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f32a-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLLabelElement : IDispatch
{
	[propput, id(DISPID_IHTMLLABELELEMENT_HTMLFOR), displaybind, bindable] HRESULT htmlFor([in] BSTR v);
	[propget, id(DISPID_IHTMLLABELELEMENT_HTMLFOR), displaybind, bindable] HRESULT htmlFor([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLABELELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLLABELELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f522-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLLabelElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLLABELELEMENT_HTMLFOR), displaybind, bindable] HRESULT htmlFor([in] BSTR v);
	[propget, id(DISPID_IHTMLLABELELEMENT_HTMLFOR), displaybind, bindable] HRESULT htmlFor([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLABELELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLLABELELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f32b-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLLabelElement
{
	[default]			dispinterface DispIHTMLLabelElement;
	[source, default]	dispinterface HTMLLabelEvents;
						interface IHTMLLabelElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CLabelElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f20e-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLListElement : IDispatch
{
};
[
	hidden,
	uuid(3050f525-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLListElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
};
[uuid(3050f272-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLListElement
{
	[default]			dispinterface DispIHTMLListElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLListElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CListElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1dd-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLUListElement : IDispatch
{
	[propput, id(DISPID_IHTMLULISTELEMENT_COMPACT), displaybind, bindable] HRESULT compact([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLULISTELEMENT_COMPACT), displaybind, bindable] HRESULT compact([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLULISTELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLULISTELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f538-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLUListElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLULISTELEMENT_COMPACT), displaybind, bindable] HRESULT compact([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLULISTELEMENT_COMPACT), displaybind, bindable] HRESULT compact([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLULISTELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLULISTELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
};
[uuid(3050f269-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLUListElement
{
	[default]			dispinterface DispIHTMLUListElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLUListElement;
						interface IHTMLListElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CUListElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1de-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLOListElement : IDispatch
{
	[propput, id(DISPID_IHTMLOLISTELEMENT_COMPACT), displaybind, bindable] HRESULT compact([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOLISTELEMENT_COMPACT), displaybind, bindable] HRESULT compact([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOLISTELEMENT_START), displaybind, bindable] HRESULT start([in] long v);
	[propget, id(DISPID_IHTMLOLISTELEMENT_START), displaybind, bindable] HRESULT start([retval, out] long * p);
	[propput, id(DISPID_IHTMLOLISTELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLOLISTELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f52a-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLOListElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLOLISTELEMENT_COMPACT), displaybind, bindable] HRESULT compact([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOLISTELEMENT_COMPACT), displaybind, bindable] HRESULT compact([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOLISTELEMENT_START), displaybind, bindable] HRESULT start([in] long v);
	[propget, id(DISPID_IHTMLOLISTELEMENT_START), displaybind, bindable] HRESULT start([retval, out] long * p);
	[propput, id(DISPID_IHTMLOLISTELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLOLISTELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
};
[uuid(3050f270-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLOListElement
{
	[default]			dispinterface DispIHTMLOListElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLOListElement;
						interface IHTMLListElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_COListElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1e0-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLLIElement : IDispatch
{
	[propput, id(DISPID_IHTMLLIELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLLIELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLIELEMENT_VALUE), displaybind, bindable] HRESULT value([in] long v);
	[propget, id(DISPID_IHTMLLIELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] long * p);
};
[
	hidden,
	uuid(3050f523-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLLIElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLLIELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLLIELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLIELEMENT_VALUE), displaybind, bindable] HRESULT value([in] long v);
	[propget, id(DISPID_IHTMLLIELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] long * p);
};
[uuid(3050f273-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLLIElement
{
	[default]			dispinterface DispIHTMLLIElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLLIElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CLIElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f208-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLBlockElement : IDispatch
{
	[propput, id(DISPID_IHTMLBLOCKELEMENT_CLEAR), displaybind, bindable] HRESULT clear([in] BSTR v);
	[propget, id(DISPID_IHTMLBLOCKELEMENT_CLEAR), displaybind, bindable] HRESULT clear([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f506-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLBlockElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLBLOCKELEMENT_CLEAR), displaybind, bindable] HRESULT clear([in] BSTR v);
	[propget, id(DISPID_IHTMLBLOCKELEMENT_CLEAR), displaybind, bindable] HRESULT clear([retval, out] BSTR * p);
};
[uuid(3050f281-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLBlockElement
{
	[default]			dispinterface DispIHTMLBlockElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLBlockElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CBlockElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f200-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLDivElement : IDispatch
{
	[propput, id(DISPID_IHTMLDIVELEMENT_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLDIVELEMENT_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDIVELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLDIVELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([retval, out] VARIANT_BOOL * p);
};
[
	hidden,
	uuid(3050f50c-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLDivElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLDIVELEMENT_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLDIVELEMENT_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDIVELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLDIVELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f27e-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLDivElement
{
	[default]			dispinterface DispIHTMLDivElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLDivElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CDivElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1f2-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLDDElement : IDispatch
{
	[propput, id(DISPID_IHTMLDDELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLDDELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([retval, out] VARIANT_BOOL * p);
};
[
	hidden,
	uuid(3050f50b-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLDDElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLDDELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLDDELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([retval, out] VARIANT_BOOL * p);
};
[uuid(3050f27f-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLDDElement
{
	[default]			dispinterface DispIHTMLDDElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLDDElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CDDElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1f3-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLDTElement : IDispatch
{
	[propput, id(DISPID_IHTMLDTELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLDTELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([retval, out] VARIANT_BOOL * p);
};
[
	hidden,
	uuid(3050f50d-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLDTElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLDTELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLDTELEMENT_NOWRAP), displaybind, bindable] HRESULT noWrap([retval, out] VARIANT_BOOL * p);
};
[uuid(3050f27c-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLDTElement
{
	[default]			dispinterface DispIHTMLDTElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLDTElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CDTElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1f0-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLBRElement : IDispatch
{
	[propput, id(DISPID_IHTMLBRELEMENT_CLEAR), displaybind, bindable] HRESULT clear([in] BSTR v);
	[propget, id(DISPID_IHTMLBRELEMENT_CLEAR), displaybind, bindable] HRESULT clear([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f53a-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLBRElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLBRELEMENT_CLEAR), displaybind, bindable] HRESULT clear([in] BSTR v);
	[propget, id(DISPID_IHTMLBRELEMENT_CLEAR), displaybind, bindable] HRESULT clear([retval, out] BSTR * p);
};
[uuid(3050f280-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLBRElement
{
	[default]			dispinterface DispIHTMLBRElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLBRElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CBRElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1f1-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLDListElement : IDispatch
{
	[propput, id(DISPID_IHTMLDLISTELEMENT_COMPACT), bindable] HRESULT compact([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLDLISTELEMENT_COMPACT), bindable] HRESULT compact([retval, out] VARIANT_BOOL * p);
};
[
	hidden,
	uuid(3050f53b-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLDListElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLDLISTELEMENT_COMPACT), bindable] HRESULT compact([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLDLISTELEMENT_COMPACT), bindable] HRESULT compact([retval, out] VARIANT_BOOL * p);
};
[uuid(3050f27d-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLDListElement
{
	[default]			dispinterface DispIHTMLDListElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLDListElement;
						interface IHTMLListElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CDListElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1f4-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLHRElement : IDispatch
{
	[propput, id(DISPID_IHTMLHRELEMENT_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLHRELEMENT_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLHRELEMENT_COLOR), displaybind, bindable] HRESULT color([in] VARIANT v);
	[propget, id(DISPID_IHTMLHRELEMENT_COLOR), displaybind, bindable] HRESULT color([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLHRELEMENT_NOSHADE), bindable] HRESULT noShade([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLHRELEMENT_NOSHADE), bindable] HRESULT noShade([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLHRELEMENT_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLHRELEMENT_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLHRELEMENT_SIZE)] HRESULT size([in] VARIANT v);
	[propget, id(DISPID_IHTMLHRELEMENT_SIZE)] HRESULT size([retval, out] VARIANT * p);
};
[
	hidden,
	uuid(3050f53d-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLHRElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLHRELEMENT_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLHRELEMENT_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLHRELEMENT_COLOR), displaybind, bindable] HRESULT color([in] VARIANT v);
	[propget, id(DISPID_IHTMLHRELEMENT_COLOR), displaybind, bindable] HRESULT color([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLHRELEMENT_NOSHADE), bindable] HRESULT noShade([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLHRELEMENT_NOSHADE), bindable] HRESULT noShade([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLHRELEMENT_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLHRELEMENT_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLHRELEMENT_SIZE)] HRESULT size([in] VARIANT v);
	[propget, id(DISPID_IHTMLHRELEMENT_SIZE)] HRESULT size([retval, out] VARIANT * p);
};
[uuid(3050f252-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLHRElement
{
	[default]			dispinterface DispIHTMLHRElement;
						interface IHTMLHRElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CHRElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1f5-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLParaElement : IDispatch
{
	[propput, id(DISPID_IHTMLPARAELEMENT_ALIGN), bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLPARAELEMENT_ALIGN), bindable] HRESULT align([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f52c-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLParaElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLBLOCKELEMENT_CLEAR), displaybind, bindable] HRESULT clear([in] BSTR v);
	[propget, id(DISPID_IHTMLBLOCKELEMENT_CLEAR), displaybind, bindable] HRESULT clear([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLPARAELEMENT_ALIGN), bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLPARAELEMENT_ALIGN), bindable] HRESULT align([retval, out] BSTR * p);
};
[uuid(3050f26f-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLParaElement
{
	[default]			dispinterface DispIHTMLParaElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLParaElement;
						interface IHTMLBlockElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CParaElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f21f-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLElementCollection : IDispatch
{
	[id(DISPID_IHTMLELEMENTCOLLECTION_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENTCOLLECTION_LENGTH)] HRESULT length([in] long v);
	[propget, id(DISPID_IHTMLELEMENTCOLLECTION_LENGTH)] HRESULT length([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENTCOLLECTION__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown* * p);
	[id(DISPID_IHTMLELEMENTCOLLECTION_ITEM)] HRESULT item([optional, in] VARIANT name,[optional, in] VARIANT index,[retval, out] IDispatch** pdisp);
	[id(DISPID_IHTMLELEMENTCOLLECTION_TAGS)] HRESULT tags([in] VARIANT tagName,[retval, out] IDispatch** pdisp);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f1f6-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLHeaderElement : IDispatch
{
	[propput, id(DISPID_IHTMLHEADERELEMENT_ALIGN), bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLHEADERELEMENT_ALIGN), bindable] HRESULT align([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f515-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLHeaderElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLBLOCKELEMENT_CLEAR), displaybind, bindable] HRESULT clear([in] BSTR v);
	[propget, id(DISPID_IHTMLBLOCKELEMENT_CLEAR), displaybind, bindable] HRESULT clear([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLHEADERELEMENT_ALIGN), bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLHEADERELEMENT_ALIGN), bindable] HRESULT align([retval, out] BSTR * p);
};
[uuid(3050f27a-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLHeaderElement
{
	[default]			dispinterface DispIHTMLHeaderElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLHeaderElement;
						interface IHTMLBlockElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CHeaderElement;")
[
	hidden,
	uuid(3050f302-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLSelectElementEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONBLUR)] void onblur();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONRESIZE)] void onresize();
	[id(DISPID_HTMLSELECTELEMENTEVENTS_ONCHANGE)] void onchange();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f244-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLSelectElement : IDispatch
{
	[propput, id(DISPID_IHTMLSELECTELEMENT_SIZE), displaybind, bindable] HRESULT size([in] long v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_SIZE), displaybind, bindable] HRESULT size([retval, out] long * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_MULTIPLE), displaybind, bindable] HRESULT multiple([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_MULTIPLE), displaybind, bindable] HRESULT multiple([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLSELECTELEMENT_OPTIONS)] HRESULT options([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_SELECTEDINDEX)] HRESULT selectedIndex([in] long v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_SELECTEDINDEX)] HRESULT selectedIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLSELECTELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLSELECTELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[id(DISPID_IHTMLSELECTELEMENT_ADD)] HRESULT add([in] IHTMLElement* element,[optional, in] VARIANT before);
	[id(DISPID_IHTMLSELECTELEMENT_REMOVE)] HRESULT remove([defaultvalue(-1), in] long index);
	[propput, id(DISPID_IHTMLSELECTELEMENT_LENGTH)] HRESULT length([in] long v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_LENGTH)] HRESULT length([retval, out] long * p);
	[propget, id(DISPID_IHTMLSELECTELEMENT__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown* * p);
	[id(DISPID_IHTMLSELECTELEMENT_ITEM)] HRESULT item([optional, in] VARIANT name,[optional, in] VARIANT index,[retval, out] IDispatch** pdisp);
	[id(DISPID_IHTMLSELECTELEMENT_TAGS)] HRESULT tags([in] VARIANT tagName,[retval, out] IDispatch** pdisp);
};
[
	hidden,
	uuid(3050f531-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLSelectElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_SIZE), displaybind, bindable] HRESULT size([in] long v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_SIZE), displaybind, bindable] HRESULT size([retval, out] long * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_MULTIPLE), displaybind, bindable] HRESULT multiple([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_MULTIPLE), displaybind, bindable] HRESULT multiple([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLSELECTELEMENT_OPTIONS)] HRESULT options([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_SELECTEDINDEX)] HRESULT selectedIndex([in] long v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_SELECTEDINDEX)] HRESULT selectedIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLSELECTELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSELECTELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLSELECTELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[id(DISPID_IHTMLSELECTELEMENT_ADD)] HRESULT add([in] IHTMLElement* element,[optional, in] VARIANT before);
	[id(DISPID_IHTMLSELECTELEMENT_REMOVE)] HRESULT remove([defaultvalue(-1), in] long index);
	[propput, id(DISPID_IHTMLSELECTELEMENT_LENGTH)] HRESULT length([in] long v);
	[propget, id(DISPID_IHTMLSELECTELEMENT_LENGTH)] HRESULT length([retval, out] long * p);
	[propget, id(DISPID_IHTMLSELECTELEMENT__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown* * p);
	[id(DISPID_IHTMLSELECTELEMENT_ITEM)] HRESULT item([optional, in] VARIANT name,[optional, in] VARIANT index,[retval, out] IDispatch** pdisp);
	[id(DISPID_IHTMLSELECTELEMENT_TAGS)] HRESULT tags([in] VARIANT tagName,[retval, out] IDispatch** pdisp);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f245-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLSelectElement
{
	[default]			dispinterface DispIHTMLSelectElement;
	[source, default]	dispinterface HTMLSelectElementEvents;
						interface IHTMLSelectElement;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CSelectElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f25A-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLSelectionObject : IDispatch
{
	[id(DISPID_IHTMLSELECTIONOBJECT_CREATERANGE)] HRESULT createRange([retval, out] IDispatch** range);
	[id(DISPID_IHTMLSELECTIONOBJECT_EMPTY)] HRESULT empty();
	[id(DISPID_IHTMLSELECTIONOBJECT_CLEAR)] HRESULT clear();
	[propget, id(DISPID_IHTMLSELECTIONOBJECT_TYPE)] HRESULT type([retval, out] BSTR * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f211-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLOptionElement : IDispatch
{
	[propput, id(DISPID_IHTMLOPTIONELEMENT_SELECTED)] HRESULT selected([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONELEMENT_SELECTED)] HRESULT selected([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOPTIONELEMENT_VALUE)] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLOPTIONELEMENT_VALUE)] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOPTIONELEMENT_DEFAULTSELECTED)] HRESULT defaultSelected([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONELEMENT_DEFAULTSELECTED)] HRESULT defaultSelected([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOPTIONELEMENT_INDEX)] HRESULT index([in] LONG v);
	[propget, id(DISPID_IHTMLOPTIONELEMENT_INDEX)] HRESULT index([retval, out] LONG * p);
	[propput, id(DISPID_IHTMLOPTIONELEMENT_TEXT)] HRESULT text([in] BSTR v);
	[propget, id(DISPID_IHTMLOPTIONELEMENT_TEXT)] HRESULT text([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLOPTIONELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f38c-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLOptionElementFactory : IDispatch
{
	[id(DISPID_IHTMLOPTIONELEMENTFACTORY_CREATE)] HRESULT create([optional, in] VARIANT text,[optional, in] VARIANT value,[optional, in] VARIANT defaultselected,[optional, in] VARIANT selected,[retval, out] IHTMLOptionElement** );
};
[
	hidden,
	uuid(3050f52b-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLOptionElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLOPTIONELEMENT_SELECTED)] HRESULT selected([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONELEMENT_SELECTED)] HRESULT selected([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOPTIONELEMENT_VALUE)] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLOPTIONELEMENT_VALUE)] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOPTIONELEMENT_DEFAULTSELECTED)] HRESULT defaultSelected([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONELEMENT_DEFAULTSELECTED)] HRESULT defaultSelected([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOPTIONELEMENT_INDEX)] HRESULT index([in] LONG v);
	[propget, id(DISPID_IHTMLOPTIONELEMENT_INDEX)] HRESULT index([retval, out] LONG * p);
	[propput, id(DISPID_IHTMLOPTIONELEMENT_TEXT)] HRESULT text([in] BSTR v);
	[propget, id(DISPID_IHTMLOPTIONELEMENT_TEXT)] HRESULT text([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLOPTIONELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f24d-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLOptionElement
{
	[default]			dispinterface DispIHTMLOptionElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLOptionElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_COptionElement;")
[uuid(3050f38d-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLOptionElementFactory
{
	[default]			interface IHTMLOptionElementFactory;
};
cpp_quote("EXTERN_C const GUID CLSID_COptionElementFactory;")
[
	hidden,
	uuid(3050f2a7-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLInputTextElementEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONBLUR)] void onblur();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONRESIZE)] void onresize();
	[id(DISPID_HTMLINPUTTEXTELEMENTEVENTS_ONCHANGE)] VARIANT_BOOL onchange();
	[id(DISPID_HTMLINPUTTEXTELEMENTEVENTS_ONSELECT)] void onselect();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f2a4-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLInputHiddenElement : IDispatch
{
	[propget, id(DISPID_IHTMLINPUTHIDDENELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTHIDDENELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTHIDDENELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTHIDDENELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTHIDDENELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTHIDDENELEMENT_STATUS)] HRESULT status([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTHIDDENELEMENT_STATUS)] HRESULT status([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTHIDDENELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLINPUTHIDDENELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLINPUTHIDDENELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[id(DISPID_IHTMLINPUTHIDDENELEMENT_CREATETEXTRANGE)] HRESULT createTextRange([retval, out] IHTMLTxtRange** range);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f2a6-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLInputTextElement : IDispatch
{
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_STATUS)] HRESULT status([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_STATUS)] HRESULT status([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_DEFAULTVALUE), displaybind, bindable, hidden] HRESULT defaultValue([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_DEFAULTVALUE), displaybind, bindable, hidden] HRESULT defaultValue([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_SIZE), displaybind, bindable] HRESULT size([in] long v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_SIZE), displaybind, bindable] HRESULT size([retval, out] long * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_MAXLENGTH), displaybind, bindable] HRESULT maxLength([in] long v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_MAXLENGTH), displaybind, bindable] HRESULT maxLength([retval, out] long * p);
	[id(DISPID_IHTMLINPUTTEXTELEMENT_SELECT)] HRESULT select();
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_READONLY), displaybind, bindable] HRESULT readOnly([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_READONLY), displaybind, bindable] HRESULT readOnly([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLINPUTTEXTELEMENT_CREATETEXTRANGE)] HRESULT createTextRange([retval, out] IHTMLTxtRange** range);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f2aa-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLTextAreaElement : IDispatch
{
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_STATUS)] HRESULT status([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_STATUS)] HRESULT status([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_DEFAULTVALUE), displaybind, bindable, hidden] HRESULT defaultValue([in] BSTR v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_DEFAULTVALUE), displaybind, bindable, hidden] HRESULT defaultValue([retval, out] BSTR * p);
	[id(DISPID_IHTMLTEXTAREAELEMENT_SELECT)] HRESULT select();
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_READONLY), displaybind, bindable] HRESULT readOnly([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_READONLY), displaybind, bindable] HRESULT readOnly([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_ROWS), displaybind, bindable] HRESULT rows([in] long v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_ROWS), displaybind, bindable] HRESULT rows([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_COLS), displaybind, bindable] HRESULT cols([in] long v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_COLS), displaybind, bindable] HRESULT cols([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_WRAP), displaybind, bindable] HRESULT wrap([in] BSTR v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_WRAP), displaybind, bindable] HRESULT wrap([retval, out] BSTR * p);
	[id(DISPID_IHTMLTEXTAREAELEMENT_CREATETEXTRANGE)] HRESULT createTextRange([retval, out] IHTMLTxtRange** range);
};
[
	hidden,
	uuid(3050f520-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLInputTextElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_STATUS)] HRESULT status([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_STATUS)] HRESULT status([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_DEFAULTVALUE), displaybind, bindable, hidden] HRESULT defaultValue([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_DEFAULTVALUE), displaybind, bindable, hidden] HRESULT defaultValue([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_SIZE), displaybind, bindable] HRESULT size([in] long v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_SIZE), displaybind, bindable] HRESULT size([retval, out] long * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_MAXLENGTH), displaybind, bindable] HRESULT maxLength([in] long v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_MAXLENGTH), displaybind, bindable] HRESULT maxLength([retval, out] long * p);
	[id(DISPID_IHTMLINPUTTEXTELEMENT_SELECT)] HRESULT select();
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTTEXTELEMENT_READONLY), displaybind, bindable] HRESULT readOnly([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLINPUTTEXTELEMENT_READONLY), displaybind, bindable] HRESULT readOnly([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLINPUTTEXTELEMENT_CREATETEXTRANGE)] HRESULT createTextRange([retval, out] IHTMLTxtRange** range);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f2ab-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLInputTextElement
{
	[default]			dispinterface DispIHTMLInputTextElement;
	[source, default]	dispinterface HTMLInputTextElementEvents;
						interface IHTMLInputTextElement;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CInputText;")
[
	hidden,
	uuid(3050f521-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLTextAreaElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[id(DISPID_IHTMLTEXTCONTAINER_CREATECONTROLRANGE)] HRESULT createControlRange([retval, out] IDispatch** range);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLHEIGHT), displaybind, bindable] HRESULT scrollHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLWIDTH), displaybind, bindable] HRESULT scrollWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_STATUS)] HRESULT status([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_STATUS)] HRESULT status([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_DEFAULTVALUE), displaybind, bindable, hidden] HRESULT defaultValue([in] BSTR v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_DEFAULTVALUE), displaybind, bindable, hidden] HRESULT defaultValue([retval, out] BSTR * p);
	[id(DISPID_IHTMLTEXTAREAELEMENT_SELECT)] HRESULT select();
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_READONLY), displaybind, bindable] HRESULT readOnly([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_READONLY), displaybind, bindable] HRESULT readOnly([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_ROWS), displaybind, bindable] HRESULT rows([in] long v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_ROWS), displaybind, bindable] HRESULT rows([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_COLS), displaybind, bindable] HRESULT cols([in] long v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_COLS), displaybind, bindable] HRESULT cols([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTAREAELEMENT_WRAP), displaybind, bindable] HRESULT wrap([in] BSTR v);
	[propget, id(DISPID_IHTMLTEXTAREAELEMENT_WRAP), displaybind, bindable] HRESULT wrap([retval, out] BSTR * p);
	[id(DISPID_IHTMLTEXTAREAELEMENT_CREATETEXTRANGE)] HRESULT createTextRange([retval, out] IHTMLTxtRange** range);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f2ac-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLTextAreaElement
{
	[default]			dispinterface DispIHTMLTextAreaElement;
	[source, default]	dispinterface HTMLTextContainerEvents;
						interface IHTMLTextAreaElement;
						interface IHTMLTextContainer;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CTextArea;")
[
	hidden,
	uuid(3050f2b3-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLButtonElementEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONBLUR)] void onblur();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONRESIZE)] void onresize();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f2b2-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLInputButtonElement : IDispatch
{
	[propget, id(DISPID_IHTMLINPUTBUTTONELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTBUTTONELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTBUTTONELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTBUTTONELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTBUTTONELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTBUTTONELEMENT_STATUS)] HRESULT status([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTBUTTONELEMENT_STATUS)] HRESULT status([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTBUTTONELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLINPUTBUTTONELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLINPUTBUTTONELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[id(DISPID_IHTMLINPUTBUTTONELEMENT_CREATETEXTRANGE)] HRESULT createTextRange([retval, out] IHTMLTxtRange** range);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f2bb-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLButtonElement : IDispatch
{
	[propget, id(DISPID_IHTMLBUTTONELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBUTTONELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLBUTTONELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBUTTONELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLBUTTONELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBUTTONELEMENT_STATUS)] HRESULT status([in] VARIANT v);
	[propget, id(DISPID_IHTMLBUTTONELEMENT_STATUS)] HRESULT status([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBUTTONELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLBUTTONELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLBUTTONELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[id(DISPID_IHTMLBUTTONELEMENT_CREATETEXTRANGE)] HRESULT createTextRange([retval, out] IHTMLTxtRange** range);
};
[
	hidden,
	uuid(3050f51e-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLInputButtonElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLINPUTBUTTONELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTBUTTONELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTBUTTONELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTBUTTONELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTBUTTONELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTBUTTONELEMENT_STATUS)] HRESULT status([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTBUTTONELEMENT_STATUS)] HRESULT status([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTBUTTONELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLINPUTBUTTONELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLINPUTBUTTONELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[id(DISPID_IHTMLINPUTBUTTONELEMENT_CREATETEXTRANGE)] HRESULT createTextRange([retval, out] IHTMLTxtRange** range);
};
[uuid(3050f2b4-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLInputButtonElement
{
	[default]			dispinterface DispIHTMLInputButtonElement;
	[source, default]	dispinterface HTMLButtonElementEvents;
						interface IHTMLInputButtonElement;
						interface IHTMLControlElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CInputButton;")
[
	hidden,
	uuid(3050f51f-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLButtonElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[id(DISPID_IHTMLTEXTCONTAINER_CREATECONTROLRANGE)] HRESULT createControlRange([retval, out] IDispatch** range);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLHEIGHT), displaybind, bindable] HRESULT scrollHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLWIDTH), displaybind, bindable] HRESULT scrollWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLBUTTONELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBUTTONELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLBUTTONELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBUTTONELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLBUTTONELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBUTTONELEMENT_STATUS)] HRESULT status([in] VARIANT v);
	[propget, id(DISPID_IHTMLBUTTONELEMENT_STATUS)] HRESULT status([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBUTTONELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLBUTTONELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLBUTTONELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[id(DISPID_IHTMLBUTTONELEMENT_CREATETEXTRANGE)] HRESULT createTextRange([retval, out] IHTMLTxtRange** range);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f2c6-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLButtonElement
{
	[default]			dispinterface DispIHTMLButtonElement;
	[source, default]	dispinterface HTMLButtonElementEvents;
						interface IHTMLButtonElement;
						interface IHTMLTextContainer;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CButton;")
[
	hidden,
	uuid(3050f2af-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLInputFileElementEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONBLUR)] void onblur();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONRESIZE)] void onresize();
	[id(DISPID_HTMLINPUTTEXTELEMENTEVENTS_ONCHANGE)] VARIANT_BOOL onchange();
	[id(DISPID_HTMLINPUTTEXTELEMENTEVENTS_ONSELECT)] void onselect();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f2ad-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLInputFileElement : IDispatch
{
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_STATUS)] HRESULT status([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_STATUS)] HRESULT status([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_SIZE), displaybind, bindable] HRESULT size([in] long v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_SIZE), displaybind, bindable] HRESULT size([retval, out] long * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_MAXLENGTH), displaybind, bindable] HRESULT maxLength([in] long v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_MAXLENGTH), displaybind, bindable] HRESULT maxLength([retval, out] long * p);
	[id(DISPID_IHTMLINPUTFILEELEMENT_SELECT)] HRESULT select();
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f542-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLInputFileElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_STATUS)] HRESULT status([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_STATUS)] HRESULT status([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_SIZE), displaybind, bindable] HRESULT size([in] long v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_SIZE), displaybind, bindable] HRESULT size([retval, out] long * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_MAXLENGTH), displaybind, bindable] HRESULT maxLength([in] long v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_MAXLENGTH), displaybind, bindable] HRESULT maxLength([retval, out] long * p);
	[id(DISPID_IHTMLINPUTFILEELEMENT_SELECT)] HRESULT select();
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_ONCHANGE), displaybind, bindable] HRESULT onchange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([in] VARIANT v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_ONSELECT), displaybind, bindable] HRESULT onselect([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLINPUTFILEELEMENT_VALUE), displaybind, bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLINPUTFILEELEMENT_VALUE), displaybind, bindable] HRESULT value([retval, out] BSTR * p);
};
[uuid(3050f2ae-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLInputFileElement
{
	[default]			dispinterface DispIHTMLInputFileElement;
	[source, default]	dispinterface HTMLInputFileElementEvents;
						interface IHTMLInputFileElement;
						interface IHTMLControlElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CInputFile;")
[
	hidden,
	uuid(3050f2b8-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLMarqueeElementEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONBLUR)] void onblur();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONRESIZE)] void onresize();
	[id(DISPID_HTMLTEXTCONTAINEREVENTS_ONCHANGE)] void onchange();
	[id(DISPID_HTMLTEXTCONTAINEREVENTS_ONSCROLL)] void onscroll();
	[id(DISPID_HTMLTEXTCONTAINEREVENTS_ONSELECT)] void onselect();
	[id(DISPID_HTMLMARQUEEELEMENTEVENTS_ONBOUNCE)] void onbounce();
	[id(DISPID_HTMLMARQUEEELEMENTEVENTS_ONFINISH)] void onfinish();
	[id(DISPID_HTMLMARQUEEELEMENTEVENTS_ONSTART)] void onstart();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f2b5-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLMarqueeElement : IDispatch
{
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_BGCOLOR)] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_BGCOLOR)] HRESULT bgColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_SCROLLDELAY)] HRESULT scrollDelay([in] long v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_SCROLLDELAY)] HRESULT scrollDelay([retval, out] long * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_DIRECTION)] HRESULT direction([in] BSTR v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_DIRECTION)] HRESULT direction([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_BEHAVIOR)] HRESULT behavior([in] BSTR v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_BEHAVIOR)] HRESULT behavior([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_SCROLLAMOUNT)] HRESULT scrollAmount([in] long v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_SCROLLAMOUNT)] HRESULT scrollAmount([retval, out] long * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_LOOP)] HRESULT loop([in] long v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_LOOP)] HRESULT loop([retval, out] long * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_VSPACE)] HRESULT vspace([in] long v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_VSPACE)] HRESULT vspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_HSPACE)] HRESULT hspace([in] long v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_HSPACE)] HRESULT hspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_ONFINISH), displaybind, bindable] HRESULT onfinish([in] VARIANT v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_ONFINISH), displaybind, bindable] HRESULT onfinish([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_ONSTART), displaybind, bindable] HRESULT onstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_ONSTART), displaybind, bindable] HRESULT onstart([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_ONBOUNCE), displaybind, bindable] HRESULT onbounce([in] VARIANT v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_ONBOUNCE), displaybind, bindable] HRESULT onbounce([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_HEIGHT)] HRESULT height([in] VARIANT v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_HEIGHT)] HRESULT height([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_TRUESPEED), displaybind, bindable] HRESULT trueSpeed([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_TRUESPEED), displaybind, bindable] HRESULT trueSpeed([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLMARQUEEELEMENT_START)] HRESULT start();
	[id(DISPID_IHTMLMARQUEEELEMENT_STOP)] HRESULT stop();
};
[
	hidden,
	uuid(3050f527-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLMarqueeElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[id(DISPID_IHTMLTEXTCONTAINER_CREATECONTROLRANGE)] HRESULT createControlRange([retval, out] IDispatch** range);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLHEIGHT), displaybind, bindable] HRESULT scrollHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLWIDTH), displaybind, bindable] HRESULT scrollWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_BGCOLOR)] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_BGCOLOR)] HRESULT bgColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_SCROLLDELAY)] HRESULT scrollDelay([in] long v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_SCROLLDELAY)] HRESULT scrollDelay([retval, out] long * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_DIRECTION)] HRESULT direction([in] BSTR v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_DIRECTION)] HRESULT direction([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_BEHAVIOR)] HRESULT behavior([in] BSTR v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_BEHAVIOR)] HRESULT behavior([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_SCROLLAMOUNT)] HRESULT scrollAmount([in] long v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_SCROLLAMOUNT)] HRESULT scrollAmount([retval, out] long * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_LOOP)] HRESULT loop([in] long v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_LOOP)] HRESULT loop([retval, out] long * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_VSPACE)] HRESULT vspace([in] long v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_VSPACE)] HRESULT vspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_HSPACE)] HRESULT hspace([in] long v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_HSPACE)] HRESULT hspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_ONFINISH), displaybind, bindable] HRESULT onfinish([in] VARIANT v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_ONFINISH), displaybind, bindable] HRESULT onfinish([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_ONSTART), displaybind, bindable] HRESULT onstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_ONSTART), displaybind, bindable] HRESULT onstart([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_ONBOUNCE), displaybind, bindable] HRESULT onbounce([in] VARIANT v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_ONBOUNCE), displaybind, bindable] HRESULT onbounce([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_HEIGHT)] HRESULT height([in] VARIANT v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_HEIGHT)] HRESULT height([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLMARQUEEELEMENT_TRUESPEED), displaybind, bindable] HRESULT trueSpeed([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLMARQUEEELEMENT_TRUESPEED), displaybind, bindable] HRESULT trueSpeed([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLMARQUEEELEMENT_START)] HRESULT start();
	[id(DISPID_IHTMLMARQUEEELEMENT_STOP)] HRESULT stop();
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f2b9-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLMarqueeElement
{
	[default]			dispinterface DispIHTMLMarqueeElement;
	[source, default]	dispinterface HTMLMarqueeElementEvents;
						interface IHTMLMarqueeElement;
						interface IHTMLTextContainer;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CMarquee;")
[
	hidden,
	uuid(3050f2bd-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLOptionButtonElementEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONBLUR)] void onblur();
	[id(DISPID_HTMLCONTROLELEMENTEVENTS_ONRESIZE)] void onresize();
	[id(DISPID_HTMLOPTIONBUTTONELEMENTEVENTS_ONCHANGE)] VARIANT_BOOL onchange();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f2bc-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLOptionButtonElement : IDispatch
{
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_VALUE), bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_VALUE), bindable] HRESULT value([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_NAME), bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_NAME), bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_CHECKED), bindable] HRESULT checked([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_CHECKED), bindable] HRESULT checked([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_DEFAULTCHECKED), bindable] HRESULT defaultChecked([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_DEFAULTCHECKED), bindable] HRESULT defaultChecked([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_ONCHANGE), bindable] HRESULT onchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_ONCHANGE), bindable] HRESULT onchange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_STATUS)] HRESULT status([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_STATUS)] HRESULT status([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_INDETERMINATE), bindable] HRESULT indeterminate([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_INDETERMINATE), bindable] HRESULT indeterminate([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
};
[
	hidden,
	uuid(3050f509-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLOptionButtonElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_VALUE), bindable] HRESULT value([in] BSTR v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_VALUE), bindable] HRESULT value([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_NAME), bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_NAME), bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_CHECKED), bindable] HRESULT checked([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_CHECKED), bindable] HRESULT checked([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_DEFAULTCHECKED), bindable] HRESULT defaultChecked([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_DEFAULTCHECKED), bindable] HRESULT defaultChecked([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_ONCHANGE), bindable] HRESULT onchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_ONCHANGE), bindable] HRESULT onchange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_DISABLED), displaybind, bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_STATUS)] HRESULT status([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_STATUS)] HRESULT status([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLOPTIONBUTTONELEMENT_INDETERMINATE), bindable] HRESULT indeterminate([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_INDETERMINATE), bindable] HRESULT indeterminate([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLOPTIONBUTTONELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f2be-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLOptionButtonElement
{
	[default]			dispinterface DispIHTMLOptionButtonElement;
	[source, default]	dispinterface HTMLOptionButtonElementEvents;
						interface IHTMLOptionButtonElement;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CCheckboxElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f322-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLTitleElement : IDispatch
{
	[propput, id(DISPID_IHTMLTITLEELEMENT_TEXT), bindable] HRESULT text([in] BSTR v);
	[propget, id(DISPID_IHTMLTITLEELEMENT_TEXT), bindable] HRESULT text([retval, out] BSTR * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f203-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLMetaElement : IDispatch
{
	[propput, id(DISPID_IHTMLMETAELEMENT_HTTPEQUIV), displaybind, bindable] HRESULT httpEquiv([in] BSTR v);
	[propget, id(DISPID_IHTMLMETAELEMENT_HTTPEQUIV), displaybind, bindable] HRESULT httpEquiv([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLMETAELEMENT_CONTENT), displaybind, bindable] HRESULT content([in] BSTR v);
	[propget, id(DISPID_IHTMLMETAELEMENT_CONTENT), displaybind, bindable] HRESULT content([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLMETAELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLMETAELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLMETAELEMENT_URL), displaybind, bindable] HRESULT url([in] BSTR v);
	[propget, id(DISPID_IHTMLMETAELEMENT_URL), displaybind, bindable] HRESULT url([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLMETAELEMENT_CHARSET), displaybind, bindable] HRESULT charset([in] BSTR v);
	[propget, id(DISPID_IHTMLMETAELEMENT_CHARSET), displaybind, bindable] HRESULT charset([retval, out] BSTR * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f204-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLBaseElement : IDispatch
{
	[propput, id(DISPID_IHTMLBASEELEMENT_HREF), displaybind, bindable] HRESULT href([in] BSTR v);
	[propget, id(DISPID_IHTMLBASEELEMENT_HREF), displaybind, bindable] HRESULT href([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBASEELEMENT_TARGET), displaybind, bindable] HRESULT target([in] BSTR v);
	[propget, id(DISPID_IHTMLBASEELEMENT_TARGET), displaybind, bindable] HRESULT target([retval, out] BSTR * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f206-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLIsIndexElement : IDispatch
{
	[propput, id(DISPID_IHTMLISINDEXELEMENT_PROMPT), displaybind, bindable] HRESULT prompt([in] BSTR v);
	[propget, id(DISPID_IHTMLISINDEXELEMENT_PROMPT), displaybind, bindable] HRESULT prompt([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLISINDEXELEMENT_ACTION), displaybind, bindable] HRESULT action([in] BSTR v);
	[propget, id(DISPID_IHTMLISINDEXELEMENT_ACTION), displaybind, bindable] HRESULT action([retval, out] BSTR * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f207-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLNextIdElement : IDispatch
{
	[propput, id(DISPID_IHTMLNEXTIDELEMENT_N), displaybind, bindable] HRESULT n([in] BSTR v);
	[propget, id(DISPID_IHTMLNEXTIDELEMENT_N), displaybind, bindable] HRESULT n([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f516-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLTitleElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLTITLEELEMENT_TEXT), bindable] HRESULT text([in] BSTR v);
	[propget, id(DISPID_IHTMLTITLEELEMENT_TEXT), bindable] HRESULT text([retval, out] BSTR * p);
};
[uuid(3050f284-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLTitleElement
{
	[default]			dispinterface DispIHTMLTitleElement;
						interface IHTMLTitleElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CTitleElement;")
[
	hidden,
	uuid(3050f517-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLMetaElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLMETAELEMENT_HTTPEQUIV), displaybind, bindable] HRESULT httpEquiv([in] BSTR v);
	[propget, id(DISPID_IHTMLMETAELEMENT_HTTPEQUIV), displaybind, bindable] HRESULT httpEquiv([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLMETAELEMENT_CONTENT), displaybind, bindable] HRESULT content([in] BSTR v);
	[propget, id(DISPID_IHTMLMETAELEMENT_CONTENT), displaybind, bindable] HRESULT content([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLMETAELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLMETAELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLMETAELEMENT_URL), displaybind, bindable] HRESULT url([in] BSTR v);
	[propget, id(DISPID_IHTMLMETAELEMENT_URL), displaybind, bindable] HRESULT url([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLMETAELEMENT_CHARSET), displaybind, bindable] HRESULT charset([in] BSTR v);
	[propget, id(DISPID_IHTMLMETAELEMENT_CHARSET), displaybind, bindable] HRESULT charset([retval, out] BSTR * p);
};
[uuid(3050f275-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLMetaElement
{
	[default]			dispinterface DispIHTMLMetaElement;
						interface IHTMLMetaElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CMetaElement;")
[
	hidden,
	uuid(3050f518-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLBaseElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLBASEELEMENT_HREF), displaybind, bindable] HRESULT href([in] BSTR v);
	[propget, id(DISPID_IHTMLBASEELEMENT_HREF), displaybind, bindable] HRESULT href([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBASEELEMENT_TARGET), displaybind, bindable] HRESULT target([in] BSTR v);
	[propget, id(DISPID_IHTMLBASEELEMENT_TARGET), displaybind, bindable] HRESULT target([retval, out] BSTR * p);
};
[uuid(3050f276-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLBaseElement
{
	[default]			dispinterface DispIHTMLBaseElement;
						interface IHTMLBaseElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CBaseElement;")
[
	hidden,
	uuid(3050f519-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLIsIndexElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLISINDEXELEMENT_PROMPT), displaybind, bindable] HRESULT prompt([in] BSTR v);
	[propget, id(DISPID_IHTMLISINDEXELEMENT_PROMPT), displaybind, bindable] HRESULT prompt([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLISINDEXELEMENT_ACTION), displaybind, bindable] HRESULT action([in] BSTR v);
	[propget, id(DISPID_IHTMLISINDEXELEMENT_ACTION), displaybind, bindable] HRESULT action([retval, out] BSTR * p);
};
[uuid(3050f278-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLIsIndexElement
{
	[default]			dispinterface DispIHTMLIsIndexElement;
						interface IHTMLIsIndexElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CIsIndexElement;")
[
	hidden,
	uuid(3050f51a-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLNextIdElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLNEXTIDELEMENT_N), displaybind, bindable] HRESULT n([in] BSTR v);
	[propget, id(DISPID_IHTMLNEXTIDELEMENT_N), displaybind, bindable] HRESULT n([retval, out] BSTR * p);
};
[uuid(3050f279-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLNextIdElement
{
	[default]			dispinterface DispIHTMLNextIdElement;
						interface IHTMLNextIdElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CNextIdElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f202-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLBaseFontElement : IDispatch
{
	[propput, id(DISPID_IHTMLBASEFONTELEMENT_COLOR), displaybind, bindable] HRESULT color([in] VARIANT v);
	[propget, id(DISPID_IHTMLBASEFONTELEMENT_COLOR), displaybind, bindable] HRESULT color([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBASEFONTELEMENT_FACE), displaybind, bindable] HRESULT face([in] BSTR v);
	[propget, id(DISPID_IHTMLBASEFONTELEMENT_FACE), displaybind, bindable] HRESULT face([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBASEFONTELEMENT_SIZE), displaybind, bindable] HRESULT size([in] long v);
	[propget, id(DISPID_IHTMLBASEFONTELEMENT_SIZE), displaybind, bindable] HRESULT size([retval, out] long * p);
};
[
	hidden,
	uuid(3050f504-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLBaseFontElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLBASEFONTELEMENT_COLOR), displaybind, bindable] HRESULT color([in] VARIANT v);
	[propget, id(DISPID_IHTMLBASEFONTELEMENT_COLOR), displaybind, bindable] HRESULT color([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBASEFONTELEMENT_FACE), displaybind, bindable] HRESULT face([in] BSTR v);
	[propget, id(DISPID_IHTMLBASEFONTELEMENT_FACE), displaybind, bindable] HRESULT face([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBASEFONTELEMENT_SIZE), displaybind, bindable] HRESULT size([in] long v);
	[propget, id(DISPID_IHTMLBASEFONTELEMENT_SIZE), displaybind, bindable] HRESULT size([retval, out] long * p);
};
[uuid(3050f282-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLBaseFontElement
{
	[default]			dispinterface DispIHTMLBaseFontElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLBaseFontElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CBaseFontElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f209-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLUnknownElement : IDispatch
{
};
[
	hidden,
	uuid(3050f539-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLUnknownElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
};
[uuid(3050f268-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLUnknownElement
{
	[default]			dispinterface DispIHTMLUnknownElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLUnknownElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CUnknownElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(FECEAAA2-8405-11cf-8BA1-00AA00476DA6)
]
interface IOmHistory : IDispatch
{
	[propget, id(DISPID_IOMHISTORY_LENGTH)] HRESULT length([retval, out] short * p);
	[id(DISPID_IOMHISTORY_BACK)] HRESULT back([optional, in] VARIANT* pvargdistance);
	[id(DISPID_IOMHISTORY_FORWARD)] HRESULT forward([optional, in] VARIANT* pvargdistance);
	[id(DISPID_IOMHISTORY_GO)] HRESULT go([optional, in] VARIANT* pvargdistance);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f3fc-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLMimeTypesCollection : IDispatch
{
	[propget, id(DISPID_IHTMLMIMETYPESCOLLECTION_LENGTH)] HRESULT length([retval, out] long * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f3fd-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLPluginsCollection : IDispatch
{
	[propget, id(DISPID_IHTMLPLUGINSCOLLECTION_LENGTH)] HRESULT length([retval, out] long * p);
	[id(DISPID_IHTMLPLUGINSCOLLECTION_REFRESH)] HRESULT refresh([defaultvalue(0), in] VARIANT_BOOL reload);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f401-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLOpsProfile : IDispatch
{
	[id(DISPID_IHTMLOPSPROFILE_ADDREQUEST)] HRESULT addRequest([in] BSTR name,[optional, in] VARIANT reserved,[retval, out] VARIANT_BOOL* success);
	[id(DISPID_IHTMLOPSPROFILE_CLEARREQUEST)] HRESULT clearRequest();
	[id(DISPID_IHTMLOPSPROFILE_DOREQUEST)] HRESULT doRequest([in] VARIANT usage,[optional, in] VARIANT fname,[optional, in] VARIANT domain,[optional, in] VARIANT path,[optional, in] VARIANT expire,[optional, in] VARIANT reserved);
	[id(DISPID_IHTMLOPSPROFILE_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR name,[retval, out] BSTR* value);
	[id(DISPID_IHTMLOPSPROFILE_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR name,[in] BSTR value,[optional, in] VARIANT prefs,[retval, out] VARIANT_BOOL* success);
	[id(DISPID_IHTMLOPSPROFILE_COMMITCHANGES)] HRESULT commitChanges([retval, out] VARIANT_BOOL* success);
	[id(DISPID_IHTMLOPSPROFILE_ADDREADREQUEST)] HRESULT addReadRequest([in] BSTR name,[optional, in] VARIANT reserved,[retval, out] VARIANT_BOOL* success);
	[id(DISPID_IHTMLOPSPROFILE_DOREADREQUEST)] HRESULT doReadRequest([in] VARIANT usage,[optional, in] VARIANT fname,[optional, in] VARIANT domain,[optional, in] VARIANT path,[optional, in] VARIANT expire,[optional, in] VARIANT reserved);
	[id(DISPID_IHTMLOPSPROFILE_DOWRITEREQUEST)] HRESULT doWriteRequest([retval, out] VARIANT_BOOL* success);
};
[
	odl,
	oleautomation,
	dual,
	uuid(FECEAAA5-8405-11cf-8BA1-00AA00476DA6)
]
interface IOmNavigator : IDispatch
{
	[propget, id(DISPID_IOMNAVIGATOR_APPCODENAME)] HRESULT appCodeName([retval, out] BSTR * p);
	[propget, id(DISPID_IOMNAVIGATOR_APPNAME)] HRESULT appName([retval, out] BSTR * p);
	[propget, id(DISPID_IOMNAVIGATOR_APPVERSION)] HRESULT appVersion([retval, out] BSTR * p);
	[propget, id(DISPID_IOMNAVIGATOR_USERAGENT)] HRESULT userAgent([retval, out] BSTR * p);
	[id(DISPID_IOMNAVIGATOR_JAVAENABLED)] HRESULT javaEnabled([retval, out] VARIANT_BOOL* enabled);
	[id(DISPID_IOMNAVIGATOR_TAINTENABLED)] HRESULT taintEnabled([retval, out] VARIANT_BOOL* enabled);
	[propget, id(DISPID_IOMNAVIGATOR_MIMETYPES)] HRESULT mimeTypes([retval, out] IHTMLMimeTypesCollection* * p);
	[propget, id(DISPID_IOMNAVIGATOR_PLUGINS)] HRESULT plugins([retval, out] IHTMLPluginsCollection* * p);
	[propget, id(DISPID_IOMNAVIGATOR_COOKIEENABLED)] HRESULT cookieEnabled([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IOMNAVIGATOR_OPSPROFILE)] HRESULT opsProfile([retval, out] IHTMLOpsProfile* * p);
	[id(DISPID_IOMNAVIGATOR_TOSTRING)] HRESULT toString([retval, out] BSTR* string);
	[propget, id(DISPID_IOMNAVIGATOR_CPUCLASS)] HRESULT cpuClass([retval, out] BSTR * p);
	[propget, id(DISPID_IOMNAVIGATOR_SYSTEMLANGUAGE)] HRESULT systemLanguage([retval, out] BSTR * p);
	[propget, id(DISPID_IOMNAVIGATOR_BROWSERLANGUAGE), hidden] HRESULT browserLanguage([retval, out] BSTR * p);
	[propget, id(DISPID_IOMNAVIGATOR_USERLANGUAGE)] HRESULT userLanguage([retval, out] BSTR * p);
	[propget, id(DISPID_IOMNAVIGATOR_PLATFORM)] HRESULT platform([retval, out] BSTR * p);
	[propget, id(DISPID_IOMNAVIGATOR_APPMINORVERSION)] HRESULT appMinorVersion([retval, out] BSTR * p);
	[propget, id(DISPID_IOMNAVIGATOR_CONNECTIONSPEED), hidden] HRESULT connectionSpeed([retval, out] long * p);
	[propget, id(DISPID_IOMNAVIGATOR_ONLINE)] HRESULT onLine([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IOMNAVIGATOR_USERPROFILE)] HRESULT userProfile([retval, out] IHTMLOpsProfile* * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(163BB1E0-6E00-11cf-837A-48DC04C10000)
]
interface IHTMLLocation : IDispatch
{
	[propput, id(DISPID_IHTMLLOCATION_HREF)] HRESULT href([in] BSTR v);
	[propget, id(DISPID_IHTMLLOCATION_HREF)] HRESULT href([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLOCATION_PROTOCOL)] HRESULT protocol([in] BSTR v);
	[propget, id(DISPID_IHTMLLOCATION_PROTOCOL)] HRESULT protocol([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLOCATION_HOST)] HRESULT host([in] BSTR v);
	[propget, id(DISPID_IHTMLLOCATION_HOST)] HRESULT host([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLOCATION_HOSTNAME)] HRESULT hostname([in] BSTR v);
	[propget, id(DISPID_IHTMLLOCATION_HOSTNAME)] HRESULT hostname([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLOCATION_PORT)] HRESULT port([in] BSTR v);
	[propget, id(DISPID_IHTMLLOCATION_PORT)] HRESULT port([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLOCATION_PATHNAME)] HRESULT pathname([in] BSTR v);
	[propget, id(DISPID_IHTMLLOCATION_PATHNAME)] HRESULT pathname([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLOCATION_SEARCH)] HRESULT search([in] BSTR v);
	[propget, id(DISPID_IHTMLLOCATION_SEARCH)] HRESULT search([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLLOCATION_HASH)] HRESULT hash([in] BSTR v);
	[propget, id(DISPID_IHTMLLOCATION_HASH)] HRESULT hash([retval, out] BSTR * p);
	[id(DISPID_IHTMLLOCATION_RELOAD)] HRESULT reload([defaultvalue(0), in] VARIANT_BOOL flag);
	[id(DISPID_IHTMLLOCATION_REPLACE)] HRESULT replace([in] BSTR bstr);
	[id(DISPID_IHTMLLOCATION_ASSIGN)] HRESULT assign([in] BSTR bstr);
	[id(DISPID_IHTMLLOCATION_TOSTRING)] HRESULT toString([retval, out] BSTR* string);
};
[uuid(FECEAAA3-8405-11cf-8BA1-00AA00476DA6)]
coclass HTMLHistory
{
	[default]			interface IOmHistory;
};
cpp_quote("EXTERN_C const GUID CLSID_COmHistory;")
[uuid(3050f3fe-98b5-11cf-bb82-00aa00bdce0b)]
coclass CMimeTypes
{
	[default]			interface IHTMLMimeTypesCollection;
};
cpp_quote("EXTERN_C const GUID CLSID_CMimeTypes;")
[uuid(3050f3ff-98b5-11cf-bb82-00aa00bdce0b)]
coclass CPlugins
{
	[default]			interface IHTMLPluginsCollection;
};
cpp_quote("EXTERN_C const GUID CLSID_CPlugins;")
[uuid(3050f402-98b5-11cf-bb82-00aa00bdce0b)]
coclass COpsProfile
{
	[default]			interface IHTMLOpsProfile;
};
cpp_quote("EXTERN_C const GUID CLSID_COpsProfile;")
[uuid(FECEAAA6-8405-11cf-8BA1-00AA00476DA6)]
coclass HTMLNavigator
{
	[default]			interface IOmNavigator;
};
cpp_quote("EXTERN_C const GUID CLSID_COmNavigator;")
[uuid(163BB1E1-6E00-11cf-837A-48DC04C10000)]
coclass HTMLLocation
{
	[default]			interface IHTMLLocation;
};
cpp_quote("EXTERN_C const GUID CLSID_COmLocation;")
[
	hidden,
	uuid(96A0A4E0-D062-11cf-94B6-00AA0060275C)
]
dispinterface HTMLWindowEvents
{
properties:
methods:
	[id(DISPID_HTMLWINDOWEVENTS_ONLOAD)] void onload();
	[id(DISPID_HTMLWINDOWEVENTS_ONUNLOAD)] void onunload();
	[id(DISPID_HTMLWINDOWEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLWINDOWEVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLWINDOWEVENTS_ONBLUR)] void onblur();
	[id(DISPID_HTMLWINDOWEVENTS_ONERROR)] void onerror();
	[id(DISPID_HTMLWINDOWEVENTS_ONRESIZE)] void onresize();
	[id(DISPID_HTMLWINDOWEVENTS_ONSCROLL)] void onscroll();
	[id(DISPID_HTMLWINDOWEVENTS_ONBEFOREUNLOAD)] void onbeforeunload();
};
interface IHTMLDocument;
interface IHTMLDocument2;
interface IHTMLFramesCollection2;
interface IHTMLOptionElementFactory;
interface IHTMLImageElementFactory;
interface IHTMLWindow2;
[
	odl,
	oleautomation,
	dual,
	uuid(3050f32d-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLEventObj : IDispatch
{
	[propget, id(DISPID_IHTMLEVENTOBJ_SRCELEMENT)] HRESULT srcElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_ALTKEY)] HRESULT altKey([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_CTRLKEY)] HRESULT ctrlKey([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_SHIFTKEY)] HRESULT shiftKey([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLEVENTOBJ_RETURNVALUE)] HRESULT returnValue([in] VARIANT v);
	[propget, id(DISPID_IHTMLEVENTOBJ_RETURNVALUE)] HRESULT returnValue([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLEVENTOBJ_CANCELBUBBLE)] HRESULT cancelBubble([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLEVENTOBJ_CANCELBUBBLE)] HRESULT cancelBubble([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_FROMELEMENT)] HRESULT fromElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_TOELEMENT)] HRESULT toElement([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLEVENTOBJ_KEYCODE)] HRESULT keyCode([in] long v);
	[propget, id(DISPID_IHTMLEVENTOBJ_KEYCODE)] HRESULT keyCode([retval, out] long * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_BUTTON)] HRESULT button([retval, out] long * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_TYPE)] HRESULT type([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_QUALIFIER)] HRESULT qualifier([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_REASON)] HRESULT reason([retval, out] long * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_X)] HRESULT x([retval, out] long * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_Y)] HRESULT y([retval, out] long * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_CLIENTX)] HRESULT clientX([retval, out] long * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_CLIENTY)] HRESULT clientY([retval, out] long * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_OFFSETX)] HRESULT offsetX([retval, out] long * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_OFFSETY)] HRESULT offsetY([retval, out] long * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_SCREENX)] HRESULT screenX([retval, out] long * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_SCREENY)] HRESULT screenY([retval, out] long * p);
	[propget, id(DISPID_IHTMLEVENTOBJ_SRCFILTER)] HRESULT srcFilter([retval, out] IDispatch* * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(332c4426-26cb-11d0-b483-00c04fd90119)
]
interface IHTMLFramesCollection2 : IDispatch
{
	[id(DISPID_IHTMLFRAMESCOLLECTION2_ITEM)] HRESULT item([in] VARIANT* pvarIndex,[retval, out] VARIANT* pvarResult);
	[propget, id(DISPID_IHTMLFRAMESCOLLECTION2_LENGTH)] HRESULT length([retval, out] long * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f35c-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLScreen : IDispatch
{
	[propget, id(DISPID_IHTMLSCREEN_COLORDEPTH)] HRESULT colorDepth([retval, out] long * p);
	[propput, id(DISPID_IHTMLSCREEN_BUFFERDEPTH)] HRESULT bufferDepth([in] long v);
	[propget, id(DISPID_IHTMLSCREEN_BUFFERDEPTH)] HRESULT bufferDepth([retval, out] long * p);
	[propget, id(DISPID_IHTMLSCREEN_WIDTH)] HRESULT width([retval, out] long * p);
	[propget, id(DISPID_IHTMLSCREEN_HEIGHT)] HRESULT height([retval, out] long * p);
	[propput, id(DISPID_IHTMLSCREEN_UPDATEINTERVAL)] HRESULT updateInterval([in] long v);
	[propget, id(DISPID_IHTMLSCREEN_UPDATEINTERVAL)] HRESULT updateInterval([retval, out] long * p);
	[propget, id(DISPID_IHTMLSCREEN_AVAILHEIGHT)] HRESULT availHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLSCREEN_AVAILWIDTH)] HRESULT availWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLSCREEN_FONTSMOOTHINGENABLED)] HRESULT fontSmoothingEnabled([retval, out] VARIANT_BOOL * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(332c4427-26cb-11d0-b483-00c04fd90119)
]
interface IHTMLWindow2 : IHTMLFramesCollection2
{
	[propget, id(DISPID_IHTMLWINDOW2_FRAMES)] HRESULT frames([retval, out] IHTMLFramesCollection2* * p);
	[propput, id(DISPID_IHTMLWINDOW2_DEFAULTSTATUS)] HRESULT defaultStatus([in] BSTR v);
	[propget, id(DISPID_IHTMLWINDOW2_DEFAULTSTATUS)] HRESULT defaultStatus([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLWINDOW2_STATUS)] HRESULT status([in] BSTR v);
	[propget, id(DISPID_IHTMLWINDOW2_STATUS)] HRESULT status([retval, out] BSTR * p);
	[id(DISPID_IHTMLWINDOW2_SETTIMEOUT)] HRESULT setTimeout([in] BSTR expression,[in] long msec,[optional, in] VARIANT* language,[retval, out] long* timerID);
	[id(DISPID_IHTMLWINDOW2_CLEARTIMEOUT)] HRESULT clearTimeout([in] long timerID);
	[id(DISPID_IHTMLWINDOW2_ALERT)] HRESULT alert([defaultvalue(""), in] BSTR message);
	[id(DISPID_IHTMLWINDOW2_CONFIRM)] HRESULT confirm([defaultvalue(""), in] BSTR message,[retval, out] VARIANT_BOOL* confirmed);
	[id(DISPID_IHTMLWINDOW2_PROMPT)] HRESULT prompt([defaultvalue(""), in] BSTR message,[defaultvalue("undefined"), in] BSTR defstr,[retval, out] VARIANT* textdata);
	[propget, id(DISPID_IHTMLWINDOW2_IMAGE)] HRESULT Image([retval, out] IHTMLImageElementFactory* * p);
	[propget, id(DISPID_IHTMLWINDOW2_LOCATION)] HRESULT location([retval, out] IHTMLLocation* * p);
	[propget, id(DISPID_IHTMLWINDOW2_HISTORY)] HRESULT history([retval, out] IOmHistory* * p);
	[id(DISPID_IHTMLWINDOW2_CLOSE)] HRESULT close();
	[propput, id(DISPID_IHTMLWINDOW2_OPENER)] HRESULT opener([in] VARIANT v);
	[propget, id(DISPID_IHTMLWINDOW2_OPENER)] HRESULT opener([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLWINDOW2_NAVIGATOR)] HRESULT navigator([retval, out] IOmNavigator* * p);
	[propput, id(DISPID_IHTMLWINDOW2_NAME)] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLWINDOW2_NAME)] HRESULT name([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLWINDOW2_PARENT)] HRESULT parent([retval, out] IHTMLWindow2* * p);
	[id(DISPID_IHTMLWINDOW2_OPEN)] HRESULT open([defaultvalue(""), in] BSTR url,[defaultvalue(""), in] BSTR name,[defaultvalue(""), in] BSTR features,[defaultvalue(0), in] VARIANT_BOOL replace,[retval, out] IHTMLWindow2** pomWindowResult);
	[propget, id(DISPID_IHTMLWINDOW2_SELF)] HRESULT self([retval, out] IHTMLWindow2* * p);
	[propget, id(DISPID_IHTMLWINDOW2_TOP)] HRESULT top([retval, out] IHTMLWindow2* * p);
	[propget, id(DISPID_IHTMLWINDOW2_WINDOW)] HRESULT window([retval, out] IHTMLWindow2* * p);
	[id(DISPID_IHTMLWINDOW2_NAVIGATE)] HRESULT navigate([in] BSTR url);
	[propput, id(DISPID_IHTMLWINDOW2_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLWINDOW2_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLWINDOW2_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLWINDOW2_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLWINDOW2_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLWINDOW2_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLWINDOW2_ONBEFOREUNLOAD), displaybind, bindable] HRESULT onbeforeunload([in] VARIANT v);
	[propget, id(DISPID_IHTMLWINDOW2_ONBEFOREUNLOAD), displaybind, bindable] HRESULT onbeforeunload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLWINDOW2_ONUNLOAD), displaybind, bindable] HRESULT onunload([in] VARIANT v);
	[propget, id(DISPID_IHTMLWINDOW2_ONUNLOAD), displaybind, bindable] HRESULT onunload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLWINDOW2_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLWINDOW2_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLWINDOW2_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLWINDOW2_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLWINDOW2_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLWINDOW2_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLWINDOW2_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLWINDOW2_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLWINDOW2_DOCUMENT), source] HRESULT document([retval, out] IHTMLDocument2* * p);
	[propget, id(DISPID_IHTMLWINDOW2_EVENT)] HRESULT event([retval, out] IHTMLEventObj* * p);
	[propget, id(DISPID_IHTMLWINDOW2__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown* * p);
	[id(DISPID_IHTMLWINDOW2_SHOWMODALDIALOG)] HRESULT showModalDialog([in] BSTR dialog,[optional, in] VARIANT* varArgIn,[optional, in] VARIANT* varOptions,[retval, out] VARIANT* varArgOut);
	[id(DISPID_IHTMLWINDOW2_SHOWHELP)] HRESULT showHelp([in] BSTR helpURL,[optional, in] VARIANT helpArg,[defaultvalue(""), in] BSTR features);
	[propget, id(DISPID_IHTMLWINDOW2_SCREEN)] HRESULT screen([retval, out] IHTMLScreen* * p);
	[propget, id(DISPID_IHTMLWINDOW2_OPTION)] HRESULT Option([retval, out] IHTMLOptionElementFactory* * p);
	[id(DISPID_IHTMLWINDOW2_FOCUS)] HRESULT focus();
	[propget, id(DISPID_IHTMLWINDOW2_CLOSED)] HRESULT closed([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLWINDOW2_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLWINDOW2_SCROLL)] HRESULT scroll([in] long x,[in] long y);
	[propget, id(DISPID_IHTMLWINDOW2_CLIENTINFORMATION)] HRESULT clientInformation([retval, out] IOmNavigator* * p);
	[id(DISPID_IHTMLWINDOW2_SETINTERVAL)] HRESULT setInterval([in] BSTR expression,[in] long msec,[optional, in] VARIANT* language,[retval, out] long* timerID);
	[id(DISPID_IHTMLWINDOW2_CLEARINTERVAL)] HRESULT clearInterval([in] long timerID);
	[propput, id(DISPID_IHTMLWINDOW2_OFFSCREENBUFFERING)] HRESULT offscreenBuffering([in] VARIANT v);
	[propget, id(DISPID_IHTMLWINDOW2_OFFSCREENBUFFERING)] HRESULT offscreenBuffering([retval, out] VARIANT * p);
	[id(DISPID_IHTMLWINDOW2_EXECSCRIPT)] HRESULT execScript([in] BSTR code,[in] BSTR language,[retval, out] VARIANT* pvarRet);
	[id(DISPID_IHTMLWINDOW2_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[id(DISPID_IHTMLWINDOW2_SCROLLBY)] HRESULT scrollBy([in] long x,[in] long y);
	[id(DISPID_IHTMLWINDOW2_SCROLLTO)] HRESULT scrollTo([in] long x,[in] long y);
	[id(DISPID_IHTMLWINDOW2_MOVETO)] HRESULT moveTo([in] long x,[in] long y);
	[id(DISPID_IHTMLWINDOW2_MOVEBY)] HRESULT moveBy([in] long x,[in] long y);
	[id(DISPID_IHTMLWINDOW2_RESIZETO)] HRESULT resizeTo([in] long x,[in] long y);
	[id(DISPID_IHTMLWINDOW2_RESIZEBY)] HRESULT resizeBy([in] long x,[in] long y);
	[propget, id(DISPID_IHTMLWINDOW2_EXTERNAL)] HRESULT external([retval, out] IDispatch* * p);
};
[uuid(3050f35d-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLScreen
{
	[default]			interface IHTMLScreen;
};
cpp_quote("EXTERN_C const GUID CLSID_CScreen;")
[uuid(D48A6EC6-6A4A-11cf-94A7-444553540000)]
coclass HTMLWindow2
{
	[default]			interface IHTMLWindow2;
	[source, default]	dispinterface HTMLWindowEvents;
};
cpp_quote("EXTERN_C const GUID CLSID_COmWindow2;")
[uuid(3050f391-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLWindowProxy
{
	[default]			interface IHTMLWindow2;
	[source, default]	dispinterface HTMLWindowEvents;
};
cpp_quote("EXTERN_C const GUID CLSID_COmWindowProxy;")
[
	hidden,
	uuid(3050f260-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLDocumentEvents
{
properties:
methods:
	[id(DISPID_HTMLDOCUMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONREADYSTATECHANGE)] void onreadystatechange();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLDOCUMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
};
[
	odl,
	oleautomation,
	dual,
	uuid(626FC520-A41E-11cf-A731-00A0C9082637)
]
interface IHTMLDocument : IDispatch
{
	[propget, id(DISPID_IHTMLDOCUMENT_SCRIPT), hidden, nonbrowsable] HRESULT Script([retval, out] IDispatch* * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(332c4425-26cb-11d0-b483-00c04fd90119)
]
interface IHTMLDocument2 : IHTMLDocument
{
	[propget, id(DISPID_IHTMLDOCUMENT2_ALL)] HRESULT all([retval, out] IHTMLElementCollection* * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_BODY)] HRESULT body([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_ACTIVEELEMENT)] HRESULT activeElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_IMAGES)] HRESULT images([retval, out] IHTMLElementCollection* * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_APPLETS)] HRESULT applets([retval, out] IHTMLElementCollection* * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_LINKS)] HRESULT links([retval, out] IHTMLElementCollection* * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_FORMS)] HRESULT forms([retval, out] IHTMLElementCollection* * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_ANCHORS)] HRESULT anchors([retval, out] IHTMLElementCollection* * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_TITLE)] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLDOCUMENT2_TITLE)] HRESULT title([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_SCRIPTS)] HRESULT scripts([retval, out] IHTMLElementCollection* * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_DESIGNMODE), hidden] HRESULT designMode([in] BSTR v);
	[propget, id(DISPID_IHTMLDOCUMENT2_DESIGNMODE), hidden] HRESULT designMode([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_SELECTION)] HRESULT selection([retval, out] IHTMLSelectionObject* * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_READYSTATE), bindable] HRESULT readyState([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_FRAMES)] HRESULT frames([retval, out] IHTMLFramesCollection2* * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_EMBEDS)] HRESULT embeds([retval, out] IHTMLElementCollection* * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_PLUGINS)] HRESULT plugins([retval, out] IHTMLElementCollection* * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ALINKCOLOR)] HRESULT alinkColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ALINKCOLOR)] HRESULT alinkColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_BGCOLOR)] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_BGCOLOR)] HRESULT bgColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_FGCOLOR)] HRESULT fgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_FGCOLOR)] HRESULT fgColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_LINKCOLOR)] HRESULT linkColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_LINKCOLOR)] HRESULT linkColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_VLINKCOLOR)] HRESULT vlinkColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_VLINKCOLOR)] HRESULT vlinkColor([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_REFERRER)] HRESULT referrer([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_LOCATION)] HRESULT location([retval, out] IHTMLLocation* * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_LASTMODIFIED)] HRESULT lastModified([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_URL)] HRESULT URL([in] BSTR v);
	[propget, id(DISPID_IHTMLDOCUMENT2_URL)] HRESULT URL([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_DOMAIN)] HRESULT domain([in] BSTR v);
	[propget, id(DISPID_IHTMLDOCUMENT2_DOMAIN)] HRESULT domain([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_COOKIE)] HRESULT cookie([in] BSTR v);
	[propget, id(DISPID_IHTMLDOCUMENT2_COOKIE)] HRESULT cookie([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_EXPANDO), bindable, hidden] HRESULT expando([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLDOCUMENT2_EXPANDO), bindable, hidden] HRESULT expando([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_CHARSET), hidden] HRESULT charset([in] BSTR v);
	[propget, id(DISPID_IHTMLDOCUMENT2_CHARSET), hidden] HRESULT charset([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_DEFAULTCHARSET)] HRESULT defaultCharset([in] BSTR v);
	[propget, id(DISPID_IHTMLDOCUMENT2_DEFAULTCHARSET)] HRESULT defaultCharset([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_MIMETYPE)] HRESULT mimeType([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_FILESIZE)] HRESULT fileSize([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_FILECREATEDDATE)] HRESULT fileCreatedDate([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_FILEMODIFIEDDATE)] HRESULT fileModifiedDate([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_FILEUPDATEDDATE)] HRESULT fileUpdatedDate([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_SECURITY)] HRESULT security([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_PROTOCOL)] HRESULT protocol([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_NAMEPROP)] HRESULT nameProp([retval, out] BSTR * p);
	[vararg,id(DISPID_IHTMLDOCUMENT2_WRITE)] HRESULT write([in] SAFEARRAY(VARIANT) psarray);
	[vararg,id(DISPID_IHTMLDOCUMENT2_WRITELN)] HRESULT writeln([in] SAFEARRAY(VARIANT) psarray);
	[id(DISPID_IHTMLDOCUMENT2_OPEN)] HRESULT open([defaultvalue("text/html"), in] BSTR url,[optional, in] VARIANT name,[optional, in] VARIANT features,[optional, in] VARIANT replace,[retval, out] IDispatch** pomWindowResult);
	[id(DISPID_IHTMLDOCUMENT2_CLOSE)] HRESULT close();
	[id(DISPID_IHTMLDOCUMENT2_CLEAR)] HRESULT clear();
	[id(DISPID_IHTMLDOCUMENT2_QUERYCOMMANDSUPPORTED)] HRESULT queryCommandSupported([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLDOCUMENT2_QUERYCOMMANDENABLED)] HRESULT queryCommandEnabled([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLDOCUMENT2_QUERYCOMMANDSTATE)] HRESULT queryCommandState([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLDOCUMENT2_QUERYCOMMANDINDETERM)] HRESULT queryCommandIndeterm([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLDOCUMENT2_QUERYCOMMANDTEXT)] HRESULT queryCommandText([in] BSTR cmdID,[retval, out] BSTR* pcmdText);
	[id(DISPID_IHTMLDOCUMENT2_QUERYCOMMANDVALUE)] HRESULT queryCommandValue([in] BSTR cmdID,[retval, out] VARIANT* pcmdValue);
	[id(DISPID_IHTMLDOCUMENT2_EXECCOMMAND)] HRESULT execCommand([in] BSTR cmdID,[defaultvalue(0), in] VARIANT_BOOL showUI,[optional, in] VARIANT value,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLDOCUMENT2_EXECCOMMANDSHOWHELP)] HRESULT execCommandShowHelp([in] BSTR cmdID,[retval, out] VARIANT_BOOL* pfRet);
	[id(DISPID_IHTMLDOCUMENT2_CREATEELEMENT)] HRESULT createElement([in] BSTR eTag,[retval, out] IHTMLElement** newElem);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLDOCUMENT2_ELEMENTFROMPOINT)] HRESULT elementFromPoint([in] long x,[in] long y,[retval, out] IHTMLElement** elementHit);
	[propget, id(DISPID_IHTMLDOCUMENT2_PARENTWINDOW)] HRESULT parentWindow([retval, out] IHTMLWindow2* * p);
	[propget, id(DISPID_IHTMLDOCUMENT2_STYLESHEETS)] HRESULT styleSheets([retval, out] IHTMLStyleSheetsCollection* * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDOCUMENT2_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLDOCUMENT2_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[id(DISPID_IHTMLDOCUMENT2_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[id(DISPID_IHTMLDOCUMENT2_CREATESTYLESHEET)] HRESULT createStyleSheet([defaultvalue(""), in] BSTR bstrHref,[defaultvalue(-1), in] long lIndex,[retval, out] IHTMLStyleSheet** ppnewStyleSheet);
};
[uuid(25336920-03F9-11cf-8FD0-00AA00686F13)]
coclass HTMLDocument
{
	[default]			interface IHTMLDocument2;
	[source, default]	dispinterface HTMLDocumentEvents;
};
cpp_quote("EXTERN_C const GUID CLSID_CDoc;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f25f-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLEmbedElement : IDispatch
{
	[propput, id(DISPID_IHTMLEMBEDELEMENT_HIDDEN)] HRESULT hidden([in] BSTR v);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_HIDDEN)] HRESULT hidden([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_PALETTE)] HRESULT palette([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_PLUGINSPAGE)] HRESULT pluginspage([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLEMBEDELEMENT_SRC)] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_SRC)] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLEMBEDELEMENT_UNITS)] HRESULT units([in] BSTR v);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_UNITS)] HRESULT units([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLEMBEDELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLEMBEDELEMENT_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLEMBEDELEMENT_HEIGHT)] HRESULT height([in] VARIANT v);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_HEIGHT)] HRESULT height([retval, out] VARIANT * p);
};
[
	hidden,
	uuid(3050f52e-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLEmbedElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLEMBEDELEMENT_HIDDEN)] HRESULT hidden([in] BSTR v);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_HIDDEN)] HRESULT hidden([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_PALETTE)] HRESULT palette([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_PLUGINSPAGE)] HRESULT pluginspage([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLEMBEDELEMENT_SRC)] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_SRC)] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLEMBEDELEMENT_UNITS)] HRESULT units([in] BSTR v);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_UNITS)] HRESULT units([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLEMBEDELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLEMBEDELEMENT_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLEMBEDELEMENT_HEIGHT)] HRESULT height([in] VARIANT v);
	[propget, id(DISPID_IHTMLEMBEDELEMENT_HEIGHT)] HRESULT height([retval, out] VARIANT * p);
};
[uuid(3050f25d-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLEmbed
{
	[default]			dispinterface DispIHTMLEmbedElement;
	[source, default]	dispinterface HTMLControlElementEvents;
						interface IHTMLEmbedElement;
						interface IHTMLControlElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CPluginSite;")
[
	hidden,
	uuid(3050f3ba-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLMapEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f383-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLAreasCollection : IDispatch
{
	[propput, id(DISPID_IHTMLAREASCOLLECTION_LENGTH)] HRESULT length([in] long v);
	[propget, id(DISPID_IHTMLAREASCOLLECTION_LENGTH)] HRESULT length([retval, out] long * p);
	[propget, id(DISPID_IHTMLAREASCOLLECTION__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown* * p);
	[id(DISPID_IHTMLAREASCOLLECTION_ITEM)] HRESULT item([optional, in] VARIANT name,[optional, in] VARIANT index,[retval, out] IDispatch** pdisp);
	[id(DISPID_IHTMLAREASCOLLECTION_TAGS)] HRESULT tags([in] VARIANT tagName,[retval, out] IDispatch** pdisp);
	[id(DISPID_IHTMLAREASCOLLECTION_ADD)] HRESULT add([in] IHTMLElement* element,[optional, in] VARIANT before);
	[id(DISPID_IHTMLAREASCOLLECTION_REMOVE)] HRESULT remove([defaultvalue(-1), in] long index);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f266-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLMapElement : IDispatch
{
	[propget, id(DISPID_IHTMLMAPELEMENT_AREAS)] HRESULT areas([retval, out] IHTMLAreasCollection* * p);
	[propput, id(DISPID_IHTMLMAPELEMENT_NAME)] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLMAPELEMENT_NAME)] HRESULT name([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f526-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLMapElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLMAPELEMENT_AREAS)] HRESULT areas([retval, out] IHTMLAreasCollection* * p);
	[propput, id(DISPID_IHTMLMAPELEMENT_NAME)] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLMAPELEMENT_NAME)] HRESULT name([retval, out] BSTR * p);
};
[uuid(3050f271-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLMapElement
{
	[default]			dispinterface DispIHTMLMapElement;
	[source, default]	dispinterface HTMLMapEvents;
						interface IHTMLMapElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CMapElement;")
[
	hidden,
	uuid(3050f366-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLAreaEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLAREAEVENTS_ONFOCUS)] void onfocus();
	[id(DISPID_HTMLAREAEVENTS_ONBLUR)] void onblur();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f265-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLAreaElement : IDispatch
{
	[propput, id(DISPID_IHTMLAREAELEMENT_SHAPE)] HRESULT shape([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_SHAPE)] HRESULT shape([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_COORDS)] HRESULT coords([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_COORDS)] HRESULT coords([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_HREF)] HRESULT href([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_HREF)] HRESULT href([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_TARGET)] HRESULT target([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_TARGET)] HRESULT target([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_ALT)] HRESULT alt([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_ALT)] HRESULT alt([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_NOHREF)] HRESULT noHref([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLAREAELEMENT_NOHREF)] HRESULT noHref([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_HOST)] HRESULT host([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_HOST)] HRESULT host([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_HOSTNAME)] HRESULT hostname([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_HOSTNAME)] HRESULT hostname([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_PATHNAME)] HRESULT pathname([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_PATHNAME)] HRESULT pathname([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_PORT)] HRESULT port([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_PORT)] HRESULT port([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_PROTOCOL)] HRESULT protocol([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_PROTOCOL)] HRESULT protocol([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_SEARCH)] HRESULT search([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_SEARCH)] HRESULT search([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_HASH)] HRESULT hash([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_HASH)] HRESULT hash([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLAREAELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLAREAELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLAREAELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLAREAELEMENT_FOCUS)] HRESULT focus();
	[id(DISPID_IHTMLAREAELEMENT_BLUR)] HRESULT blur();
};
[
	hidden,
	uuid(3050f503-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLAreaElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_SHAPE)] HRESULT shape([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_SHAPE)] HRESULT shape([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_COORDS)] HRESULT coords([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_COORDS)] HRESULT coords([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_HREF)] HRESULT href([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_HREF)] HRESULT href([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_TARGET)] HRESULT target([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_TARGET)] HRESULT target([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_ALT)] HRESULT alt([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_ALT)] HRESULT alt([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_NOHREF)] HRESULT noHref([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLAREAELEMENT_NOHREF)] HRESULT noHref([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_HOST)] HRESULT host([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_HOST)] HRESULT host([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_HOSTNAME)] HRESULT hostname([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_HOSTNAME)] HRESULT hostname([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_PATHNAME)] HRESULT pathname([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_PATHNAME)] HRESULT pathname([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_PORT)] HRESULT port([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_PORT)] HRESULT port([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_PROTOCOL)] HRESULT protocol([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_PROTOCOL)] HRESULT protocol([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_SEARCH)] HRESULT search([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_SEARCH)] HRESULT search([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_HASH)] HRESULT hash([in] BSTR v);
	[propget, id(DISPID_IHTMLAREAELEMENT_HASH)] HRESULT hash([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLAREAELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLAREAELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLAREAELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLAREAELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLAREAELEMENT_FOCUS)] HRESULT focus();
	[id(DISPID_IHTMLAREAELEMENT_BLUR)] HRESULT blur();
};
[uuid(3050f283-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLAreaElement
{
	[default]			dispinterface DispIHTMLAreaElement;
	[source, default]	dispinterface HTMLAreaEvents;
						interface IHTMLAreaElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CAreaElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f2eb-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLTableCaption : IDispatch
{
	[propput, id(DISPID_IHTMLTABLECAPTION_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECAPTION_ALIGN)] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLECAPTION_VALIGN)] HRESULT vAlign([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECAPTION_VALIGN)] HRESULT vAlign([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f508-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLTableCaption
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[id(DISPID_IHTMLTEXTCONTAINER_CREATECONTROLRANGE)] HRESULT createControlRange([retval, out] IDispatch** range);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLHEIGHT), displaybind, bindable] HRESULT scrollHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLWIDTH), displaybind, bindable] HRESULT scrollWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECAPTION_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECAPTION_ALIGN)] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLECAPTION_VALIGN)] HRESULT vAlign([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECAPTION_VALIGN)] HRESULT vAlign([retval, out] BSTR * p);
};
[uuid(3050f2ec-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLTableCaption
{
	[default]			dispinterface DispIHTMLTableCaption;
	[source, default]	dispinterface HTMLTextContainerEvents;
						interface IHTMLTableCaption;
						interface IHTMLTextContainer;
						interface IHTMLControlElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CTableCaption;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f20c-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLCommentElement : IDispatch
{
	[propput, id(DISPID_IHTMLCOMMENTELEMENT_TEXT), displaybind, bindable] HRESULT text([in] BSTR v);
	[propget, id(DISPID_IHTMLCOMMENTELEMENT_TEXT), displaybind, bindable] HRESULT text([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCOMMENTELEMENT_ATOMIC), displaybind, bindable] HRESULT atomic([in] long v);
	[propget, id(DISPID_IHTMLCOMMENTELEMENT_ATOMIC), displaybind, bindable] HRESULT atomic([retval, out] long * p);
};
[
	hidden,
	uuid(3050f50a-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLCommentElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCOMMENTELEMENT_TEXT), displaybind, bindable] HRESULT text([in] BSTR v);
	[propget, id(DISPID_IHTMLCOMMENTELEMENT_TEXT), displaybind, bindable] HRESULT text([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCOMMENTELEMENT_ATOMIC), displaybind, bindable] HRESULT atomic([in] long v);
	[propget, id(DISPID_IHTMLCOMMENTELEMENT_ATOMIC), displaybind, bindable] HRESULT atomic([retval, out] long * p);
};
[uuid(3050f317-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLCommentElement
{
	[default]			dispinterface DispIHTMLCommentElement;
						interface IHTMLCommentElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CCommentElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f20a-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLPhraseElement : IDispatch
{
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f3f3-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLSpanElement : IDispatch
{
};
[
	hidden,
	uuid(3050f52d-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLPhraseElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
};
[uuid(3050f26e-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLPhraseElement
{
	[default]			dispinterface DispIHTMLPhraseElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLPhraseElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CPhraseElement;")
[
	hidden,
	uuid(3050f548-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLSpanElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f3f5-98b4-11cf-bb82-00aa00bdce0b)]
coclass HTMLSpanElement
{
	[default]			dispinterface DispIHTMLSpanElement;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLSpanElement;
						interface IHTMLPhraseElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CSpanElement;")
[
	hidden,
	uuid(3050f407-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLTableEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLTABLEEVENTS_ONREADYSTATECHANGE)] void onreadystatechange();
};
interface IHTMLTableSection;
[
	odl,
	oleautomation,
	dual,
	uuid(3050f21e-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLTable : IDispatch
{
	[propput, id(DISPID_IHTMLTABLE_COLS)] HRESULT cols([in] long v);
	[propget, id(DISPID_IHTMLTABLE_COLS)] HRESULT cols([retval, out] long * p);
	[propput, id(DISPID_IHTMLTABLE_BORDER)] HRESULT border([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_BORDER)] HRESULT border([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_FRAME)] HRESULT frame([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLE_FRAME)] HRESULT frame([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLE_RULES)] HRESULT rules([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLE_RULES)] HRESULT rules([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLE_CELLSPACING)] HRESULT cellSpacing([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_CELLSPACING)] HRESULT cellSpacing([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_CELLPADDING)] HRESULT cellPadding([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_CELLPADDING)] HRESULT cellPadding([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_BACKGROUND)] HRESULT background([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLE_BACKGROUND)] HRESULT background([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLE_BGCOLOR)] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_BGCOLOR)] HRESULT bgColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_BORDERCOLOR)] HRESULT borderColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_BORDERCOLOR)] HRESULT borderColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_BORDERCOLORLIGHT)] HRESULT borderColorLight([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_BORDERCOLORLIGHT)] HRESULT borderColorLight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_BORDERCOLORDARK)] HRESULT borderColorDark([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_BORDERCOLORDARK)] HRESULT borderColorDark([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLE_ALIGN)] HRESULT align([retval, out] BSTR * p);
	[id(DISPID_IHTMLTABLE_REFRESH)] HRESULT refresh();
	[propget, id(DISPID_IHTMLTABLE_ROWS)] HRESULT rows([retval, out] IHTMLElementCollection* * p);
	[propput, id(DISPID_IHTMLTABLE_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_HEIGHT)] HRESULT height([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_HEIGHT)] HRESULT height([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_DATAPAGESIZE)] HRESULT dataPageSize([in] long v);
	[propget, id(DISPID_IHTMLTABLE_DATAPAGESIZE)] HRESULT dataPageSize([retval, out] long * p);
	[id(DISPID_IHTMLTABLE_NEXTPAGE)] HRESULT nextPage();
	[id(DISPID_IHTMLTABLE_PREVIOUSPAGE)] HRESULT previousPage();
	[propget, id(DISPID_IHTMLTABLE_THEAD)] HRESULT tHead([retval, out] IHTMLTableSection* * p);
	[propget, id(DISPID_IHTMLTABLE_TFOOT)] HRESULT tFoot([retval, out] IHTMLTableSection* * p);
	[propget, id(DISPID_IHTMLTABLE_TBODIES)] HRESULT tBodies([retval, out] IHTMLElementCollection* * p);
	[propget, id(DISPID_IHTMLTABLE_CAPTION)] HRESULT caption([retval, out] IHTMLTableCaption* * p);
	[id(DISPID_IHTMLTABLE_CREATETHEAD)] HRESULT createTHead([retval, out] IDispatch** head);
	[id(DISPID_IHTMLTABLE_DELETETHEAD)] HRESULT deleteTHead();
	[id(DISPID_IHTMLTABLE_CREATETFOOT)] HRESULT createTFoot([retval, out] IDispatch** foot);
	[id(DISPID_IHTMLTABLE_DELETETFOOT)] HRESULT deleteTFoot();
	[id(DISPID_IHTMLTABLE_CREATECAPTION)] HRESULT createCaption([retval, out] IHTMLTableCaption** caption);
	[id(DISPID_IHTMLTABLE_DELETECAPTION)] HRESULT deleteCaption();
	[id(DISPID_IHTMLTABLE_INSERTROW)] HRESULT insertRow([defaultvalue(-1), in] long index,[retval, out] IDispatch** row);
	[id(DISPID_IHTMLTABLE_DELETEROW)] HRESULT deleteRow([defaultvalue(-1), in] long index);
	[propget, id(DISPID_IHTMLTABLE_READYSTATE)] HRESULT readyState([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLE_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([retval, out] VARIANT * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f23a-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLTableCol : IDispatch
{
	[propput, id(DISPID_IHTMLTABLECOL_SPAN)] HRESULT span([in] long v);
	[propget, id(DISPID_IHTMLTABLECOL_SPAN)] HRESULT span([retval, out] long * p);
	[propput, id(DISPID_IHTMLTABLECOL_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECOL_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECOL_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECOL_ALIGN)] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLECOL_VALIGN)] HRESULT vAlign([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECOL_VALIGN)] HRESULT vAlign([retval, out] BSTR * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f23b-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLTableSection : IDispatch
{
	[propput, id(DISPID_IHTMLTABLESECTION_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLESECTION_ALIGN)] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLESECTION_VALIGN)] HRESULT vAlign([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLESECTION_VALIGN)] HRESULT vAlign([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLESECTION_BGCOLOR)] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLESECTION_BGCOLOR)] HRESULT bgColor([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLTABLESECTION_ROWS)] HRESULT rows([retval, out] IHTMLElementCollection* * p);
	[id(DISPID_IHTMLTABLESECTION_INSERTROW)] HRESULT insertRow([defaultvalue(-1), in] long index,[retval, out] IDispatch** row);
	[id(DISPID_IHTMLTABLESECTION_DELETEROW)] HRESULT deleteRow([defaultvalue(-1), in] long index);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f23c-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLTableRow : IDispatch
{
	[propput, id(DISPID_IHTMLTABLEROW_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLEROW_ALIGN)] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLEROW_VALIGN)] HRESULT vAlign([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLEROW_VALIGN)] HRESULT vAlign([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLEROW_BGCOLOR)] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLEROW_BGCOLOR)] HRESULT bgColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLEROW_BORDERCOLOR)] HRESULT borderColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLEROW_BORDERCOLOR)] HRESULT borderColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLEROW_BORDERCOLORLIGHT)] HRESULT borderColorLight([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLEROW_BORDERCOLORLIGHT)] HRESULT borderColorLight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLEROW_BORDERCOLORDARK)] HRESULT borderColorDark([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLEROW_BORDERCOLORDARK)] HRESULT borderColorDark([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLTABLEROW_ROWINDEX)] HRESULT rowIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLTABLEROW_SECTIONROWINDEX)] HRESULT sectionRowIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLTABLEROW_CELLS)] HRESULT cells([retval, out] IHTMLElementCollection* * p);
	[id(DISPID_IHTMLTABLEROW_INSERTCELL)] HRESULT insertCell([defaultvalue(-1), in] long index,[retval, out] IDispatch** row);
	[id(DISPID_IHTMLTABLEROW_DELETECELL)] HRESULT deleteCell([defaultvalue(-1), in] long index);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f23d-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLTableCell : IDispatch
{
	[propput, id(DISPID_IHTMLTABLECELL_ROWSPAN)] HRESULT rowSpan([in] long v);
	[propget, id(DISPID_IHTMLTABLECELL_ROWSPAN)] HRESULT rowSpan([retval, out] long * p);
	[propput, id(DISPID_IHTMLTABLECELL_COLSPAN)] HRESULT colSpan([in] long v);
	[propget, id(DISPID_IHTMLTABLECELL_COLSPAN)] HRESULT colSpan([retval, out] long * p);
	[propput, id(DISPID_IHTMLTABLECELL_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECELL_ALIGN)] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLECELL_VALIGN)] HRESULT vAlign([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECELL_VALIGN)] HRESULT vAlign([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLECELL_BGCOLOR)] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECELL_BGCOLOR)] HRESULT bgColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECELL_NOWRAP)] HRESULT noWrap([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLTABLECELL_NOWRAP)] HRESULT noWrap([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLTABLECELL_BACKGROUND)] HRESULT background([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECELL_BACKGROUND)] HRESULT background([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLECELL_BORDERCOLOR)] HRESULT borderColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECELL_BORDERCOLOR)] HRESULT borderColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECELL_BORDERCOLORLIGHT)] HRESULT borderColorLight([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECELL_BORDERCOLORLIGHT)] HRESULT borderColorLight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECELL_BORDERCOLORDARK)] HRESULT borderColorDark([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECELL_BORDERCOLORDARK)] HRESULT borderColorDark([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECELL_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECELL_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECELL_HEIGHT)] HRESULT height([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECELL_HEIGHT)] HRESULT height([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLTABLECELL_CELLINDEX)] HRESULT cellIndex([retval, out] long * p);
};
[
	hidden,
	uuid(3050f532-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLTable
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTABLE_COLS)] HRESULT cols([in] long v);
	[propget, id(DISPID_IHTMLTABLE_COLS)] HRESULT cols([retval, out] long * p);
	[propput, id(DISPID_IHTMLTABLE_BORDER)] HRESULT border([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_BORDER)] HRESULT border([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_FRAME)] HRESULT frame([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLE_FRAME)] HRESULT frame([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLE_RULES)] HRESULT rules([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLE_RULES)] HRESULT rules([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLE_CELLSPACING)] HRESULT cellSpacing([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_CELLSPACING)] HRESULT cellSpacing([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_CELLPADDING)] HRESULT cellPadding([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_CELLPADDING)] HRESULT cellPadding([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_BACKGROUND)] HRESULT background([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLE_BACKGROUND)] HRESULT background([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLE_BGCOLOR)] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_BGCOLOR)] HRESULT bgColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_BORDERCOLOR)] HRESULT borderColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_BORDERCOLOR)] HRESULT borderColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_BORDERCOLORLIGHT)] HRESULT borderColorLight([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_BORDERCOLORLIGHT)] HRESULT borderColorLight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_BORDERCOLORDARK)] HRESULT borderColorDark([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_BORDERCOLORDARK)] HRESULT borderColorDark([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLE_ALIGN)] HRESULT align([retval, out] BSTR * p);
	[id(DISPID_IHTMLTABLE_REFRESH)] HRESULT refresh();
	[propget, id(DISPID_IHTMLTABLE_ROWS)] HRESULT rows([retval, out] IHTMLElementCollection* * p);
	[propput, id(DISPID_IHTMLTABLE_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_HEIGHT)] HRESULT height([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_HEIGHT)] HRESULT height([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLE_DATAPAGESIZE)] HRESULT dataPageSize([in] long v);
	[propget, id(DISPID_IHTMLTABLE_DATAPAGESIZE)] HRESULT dataPageSize([retval, out] long * p);
	[id(DISPID_IHTMLTABLE_NEXTPAGE)] HRESULT nextPage();
	[id(DISPID_IHTMLTABLE_PREVIOUSPAGE)] HRESULT previousPage();
	[propget, id(DISPID_IHTMLTABLE_THEAD)] HRESULT tHead([retval, out] IHTMLTableSection* * p);
	[propget, id(DISPID_IHTMLTABLE_TFOOT)] HRESULT tFoot([retval, out] IHTMLTableSection* * p);
	[propget, id(DISPID_IHTMLTABLE_TBODIES)] HRESULT tBodies([retval, out] IHTMLElementCollection* * p);
	[propget, id(DISPID_IHTMLTABLE_CAPTION)] HRESULT caption([retval, out] IHTMLTableCaption* * p);
	[id(DISPID_IHTMLTABLE_CREATETHEAD)] HRESULT createTHead([retval, out] IDispatch** head);
	[id(DISPID_IHTMLTABLE_DELETETHEAD)] HRESULT deleteTHead();
	[id(DISPID_IHTMLTABLE_CREATETFOOT)] HRESULT createTFoot([retval, out] IDispatch** foot);
	[id(DISPID_IHTMLTABLE_DELETETFOOT)] HRESULT deleteTFoot();
	[id(DISPID_IHTMLTABLE_CREATECAPTION)] HRESULT createCaption([retval, out] IHTMLTableCaption** caption);
	[id(DISPID_IHTMLTABLE_DELETECAPTION)] HRESULT deleteCaption();
	[id(DISPID_IHTMLTABLE_INSERTROW)] HRESULT insertRow([defaultvalue(-1), in] long index,[retval, out] IDispatch** row);
	[id(DISPID_IHTMLTABLE_DELETEROW)] HRESULT deleteRow([defaultvalue(-1), in] long index);
	[propget, id(DISPID_IHTMLTABLE_READYSTATE)] HRESULT readyState([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLE_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLE_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f26b-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLTable
{
	[default]			dispinterface DispIHTMLTable;
	[source, default]	dispinterface HTMLTableEvents;
						interface IHTMLTable;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CTable;")
[
	hidden,
	uuid(3050f533-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLTableCol
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLTABLECOL_SPAN)] HRESULT span([in] long v);
	[propget, id(DISPID_IHTMLTABLECOL_SPAN)] HRESULT span([retval, out] long * p);
	[propput, id(DISPID_IHTMLTABLECOL_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECOL_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECOL_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECOL_ALIGN)] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLECOL_VALIGN)] HRESULT vAlign([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECOL_VALIGN)] HRESULT vAlign([retval, out] BSTR * p);
};
[uuid(3050f26c-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLTableCol
{
	[default]			dispinterface DispIHTMLTableCol;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLTableCol;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CTableCol;")
[
	hidden,
	uuid(3050f534-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLTableSection
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLTABLESECTION_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLESECTION_ALIGN)] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLESECTION_VALIGN)] HRESULT vAlign([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLESECTION_VALIGN)] HRESULT vAlign([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLESECTION_BGCOLOR)] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLESECTION_BGCOLOR)] HRESULT bgColor([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLTABLESECTION_ROWS)] HRESULT rows([retval, out] IHTMLElementCollection* * p);
	[id(DISPID_IHTMLTABLESECTION_INSERTROW)] HRESULT insertRow([defaultvalue(-1), in] long index,[retval, out] IDispatch** row);
	[id(DISPID_IHTMLTABLESECTION_DELETEROW)] HRESULT deleteRow([defaultvalue(-1), in] long index);
};
[uuid(3050f2e9-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLTableSection
{
	[default]			dispinterface DispIHTMLTableSection;
	[source, default]	dispinterface HTMLElementEvents;
						interface IHTMLTableSection;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CTableSection;")
[
	hidden,
	uuid(3050f535-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLTableRow
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLTABLEROW_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLEROW_ALIGN)] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLEROW_VALIGN)] HRESULT vAlign([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLEROW_VALIGN)] HRESULT vAlign([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLEROW_BGCOLOR)] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLEROW_BGCOLOR)] HRESULT bgColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLEROW_BORDERCOLOR)] HRESULT borderColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLEROW_BORDERCOLOR)] HRESULT borderColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLEROW_BORDERCOLORLIGHT)] HRESULT borderColorLight([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLEROW_BORDERCOLORLIGHT)] HRESULT borderColorLight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLEROW_BORDERCOLORDARK)] HRESULT borderColorDark([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLEROW_BORDERCOLORDARK)] HRESULT borderColorDark([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLTABLEROW_ROWINDEX)] HRESULT rowIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLTABLEROW_SECTIONROWINDEX)] HRESULT sectionRowIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLTABLEROW_CELLS)] HRESULT cells([retval, out] IHTMLElementCollection* * p);
	[id(DISPID_IHTMLTABLEROW_INSERTCELL)] HRESULT insertCell([defaultvalue(-1), in] long index,[retval, out] IDispatch** row);
	[id(DISPID_IHTMLTABLEROW_DELETECELL)] HRESULT deleteCell([defaultvalue(-1), in] long index);
};
[uuid(3050f26d-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLTableRow
{
	[default]			dispinterface DispIHTMLTableRow;
	[source, default]	dispinterface HTMLControlElementEvents;
						interface IHTMLTableRow;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CTableRow;")
[
	hidden,
	uuid(3050f536-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLTableCell
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[id(DISPID_IHTMLTEXTCONTAINER_CREATECONTROLRANGE)] HRESULT createControlRange([retval, out] IDispatch** range);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLHEIGHT), displaybind, bindable] HRESULT scrollHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLWIDTH), displaybind, bindable] HRESULT scrollWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECELL_ROWSPAN)] HRESULT rowSpan([in] long v);
	[propget, id(DISPID_IHTMLTABLECELL_ROWSPAN)] HRESULT rowSpan([retval, out] long * p);
	[propput, id(DISPID_IHTMLTABLECELL_COLSPAN)] HRESULT colSpan([in] long v);
	[propget, id(DISPID_IHTMLTABLECELL_COLSPAN)] HRESULT colSpan([retval, out] long * p);
	[propput, id(DISPID_IHTMLTABLECELL_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECELL_ALIGN)] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLECELL_VALIGN)] HRESULT vAlign([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECELL_VALIGN)] HRESULT vAlign([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLECELL_BGCOLOR)] HRESULT bgColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECELL_BGCOLOR)] HRESULT bgColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECELL_NOWRAP)] HRESULT noWrap([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLTABLECELL_NOWRAP)] HRESULT noWrap([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLTABLECELL_BACKGROUND)] HRESULT background([in] BSTR v);
	[propget, id(DISPID_IHTMLTABLECELL_BACKGROUND)] HRESULT background([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLTABLECELL_BORDERCOLOR)] HRESULT borderColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECELL_BORDERCOLOR)] HRESULT borderColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECELL_BORDERCOLORLIGHT)] HRESULT borderColorLight([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECELL_BORDERCOLORLIGHT)] HRESULT borderColorLight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECELL_BORDERCOLORDARK)] HRESULT borderColorDark([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECELL_BORDERCOLORDARK)] HRESULT borderColorDark([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECELL_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECELL_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLTABLECELL_HEIGHT)] HRESULT height([in] VARIANT v);
	[propget, id(DISPID_IHTMLTABLECELL_HEIGHT)] HRESULT height([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLTABLECELL_CELLINDEX)] HRESULT cellIndex([retval, out] long * p);
};
[uuid(3050f246-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLTableCell
{
	[default]			dispinterface DispIHTMLTableCell;
	[source, default]	dispinterface HTMLTextContainerEvents;
						interface IHTMLTableCell;
						interface IHTMLTextContainer;
						interface IHTMLControlElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CTableCell;")
[
	hidden,
	uuid(3050f3e2-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLScriptEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLSCRIPTEVENTS_ONREADYSTATECHANGE)] void onreadystatechange([in] long lReadyState);
	[id(DISPID_HTMLSCRIPTEVENTS_ONERROR)] void onerror();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f28b-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLScriptElement : IDispatch
{
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_SRC), displaybind, bindable] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_SRC), displaybind, bindable] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_HTMLFOR), displaybind, bindable] HRESULT htmlFor([in] BSTR v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_HTMLFOR), displaybind, bindable] HRESULT htmlFor([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_EVENT), displaybind, bindable] HRESULT event([in] BSTR v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_EVENT), displaybind, bindable] HRESULT event([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_TEXT), displaybind, bindable] HRESULT text([in] BSTR v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_TEXT), displaybind, bindable] HRESULT text([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_DEFER), displaybind, bindable] HRESULT defer([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_DEFER), displaybind, bindable] HRESULT defer([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_READYSTATE)] HRESULT readyState([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f530-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLScriptElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_SRC), displaybind, bindable] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_SRC), displaybind, bindable] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_HTMLFOR), displaybind, bindable] HRESULT htmlFor([in] BSTR v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_HTMLFOR), displaybind, bindable] HRESULT htmlFor([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_EVENT), displaybind, bindable] HRESULT event([in] BSTR v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_EVENT), displaybind, bindable] HRESULT event([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_TEXT), displaybind, bindable] HRESULT text([in] BSTR v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_TEXT), displaybind, bindable] HRESULT text([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_DEFER), displaybind, bindable] HRESULT defer([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_DEFER), displaybind, bindable] HRESULT defer([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_READYSTATE)] HRESULT readyState([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSCRIPTELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLSCRIPTELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
};
[uuid(3050f28c-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLScriptElement
{
	[default]			dispinterface DispIHTMLScriptElement;
	[source, default]	dispinterface HTMLScriptEvents;
						interface IHTMLScriptElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CScriptElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f38a-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLNoShowElement : IDispatch
{
};
[
	hidden,
	uuid(3050f528-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLNoShowElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
};
[uuid(3050f38b-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLNoShowElement
{
	[default]			dispinterface DispIHTMLNoShowElement;
						interface IHTMLNoShowElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CNoShowElement;")
[
	hidden,
	uuid(3050f3c4-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLObjectElementEvents
{
properties:
methods:
	[id(DISPID_HTMLOBJECTELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLOBJECTELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLOBJECTELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLOBJECTELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLOBJECTELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLOBJECTELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLOBJECTELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLOBJECTELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLOBJECTELEMENTEVENTS_ONREADYSTATECHANGE)] void onreadystatechange();
	[id(DISPID_HTMLOBJECTELEMENTEVENTS_ONERROR)] VARIANT_BOOL onerror();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f24f-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLObjectElement : IDispatch
{
	[propget, id(DISPID_IHTMLOBJECTELEMENT_OBJECT), hidden] HRESULT object([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_CLASSID), hidden] HRESULT classid([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_DATA), hidden] HRESULT data([retval, out] BSTR * p);
	[propputref, id(DISPID_IHTMLOBJECTELEMENT_RECORDSET), hidden] HRESULT recordset([in] IDispatch* v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_RECORDSET), hidden] HRESULT recordset([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_CODEBASE), displaybind, bindable] HRESULT codeBase([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_CODEBASE), displaybind, bindable] HRESULT codeBase([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_CODETYPE), displaybind, bindable] HRESULT codeType([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_CODETYPE), displaybind, bindable] HRESULT codeType([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_CODE), displaybind, bindable] HRESULT code([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_CODE), displaybind, bindable] HRESULT code([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_BASEHREF)] HRESULT BaseHref([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_HEIGHT)] HRESULT height([in] VARIANT v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_HEIGHT)] HRESULT height([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_READYSTATE)] HRESULT readyState([retval, out] long * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([in] VARIANT v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_ALTHTML)] HRESULT altHtml([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_ALTHTML)] HRESULT altHtml([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_VSPACE)] HRESULT vspace([in] long v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_VSPACE)] HRESULT vspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_HSPACE)] HRESULT hspace([in] long v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_HSPACE)] HRESULT hspace([retval, out] long * p);
};
[
	hidden,
	uuid(3050f529-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLObjectElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_OBJECT), hidden] HRESULT object([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_CLASSID), hidden] HRESULT classid([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_DATA), hidden] HRESULT data([retval, out] BSTR * p);
	[propputref, id(DISPID_IHTMLOBJECTELEMENT_RECORDSET), hidden] HRESULT recordset([in] IDispatch* v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_RECORDSET), hidden] HRESULT recordset([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_CODEBASE), displaybind, bindable] HRESULT codeBase([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_CODEBASE), displaybind, bindable] HRESULT codeBase([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_CODETYPE), displaybind, bindable] HRESULT codeType([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_CODETYPE), displaybind, bindable] HRESULT codeType([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_CODE), displaybind, bindable] HRESULT code([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_CODE), displaybind, bindable] HRESULT code([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_BASEHREF)] HRESULT BaseHref([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_FORM)] HRESULT form([retval, out] IHTMLFormElement* * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_WIDTH)] HRESULT width([in] VARIANT v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_WIDTH)] HRESULT width([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_HEIGHT)] HRESULT height([in] VARIANT v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_HEIGHT)] HRESULT height([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_READYSTATE)] HRESULT readyState([retval, out] long * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([in] VARIANT v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_ALTHTML)] HRESULT altHtml([in] BSTR v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_ALTHTML)] HRESULT altHtml([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_VSPACE)] HRESULT vspace([in] long v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_VSPACE)] HRESULT vspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLOBJECTELEMENT_HSPACE)] HRESULT hspace([in] long v);
	[propget, id(DISPID_IHTMLOBJECTELEMENT_HSPACE)] HRESULT hspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f24e-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLObjectElement
{
	[default]			dispinterface DispIHTMLObjectElement;
	[source, default]	dispinterface HTMLObjectElementEvents;
						interface IHTMLObjectElement;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CObjectElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f311-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLFrameBase : IDispatch
{
	[propput, id(DISPID_IHTMLFRAMEBASE_SRC)] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_SRC)] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_NAME)] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_NAME)] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_BORDER)] HRESULT border([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_BORDER)] HRESULT border([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_FRAMEBORDER)] HRESULT frameBorder([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_FRAMEBORDER)] HRESULT frameBorder([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_FRAMESPACING)] HRESULT frameSpacing([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_FRAMESPACING)] HRESULT frameSpacing([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_MARGINWIDTH)] HRESULT marginWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_MARGINWIDTH)] HRESULT marginWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_MARGINHEIGHT)] HRESULT marginHeight([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_MARGINHEIGHT)] HRESULT marginHeight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_NORESIZE)] HRESULT noResize([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLFRAMEBASE_NORESIZE)] HRESULT noResize([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_SCROLLING)] HRESULT scrolling([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_SCROLLING)] HRESULT scrolling([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f541-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLFrameBase
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_SRC)] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_SRC)] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_NAME)] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_NAME)] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_BORDER)] HRESULT border([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_BORDER)] HRESULT border([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_FRAMEBORDER)] HRESULT frameBorder([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_FRAMEBORDER)] HRESULT frameBorder([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_FRAMESPACING)] HRESULT frameSpacing([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_FRAMESPACING)] HRESULT frameSpacing([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_MARGINWIDTH)] HRESULT marginWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_MARGINWIDTH)] HRESULT marginWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_MARGINHEIGHT)] HRESULT marginHeight([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_MARGINHEIGHT)] HRESULT marginHeight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_NORESIZE)] HRESULT noResize([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLFRAMEBASE_NORESIZE)] HRESULT noResize([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_SCROLLING)] HRESULT scrolling([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_SCROLLING)] HRESULT scrolling([retval, out] BSTR * p);
};
[uuid(3050f312-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLFrameBase
{
	[default]			dispinterface DispIHTMLFrameBase;
	[source, default]	dispinterface HTMLControlElementEvents;
						interface IHTMLFrameBase;
						interface IHTMLControlElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CFrameSite;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f313-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLFrameElement : IDispatch
{
	[propput, id(DISPID_IHTMLFRAMEELEMENT_BORDERCOLOR)] HRESULT borderColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEELEMENT_BORDERCOLOR)] HRESULT borderColor([retval, out] VARIANT * p);
};
[
	hidden,
	uuid(3050f513-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLFrameElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_SRC)] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_SRC)] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_NAME)] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_NAME)] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_BORDER)] HRESULT border([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_BORDER)] HRESULT border([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_FRAMEBORDER)] HRESULT frameBorder([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_FRAMEBORDER)] HRESULT frameBorder([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_FRAMESPACING)] HRESULT frameSpacing([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_FRAMESPACING)] HRESULT frameSpacing([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_MARGINWIDTH)] HRESULT marginWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_MARGINWIDTH)] HRESULT marginWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_MARGINHEIGHT)] HRESULT marginHeight([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_MARGINHEIGHT)] HRESULT marginHeight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_NORESIZE)] HRESULT noResize([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLFRAMEBASE_NORESIZE)] HRESULT noResize([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_SCROLLING)] HRESULT scrolling([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_SCROLLING)] HRESULT scrolling([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEELEMENT_BORDERCOLOR)] HRESULT borderColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEELEMENT_BORDERCOLOR)] HRESULT borderColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f314-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLFrameElement
{
	[default]			dispinterface DispIHTMLFrameElement;
	[source, default]	dispinterface HTMLControlElementEvents;
						interface IHTMLFrameElement;
						interface IHTMLFrameBase;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CFrameElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f315-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLIFrameElement : IDispatch
{
	[propput, id(DISPID_IHTMLIFRAMEELEMENT_VSPACE)] HRESULT vspace([in] long v);
	[propget, id(DISPID_IHTMLIFRAMEELEMENT_VSPACE)] HRESULT vspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLIFRAMEELEMENT_HSPACE)] HRESULT hspace([in] long v);
	[propget, id(DISPID_IHTMLIFRAMEELEMENT_HSPACE)] HRESULT hspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLIFRAMEELEMENT_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLIFRAMEELEMENT_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f51b-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLIFrameElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_SRC)] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_SRC)] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_NAME)] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_NAME)] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_BORDER)] HRESULT border([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_BORDER)] HRESULT border([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_FRAMEBORDER)] HRESULT frameBorder([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_FRAMEBORDER)] HRESULT frameBorder([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_FRAMESPACING)] HRESULT frameSpacing([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_FRAMESPACING)] HRESULT frameSpacing([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_MARGINWIDTH)] HRESULT marginWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_MARGINWIDTH)] HRESULT marginWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_MARGINHEIGHT)] HRESULT marginHeight([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMEBASE_MARGINHEIGHT)] HRESULT marginHeight([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_NORESIZE)] HRESULT noResize([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLFRAMEBASE_NORESIZE)] HRESULT noResize([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLFRAMEBASE_SCROLLING)] HRESULT scrolling([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMEBASE_SCROLLING)] HRESULT scrolling([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLIFRAMEELEMENT_VSPACE)] HRESULT vspace([in] long v);
	[propget, id(DISPID_IHTMLIFRAMEELEMENT_VSPACE)] HRESULT vspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLIFRAMEELEMENT_HSPACE)] HRESULT hspace([in] long v);
	[propget, id(DISPID_IHTMLIFRAMEELEMENT_HSPACE)] HRESULT hspace([retval, out] long * p);
	[propput, id(DISPID_IHTMLIFRAMEELEMENT_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLIFRAMEELEMENT_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f316-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLIFrame
{
	[default]			dispinterface DispIHTMLIFrameElement;
	[source, default]	dispinterface HTMLControlElementEvents;
						interface IHTMLIFrameElement;
						interface IHTMLFrameBase;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CIFrameElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f212-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLDivPosition : IDispatch
{
	[propput, id(DISPID_IHTMLDIVPOSITION_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLDIVPOSITION_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f3e7-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLFieldSetElement : IDispatch
{
	[propput, id(DISPID_IHTMLFIELDSETELEMENT_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLFIELDSETELEMENT_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f3ea-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLLegendElement : IDispatch
{
	[propput, id(DISPID_IHTMLLEGENDELEMENT_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLLEGENDELEMENT_ALIGN)] HRESULT align([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f50f-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLDivPosition
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[id(DISPID_IHTMLTEXTCONTAINER_CREATECONTROLRANGE)] HRESULT createControlRange([retval, out] IDispatch** range);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLHEIGHT), displaybind, bindable] HRESULT scrollHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLWIDTH), displaybind, bindable] HRESULT scrollWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDIVPOSITION_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLDIVPOSITION_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f249-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLDivPosition
{
	[default]			dispinterface DispIHTMLDivPosition;
	[source, default]	dispinterface HTMLTextContainerEvents;
						interface IHTMLDivPosition;
						interface IHTMLTextContainer;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_C1DElement;")
[
	hidden,
	uuid(3050f545-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLFieldSetElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[id(DISPID_IHTMLTEXTCONTAINER_CREATECONTROLRANGE)] HRESULT createControlRange([retval, out] IDispatch** range);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLHEIGHT), displaybind, bindable] HRESULT scrollHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLWIDTH), displaybind, bindable] HRESULT scrollWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFIELDSETELEMENT_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLFIELDSETELEMENT_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
};
[uuid(3050f3e8-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLFieldSetElement
{
	[default]			dispinterface DispIHTMLFieldSetElement;
	[source, default]	dispinterface HTMLTextContainerEvents;
						interface IHTMLFieldSetElement;
						interface IHTMLTextContainer;
						interface IHTMLControlElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CFieldSetElement;")
[
	hidden,
	uuid(3050f546-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLLegendElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[id(DISPID_IHTMLTEXTCONTAINER_CREATECONTROLRANGE)] HRESULT createControlRange([retval, out] IDispatch** range);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLHEIGHT), displaybind, bindable] HRESULT scrollHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLWIDTH), displaybind, bindable] HRESULT scrollWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLLEGENDELEMENT_ALIGN)] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLLEGENDELEMENT_ALIGN)] HRESULT align([retval, out] BSTR * p);
};
[uuid(3050f3e9-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLLegendElement
{
	[default]			dispinterface DispIHTMLLegendElement;
	[source, default]	dispinterface HTMLTextContainerEvents;
						interface IHTMLLegendElement;
						interface IHTMLTextContainer;
						interface IHTMLControlElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CLegendElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f3e5-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLSpanFlow : IDispatch
{
	[propput, id(DISPID_IHTMLSPANFLOW_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLSPANFLOW_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f544-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLSpanFlow
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[id(DISPID_IHTMLTEXTCONTAINER_CREATECONTROLRANGE)] HRESULT createControlRange([retval, out] IDispatch** range);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLHEIGHT), displaybind, bindable] HRESULT scrollHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLWIDTH), displaybind, bindable] HRESULT scrollWidth([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLTOP), displaybind, bindable] HRESULT scrollTop([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([in] long v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_SCROLLLEFT), displaybind, bindable] HRESULT scrollLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([in] VARIANT v);
	[propget, id(DISPID_IHTMLTEXTCONTAINER_ONSCROLL), displaybind, bindable] HRESULT onscroll([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSPANFLOW_ALIGN), displaybind, bindable] HRESULT align([in] BSTR v);
	[propget, id(DISPID_IHTMLSPANFLOW_ALIGN), displaybind, bindable] HRESULT align([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFLD)] HRESULT dataFld([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATASRC)] HRESULT dataSrc([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([in] BSTR v);
	[propget, id(DISPID_IHTMLDATABINDING_DATAFORMATAS)] HRESULT dataFormatAs([retval, out] BSTR * p);
};
[uuid(3050f3e6-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLSpanFlow
{
	[default]			dispinterface DispIHTMLSpanFlow;
	[source, default]	dispinterface HTMLTextContainerEvents;
						interface IHTMLSpanFlow;
						interface IHTMLTextContainer;
						interface IHTMLControlElement;
						interface IHTMLElement;
						interface IHTMLDatabinding;
};
cpp_quote("EXTERN_C const GUID CLSID_CSpanSite;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f319-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLFrameSetElement : IDispatch
{
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_ROWS), displaybind, bindable] HRESULT rows([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_ROWS), displaybind, bindable] HRESULT rows([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_COLS), displaybind, bindable] HRESULT cols([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_COLS), displaybind, bindable] HRESULT cols([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_BORDER)] HRESULT border([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_BORDER)] HRESULT border([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_BORDERCOLOR)] HRESULT borderColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_BORDERCOLOR)] HRESULT borderColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_FRAMEBORDER)] HRESULT frameBorder([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_FRAMEBORDER)] HRESULT frameBorder([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_FRAMESPACING)] HRESULT frameSpacing([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_FRAMESPACING)] HRESULT frameSpacing([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_ONUNLOAD), displaybind, bindable] HRESULT onunload([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_ONUNLOAD), displaybind, bindable] HRESULT onunload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_ONBEFOREUNLOAD), displaybind, bindable] HRESULT onbeforeunload([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_ONBEFOREUNLOAD), displaybind, bindable] HRESULT onbeforeunload([retval, out] VARIANT * p);
};
[
	hidden,
	uuid(3050f514-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLFrameSetElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([in] short v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_TABINDEX), displaybind, bindable] HRESULT tabIndex([retval, out] short * p);
	[id(DISPID_IHTMLCONTROLELEMENT_FOCUS)] HRESULT focus();
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([in] BSTR v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ACCESSKEY), displaybind, bindable] HRESULT accessKey([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONBLUR), displaybind, bindable] HRESULT onblur([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONFOCUS), displaybind, bindable] HRESULT onfocus([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([in] VARIANT v);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_ONRESIZE), displaybind, bindable] HRESULT onresize([retval, out] VARIANT * p);
	[id(DISPID_IHTMLCONTROLELEMENT_BLUR)] HRESULT blur();
	[id(DISPID_IHTMLCONTROLELEMENT_ADDFILTER)] HRESULT addFilter([in] IUnknown* pUnk);
	[id(DISPID_IHTMLCONTROLELEMENT_REMOVEFILTER)] HRESULT removeFilter([in] IUnknown* pUnk);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTHEIGHT), displaybind, bindable] HRESULT clientHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTWIDTH), displaybind, bindable] HRESULT clientWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTTOP), displaybind, bindable] HRESULT clientTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable] HRESULT clientLeft([retval, out] long * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_ROWS), displaybind, bindable] HRESULT rows([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_ROWS), displaybind, bindable] HRESULT rows([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_COLS), displaybind, bindable] HRESULT cols([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_COLS), displaybind, bindable] HRESULT cols([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_BORDER)] HRESULT border([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_BORDER)] HRESULT border([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_BORDERCOLOR)] HRESULT borderColor([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_BORDERCOLOR)] HRESULT borderColor([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_FRAMEBORDER)] HRESULT frameBorder([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_FRAMEBORDER)] HRESULT frameBorder([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_FRAMESPACING)] HRESULT frameSpacing([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_FRAMESPACING)] HRESULT frameSpacing([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_NAME), displaybind, bindable] HRESULT name([in] BSTR v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_NAME), displaybind, bindable] HRESULT name([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_ONUNLOAD), displaybind, bindable] HRESULT onunload([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_ONUNLOAD), displaybind, bindable] HRESULT onunload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLFRAMESETELEMENT_ONBEFOREUNLOAD), displaybind, bindable] HRESULT onbeforeunload([in] VARIANT v);
	[propget, id(DISPID_IHTMLFRAMESETELEMENT_ONBEFOREUNLOAD), displaybind, bindable] HRESULT onbeforeunload([retval, out] VARIANT * p);
};
[uuid(3050f31A-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLFrameSetSite
{
	[default]			dispinterface DispIHTMLFrameSetElement;
	[source, default]	dispinterface HTMLControlElementEvents;
						interface IHTMLFrameSetElement;
						interface IHTMLControlElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CFrameSetSite;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f369-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLBGsound : IDispatch
{
	[propput, id(DISPID_IHTMLBGSOUND_SRC), displaybind, bindable] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLBGSOUND_SRC), displaybind, bindable] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBGSOUND_LOOP), displaybind, bindable] HRESULT loop([in] VARIANT v);
	[propget, id(DISPID_IHTMLBGSOUND_LOOP), displaybind, bindable] HRESULT loop([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBGSOUND_VOLUME), displaybind, bindable] HRESULT volume([in] VARIANT v);
	[propget, id(DISPID_IHTMLBGSOUND_VOLUME), displaybind, bindable] HRESULT volume([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBGSOUND_BALANCE), displaybind, bindable] HRESULT balance([in] VARIANT v);
	[propget, id(DISPID_IHTMLBGSOUND_BALANCE), displaybind, bindable] HRESULT balance([retval, out] VARIANT * p);
};
[
	hidden,
	uuid(3050f53c-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLBGsound
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLBGSOUND_SRC), displaybind, bindable] HRESULT src([in] BSTR v);
	[propget, id(DISPID_IHTMLBGSOUND_SRC), displaybind, bindable] HRESULT src([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLBGSOUND_LOOP), displaybind, bindable] HRESULT loop([in] VARIANT v);
	[propget, id(DISPID_IHTMLBGSOUND_LOOP), displaybind, bindable] HRESULT loop([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBGSOUND_VOLUME), displaybind, bindable] HRESULT volume([in] VARIANT v);
	[propget, id(DISPID_IHTMLBGSOUND_VOLUME), displaybind, bindable] HRESULT volume([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLBGSOUND_BALANCE), displaybind, bindable] HRESULT balance([in] VARIANT v);
	[propget, id(DISPID_IHTMLBGSOUND_BALANCE), displaybind, bindable] HRESULT balance([retval, out] VARIANT * p);
};
[uuid(3050f370-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLBGsound
{
	[default]			dispinterface DispIHTMLBGsound;
						interface IHTMLBGsound;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CBGsound;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f376-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLFontNamesCollection : IDispatch
{
	[propget, id(DISPID_IHTMLFONTNAMESCOLLECTION_LENGTH), hidden] HRESULT length([retval, out] long * p);
	[propget, id(DISPID_IHTMLFONTNAMESCOLLECTION__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown* * p);
	[id(DISPID_IHTMLFONTNAMESCOLLECTION_ITEM)] HRESULT item([in] long index,[retval, out] BSTR* pBstr);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f377-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLFontSizesCollection : IDispatch
{
	[propget, id(DISPID_IHTMLFONTSIZESCOLLECTION_LENGTH), hidden] HRESULT length([retval, out] long * p);
	[propget, id(DISPID_IHTMLFONTSIZESCOLLECTION__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown* * p);
	[propget, id(DISPID_IHTMLFONTSIZESCOLLECTION_FORFONT)] HRESULT forFont([retval, out] BSTR * p);
	[id(DISPID_IHTMLFONTSIZESCOLLECTION_ITEM)] HRESULT item([in] long index,[retval, out] long* plSize);
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f378-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLOptionsHolder : IDispatch
{
	[propget, id(DISPID_IHTMLOPTIONSHOLDER_DOCUMENT), hidden] HRESULT document([retval, out] IHTMLDocument2* * p);
	[propget, id(DISPID_IHTMLOPTIONSHOLDER_FONTS), hidden] HRESULT fonts([retval, out] IHTMLFontNamesCollection* * p);
	[propput, id(DISPID_IHTMLOPTIONSHOLDER_EXECARG)] HRESULT execArg([in] VARIANT v);
	[propget, id(DISPID_IHTMLOPTIONSHOLDER_EXECARG)] HRESULT execArg([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLOPTIONSHOLDER_ERRORLINE)] HRESULT errorLine([in] long v);
	[propget, id(DISPID_IHTMLOPTIONSHOLDER_ERRORLINE)] HRESULT errorLine([retval, out] long * p);
	[propput, id(DISPID_IHTMLOPTIONSHOLDER_ERRORCHARACTER)] HRESULT errorCharacter([in] long v);
	[propget, id(DISPID_IHTMLOPTIONSHOLDER_ERRORCHARACTER)] HRESULT errorCharacter([retval, out] long * p);
	[propput, id(DISPID_IHTMLOPTIONSHOLDER_ERRORCODE)] HRESULT errorCode([in] long v);
	[propget, id(DISPID_IHTMLOPTIONSHOLDER_ERRORCODE)] HRESULT errorCode([retval, out] long * p);
	[propput, id(DISPID_IHTMLOPTIONSHOLDER_ERRORMESSAGE)] HRESULT errorMessage([in] BSTR v);
	[propget, id(DISPID_IHTMLOPTIONSHOLDER_ERRORMESSAGE)] HRESULT errorMessage([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOPTIONSHOLDER_ERRORDEBUG)] HRESULT errorDebug([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONSHOLDER_ERRORDEBUG)] HRESULT errorDebug([retval, out] VARIANT_BOOL * p);
	[propget, id(DISPID_IHTMLOPTIONSHOLDER_UNSECUREDWINDOWOFDOCUMENT), hidden] HRESULT unsecuredWindowOfDocument([retval, out] IHTMLWindow2* * p);
	[propput, id(DISPID_IHTMLOPTIONSHOLDER_FINDTEXT)] HRESULT findText([in] BSTR v);
	[propget, id(DISPID_IHTMLOPTIONSHOLDER_FINDTEXT)] HRESULT findText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLOPTIONSHOLDER_ANYTHINGAFTERFRAMESET)] HRESULT anythingAfterFrameset([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLOPTIONSHOLDER_ANYTHINGAFTERFRAMESET)] HRESULT anythingAfterFrameset([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLOPTIONSHOLDER_SIZES)] HRESULT sizes([in] BSTR fontName,[retval, out] IHTMLFontSizesCollection** pSizesCollection);
	[id(DISPID_IHTMLOPTIONSHOLDER_OPENFILEDLG)] HRESULT openfiledlg([optional, in] VARIANT initFile,[optional, in] VARIANT initDir,[optional, in] VARIANT filter,[optional, in] VARIANT title,[retval, out] BSTR* pathName);
	[id(DISPID_IHTMLOPTIONSHOLDER_SAVEFILEDLG)] HRESULT savefiledlg([optional, in] VARIANT initFile,[optional, in] VARIANT initDir,[optional, in] VARIANT filter,[optional, in] VARIANT title,[retval, out] BSTR* pathName);
	[id(DISPID_IHTMLOPTIONSHOLDER_CHOOSECOLORDLG)] HRESULT choosecolordlg([optional, in] VARIANT initColor,[retval, out] long* rgbColor);
	[id(DISPID_IHTMLOPTIONSHOLDER_SHOWSECURITYINFO)] HRESULT showSecurityInfo();
	[id(DISPID_IHTMLOPTIONSHOLDER_ISAPARTMENTMODEL)] HRESULT isApartmentModel([in] IHTMLObjectElement* object,[retval, out] VARIANT_BOOL* fApartment);
	[id(DISPID_IHTMLOPTIONSHOLDER_GETCHARSET)] HRESULT getCharset([in] BSTR fontName,[retval, out] long* charset);
};
[
	hidden,
	uuid(3050f3cb-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface HTMLStyleElementEvents
{
properties:
methods:
	[id(DISPID_HTMLELEMENTEVENTS_ONHELP)] VARIANT_BOOL onhelp();
	[id(DISPID_HTMLELEMENTEVENTS_ONCLICK)] VARIANT_BOOL onclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONDBLCLICK)] VARIANT_BOOL ondblclick();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYPRESS)] VARIANT_BOOL onkeypress();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYDOWN)] void onkeydown();
	[id(DISPID_HTMLELEMENTEVENTS_ONKEYUP)] void onkeyup();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOUT)] void onmouseout();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEOVER)] void onmouseover();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEMOVE)] void onmousemove();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEDOWN)] void onmousedown();
	[id(DISPID_HTMLELEMENTEVENTS_ONMOUSEUP)] void onmouseup();
	[id(DISPID_HTMLELEMENTEVENTS_ONSELECTSTART)] VARIANT_BOOL onselectstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONFILTERCHANGE)] void onfilterchange();
	[id(DISPID_HTMLELEMENTEVENTS_ONDRAGSTART)] VARIANT_BOOL ondragstart();
	[id(DISPID_HTMLELEMENTEVENTS_ONBEFOREUPDATE)] VARIANT_BOOL onbeforeupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONAFTERUPDATE)] void onafterupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONERRORUPDATE)] VARIANT_BOOL onerrorupdate();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWEXIT)] VARIANT_BOOL onrowexit();
	[id(DISPID_HTMLELEMENTEVENTS_ONROWENTER)] void onrowenter();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCHANGED)] void ondatasetchanged();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATAAVAILABLE)] void ondataavailable();
	[id(DISPID_HTMLELEMENTEVENTS_ONDATASETCOMPLETE)] void ondatasetcomplete();
	[id(DISPID_HTMLSTYLEELEMENTEVENTS_ONREADYSTATECHANGE)] void onreadystatechange();
	[id(DISPID_HTMLSTYLEELEMENTEVENTS_ONLOAD)] void onload();
	[id(DISPID_HTMLSTYLEELEMENTEVENTS_ONERROR)] void onerror();
};
[
	odl,
	oleautomation,
	dual,
	uuid(3050f375-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLStyleElement : IDispatch
{
	[propput, id(DISPID_IHTMLSTYLEELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_READYSTATE)] HRESULT readyState([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLEELEMENT_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLEELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLEELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_STYLESHEET)] HRESULT styleSheet([retval, out] IHTMLStyleSheet* * p);
	[propput, id(DISPID_IHTMLSTYLEELEMENT_DISABLED), bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_DISABLED), bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLSTYLEELEMENT_MEDIA), displaybind, bindable] HRESULT media([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_MEDIA), displaybind, bindable] HRESULT media([retval, out] BSTR * p);
};
[
	hidden,
	uuid(3050f511-98b5-11cf-bb82-00aa00bdce0b)
]
dispinterface DispIHTMLStyleElement
{
properties:
methods:
	[id(DISPID_IHTMLELEMENT_SETATTRIBUTE)] HRESULT setAttribute([in] BSTR strAttributeName,[in] VARIANT AttributeValue,[defaultvalue(1), in] LONG lFlags);
	[id(DISPID_IHTMLELEMENT_GETATTRIBUTE)] HRESULT getAttribute([in] BSTR strAttributeName,[defaultvalue(0), in] LONG lFlags,[retval, out] VARIANT* AttributeValue);
	[id(DISPID_IHTMLELEMENT_REMOVEATTRIBUTE)] HRESULT removeAttribute([in] BSTR strAttributeName,[defaultvalue(1), in] LONG lFlags,[retval, out] VARIANT_BOOL* pfSuccess);
	[propput, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_CLASSNAME), bindable] HRESULT className([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_ID), bindable] HRESULT id([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_TAGNAME)] HRESULT tagName([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_PARENTELEMENT)] HRESULT parentElement([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_STYLE), nonbrowsable] HRESULT style([retval, out] IHTMLStyle* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONHELP), displaybind, bindable] HRESULT onhelp([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONCLICK), displaybind, bindable] HRESULT onclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDBLCLICK), displaybind, bindable] HRESULT ondblclick([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYDOWN), displaybind, bindable] HRESULT onkeydown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYUP), displaybind, bindable] HRESULT onkeyup([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONKEYPRESS), displaybind, bindable] HRESULT onkeypress([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOUT), displaybind, bindable] HRESULT onmouseout([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEOVER), displaybind, bindable] HRESULT onmouseover([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEMOVE), displaybind, bindable] HRESULT onmousemove([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEDOWN), displaybind, bindable] HRESULT onmousedown([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONMOUSEUP), displaybind, bindable] HRESULT onmouseup([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_DOCUMENT)] HRESULT document([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_TITLE), displaybind, bindable] HRESULT title([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANGUAGE), displaybind, bindable] HRESULT language([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONSELECTSTART), displaybind, bindable] HRESULT onselectstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_SCROLLINTOVIEW)] HRESULT scrollIntoView([optional, in] VARIANT varargStart);
	[id(DISPID_IHTMLELEMENT_CONTAINS)] HRESULT contains([in] IHTMLElement* pChild,[retval, out] VARIANT_BOOL* pfResult);
	[propget, id(DISPID_IHTMLELEMENT_SOURCEINDEX), bindable] HRESULT sourceIndex([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_RECORDNUMBER)] HRESULT recordNumber([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_LANG)] HRESULT lang([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETLEFT)] HRESULT offsetLeft([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETTOP)] HRESULT offsetTop([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETWIDTH)] HRESULT offsetWidth([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETHEIGHT)] HRESULT offsetHeight([retval, out] long * p);
	[propget, id(DISPID_IHTMLELEMENT_OFFSETPARENT)] HRESULT offsetParent([retval, out] IHTMLElement* * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERHTML)] HRESULT innerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_INNERTEXT)] HRESULT innerText([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERHTML)] HRESULT outerHTML([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([in] BSTR v);
	[propget, id(DISPID_IHTMLELEMENT_OUTERTEXT)] HRESULT outerText([retval, out] BSTR * p);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTHTML)] HRESULT insertAdjacentHTML([in] BSTR where,[in] BSTR html);
	[id(DISPID_IHTMLELEMENT_INSERTADJACENTTEXT)] HRESULT insertAdjacentText([in] BSTR where,[in] BSTR text);
	[propget, id(DISPID_IHTMLELEMENT_PARENTTEXTEDIT)] HRESULT parentTextEdit([retval, out] IHTMLElement* * p);
	[propget, id(DISPID_IHTMLELEMENT_ISTEXTEDIT)] HRESULT isTextEdit([retval, out] VARIANT_BOOL * p);
	[id(DISPID_IHTMLELEMENT_CLICK)] HRESULT click();
	[propget, id(DISPID_IHTMLELEMENT_FILTERS)] HRESULT filters([retval, out] IHTMLFiltersCollection* * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDRAGSTART), displaybind, bindable] HRESULT ondragstart([retval, out] VARIANT * p);
	[id(DISPID_IHTMLELEMENT_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
	[propput, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONBEFOREUPDATE), displaybind, bindable] HRESULT onbeforeupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONAFTERUPDATE), displaybind, bindable] HRESULT onafterupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONERRORUPDATE), displaybind, bindable] HRESULT onerrorupdate([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWEXIT), displaybind, bindable] HRESULT onrowexit([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONROWENTER), displaybind, bindable] HRESULT onrowenter([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCHANGED), displaybind, bindable] HRESULT ondatasetchanged([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATAAVAILABLE), displaybind, bindable] HRESULT ondataavailable([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONDATASETCOMPLETE), displaybind, bindable] HRESULT ondatasetcomplete([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([in] VARIANT v);
	[propget, id(DISPID_IHTMLELEMENT_ONFILTERCHANGE), displaybind, bindable] HRESULT onfilterchange([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLELEMENT_CHILDREN)] HRESULT children([retval, out] IDispatch* * p);
	[propget, id(DISPID_IHTMLELEMENT_ALL)] HRESULT all([retval, out] IDispatch* * p);
	[propput, id(DISPID_IHTMLSTYLEELEMENT_TYPE), displaybind, bindable] HRESULT type([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_TYPE), displaybind, bindable] HRESULT type([retval, out] BSTR * p);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_READYSTATE)] HRESULT readyState([retval, out] BSTR * p);
	[propput, id(DISPID_IHTMLSTYLEELEMENT_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_ONREADYSTATECHANGE), displaybind, bindable] HRESULT onreadystatechange([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLEELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_ONLOAD), displaybind, bindable] HRESULT onload([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLSTYLEELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([in] VARIANT v);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_ONERROR), displaybind, bindable] HRESULT onerror([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_STYLESHEET)] HRESULT styleSheet([retval, out] IHTMLStyleSheet* * p);
	[propput, id(DISPID_IHTMLSTYLEELEMENT_DISABLED), bindable] HRESULT disabled([in] VARIANT_BOOL v);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_DISABLED), bindable] HRESULT disabled([retval, out] VARIANT_BOOL * p);
	[propput, id(DISPID_IHTMLSTYLEELEMENT_MEDIA), displaybind, bindable] HRESULT media([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLEELEMENT_MEDIA), displaybind, bindable] HRESULT media([retval, out] BSTR * p);
};
[uuid(3050f37d-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLStyleElement
{
	[default]			dispinterface DispIHTMLStyleElement;
	[source, default]	dispinterface HTMLStyleElementEvents;
						interface IHTMLStyleElement;
						interface IHTMLElement;
};
cpp_quote("EXTERN_C const GUID CLSID_CStyleElement;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f3d5-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLStyleFontFace : IDispatch
{
	[propput, id(DISPID_IHTMLSTYLEFONTFACE_FONTSRC), displaybind, bindable] HRESULT fontsrc([in] BSTR v);
	[propget, id(DISPID_IHTMLSTYLEFONTFACE_FONTSRC), displaybind, bindable] HRESULT fontsrc([retval, out] BSTR * p);
};
[uuid(3050f3d4-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLStyleFontFace
{
	[default]			interface IHTMLStyleFontFace;
};
cpp_quote("EXTERN_C const GUID CLSID_CFontFace;")
[
	odl,
	oleautomation,
	dual,
	uuid(3050f216-98b5-11cf-bb82-00aa00bdce0b)
]
interface IHTMLDialog : IDispatch
{
	[propput, id(DISPID_IHTMLDIALOG_DIALOGTOP), bindable] HRESULT dialogTop([in] VARIANT v);
	[propget, id(DISPID_IHTMLDIALOG_DIALOGTOP), bindable] HRESULT dialogTop([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDIALOG_DIALOGLEFT), bindable] HRESULT dialogLeft([in] VARIANT v);
	[propget, id(DISPID_IHTMLDIALOG_DIALOGLEFT), bindable] HRESULT dialogLeft([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDIALOG_DIALOGWIDTH), bindable] HRESULT dialogWidth([in] VARIANT v);
	[propget, id(DISPID_IHTMLDIALOG_DIALOGWIDTH), bindable] HRESULT dialogWidth([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDIALOG_DIALOGHEIGHT), bindable] HRESULT dialogHeight([in] VARIANT v);
	[propget, id(DISPID_IHTMLDIALOG_DIALOGHEIGHT), bindable] HRESULT dialogHeight([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLDIALOG_DIALOGARGUMENTS)] HRESULT dialogArguments([retval, out] VARIANT * p);
	[propget, id(DISPID_IHTMLDIALOG_MENUARGUMENTS)] HRESULT menuArguments([retval, out] VARIANT * p);
	[propput, id(DISPID_IHTMLDIALOG_RETURNVALUE)] HRESULT returnValue([in] VARIANT v);
	[propget, id(DISPID_IHTMLDIALOG_RETURNVALUE)] HRESULT returnValue([retval, out] VARIANT * p);
	[id(DISPID_IHTMLDIALOG_CLOSE)] HRESULT close();
	[id(DISPID_IHTMLDIALOG_TOSTRING)] HRESULT toString([retval, out] BSTR* String);
};
[uuid(3050f28a-98b5-11cf-bb82-00aa00bdce0b)]
coclass HTMLDialog
{
	[default]			interface IHTMLDialog;
};
cpp_quote("EXTERN_C const GUID CLSID_CHTMLDlg;")





//
// Workaround for IE3 Scripting Wizard - relies on seeing these coclass GUIDS
//

[uuid(D48A6EC9-6A4A-11CF-94A7-444553540000)]
coclass OldHTMLDocument
{
	[default]			interface IHTMLDocument2;
	[source, default]	dispinterface HTMLDocumentEvents;
};

//
// Workaround for IE3 Scripting Wizard - relies on seeing these coclass GUIDS
//

[uuid(0D04D285-6BEC-11CF-8B97-00AA00476DA6)]
coclass OldHTMLFormElement
{
	[default]			dispinterface DispIHTMLFormElement;
	[source, default]	dispinterface HTMLFormElementEvents;
						interface IHTMLFormElement;
						interface IHTMLElement;
};

} 
 
