/*** Autogenerated by WIDL 1.3.20 from mshtml.idl - Do not edit ***/

#include <rpc.h>
#include <rpcndr.h>

#ifndef __WIDL_MSHTML_H
#define __WIDL_MSHTML_H

/* Forward declarations */

#ifndef __IHTMLDOMConstructor_FWD_DEFINED__
#define __IHTMLDOMConstructor_FWD_DEFINED__
typedef interface IHTMLDOMConstructor IHTMLDOMConstructor;
#endif

#ifndef __IHTMLFiltersCollection_FWD_DEFINED__
#define __IHTMLFiltersCollection_FWD_DEFINED__
typedef interface IHTMLFiltersCollection IHTMLFiltersCollection;
#endif

#ifndef __IHTMLStyle_FWD_DEFINED__
#define __IHTMLStyle_FWD_DEFINED__
typedef interface IHTMLStyle IHTMLStyle;
#endif

#ifndef __IHTMLStyle2_FWD_DEFINED__
#define __IHTMLStyle2_FWD_DEFINED__
typedef interface IHTMLStyle2 IHTMLStyle2;
#endif

#ifndef __IHTMLRuleStyle_FWD_DEFINED__
#define __IHTMLRuleStyle_FWD_DEFINED__
typedef interface IHTMLRuleStyle IHTMLRuleStyle;
#endif

#ifndef __DispHTMLStyle_FWD_DEFINED__
#define __DispHTMLStyle_FWD_DEFINED__
typedef interface DispHTMLStyle DispHTMLStyle;
#endif

#ifndef __IHTMLStyle3_FWD_DEFINED__
#define __IHTMLStyle3_FWD_DEFINED__
typedef interface IHTMLStyle3 IHTMLStyle3;
#endif

#ifndef __IHTMLStyle4_FWD_DEFINED__
#define __IHTMLStyle4_FWD_DEFINED__
typedef interface IHTMLStyle4 IHTMLStyle4;
#endif

#ifndef __HTMLStyle_FWD_DEFINED__
#define __HTMLStyle_FWD_DEFINED__
typedef struct HTMLStyle HTMLStyle;
#endif /* defined __HTMLStyle_FWD_DEFINED__ */

#ifndef __IHTMLRenderStyle_FWD_DEFINED__
#define __IHTMLRenderStyle_FWD_DEFINED__
typedef interface IHTMLRenderStyle IHTMLRenderStyle;
#endif

#ifndef __IHTMLCurrentStyle_FWD_DEFINED__
#define __IHTMLCurrentStyle_FWD_DEFINED__
typedef interface IHTMLCurrentStyle IHTMLCurrentStyle;
#endif

#ifndef __IHTMLCurrentStyle2_FWD_DEFINED__
#define __IHTMLCurrentStyle2_FWD_DEFINED__
typedef interface IHTMLCurrentStyle2 IHTMLCurrentStyle2;
#endif

#ifndef __IHTMLCurrentStyle3_FWD_DEFINED__
#define __IHTMLCurrentStyle3_FWD_DEFINED__
typedef interface IHTMLCurrentStyle3 IHTMLCurrentStyle3;
#endif

#ifndef __IHTMLCurrentStyle4_FWD_DEFINED__
#define __IHTMLCurrentStyle4_FWD_DEFINED__
typedef interface IHTMLCurrentStyle4 IHTMLCurrentStyle4;
#endif

#ifndef __DispHTMLCurrentStyle_FWD_DEFINED__
#define __DispHTMLCurrentStyle_FWD_DEFINED__
typedef interface DispHTMLCurrentStyle DispHTMLCurrentStyle;
#endif

#ifndef __HTMLCurrentStyle_FWD_DEFINED__
#define __HTMLCurrentStyle_FWD_DEFINED__
typedef struct HTMLCurrentStyle HTMLCurrentStyle;
#endif /* defined __HTMLCurrentStyle_FWD_DEFINED__ */

#ifndef __IHTMLRect_FWD_DEFINED__
#define __IHTMLRect_FWD_DEFINED__
typedef interface IHTMLRect IHTMLRect;
#endif

#ifndef __IHTMLRectCollection_FWD_DEFINED__
#define __IHTMLRectCollection_FWD_DEFINED__
typedef interface IHTMLRectCollection IHTMLRectCollection;
#endif

#ifndef __IHTMLDOMNode_FWD_DEFINED__
#define __IHTMLDOMNode_FWD_DEFINED__
typedef interface IHTMLDOMNode IHTMLDOMNode;
#endif

#ifndef __IHTMLDOMNode2_FWD_DEFINED__
#define __IHTMLDOMNode2_FWD_DEFINED__
typedef interface IHTMLDOMNode2 IHTMLDOMNode2;
#endif

#ifndef __IHTMLDOMAttribute_FWD_DEFINED__
#define __IHTMLDOMAttribute_FWD_DEFINED__
typedef interface IHTMLDOMAttribute IHTMLDOMAttribute;
#endif

#ifndef __IHTMLDOMAttribute2_FWD_DEFINED__
#define __IHTMLDOMAttribute2_FWD_DEFINED__
typedef interface IHTMLDOMAttribute2 IHTMLDOMAttribute2;
#endif

#ifndef __IHTMLDOMTextNode_FWD_DEFINED__
#define __IHTMLDOMTextNode_FWD_DEFINED__
typedef interface IHTMLDOMTextNode IHTMLDOMTextNode;
#endif

#ifndef __IHTMLDOMTextNode2_FWD_DEFINED__
#define __IHTMLDOMTextNode2_FWD_DEFINED__
typedef interface IHTMLDOMTextNode2 IHTMLDOMTextNode2;
#endif

#ifndef __HTMLDOMTextNode_FWD_DEFINED__
#define __HTMLDOMTextNode_FWD_DEFINED__
typedef struct HTMLDOMTextNode HTMLDOMTextNode;
#endif /* defined __HTMLDOMTextNode_FWD_DEFINED__ */

#ifndef __IHTMLDOMImplementation_FWD_DEFINED__
#define __IHTMLDOMImplementation_FWD_DEFINED__
typedef interface IHTMLDOMImplementation IHTMLDOMImplementation;
#endif

#ifndef __DispHTMLDOMAttribute_FWD_DEFINED__
#define __DispHTMLDOMAttribute_FWD_DEFINED__
typedef interface DispHTMLDOMAttribute DispHTMLDOMAttribute;
#endif

#ifndef __IHTMLDocumentCompatibleInfo_FWD_DEFINED__
#define __IHTMLDocumentCompatibleInfo_FWD_DEFINED__
typedef interface IHTMLDocumentCompatibleInfo IHTMLDocumentCompatibleInfo;
#endif

#ifndef __IHTMLDocumentCompatibleInfoCollection_FWD_DEFINED__
#define __IHTMLDocumentCompatibleInfoCollection_FWD_DEFINED__
typedef interface IHTMLDocumentCompatibleInfoCollection IHTMLDocumentCompatibleInfoCollection;
#endif

#ifndef __DispHTMLDOMTextNode_FWD_DEFINED__
#define __DispHTMLDOMTextNode_FWD_DEFINED__
typedef interface DispHTMLDOMTextNode DispHTMLDOMTextNode;
#endif

#ifndef __IHTMLAttributeCollection3_FWD_DEFINED__
#define __IHTMLAttributeCollection3_FWD_DEFINED__
typedef interface IHTMLAttributeCollection3 IHTMLAttributeCollection3;
#endif

#ifndef __IHTMLDOMChildrenCollection_FWD_DEFINED__
#define __IHTMLDOMChildrenCollection_FWD_DEFINED__
typedef interface IHTMLDOMChildrenCollection IHTMLDOMChildrenCollection;
#endif

#ifndef __DispDOMChildrenCollection_FWD_DEFINED__
#define __DispDOMChildrenCollection_FWD_DEFINED__
typedef interface DispDOMChildrenCollection DispDOMChildrenCollection;
#endif

#ifndef __IHTMLElement_FWD_DEFINED__
#define __IHTMLElement_FWD_DEFINED__
typedef interface IHTMLElement IHTMLElement;
#endif

#ifndef __IHTMLElement2_FWD_DEFINED__
#define __IHTMLElement2_FWD_DEFINED__
typedef interface IHTMLElement2 IHTMLElement2;
#endif

#ifndef __IHTMLElement3_FWD_DEFINED__
#define __IHTMLElement3_FWD_DEFINED__
typedef interface IHTMLElement3 IHTMLElement3;
#endif

#ifndef __IHTMLElement4_FWD_DEFINED__
#define __IHTMLElement4_FWD_DEFINED__
typedef interface IHTMLElement4 IHTMLElement4;
#endif

#ifndef __IHTMLUniqueName_FWD_DEFINED__
#define __IHTMLUniqueName_FWD_DEFINED__
typedef interface IHTMLUniqueName IHTMLUniqueName;
#endif

#ifndef __IHTMLDatabinding_FWD_DEFINED__
#define __IHTMLDatabinding_FWD_DEFINED__
typedef interface IHTMLDatabinding IHTMLDatabinding;
#endif

#ifndef __IHTMLGenericElement_FWD_DEFINED__
#define __IHTMLGenericElement_FWD_DEFINED__
typedef interface IHTMLGenericElement IHTMLGenericElement;
#endif

#ifndef __DispHTMLGenericElement_FWD_DEFINED__
#define __DispHTMLGenericElement_FWD_DEFINED__
typedef interface DispHTMLGenericElement DispHTMLGenericElement;
#endif

#ifndef __IHTMLStyleSheetRule_FWD_DEFINED__
#define __IHTMLStyleSheetRule_FWD_DEFINED__
typedef interface IHTMLStyleSheetRule IHTMLStyleSheetRule;
#endif

#ifndef __DispHTMLStyleSheetRule_FWD_DEFINED__
#define __DispHTMLStyleSheetRule_FWD_DEFINED__
typedef interface DispHTMLStyleSheetRule DispHTMLStyleSheetRule;
#endif

#ifndef __HTMLStyleSheetRule_FWD_DEFINED__
#define __HTMLStyleSheetRule_FWD_DEFINED__
typedef struct HTMLStyleSheetRule HTMLStyleSheetRule;
#endif /* defined __HTMLStyleSheetRule_FWD_DEFINED__ */

#ifndef __IHTMLStyleSheetRulesCollection_FWD_DEFINED__
#define __IHTMLStyleSheetRulesCollection_FWD_DEFINED__
typedef interface IHTMLStyleSheetRulesCollection IHTMLStyleSheetRulesCollection;
#endif

#ifndef __DispHTMLStyleSheetRulesCollection_FWD_DEFINED__
#define __DispHTMLStyleSheetRulesCollection_FWD_DEFINED__
typedef interface DispHTMLStyleSheetRulesCollection DispHTMLStyleSheetRulesCollection;
#endif

#ifndef __HTMLStyleSheetRulesCollection_FWD_DEFINED__
#define __HTMLStyleSheetRulesCollection_FWD_DEFINED__
typedef struct HTMLStyleSheetRulesCollection HTMLStyleSheetRulesCollection;
#endif /* defined __HTMLStyleSheetRulesCollection_FWD_DEFINED__ */

#ifndef __IHTMLStyleSheetPage_FWD_DEFINED__
#define __IHTMLStyleSheetPage_FWD_DEFINED__
typedef interface IHTMLStyleSheetPage IHTMLStyleSheetPage;
#endif

#ifndef __DispHTMLStyleSheetPage_FWD_DEFINED__
#define __DispHTMLStyleSheetPage_FWD_DEFINED__
typedef interface DispHTMLStyleSheetPage DispHTMLStyleSheetPage;
#endif

#ifndef __HTMLStyleSheetPage_FWD_DEFINED__
#define __HTMLStyleSheetPage_FWD_DEFINED__
typedef struct HTMLStyleSheetPage HTMLStyleSheetPage;
#endif /* defined __HTMLStyleSheetPage_FWD_DEFINED__ */

#ifndef __IHTMLStyleSheetPagesCollection_FWD_DEFINED__
#define __IHTMLStyleSheetPagesCollection_FWD_DEFINED__
typedef interface IHTMLStyleSheetPagesCollection IHTMLStyleSheetPagesCollection;
#endif

#ifndef __DispHTMLStyleSheetPagesCollection_FWD_DEFINED__
#define __DispHTMLStyleSheetPagesCollection_FWD_DEFINED__
typedef interface DispHTMLStyleSheetPagesCollection DispHTMLStyleSheetPagesCollection;
#endif

#ifndef __HTMLStyleSheetPagesCollection_FWD_DEFINED__
#define __HTMLStyleSheetPagesCollection_FWD_DEFINED__
typedef struct HTMLStyleSheetPagesCollection HTMLStyleSheetPagesCollection;
#endif /* defined __HTMLStyleSheetPagesCollection_FWD_DEFINED__ */

#ifndef __IHTMLStyleSheet_FWD_DEFINED__
#define __IHTMLStyleSheet_FWD_DEFINED__
typedef interface IHTMLStyleSheet IHTMLStyleSheet;
#endif

#ifndef __IHTMLStyleSheet2_FWD_DEFINED__
#define __IHTMLStyleSheet2_FWD_DEFINED__
typedef interface IHTMLStyleSheet2 IHTMLStyleSheet2;
#endif

#ifndef __DispHTMLStyleSheet_FWD_DEFINED__
#define __DispHTMLStyleSheet_FWD_DEFINED__
typedef interface DispHTMLStyleSheet DispHTMLStyleSheet;
#endif

#ifndef __HTMLStyleSheet_FWD_DEFINED__
#define __HTMLStyleSheet_FWD_DEFINED__
typedef struct HTMLStyleSheet HTMLStyleSheet;
#endif /* defined __HTMLStyleSheet_FWD_DEFINED__ */

#ifndef __IHTMLStyleSheetsCollection_FWD_DEFINED__
#define __IHTMLStyleSheetsCollection_FWD_DEFINED__
typedef interface IHTMLStyleSheetsCollection IHTMLStyleSheetsCollection;
#endif

#ifndef __DispHTMLStyleSheetsCollection_FWD_DEFINED__
#define __DispHTMLStyleSheetsCollection_FWD_DEFINED__
typedef interface DispHTMLStyleSheetsCollection DispHTMLStyleSheetsCollection;
#endif

#ifndef __IHTMLTxtRange_FWD_DEFINED__
#define __IHTMLTxtRange_FWD_DEFINED__
typedef interface IHTMLTxtRange IHTMLTxtRange;
#endif

#ifndef __HTMLStyleSheetsCollection_FWD_DEFINED__
#define __HTMLStyleSheetsCollection_FWD_DEFINED__
typedef struct HTMLStyleSheetsCollection HTMLStyleSheetsCollection;
#endif /* defined __HTMLStyleSheetsCollection_FWD_DEFINED__ */

#ifndef __IHTMLFormElement_FWD_DEFINED__
#define __IHTMLFormElement_FWD_DEFINED__
typedef interface IHTMLFormElement IHTMLFormElement;
#endif

#ifndef __DispHTMLFormElement_FWD_DEFINED__
#define __DispHTMLFormElement_FWD_DEFINED__
typedef interface DispHTMLFormElement DispHTMLFormElement;
#endif

#ifndef __HTMLFormElementEvents_FWD_DEFINED__
#define __HTMLFormElementEvents_FWD_DEFINED__
typedef interface HTMLFormElementEvents HTMLFormElementEvents;
#endif

#ifndef __HTMLFormElementEvents2_FWD_DEFINED__
#define __HTMLFormElementEvents2_FWD_DEFINED__
typedef interface HTMLFormElementEvents2 HTMLFormElementEvents2;
#endif

#ifndef __HTMLFormElement_FWD_DEFINED__
#define __HTMLFormElement_FWD_DEFINED__
typedef struct HTMLFormElement HTMLFormElement;
#endif /* defined __HTMLFormElement_FWD_DEFINED__ */

#ifndef __IHTMLTextContainer_FWD_DEFINED__
#define __IHTMLTextContainer_FWD_DEFINED__
typedef interface IHTMLTextContainer IHTMLTextContainer;
#endif

#ifndef __IHTMLImgElement_FWD_DEFINED__
#define __IHTMLImgElement_FWD_DEFINED__
typedef interface IHTMLImgElement IHTMLImgElement;
#endif

#ifndef __IHTMLImageElementFactory_FWD_DEFINED__
#define __IHTMLImageElementFactory_FWD_DEFINED__
typedef interface IHTMLImageElementFactory IHTMLImageElementFactory;
#endif

#ifndef __DispHTMLImg_FWD_DEFINED__
#define __DispHTMLImg_FWD_DEFINED__
typedef interface DispHTMLImg DispHTMLImg;
#endif

#ifndef __IHTMLControlElement_FWD_DEFINED__
#define __IHTMLControlElement_FWD_DEFINED__
typedef interface IHTMLControlElement IHTMLControlElement;
#endif

#ifndef __IHTMLBodyElement_FWD_DEFINED__
#define __IHTMLBodyElement_FWD_DEFINED__
typedef interface IHTMLBodyElement IHTMLBodyElement;
#endif

#ifndef __IHTMLBodyElement2_FWD_DEFINED__
#define __IHTMLBodyElement2_FWD_DEFINED__
typedef interface IHTMLBodyElement2 IHTMLBodyElement2;
#endif

#ifndef __DispHTMLBody_FWD_DEFINED__
#define __DispHTMLBody_FWD_DEFINED__
typedef interface DispHTMLBody DispHTMLBody;
#endif

#ifndef __HTMLBody_FWD_DEFINED__
#define __HTMLBody_FWD_DEFINED__
typedef struct HTMLBody HTMLBody;
#endif /* defined __HTMLBody_FWD_DEFINED__ */

#ifndef __IHTMLAnchorElement_FWD_DEFINED__
#define __IHTMLAnchorElement_FWD_DEFINED__
typedef interface IHTMLAnchorElement IHTMLAnchorElement;
#endif

#ifndef __DispHTMLAnchorElement_FWD_DEFINED__
#define __DispHTMLAnchorElement_FWD_DEFINED__
typedef interface DispHTMLAnchorElement DispHTMLAnchorElement;
#endif

#ifndef __IHTMLElementCollection_FWD_DEFINED__
#define __IHTMLElementCollection_FWD_DEFINED__
typedef interface IHTMLElementCollection IHTMLElementCollection;
#endif

#ifndef __DispHTMLElementCollection_FWD_DEFINED__
#define __DispHTMLElementCollection_FWD_DEFINED__
typedef interface DispHTMLElementCollection DispHTMLElementCollection;
#endif

#ifndef __IHTMLSelectElement_FWD_DEFINED__
#define __IHTMLSelectElement_FWD_DEFINED__
typedef interface IHTMLSelectElement IHTMLSelectElement;
#endif

#ifndef __DispHTMLSelectElement_FWD_DEFINED__
#define __DispHTMLSelectElement_FWD_DEFINED__
typedef interface DispHTMLSelectElement DispHTMLSelectElement;
#endif

#ifndef __IHTMLSelectionObject_FWD_DEFINED__
#define __IHTMLSelectionObject_FWD_DEFINED__
typedef interface IHTMLSelectionObject IHTMLSelectionObject;
#endif

#ifndef __IHTMLOptionElement_FWD_DEFINED__
#define __IHTMLOptionElement_FWD_DEFINED__
typedef interface IHTMLOptionElement IHTMLOptionElement;
#endif

#ifndef __IHTMLOptionElement3_FWD_DEFINED__
#define __IHTMLOptionElement3_FWD_DEFINED__
typedef interface IHTMLOptionElement3 IHTMLOptionElement3;
#endif

#ifndef __IHTMLOptionElementFactory_FWD_DEFINED__
#define __IHTMLOptionElementFactory_FWD_DEFINED__
typedef interface IHTMLOptionElementFactory IHTMLOptionElementFactory;
#endif

#ifndef __DispHTMLOptionElement_FWD_DEFINED__
#define __DispHTMLOptionElement_FWD_DEFINED__
typedef interface DispHTMLOptionElement DispHTMLOptionElement;
#endif

#ifndef __HTMLOptionElement_FWD_DEFINED__
#define __HTMLOptionElement_FWD_DEFINED__
typedef struct HTMLOptionElement HTMLOptionElement;
#endif /* defined __HTMLOptionElement_FWD_DEFINED__ */

#ifndef __IHTMLInputElement_FWD_DEFINED__
#define __IHTMLInputElement_FWD_DEFINED__
typedef interface IHTMLInputElement IHTMLInputElement;
#endif

#ifndef __IHTMLInputTextElement_FWD_DEFINED__
#define __IHTMLInputTextElement_FWD_DEFINED__
typedef interface IHTMLInputTextElement IHTMLInputTextElement;
#endif

#ifndef __DispHTMLInputElement_FWD_DEFINED__
#define __DispHTMLInputElement_FWD_DEFINED__
typedef interface DispHTMLInputElement DispHTMLInputElement;
#endif

#ifndef __IHTMLTextAreaElement_FWD_DEFINED__
#define __IHTMLTextAreaElement_FWD_DEFINED__
typedef interface IHTMLTextAreaElement IHTMLTextAreaElement;
#endif

#ifndef __DispHTMLTextAreaElement_FWD_DEFINED__
#define __DispHTMLTextAreaElement_FWD_DEFINED__
typedef interface DispHTMLTextAreaElement DispHTMLTextAreaElement;
#endif

#ifndef __DispHTMLUnknownElement_FWD_DEFINED__
#define __DispHTMLUnknownElement_FWD_DEFINED__
typedef interface DispHTMLUnknownElement DispHTMLUnknownElement;
#endif

#ifndef __IOmHistory_FWD_DEFINED__
#define __IOmHistory_FWD_DEFINED__
typedef interface IOmHistory IOmHistory;
#endif

#ifndef __HTMLHistory_FWD_DEFINED__
#define __HTMLHistory_FWD_DEFINED__
typedef struct HTMLHistory HTMLHistory;
#endif /* defined __HTMLHistory_FWD_DEFINED__ */

#ifndef __IHTMLMimeTypesCollection_FWD_DEFINED__
#define __IHTMLMimeTypesCollection_FWD_DEFINED__
typedef interface IHTMLMimeTypesCollection IHTMLMimeTypesCollection;
#endif

#ifndef __CMimeTypes_FWD_DEFINED__
#define __CMimeTypes_FWD_DEFINED__
typedef struct CMimeTypes CMimeTypes;
#endif /* defined __CMimeTypes_FWD_DEFINED__ */

#ifndef __IHTMLPluginsCollection_FWD_DEFINED__
#define __IHTMLPluginsCollection_FWD_DEFINED__
typedef interface IHTMLPluginsCollection IHTMLPluginsCollection;
#endif

#ifndef __DispCPlugins_FWD_DEFINED__
#define __DispCPlugins_FWD_DEFINED__
typedef interface DispCPlugins DispCPlugins;
#endif

#ifndef __CPlugins_FWD_DEFINED__
#define __CPlugins_FWD_DEFINED__
typedef struct CPlugins CPlugins;
#endif /* defined __CPlugins_FWD_DEFINED__ */

#ifndef __IHTMLOpsProfile_FWD_DEFINED__
#define __IHTMLOpsProfile_FWD_DEFINED__
typedef interface IHTMLOpsProfile IHTMLOpsProfile;
#endif

#ifndef __COpsProfile_FWD_DEFINED__
#define __COpsProfile_FWD_DEFINED__
typedef struct COpsProfile COpsProfile;
#endif /* defined __COpsProfile_FWD_DEFINED__ */

#ifndef __IOmNavigator_FWD_DEFINED__
#define __IOmNavigator_FWD_DEFINED__
typedef interface IOmNavigator IOmNavigator;
#endif

#ifndef __DispHTMLNavigator_FWD_DEFINED__
#define __DispHTMLNavigator_FWD_DEFINED__
typedef interface DispHTMLNavigator DispHTMLNavigator;
#endif

#ifndef __HTMLNavigator_FWD_DEFINED__
#define __HTMLNavigator_FWD_DEFINED__
typedef struct HTMLNavigator HTMLNavigator;
#endif /* defined __HTMLNavigator_FWD_DEFINED__ */

#ifndef __IHTMLLocation_FWD_DEFINED__
#define __IHTMLLocation_FWD_DEFINED__
typedef interface IHTMLLocation IHTMLLocation;
#endif

#ifndef __DispHTMLLocation_FWD_DEFINED__
#define __DispHTMLLocation_FWD_DEFINED__
typedef interface DispHTMLLocation DispHTMLLocation;
#endif

#ifndef __HTMLLocation_FWD_DEFINED__
#define __HTMLLocation_FWD_DEFINED__
typedef struct HTMLLocation HTMLLocation;
#endif /* defined __HTMLLocation_FWD_DEFINED__ */

#ifndef __IHTMLBookmarkCollection_FWD_DEFINED__
#define __IHTMLBookmarkCollection_FWD_DEFINED__
typedef interface IHTMLBookmarkCollection IHTMLBookmarkCollection;
#endif

#ifndef __IHTMLDataTransfer_FWD_DEFINED__
#define __IHTMLDataTransfer_FWD_DEFINED__
typedef interface IHTMLDataTransfer IHTMLDataTransfer;
#endif

#ifndef __IHTMLEventObj_FWD_DEFINED__
#define __IHTMLEventObj_FWD_DEFINED__
typedef interface IHTMLEventObj IHTMLEventObj;
#endif

#ifndef __DispCEventObj_FWD_DEFINED__
#define __DispCEventObj_FWD_DEFINED__
typedef interface DispCEventObj DispCEventObj;
#endif

#ifndef __IHTMLFramesCollection2_FWD_DEFINED__
#define __IHTMLFramesCollection2_FWD_DEFINED__
typedef interface IHTMLFramesCollection2 IHTMLFramesCollection2;
#endif

#ifndef __IHTMLScreen_FWD_DEFINED__
#define __IHTMLScreen_FWD_DEFINED__
typedef interface IHTMLScreen IHTMLScreen;
#endif

#ifndef __IHTMLWindow2_FWD_DEFINED__
#define __IHTMLWindow2_FWD_DEFINED__
typedef interface IHTMLWindow2 IHTMLWindow2;
#endif

#ifndef __IHTMLWindow3_FWD_DEFINED__
#define __IHTMLWindow3_FWD_DEFINED__
typedef interface IHTMLWindow3 IHTMLWindow3;
#endif

#ifndef __IHTMLWindow4_FWD_DEFINED__
#define __IHTMLWindow4_FWD_DEFINED__
typedef interface IHTMLWindow4 IHTMLWindow4;
#endif

#ifndef __IHTMLWindow5_FWD_DEFINED__
#define __IHTMLWindow5_FWD_DEFINED__
typedef interface IHTMLWindow5 IHTMLWindow5;
#endif

#ifndef __DispHTMLScreen_FWD_DEFINED__
#define __DispHTMLScreen_FWD_DEFINED__
typedef interface DispHTMLScreen DispHTMLScreen;
#endif

#ifndef __DispHTMLWindow2_FWD_DEFINED__
#define __DispHTMLWindow2_FWD_DEFINED__
typedef interface DispHTMLWindow2 DispHTMLWindow2;
#endif

#ifndef __DispHTMLWindowProxy_FWD_DEFINED__
#define __DispHTMLWindowProxy_FWD_DEFINED__
typedef interface DispHTMLWindowProxy DispHTMLWindowProxy;
#endif

#ifndef __HTMLWindowEvents_FWD_DEFINED__
#define __HTMLWindowEvents_FWD_DEFINED__
typedef interface HTMLWindowEvents HTMLWindowEvents;
#endif

#ifndef __HTMLWindowEvents2_FWD_DEFINED__
#define __HTMLWindowEvents2_FWD_DEFINED__
typedef interface HTMLWindowEvents2 HTMLWindowEvents2;
#endif

#ifndef __HTMLWindowProxy_FWD_DEFINED__
#define __HTMLWindowProxy_FWD_DEFINED__
typedef struct HTMLWindowProxy HTMLWindowProxy;
#endif /* defined __HTMLWindowProxy_FWD_DEFINED__ */

#ifndef __HTMLDocumentEvents2_FWD_DEFINED__
#define __HTMLDocumentEvents2_FWD_DEFINED__
typedef interface HTMLDocumentEvents2 HTMLDocumentEvents2;
#endif

#ifndef __HTMLDocumentEvents_FWD_DEFINED__
#define __HTMLDocumentEvents_FWD_DEFINED__
typedef interface HTMLDocumentEvents HTMLDocumentEvents;
#endif

#ifndef __HTMLTextContainerEvents_FWD_DEFINED__
#define __HTMLTextContainerEvents_FWD_DEFINED__
typedef interface HTMLTextContainerEvents HTMLTextContainerEvents;
#endif

#ifndef __HTMLTextContainerEvents2_FWD_DEFINED__
#define __HTMLTextContainerEvents2_FWD_DEFINED__
typedef interface HTMLTextContainerEvents2 HTMLTextContainerEvents2;
#endif

#ifndef __IHTMLDocument_FWD_DEFINED__
#define __IHTMLDocument_FWD_DEFINED__
typedef interface IHTMLDocument IHTMLDocument;
#endif

#ifndef __IHTMLDocument2_FWD_DEFINED__
#define __IHTMLDocument2_FWD_DEFINED__
typedef interface IHTMLDocument2 IHTMLDocument2;
#endif

#ifndef __IHTMLDocument3_FWD_DEFINED__
#define __IHTMLDocument3_FWD_DEFINED__
typedef interface IHTMLDocument3 IHTMLDocument3;
#endif

#ifndef __IHTMLDocument4_FWD_DEFINED__
#define __IHTMLDocument4_FWD_DEFINED__
typedef interface IHTMLDocument4 IHTMLDocument4;
#endif

#ifndef __IHTMLDocument5_FWD_DEFINED__
#define __IHTMLDocument5_FWD_DEFINED__
typedef interface IHTMLDocument5 IHTMLDocument5;
#endif

#ifndef __IHTMLDocument6_FWD_DEFINED__
#define __IHTMLDocument6_FWD_DEFINED__
typedef interface IHTMLDocument6 IHTMLDocument6;
#endif

#ifndef __DispHTMLDocument_FWD_DEFINED__
#define __DispHTMLDocument_FWD_DEFINED__
typedef interface DispHTMLDocument DispHTMLDocument;
#endif

#ifndef __HTMLDocument_FWD_DEFINED__
#define __HTMLDocument_FWD_DEFINED__
typedef struct HTMLDocument HTMLDocument;
#endif /* defined __HTMLDocument_FWD_DEFINED__ */

#ifndef __DWebBridgeEvents_FWD_DEFINED__
#define __DWebBridgeEvents_FWD_DEFINED__
typedef interface DWebBridgeEvents DWebBridgeEvents;
#endif

#ifndef __IWebBridge_FWD_DEFINED__
#define __IWebBridge_FWD_DEFINED__
typedef interface IWebBridge IWebBridge;
#endif

#ifndef __Scriptlet_FWD_DEFINED__
#define __Scriptlet_FWD_DEFINED__
typedef struct Scriptlet Scriptlet;
#endif /* defined __Scriptlet_FWD_DEFINED__ */

#ifndef __IHTMLEmbedElement_FWD_DEFINED__
#define __IHTMLEmbedElement_FWD_DEFINED__
typedef interface IHTMLEmbedElement IHTMLEmbedElement;
#endif

#ifndef __DispHTMLEmbed_FWD_DEFINED__
#define __DispHTMLEmbed_FWD_DEFINED__
typedef interface DispHTMLEmbed DispHTMLEmbed;
#endif

#ifndef __IHTMLCommentElement_FWD_DEFINED__
#define __IHTMLCommentElement_FWD_DEFINED__
typedef interface IHTMLCommentElement IHTMLCommentElement;
#endif

#ifndef __IHTMLCommentElement2_FWD_DEFINED__
#define __IHTMLCommentElement2_FWD_DEFINED__
typedef interface IHTMLCommentElement2 IHTMLCommentElement2;
#endif

#ifndef __DispHTMLCommentElement_FWD_DEFINED__
#define __DispHTMLCommentElement_FWD_DEFINED__
typedef interface DispHTMLCommentElement DispHTMLCommentElement;
#endif

#ifndef __HTMLElementEvents2_FWD_DEFINED__
#define __HTMLElementEvents2_FWD_DEFINED__
typedef interface HTMLElementEvents2 HTMLElementEvents2;
#endif

#ifndef __HTMLElementEvents_FWD_DEFINED__
#define __HTMLElementEvents_FWD_DEFINED__
typedef interface HTMLElementEvents HTMLElementEvents;
#endif

#ifndef __HTMLCommentElement_FWD_DEFINED__
#define __HTMLCommentElement_FWD_DEFINED__
typedef struct HTMLCommentElement HTMLCommentElement;
#endif /* defined __HTMLCommentElement_FWD_DEFINED__ */

#ifndef __HTMLTableEvents_FWD_DEFINED__
#define __HTMLTableEvents_FWD_DEFINED__
typedef interface HTMLTableEvents HTMLTableEvents;
#endif

#ifndef __HTMLTableEvents2_FWD_DEFINED__
#define __HTMLTableEvents2_FWD_DEFINED__
typedef interface HTMLTableEvents2 HTMLTableEvents2;
#endif

#ifndef __IHTMLTableCaption_FWD_DEFINED__
#define __IHTMLTableCaption_FWD_DEFINED__
typedef interface IHTMLTableCaption IHTMLTableCaption;
#endif

#ifndef __IHTMLTable_FWD_DEFINED__
#define __IHTMLTable_FWD_DEFINED__
typedef interface IHTMLTable IHTMLTable;
#endif

#ifndef __IHTMLTable2_FWD_DEFINED__
#define __IHTMLTable2_FWD_DEFINED__
typedef interface IHTMLTable2 IHTMLTable2;
#endif

#ifndef __IHTMLTable3_FWD_DEFINED__
#define __IHTMLTable3_FWD_DEFINED__
typedef interface IHTMLTable3 IHTMLTable3;
#endif

#ifndef __HTMLTable_FWD_DEFINED__
#define __HTMLTable_FWD_DEFINED__
typedef struct HTMLTable HTMLTable;
#endif /* defined __HTMLTable_FWD_DEFINED__ */

#ifndef __IHTMLTableSection_FWD_DEFINED__
#define __IHTMLTableSection_FWD_DEFINED__
typedef interface IHTMLTableSection IHTMLTableSection;
#endif

#ifndef __IHTMLTableRow_FWD_DEFINED__
#define __IHTMLTableRow_FWD_DEFINED__
typedef interface IHTMLTableRow IHTMLTableRow;
#endif

#ifndef __DispHTMLTable_FWD_DEFINED__
#define __DispHTMLTable_FWD_DEFINED__
typedef interface DispHTMLTable DispHTMLTable;
#endif

#ifndef __DispHTMLTableRow_FWD_DEFINED__
#define __DispHTMLTableRow_FWD_DEFINED__
typedef interface DispHTMLTableRow DispHTMLTableRow;
#endif

#ifndef __IHTMLScriptElement_FWD_DEFINED__
#define __IHTMLScriptElement_FWD_DEFINED__
typedef interface IHTMLScriptElement IHTMLScriptElement;
#endif

#ifndef __IHTMLScriptElement2_FWD_DEFINED__
#define __IHTMLScriptElement2_FWD_DEFINED__
typedef interface IHTMLScriptElement2 IHTMLScriptElement2;
#endif

#ifndef __DispHTMLScriptElement_FWD_DEFINED__
#define __DispHTMLScriptElement_FWD_DEFINED__
typedef interface DispHTMLScriptElement DispHTMLScriptElement;
#endif

#ifndef __IHTMLObjectElement_FWD_DEFINED__
#define __IHTMLObjectElement_FWD_DEFINED__
typedef interface IHTMLObjectElement IHTMLObjectElement;
#endif

#ifndef __IHTMLParamElement_FWD_DEFINED__
#define __IHTMLParamElement_FWD_DEFINED__
typedef interface IHTMLParamElement IHTMLParamElement;
#endif

#ifndef __IHTMLParamElement2_FWD_DEFINED__
#define __IHTMLParamElement2_FWD_DEFINED__
typedef interface IHTMLParamElement2 IHTMLParamElement2;
#endif

#ifndef __DispHTMLObjectElement_FWD_DEFINED__
#define __DispHTMLObjectElement_FWD_DEFINED__
typedef interface DispHTMLObjectElement DispHTMLObjectElement;
#endif

#ifndef __DispHTMLParamElement_FWD_DEFINED__
#define __DispHTMLParamElement_FWD_DEFINED__
typedef interface DispHTMLParamElement DispHTMLParamElement;
#endif

#ifndef __IHTMLFrameBase_FWD_DEFINED__
#define __IHTMLFrameBase_FWD_DEFINED__
typedef interface IHTMLFrameBase IHTMLFrameBase;
#endif

#ifndef __IHTMLFrameBase2_FWD_DEFINED__
#define __IHTMLFrameBase2_FWD_DEFINED__
typedef interface IHTMLFrameBase2 IHTMLFrameBase2;
#endif

#ifndef __IHTMLFrameElement3_FWD_DEFINED__
#define __IHTMLFrameElement3_FWD_DEFINED__
typedef interface IHTMLFrameElement3 IHTMLFrameElement3;
#endif

#ifndef __DispHTMLFrameElement_FWD_DEFINED__
#define __DispHTMLFrameElement_FWD_DEFINED__
typedef interface DispHTMLFrameElement DispHTMLFrameElement;
#endif

#ifndef __IHTMLIFrameElement_FWD_DEFINED__
#define __IHTMLIFrameElement_FWD_DEFINED__
typedef interface IHTMLIFrameElement IHTMLIFrameElement;
#endif

#ifndef __DispHTMLIFrame_FWD_DEFINED__
#define __DispHTMLIFrame_FWD_DEFINED__
typedef interface DispHTMLIFrame DispHTMLIFrame;
#endif

#ifndef __IHTMLStyleElement_FWD_DEFINED__
#define __IHTMLStyleElement_FWD_DEFINED__
typedef interface IHTMLStyleElement IHTMLStyleElement;
#endif

#ifndef __DispHTMLStyleElement_FWD_DEFINED__
#define __DispHTMLStyleElement_FWD_DEFINED__
typedef interface DispHTMLStyleElement DispHTMLStyleElement;
#endif

#ifndef __IMarkupContainer_FWD_DEFINED__
#define __IMarkupContainer_FWD_DEFINED__
typedef interface IMarkupContainer IMarkupContainer;
#endif

#ifndef __IMarkupPointer_FWD_DEFINED__
#define __IMarkupPointer_FWD_DEFINED__
typedef interface IMarkupPointer IMarkupPointer;
#endif

#ifndef __ISegment_FWD_DEFINED__
#define __ISegment_FWD_DEFINED__
typedef interface ISegment ISegment;
#endif

#ifndef __IElementSegment_FWD_DEFINED__
#define __IElementSegment_FWD_DEFINED__
typedef interface IElementSegment IElementSegment;
#endif

#ifndef __ISelectionServicesListener_FWD_DEFINED__
#define __ISelectionServicesListener_FWD_DEFINED__
typedef interface ISelectionServicesListener ISelectionServicesListener;
#endif

#ifndef __ISelectionServices_FWD_DEFINED__
#define __ISelectionServices_FWD_DEFINED__
typedef interface ISelectionServices ISelectionServices;
#endif

#ifndef __IHTMLEditDesigner_FWD_DEFINED__
#define __IHTMLEditDesigner_FWD_DEFINED__
typedef interface IHTMLEditDesigner IHTMLEditDesigner;
#endif

#ifndef __IHTMLEditServices_FWD_DEFINED__
#define __IHTMLEditServices_FWD_DEFINED__
typedef interface IHTMLEditServices IHTMLEditServices;
#endif

#ifndef __IElementBehaviorSite_FWD_DEFINED__
#define __IElementBehaviorSite_FWD_DEFINED__
typedef interface IElementBehaviorSite IElementBehaviorSite;
#endif

#ifndef __IElementBehavior_FWD_DEFINED__
#define __IElementBehavior_FWD_DEFINED__
typedef interface IElementBehavior IElementBehavior;
#endif

#ifndef __IElementBehaviorFactory_FWD_DEFINED__
#define __IElementBehaviorFactory_FWD_DEFINED__
typedef interface IElementBehaviorFactory IElementBehaviorFactory;
#endif

#ifndef __IHTMLPrivateWindow_FWD_DEFINED__
#define __IHTMLPrivateWindow_FWD_DEFINED__
typedef interface IHTMLPrivateWindow IHTMLPrivateWindow;
#endif

/* Headers for imported files */

#include <ocidl.h>
#include <dimm.h>
#include <shtypes.h>

#ifdef __cplusplus
extern "C" {
#endif

#include <olectl.h>
DEFINE_GUID(SID_SEditCommandTarget,  0x3050f4b5,0x98b5,0x11cf,0xbb,0x82,0x00,0xaa,0x00,0xbd,0xce,0x0b);
DEFINE_GUID(SID_SHTMLEditHost,       0x3050f6a0,0x98b5,0x11cf,0xbb,0x82,0x00,0xaa,0x00,0xbd,0xce,0x0b);
DEFINE_GUID(SID_SHTMLEditServices,   0x3050f7f9,0x98b5,0x11cf,0xbb,0x82,0x00,0xaa,0x00,0xbd,0xce,0x0b);
#define SID_SHTMLWindow IID_IHTMLWindow2
#define SID_SElementBehaviorFactory IID_IElementBehaviorFactory
#ifdef WINE_NO_UNICODE_MACROS
#undef FindText
#endif
typedef enum __WIDL_mshtml_generated_name_00000000 {
    POINTER_GRAVITY_Left = 0,
    POINTER_GRAVITY_Right = 1,
    POINTER_GRAVITY_Max = 2147483647
} POINTER_GRAVITY;
typedef enum __WIDL_mshtml_generated_name_00000001 {
    CONTEXT_TYPE_None = 0,
    CONTEXT_TYPE_Text = 1,
    CONTEXT_TYPE_EnterScope = 2,
    CONTEXT_TYPE_ExitScope = 3,
    CONTEXT_TYPE_NoScope = 4,
    MARKUP_CONTEXT_TYPE_Max = 2147483647
} MARKUP_CONTEXT_TYPE;
typedef enum __WIDL_mshtml_generated_name_00000002 {
    ELEM_ADJ_BeforeBegin = 0,
    ELEM_ADJ_AfterBegin = 1,
    ELEM_ADJ_BeforeEnd = 2,
    ELEM_ADJ_AfterEnd = 3,
    ELEMENT_ADJACENCY_Max = 2147483647
} ELEMENT_ADJACENCY;
typedef enum __WIDL_mshtml_generated_name_00000003 {
    MOVEUNIT_PREVCHAR = 0,
    MOVEUNIT_NEXTCHAR = 1,
    MOVEUNIT_PREVCLUSTERBEG = 2,
    MOVEUNIT_NEXTCLUSTERBEG = 3,
    MOVEUNIT_PREVCLUSTEREND = 4,
    MOVEUNIT_NEXTCLUSTEREND = 5,
    MOVEUNIT_PREVWORDBEG = 6,
    MOVEUNIT_NEXTWORDBEG = 7,
    MOVEUNIT_PREVWORDEND = 8,
    MOVEUNIT_NEXTWORDEND = 9,
    MOVEUNIT_PREVPROOFWORD = 10,
    MOVEUNIT_NEXTPROOFWORD = 11,
    MOVEUNIT_NEXTURLBEG = 12,
    MOVEUNIT_PREVURLBEG = 13,
    MOVEUNIT_NEXTURLEND = 14,
    MOVEUNIT_PREVURLEND = 15,
    MOVEUNIT_PREVSENTENCE = 16,
    MOVEUNIT_NEXTSENTENCE = 17,
    MOVEUNIT_PREVBLOCK = 18,
    MOVEUNIT_NEXTBLOCK = 19,
    MOVEUNIT_ACTION_Max = 2147483647
} MOVEUNIT_ACTION;
typedef enum _SELECTION_TYPE {
    SELECTION_TYPE_None = 0,
    SELECTION_TYPE_Caret = 1,
    SELECTION_TYPE_Text = 2,
    SELECTION_TYPE_Control = 3,
    SELECTION_TYPE_Max = 2147483647
} SELECTION_TYPE;

DEFINE_GUID(LIBID_MSHTML, 0x3050f1c5, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLDOMConstructor interface
 */
#ifndef __IHTMLDOMConstructor_INTERFACE_DEFINED__
#define __IHTMLDOMConstructor_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDOMConstructor, 0x3051049b, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDOMConstructor : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_constructor(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE LookupGetter(
        BSTR propname,
        VARIANT *ppDispHandler) = 0;

    virtual HRESULT STDMETHODCALLTYPE LookupSetter(
        BSTR propname,
        VARIANT *ppDispHandler) = 0;

    virtual HRESULT STDMETHODCALLTYPE DefineGetter(
        BSTR propname,
        VARIANT *pdispHandler) = 0;

    virtual HRESULT STDMETHODCALLTYPE DefineSetter(
        BSTR propname,
        VARIANT *pdispHandler) = 0;

};
#else
typedef struct IHTMLDOMConstructorVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDOMConstructor* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDOMConstructor* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDOMConstructor* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDOMConstructor* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDOMConstructor* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDOMConstructor* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDOMConstructor* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDOMConstructor methods ***/
    HRESULT (STDMETHODCALLTYPE *get_constructor)(
        IHTMLDOMConstructor* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *LookupGetter)(
        IHTMLDOMConstructor* This,
        BSTR propname,
        VARIANT *ppDispHandler);

    HRESULT (STDMETHODCALLTYPE *LookupSetter)(
        IHTMLDOMConstructor* This,
        BSTR propname,
        VARIANT *ppDispHandler);

    HRESULT (STDMETHODCALLTYPE *DefineGetter)(
        IHTMLDOMConstructor* This,
        BSTR propname,
        VARIANT *pdispHandler);

    HRESULT (STDMETHODCALLTYPE *DefineSetter)(
        IHTMLDOMConstructor* This,
        BSTR propname,
        VARIANT *pdispHandler);

    END_INTERFACE
} IHTMLDOMConstructorVtbl;
interface IHTMLDOMConstructor {
    CONST_VTBL IHTMLDOMConstructorVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDOMConstructor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDOMConstructor_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDOMConstructor_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDOMConstructor_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDOMConstructor_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDOMConstructor_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDOMConstructor_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDOMConstructor methods ***/
#define IHTMLDOMConstructor_get_constructor(This,p) (This)->lpVtbl->get_constructor(This,p)
#define IHTMLDOMConstructor_LookupGetter(This,propname,ppDispHandler) (This)->lpVtbl->LookupGetter(This,propname,ppDispHandler)
#define IHTMLDOMConstructor_LookupSetter(This,propname,ppDispHandler) (This)->lpVtbl->LookupSetter(This,propname,ppDispHandler)
#define IHTMLDOMConstructor_DefineGetter(This,propname,pdispHandler) (This)->lpVtbl->DefineGetter(This,propname,pdispHandler)
#define IHTMLDOMConstructor_DefineSetter(This,propname,pdispHandler) (This)->lpVtbl->DefineSetter(This,propname,pdispHandler)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDOMConstructor_get_constructor_Proxy(
    IHTMLDOMConstructor* This,
    IDispatch **p);
void __RPC_STUB IHTMLDOMConstructor_get_constructor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMConstructor_LookupGetter_Proxy(
    IHTMLDOMConstructor* This,
    BSTR propname,
    VARIANT *ppDispHandler);
void __RPC_STUB IHTMLDOMConstructor_LookupGetter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMConstructor_LookupSetter_Proxy(
    IHTMLDOMConstructor* This,
    BSTR propname,
    VARIANT *ppDispHandler);
void __RPC_STUB IHTMLDOMConstructor_LookupSetter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMConstructor_DefineGetter_Proxy(
    IHTMLDOMConstructor* This,
    BSTR propname,
    VARIANT *pdispHandler);
void __RPC_STUB IHTMLDOMConstructor_DefineGetter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMConstructor_DefineSetter_Proxy(
    IHTMLDOMConstructor* This,
    BSTR propname,
    VARIANT *pdispHandler);
void __RPC_STUB IHTMLDOMConstructor_DefineSetter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDOMConstructor_INTERFACE_DEFINED__ */

#ifndef __IHTMLDocument2_FWD_DEFINED__
#define __IHTMLDocument2_FWD_DEFINED__
typedef interface IHTMLDocument2 IHTMLDocument2;
#endif

#ifndef __IHTMLElement2_FWD_DEFINED__
#define __IHTMLElement2_FWD_DEFINED__
typedef interface IHTMLElement2 IHTMLElement2;
#endif

#ifndef __IHTMLStyleSheetsCollection_FWD_DEFINED__
#define __IHTMLStyleSheetsCollection_FWD_DEFINED__
typedef interface IHTMLStyleSheetsCollection IHTMLStyleSheetsCollection;
#endif

#ifndef __IHTMLFrameBase_FWD_DEFINED__
#define __IHTMLFrameBase_FWD_DEFINED__
typedef interface IHTMLFrameBase IHTMLFrameBase;
#endif

/*****************************************************************************
 * IHTMLFiltersCollection interface
 */
#ifndef __IHTMLFiltersCollection_INTERFACE_DEFINED__
#define __IHTMLFiltersCollection_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLFiltersCollection, 0x3050f3ee, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLFiltersCollection : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
        IUnknown **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE item(
        VARIANT *pvarIndex,
        VARIANT *pvarResult) = 0;

};
#else
typedef struct IHTMLFiltersCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLFiltersCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLFiltersCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLFiltersCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLFiltersCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLFiltersCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLFiltersCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLFiltersCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLFiltersCollection methods ***/
    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLFiltersCollection* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
        IHTMLFiltersCollection* This,
        IUnknown **p);

    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLFiltersCollection* This,
        VARIANT *pvarIndex,
        VARIANT *pvarResult);

    END_INTERFACE
} IHTMLFiltersCollectionVtbl;
interface IHTMLFiltersCollection {
    CONST_VTBL IHTMLFiltersCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLFiltersCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLFiltersCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLFiltersCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLFiltersCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLFiltersCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLFiltersCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLFiltersCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLFiltersCollection methods ***/
#define IHTMLFiltersCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLFiltersCollection_get__newEnum(This,p) (This)->lpVtbl->get__newEnum(This,p)
#define IHTMLFiltersCollection_item(This,pvarIndex,pvarResult) (This)->lpVtbl->item(This,pvarIndex,pvarResult)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLFiltersCollection_get_length_Proxy(
    IHTMLFiltersCollection* This,
    LONG *p);
void __RPC_STUB IHTMLFiltersCollection_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFiltersCollection_get__newEnum_Proxy(
    IHTMLFiltersCollection* This,
    IUnknown **p);
void __RPC_STUB IHTMLFiltersCollection_get__newEnum_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFiltersCollection_item_Proxy(
    IHTMLFiltersCollection* This,
    VARIANT *pvarIndex,
    VARIANT *pvarResult);
void __RPC_STUB IHTMLFiltersCollection_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLFiltersCollection_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLStyle interface
 */
#ifndef __IHTMLStyle_INTERFACE_DEFINED__
#define __IHTMLStyle_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLStyle, 0x3050f25e, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLStyle : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_fontFamily(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontFamily(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_fontStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_fontVariant(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontVariant(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_fontWeight(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontWeight(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_fontSize(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontSize(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_font(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_font(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_color(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_color(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_background(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_background(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundImage(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundImage(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundRepeat(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundRepeat(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundAttachment(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundAttachment(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundPosition(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundPosition(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundPositionX(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundPositionX(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundPositionY(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundPositionY(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_wordSpacing(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_wordSpacing(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_letterSpacing(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_letterSpacing(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecoration(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecoration(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecorationNone(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecorationNone(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecorationUnderline(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecorationUnderline(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecorationOverline(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecorationOverline(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecorationLineThrough(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecorationLineThrough(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecorationBlink(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecorationBlink(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_verticalAlign(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_verticalAlign(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textTransform(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textTransform(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textAlign(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textAlign(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textIndent(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textIndent(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_lineHeight(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_lineHeight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_marginTop(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginTop(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_marginRight(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginRight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_marginBottom(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginBottom(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_marginLeft(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginLeft(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_margin(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_margin(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_paddingTop(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_paddingTop(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_paddingRight(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_paddingRight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_paddingBottom(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_paddingBottom(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_paddingLeft(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_paddingLeft(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_padding(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_padding(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_border(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_border(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderTop(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderTop(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderRight(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderRight(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderBottom(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderBottom(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderLeft(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderLeft(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderColor(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderColor(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderTopColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderTopColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderRightColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderRightColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderBottomColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderBottomColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderLeftColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderLeftColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderWidth(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderWidth(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderTopWidth(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderTopWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderRightWidth(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderRightWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderBottomWidth(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderBottomWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderLeftWidth(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderLeftWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderTopStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderTopStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderRightStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderRightStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderBottomStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderBottomStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderLeftStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderLeftStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_width(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_width(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_height(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_height(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_styleFloat(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_styleFloat(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_clear(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clear(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_display(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_display(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_visibility(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_visibility(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_listStyleType(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_listStyleType(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_listStylePosition(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_listStylePosition(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_listStyleImage(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_listStyleImage(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_listStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_listStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_whiteSpace(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_whiteSpace(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_top(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_top(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_left(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_left(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_position(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_zIndex(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_zIndex(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_overflow(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_overflow(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pageBreakBefore(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pageBreakBefore(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pageBreakAfter(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pageBreakAfter(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_cssText(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cssText(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pixelTop(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pixelTop(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pixelLeft(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pixelLeft(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pixelWidth(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pixelWidth(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pixelHeight(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pixelHeight(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_posTop(
        float v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_posTop(
        float *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_posLeft(
        float v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_posLeft(
        float *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_posWidth(
        float v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_posWidth(
        float *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_posHeight(
        float v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_posHeight(
        float *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_cursor(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cursor(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_clip(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clip(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_filter(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_filter(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE setAttribute(
        BSTR strAttributeName,
        VARIANT AttributeValue,
        LONG lFlags) = 0;

    virtual HRESULT STDMETHODCALLTYPE getAttribute(
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT *AttributeValue) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeAttribute(
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT_BOOL *pfSuccess) = 0;

    virtual HRESULT STDMETHODCALLTYPE toString(
        BSTR *String) = 0;

};
#else
typedef struct IHTMLStyleVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLStyle* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLStyle* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLStyle* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLStyle* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLStyle* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLStyle* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLStyle* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLStyle methods ***/
    HRESULT (STDMETHODCALLTYPE *put_fontFamily)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_fontFamily)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_fontStyle)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_fontStyle)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_fontVariant)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_fontVariant)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_fontWeight)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_fontWeight)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_fontSize)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_fontSize)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_font)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_font)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_color)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_color)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_background)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_background)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundColor)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundColor)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundImage)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundImage)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundRepeat)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundRepeat)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundAttachment)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundAttachment)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundPosition)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundPosition)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundPositionX)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundPositionX)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundPositionY)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundPositionY)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_wordSpacing)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_wordSpacing)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_letterSpacing)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_letterSpacing)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecoration)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textDecoration)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecorationNone)(
        IHTMLStyle* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_textDecorationNone)(
        IHTMLStyle* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecorationUnderline)(
        IHTMLStyle* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_textDecorationUnderline)(
        IHTMLStyle* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecorationOverline)(
        IHTMLStyle* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_textDecorationOverline)(
        IHTMLStyle* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecorationLineThrough)(
        IHTMLStyle* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_textDecorationLineThrough)(
        IHTMLStyle* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecorationBlink)(
        IHTMLStyle* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_textDecorationBlink)(
        IHTMLStyle* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_verticalAlign)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_verticalAlign)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_textTransform)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textTransform)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textAlign)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textAlign)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textIndent)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_textIndent)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_lineHeight)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_lineHeight)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_marginTop)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_marginTop)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_marginRight)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_marginRight)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_marginBottom)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_marginBottom)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_marginLeft)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_marginLeft)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_margin)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_margin)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_paddingTop)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_paddingTop)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_paddingRight)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_paddingRight)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_paddingBottom)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_paddingBottom)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_paddingLeft)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_paddingLeft)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_padding)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_padding)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_border)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_border)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderTop)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderTop)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderRight)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderRight)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderBottom)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderBottom)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderLeft)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderLeft)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderColor)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderColor)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderTopColor)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderTopColor)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderRightColor)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderRightColor)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderBottomColor)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderBottomColor)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderLeftColor)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderLeftColor)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderWidth)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderWidth)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderTopWidth)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderTopWidth)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderRightWidth)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderRightWidth)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderBottomWidth)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderBottomWidth)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderLeftWidth)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderLeftWidth)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderStyle)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderStyle)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderTopStyle)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderTopStyle)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderRightStyle)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderRightStyle)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderBottomStyle)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderBottomStyle)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderLeftStyle)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderLeftStyle)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_width)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_width)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_height)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_height)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_styleFloat)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_styleFloat)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_clear)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_clear)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_display)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_display)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_visibility)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_visibility)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_listStyleType)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_listStyleType)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_listStylePosition)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_listStylePosition)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_listStyleImage)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_listStyleImage)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_listStyle)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_listStyle)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_whiteSpace)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_whiteSpace)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_top)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_top)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_left)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_left)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_position)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_zIndex)(
        IHTMLStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_zIndex)(
        IHTMLStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_overflow)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_overflow)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_pageBreakBefore)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_pageBreakBefore)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_pageBreakAfter)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_pageBreakAfter)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_cssText)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_cssText)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_pixelTop)(
        IHTMLStyle* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_pixelTop)(
        IHTMLStyle* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_pixelLeft)(
        IHTMLStyle* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_pixelLeft)(
        IHTMLStyle* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_pixelWidth)(
        IHTMLStyle* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_pixelWidth)(
        IHTMLStyle* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_pixelHeight)(
        IHTMLStyle* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_pixelHeight)(
        IHTMLStyle* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_posTop)(
        IHTMLStyle* This,
        float v);

    HRESULT (STDMETHODCALLTYPE *get_posTop)(
        IHTMLStyle* This,
        float *p);

    HRESULT (STDMETHODCALLTYPE *put_posLeft)(
        IHTMLStyle* This,
        float v);

    HRESULT (STDMETHODCALLTYPE *get_posLeft)(
        IHTMLStyle* This,
        float *p);

    HRESULT (STDMETHODCALLTYPE *put_posWidth)(
        IHTMLStyle* This,
        float v);

    HRESULT (STDMETHODCALLTYPE *get_posWidth)(
        IHTMLStyle* This,
        float *p);

    HRESULT (STDMETHODCALLTYPE *put_posHeight)(
        IHTMLStyle* This,
        float v);

    HRESULT (STDMETHODCALLTYPE *get_posHeight)(
        IHTMLStyle* This,
        float *p);

    HRESULT (STDMETHODCALLTYPE *put_cursor)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_cursor)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_clip)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_clip)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_filter)(
        IHTMLStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_filter)(
        IHTMLStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *setAttribute)(
        IHTMLStyle* This,
        BSTR strAttributeName,
        VARIANT AttributeValue,
        LONG lFlags);

    HRESULT (STDMETHODCALLTYPE *getAttribute)(
        IHTMLStyle* This,
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT *AttributeValue);

    HRESULT (STDMETHODCALLTYPE *removeAttribute)(
        IHTMLStyle* This,
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT_BOOL *pfSuccess);

    HRESULT (STDMETHODCALLTYPE *toString)(
        IHTMLStyle* This,
        BSTR *String);

    END_INTERFACE
} IHTMLStyleVtbl;
interface IHTMLStyle {
    CONST_VTBL IHTMLStyleVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLStyle_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLStyle_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLStyle_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLStyle_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLStyle methods ***/
#define IHTMLStyle_put_fontFamily(This,v) (This)->lpVtbl->put_fontFamily(This,v)
#define IHTMLStyle_get_fontFamily(This,p) (This)->lpVtbl->get_fontFamily(This,p)
#define IHTMLStyle_put_fontStyle(This,v) (This)->lpVtbl->put_fontStyle(This,v)
#define IHTMLStyle_get_fontStyle(This,p) (This)->lpVtbl->get_fontStyle(This,p)
#define IHTMLStyle_put_fontVariant(This,v) (This)->lpVtbl->put_fontVariant(This,v)
#define IHTMLStyle_get_fontVariant(This,p) (This)->lpVtbl->get_fontVariant(This,p)
#define IHTMLStyle_put_fontWeight(This,v) (This)->lpVtbl->put_fontWeight(This,v)
#define IHTMLStyle_get_fontWeight(This,p) (This)->lpVtbl->get_fontWeight(This,p)
#define IHTMLStyle_put_fontSize(This,v) (This)->lpVtbl->put_fontSize(This,v)
#define IHTMLStyle_get_fontSize(This,p) (This)->lpVtbl->get_fontSize(This,p)
#define IHTMLStyle_put_font(This,v) (This)->lpVtbl->put_font(This,v)
#define IHTMLStyle_get_font(This,p) (This)->lpVtbl->get_font(This,p)
#define IHTMLStyle_put_color(This,v) (This)->lpVtbl->put_color(This,v)
#define IHTMLStyle_get_color(This,p) (This)->lpVtbl->get_color(This,p)
#define IHTMLStyle_put_background(This,v) (This)->lpVtbl->put_background(This,v)
#define IHTMLStyle_get_background(This,p) (This)->lpVtbl->get_background(This,p)
#define IHTMLStyle_put_backgroundColor(This,v) (This)->lpVtbl->put_backgroundColor(This,v)
#define IHTMLStyle_get_backgroundColor(This,p) (This)->lpVtbl->get_backgroundColor(This,p)
#define IHTMLStyle_put_backgroundImage(This,v) (This)->lpVtbl->put_backgroundImage(This,v)
#define IHTMLStyle_get_backgroundImage(This,p) (This)->lpVtbl->get_backgroundImage(This,p)
#define IHTMLStyle_put_backgroundRepeat(This,v) (This)->lpVtbl->put_backgroundRepeat(This,v)
#define IHTMLStyle_get_backgroundRepeat(This,p) (This)->lpVtbl->get_backgroundRepeat(This,p)
#define IHTMLStyle_put_backgroundAttachment(This,v) (This)->lpVtbl->put_backgroundAttachment(This,v)
#define IHTMLStyle_get_backgroundAttachment(This,p) (This)->lpVtbl->get_backgroundAttachment(This,p)
#define IHTMLStyle_put_backgroundPosition(This,v) (This)->lpVtbl->put_backgroundPosition(This,v)
#define IHTMLStyle_get_backgroundPosition(This,p) (This)->lpVtbl->get_backgroundPosition(This,p)
#define IHTMLStyle_put_backgroundPositionX(This,v) (This)->lpVtbl->put_backgroundPositionX(This,v)
#define IHTMLStyle_get_backgroundPositionX(This,p) (This)->lpVtbl->get_backgroundPositionX(This,p)
#define IHTMLStyle_put_backgroundPositionY(This,v) (This)->lpVtbl->put_backgroundPositionY(This,v)
#define IHTMLStyle_get_backgroundPositionY(This,p) (This)->lpVtbl->get_backgroundPositionY(This,p)
#define IHTMLStyle_put_wordSpacing(This,v) (This)->lpVtbl->put_wordSpacing(This,v)
#define IHTMLStyle_get_wordSpacing(This,p) (This)->lpVtbl->get_wordSpacing(This,p)
#define IHTMLStyle_put_letterSpacing(This,v) (This)->lpVtbl->put_letterSpacing(This,v)
#define IHTMLStyle_get_letterSpacing(This,p) (This)->lpVtbl->get_letterSpacing(This,p)
#define IHTMLStyle_put_textDecoration(This,v) (This)->lpVtbl->put_textDecoration(This,v)
#define IHTMLStyle_get_textDecoration(This,p) (This)->lpVtbl->get_textDecoration(This,p)
#define IHTMLStyle_put_textDecorationNone(This,v) (This)->lpVtbl->put_textDecorationNone(This,v)
#define IHTMLStyle_get_textDecorationNone(This,p) (This)->lpVtbl->get_textDecorationNone(This,p)
#define IHTMLStyle_put_textDecorationUnderline(This,v) (This)->lpVtbl->put_textDecorationUnderline(This,v)
#define IHTMLStyle_get_textDecorationUnderline(This,p) (This)->lpVtbl->get_textDecorationUnderline(This,p)
#define IHTMLStyle_put_textDecorationOverline(This,v) (This)->lpVtbl->put_textDecorationOverline(This,v)
#define IHTMLStyle_get_textDecorationOverline(This,p) (This)->lpVtbl->get_textDecorationOverline(This,p)
#define IHTMLStyle_put_textDecorationLineThrough(This,v) (This)->lpVtbl->put_textDecorationLineThrough(This,v)
#define IHTMLStyle_get_textDecorationLineThrough(This,p) (This)->lpVtbl->get_textDecorationLineThrough(This,p)
#define IHTMLStyle_put_textDecorationBlink(This,v) (This)->lpVtbl->put_textDecorationBlink(This,v)
#define IHTMLStyle_get_textDecorationBlink(This,p) (This)->lpVtbl->get_textDecorationBlink(This,p)
#define IHTMLStyle_put_verticalAlign(This,v) (This)->lpVtbl->put_verticalAlign(This,v)
#define IHTMLStyle_get_verticalAlign(This,p) (This)->lpVtbl->get_verticalAlign(This,p)
#define IHTMLStyle_put_textTransform(This,v) (This)->lpVtbl->put_textTransform(This,v)
#define IHTMLStyle_get_textTransform(This,p) (This)->lpVtbl->get_textTransform(This,p)
#define IHTMLStyle_put_textAlign(This,v) (This)->lpVtbl->put_textAlign(This,v)
#define IHTMLStyle_get_textAlign(This,p) (This)->lpVtbl->get_textAlign(This,p)
#define IHTMLStyle_put_textIndent(This,v) (This)->lpVtbl->put_textIndent(This,v)
#define IHTMLStyle_get_textIndent(This,p) (This)->lpVtbl->get_textIndent(This,p)
#define IHTMLStyle_put_lineHeight(This,v) (This)->lpVtbl->put_lineHeight(This,v)
#define IHTMLStyle_get_lineHeight(This,p) (This)->lpVtbl->get_lineHeight(This,p)
#define IHTMLStyle_put_marginTop(This,v) (This)->lpVtbl->put_marginTop(This,v)
#define IHTMLStyle_get_marginTop(This,p) (This)->lpVtbl->get_marginTop(This,p)
#define IHTMLStyle_put_marginRight(This,v) (This)->lpVtbl->put_marginRight(This,v)
#define IHTMLStyle_get_marginRight(This,p) (This)->lpVtbl->get_marginRight(This,p)
#define IHTMLStyle_put_marginBottom(This,v) (This)->lpVtbl->put_marginBottom(This,v)
#define IHTMLStyle_get_marginBottom(This,p) (This)->lpVtbl->get_marginBottom(This,p)
#define IHTMLStyle_put_marginLeft(This,v) (This)->lpVtbl->put_marginLeft(This,v)
#define IHTMLStyle_get_marginLeft(This,p) (This)->lpVtbl->get_marginLeft(This,p)
#define IHTMLStyle_put_margin(This,v) (This)->lpVtbl->put_margin(This,v)
#define IHTMLStyle_get_margin(This,p) (This)->lpVtbl->get_margin(This,p)
#define IHTMLStyle_put_paddingTop(This,v) (This)->lpVtbl->put_paddingTop(This,v)
#define IHTMLStyle_get_paddingTop(This,p) (This)->lpVtbl->get_paddingTop(This,p)
#define IHTMLStyle_put_paddingRight(This,v) (This)->lpVtbl->put_paddingRight(This,v)
#define IHTMLStyle_get_paddingRight(This,p) (This)->lpVtbl->get_paddingRight(This,p)
#define IHTMLStyle_put_paddingBottom(This,v) (This)->lpVtbl->put_paddingBottom(This,v)
#define IHTMLStyle_get_paddingBottom(This,p) (This)->lpVtbl->get_paddingBottom(This,p)
#define IHTMLStyle_put_paddingLeft(This,v) (This)->lpVtbl->put_paddingLeft(This,v)
#define IHTMLStyle_get_paddingLeft(This,p) (This)->lpVtbl->get_paddingLeft(This,p)
#define IHTMLStyle_put_padding(This,v) (This)->lpVtbl->put_padding(This,v)
#define IHTMLStyle_get_padding(This,p) (This)->lpVtbl->get_padding(This,p)
#define IHTMLStyle_put_border(This,v) (This)->lpVtbl->put_border(This,v)
#define IHTMLStyle_get_border(This,p) (This)->lpVtbl->get_border(This,p)
#define IHTMLStyle_put_borderTop(This,v) (This)->lpVtbl->put_borderTop(This,v)
#define IHTMLStyle_get_borderTop(This,p) (This)->lpVtbl->get_borderTop(This,p)
#define IHTMLStyle_put_borderRight(This,v) (This)->lpVtbl->put_borderRight(This,v)
#define IHTMLStyle_get_borderRight(This,p) (This)->lpVtbl->get_borderRight(This,p)
#define IHTMLStyle_put_borderBottom(This,v) (This)->lpVtbl->put_borderBottom(This,v)
#define IHTMLStyle_get_borderBottom(This,p) (This)->lpVtbl->get_borderBottom(This,p)
#define IHTMLStyle_put_borderLeft(This,v) (This)->lpVtbl->put_borderLeft(This,v)
#define IHTMLStyle_get_borderLeft(This,p) (This)->lpVtbl->get_borderLeft(This,p)
#define IHTMLStyle_put_borderColor(This,v) (This)->lpVtbl->put_borderColor(This,v)
#define IHTMLStyle_get_borderColor(This,p) (This)->lpVtbl->get_borderColor(This,p)
#define IHTMLStyle_put_borderTopColor(This,v) (This)->lpVtbl->put_borderTopColor(This,v)
#define IHTMLStyle_get_borderTopColor(This,p) (This)->lpVtbl->get_borderTopColor(This,p)
#define IHTMLStyle_put_borderRightColor(This,v) (This)->lpVtbl->put_borderRightColor(This,v)
#define IHTMLStyle_get_borderRightColor(This,p) (This)->lpVtbl->get_borderRightColor(This,p)
#define IHTMLStyle_put_borderBottomColor(This,v) (This)->lpVtbl->put_borderBottomColor(This,v)
#define IHTMLStyle_get_borderBottomColor(This,p) (This)->lpVtbl->get_borderBottomColor(This,p)
#define IHTMLStyle_put_borderLeftColor(This,v) (This)->lpVtbl->put_borderLeftColor(This,v)
#define IHTMLStyle_get_borderLeftColor(This,p) (This)->lpVtbl->get_borderLeftColor(This,p)
#define IHTMLStyle_put_borderWidth(This,v) (This)->lpVtbl->put_borderWidth(This,v)
#define IHTMLStyle_get_borderWidth(This,p) (This)->lpVtbl->get_borderWidth(This,p)
#define IHTMLStyle_put_borderTopWidth(This,v) (This)->lpVtbl->put_borderTopWidth(This,v)
#define IHTMLStyle_get_borderTopWidth(This,p) (This)->lpVtbl->get_borderTopWidth(This,p)
#define IHTMLStyle_put_borderRightWidth(This,v) (This)->lpVtbl->put_borderRightWidth(This,v)
#define IHTMLStyle_get_borderRightWidth(This,p) (This)->lpVtbl->get_borderRightWidth(This,p)
#define IHTMLStyle_put_borderBottomWidth(This,v) (This)->lpVtbl->put_borderBottomWidth(This,v)
#define IHTMLStyle_get_borderBottomWidth(This,p) (This)->lpVtbl->get_borderBottomWidth(This,p)
#define IHTMLStyle_put_borderLeftWidth(This,v) (This)->lpVtbl->put_borderLeftWidth(This,v)
#define IHTMLStyle_get_borderLeftWidth(This,p) (This)->lpVtbl->get_borderLeftWidth(This,p)
#define IHTMLStyle_put_borderStyle(This,v) (This)->lpVtbl->put_borderStyle(This,v)
#define IHTMLStyle_get_borderStyle(This,p) (This)->lpVtbl->get_borderStyle(This,p)
#define IHTMLStyle_put_borderTopStyle(This,v) (This)->lpVtbl->put_borderTopStyle(This,v)
#define IHTMLStyle_get_borderTopStyle(This,p) (This)->lpVtbl->get_borderTopStyle(This,p)
#define IHTMLStyle_put_borderRightStyle(This,v) (This)->lpVtbl->put_borderRightStyle(This,v)
#define IHTMLStyle_get_borderRightStyle(This,p) (This)->lpVtbl->get_borderRightStyle(This,p)
#define IHTMLStyle_put_borderBottomStyle(This,v) (This)->lpVtbl->put_borderBottomStyle(This,v)
#define IHTMLStyle_get_borderBottomStyle(This,p) (This)->lpVtbl->get_borderBottomStyle(This,p)
#define IHTMLStyle_put_borderLeftStyle(This,v) (This)->lpVtbl->put_borderLeftStyle(This,v)
#define IHTMLStyle_get_borderLeftStyle(This,p) (This)->lpVtbl->get_borderLeftStyle(This,p)
#define IHTMLStyle_put_width(This,v) (This)->lpVtbl->put_width(This,v)
#define IHTMLStyle_get_width(This,p) (This)->lpVtbl->get_width(This,p)
#define IHTMLStyle_put_height(This,v) (This)->lpVtbl->put_height(This,v)
#define IHTMLStyle_get_height(This,p) (This)->lpVtbl->get_height(This,p)
#define IHTMLStyle_put_styleFloat(This,v) (This)->lpVtbl->put_styleFloat(This,v)
#define IHTMLStyle_get_styleFloat(This,p) (This)->lpVtbl->get_styleFloat(This,p)
#define IHTMLStyle_put_clear(This,v) (This)->lpVtbl->put_clear(This,v)
#define IHTMLStyle_get_clear(This,p) (This)->lpVtbl->get_clear(This,p)
#define IHTMLStyle_put_display(This,v) (This)->lpVtbl->put_display(This,v)
#define IHTMLStyle_get_display(This,p) (This)->lpVtbl->get_display(This,p)
#define IHTMLStyle_put_visibility(This,v) (This)->lpVtbl->put_visibility(This,v)
#define IHTMLStyle_get_visibility(This,p) (This)->lpVtbl->get_visibility(This,p)
#define IHTMLStyle_put_listStyleType(This,v) (This)->lpVtbl->put_listStyleType(This,v)
#define IHTMLStyle_get_listStyleType(This,p) (This)->lpVtbl->get_listStyleType(This,p)
#define IHTMLStyle_put_listStylePosition(This,v) (This)->lpVtbl->put_listStylePosition(This,v)
#define IHTMLStyle_get_listStylePosition(This,p) (This)->lpVtbl->get_listStylePosition(This,p)
#define IHTMLStyle_put_listStyleImage(This,v) (This)->lpVtbl->put_listStyleImage(This,v)
#define IHTMLStyle_get_listStyleImage(This,p) (This)->lpVtbl->get_listStyleImage(This,p)
#define IHTMLStyle_put_listStyle(This,v) (This)->lpVtbl->put_listStyle(This,v)
#define IHTMLStyle_get_listStyle(This,p) (This)->lpVtbl->get_listStyle(This,p)
#define IHTMLStyle_put_whiteSpace(This,v) (This)->lpVtbl->put_whiteSpace(This,v)
#define IHTMLStyle_get_whiteSpace(This,p) (This)->lpVtbl->get_whiteSpace(This,p)
#define IHTMLStyle_put_top(This,v) (This)->lpVtbl->put_top(This,v)
#define IHTMLStyle_get_top(This,p) (This)->lpVtbl->get_top(This,p)
#define IHTMLStyle_put_left(This,v) (This)->lpVtbl->put_left(This,v)
#define IHTMLStyle_get_left(This,p) (This)->lpVtbl->get_left(This,p)
#define IHTMLStyle_get_position(This,p) (This)->lpVtbl->get_position(This,p)
#define IHTMLStyle_put_zIndex(This,v) (This)->lpVtbl->put_zIndex(This,v)
#define IHTMLStyle_get_zIndex(This,p) (This)->lpVtbl->get_zIndex(This,p)
#define IHTMLStyle_put_overflow(This,v) (This)->lpVtbl->put_overflow(This,v)
#define IHTMLStyle_get_overflow(This,p) (This)->lpVtbl->get_overflow(This,p)
#define IHTMLStyle_put_pageBreakBefore(This,v) (This)->lpVtbl->put_pageBreakBefore(This,v)
#define IHTMLStyle_get_pageBreakBefore(This,p) (This)->lpVtbl->get_pageBreakBefore(This,p)
#define IHTMLStyle_put_pageBreakAfter(This,v) (This)->lpVtbl->put_pageBreakAfter(This,v)
#define IHTMLStyle_get_pageBreakAfter(This,p) (This)->lpVtbl->get_pageBreakAfter(This,p)
#define IHTMLStyle_put_cssText(This,v) (This)->lpVtbl->put_cssText(This,v)
#define IHTMLStyle_get_cssText(This,p) (This)->lpVtbl->get_cssText(This,p)
#define IHTMLStyle_put_pixelTop(This,v) (This)->lpVtbl->put_pixelTop(This,v)
#define IHTMLStyle_get_pixelTop(This,p) (This)->lpVtbl->get_pixelTop(This,p)
#define IHTMLStyle_put_pixelLeft(This,v) (This)->lpVtbl->put_pixelLeft(This,v)
#define IHTMLStyle_get_pixelLeft(This,p) (This)->lpVtbl->get_pixelLeft(This,p)
#define IHTMLStyle_put_pixelWidth(This,v) (This)->lpVtbl->put_pixelWidth(This,v)
#define IHTMLStyle_get_pixelWidth(This,p) (This)->lpVtbl->get_pixelWidth(This,p)
#define IHTMLStyle_put_pixelHeight(This,v) (This)->lpVtbl->put_pixelHeight(This,v)
#define IHTMLStyle_get_pixelHeight(This,p) (This)->lpVtbl->get_pixelHeight(This,p)
#define IHTMLStyle_put_posTop(This,v) (This)->lpVtbl->put_posTop(This,v)
#define IHTMLStyle_get_posTop(This,p) (This)->lpVtbl->get_posTop(This,p)
#define IHTMLStyle_put_posLeft(This,v) (This)->lpVtbl->put_posLeft(This,v)
#define IHTMLStyle_get_posLeft(This,p) (This)->lpVtbl->get_posLeft(This,p)
#define IHTMLStyle_put_posWidth(This,v) (This)->lpVtbl->put_posWidth(This,v)
#define IHTMLStyle_get_posWidth(This,p) (This)->lpVtbl->get_posWidth(This,p)
#define IHTMLStyle_put_posHeight(This,v) (This)->lpVtbl->put_posHeight(This,v)
#define IHTMLStyle_get_posHeight(This,p) (This)->lpVtbl->get_posHeight(This,p)
#define IHTMLStyle_put_cursor(This,v) (This)->lpVtbl->put_cursor(This,v)
#define IHTMLStyle_get_cursor(This,p) (This)->lpVtbl->get_cursor(This,p)
#define IHTMLStyle_put_clip(This,v) (This)->lpVtbl->put_clip(This,v)
#define IHTMLStyle_get_clip(This,p) (This)->lpVtbl->get_clip(This,p)
#define IHTMLStyle_put_filter(This,v) (This)->lpVtbl->put_filter(This,v)
#define IHTMLStyle_get_filter(This,p) (This)->lpVtbl->get_filter(This,p)
#define IHTMLStyle_setAttribute(This,strAttributeName,AttributeValue,lFlags) (This)->lpVtbl->setAttribute(This,strAttributeName,AttributeValue,lFlags)
#define IHTMLStyle_getAttribute(This,strAttributeName,lFlags,AttributeValue) (This)->lpVtbl->getAttribute(This,strAttributeName,lFlags,AttributeValue)
#define IHTMLStyle_removeAttribute(This,strAttributeName,lFlags,pfSuccess) (This)->lpVtbl->removeAttribute(This,strAttributeName,lFlags,pfSuccess)
#define IHTMLStyle_toString(This,String) (This)->lpVtbl->toString(This,String)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLStyle_put_fontFamily_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_fontFamily_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_fontFamily_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_fontFamily_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_fontStyle_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_fontStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_fontStyle_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_fontStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_fontVariant_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_fontVariant_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_fontVariant_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_fontVariant_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_fontWeight_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_fontWeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_fontWeight_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_fontWeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_fontSize_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_fontSize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_fontSize_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_fontSize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_font_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_font_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_font_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_font_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_color_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_color_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_color_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_color_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_background_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_background_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_background_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_background_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_backgroundColor_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_backgroundColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_backgroundColor_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_backgroundColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_backgroundImage_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_backgroundImage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_backgroundImage_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_backgroundImage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_backgroundRepeat_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_backgroundRepeat_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_backgroundRepeat_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_backgroundRepeat_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_backgroundAttachment_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_backgroundAttachment_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_backgroundAttachment_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_backgroundAttachment_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_backgroundPosition_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_backgroundPosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_backgroundPosition_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_backgroundPosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_backgroundPositionX_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_backgroundPositionX_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_backgroundPositionX_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_backgroundPositionX_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_backgroundPositionY_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_backgroundPositionY_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_backgroundPositionY_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_backgroundPositionY_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_wordSpacing_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_wordSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_wordSpacing_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_wordSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_letterSpacing_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_letterSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_letterSpacing_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_letterSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_textDecoration_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_textDecoration_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_textDecoration_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_textDecoration_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_textDecorationNone_Proxy(
    IHTMLStyle* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLStyle_put_textDecorationNone_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_textDecorationNone_Proxy(
    IHTMLStyle* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLStyle_get_textDecorationNone_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_textDecorationUnderline_Proxy(
    IHTMLStyle* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLStyle_put_textDecorationUnderline_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_textDecorationUnderline_Proxy(
    IHTMLStyle* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLStyle_get_textDecorationUnderline_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_textDecorationOverline_Proxy(
    IHTMLStyle* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLStyle_put_textDecorationOverline_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_textDecorationOverline_Proxy(
    IHTMLStyle* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLStyle_get_textDecorationOverline_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_textDecorationLineThrough_Proxy(
    IHTMLStyle* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLStyle_put_textDecorationLineThrough_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_textDecorationLineThrough_Proxy(
    IHTMLStyle* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLStyle_get_textDecorationLineThrough_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_textDecorationBlink_Proxy(
    IHTMLStyle* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLStyle_put_textDecorationBlink_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_textDecorationBlink_Proxy(
    IHTMLStyle* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLStyle_get_textDecorationBlink_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_verticalAlign_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_verticalAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_verticalAlign_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_verticalAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_textTransform_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_textTransform_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_textTransform_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_textTransform_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_textAlign_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_textAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_textAlign_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_textAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_textIndent_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_textIndent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_textIndent_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_textIndent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_lineHeight_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_lineHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_lineHeight_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_lineHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_marginTop_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_marginTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_marginTop_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_marginTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_marginRight_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_marginRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_marginRight_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_marginRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_marginBottom_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_marginBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_marginBottom_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_marginBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_marginLeft_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_marginLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_marginLeft_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_marginLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_margin_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_margin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_margin_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_margin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_paddingTop_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_paddingTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_paddingTop_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_paddingTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_paddingRight_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_paddingRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_paddingRight_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_paddingRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_paddingBottom_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_paddingBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_paddingBottom_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_paddingBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_paddingLeft_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_paddingLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_paddingLeft_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_paddingLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_padding_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_padding_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_padding_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_padding_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_border_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_border_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_border_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_border_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderTop_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_borderTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderTop_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_borderTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderRight_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_borderRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderRight_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_borderRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderBottom_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_borderBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderBottom_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_borderBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderLeft_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_borderLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderLeft_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_borderLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderColor_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_borderColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderColor_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_borderColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderTopColor_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_borderTopColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderTopColor_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_borderTopColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderRightColor_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_borderRightColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderRightColor_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_borderRightColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderBottomColor_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_borderBottomColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderBottomColor_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_borderBottomColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderLeftColor_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_borderLeftColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderLeftColor_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_borderLeftColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderWidth_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_borderWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderWidth_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_borderWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderTopWidth_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_borderTopWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderTopWidth_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_borderTopWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderRightWidth_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_borderRightWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderRightWidth_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_borderRightWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderBottomWidth_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_borderBottomWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderBottomWidth_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_borderBottomWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderLeftWidth_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_borderLeftWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderLeftWidth_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_borderLeftWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderStyle_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_borderStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderStyle_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_borderStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderTopStyle_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_borderTopStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderTopStyle_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_borderTopStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderRightStyle_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_borderRightStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderRightStyle_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_borderRightStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderBottomStyle_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_borderBottomStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderBottomStyle_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_borderBottomStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_borderLeftStyle_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_borderLeftStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_borderLeftStyle_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_borderLeftStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_width_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_width_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_height_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_height_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_styleFloat_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_styleFloat_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_styleFloat_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_styleFloat_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_clear_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_clear_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_clear_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_clear_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_display_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_display_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_display_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_display_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_visibility_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_visibility_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_visibility_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_visibility_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_listStyleType_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_listStyleType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_listStyleType_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_listStyleType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_listStylePosition_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_listStylePosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_listStylePosition_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_listStylePosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_listStyleImage_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_listStyleImage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_listStyleImage_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_listStyleImage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_listStyle_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_listStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_listStyle_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_listStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_whiteSpace_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_whiteSpace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_whiteSpace_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_whiteSpace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_top_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_top_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_top_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_top_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_left_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_left_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_left_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_left_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_position_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_position_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_zIndex_Proxy(
    IHTMLStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle_put_zIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_zIndex_Proxy(
    IHTMLStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle_get_zIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_overflow_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_overflow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_overflow_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_overflow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_pageBreakBefore_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_pageBreakBefore_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_pageBreakBefore_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_pageBreakBefore_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_pageBreakAfter_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_pageBreakAfter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_pageBreakAfter_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_pageBreakAfter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_cssText_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_cssText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_cssText_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_cssText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_pixelTop_Proxy(
    IHTMLStyle* This,
    LONG v);
void __RPC_STUB IHTMLStyle_put_pixelTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_pixelTop_Proxy(
    IHTMLStyle* This,
    LONG *p);
void __RPC_STUB IHTMLStyle_get_pixelTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_pixelLeft_Proxy(
    IHTMLStyle* This,
    LONG v);
void __RPC_STUB IHTMLStyle_put_pixelLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_pixelLeft_Proxy(
    IHTMLStyle* This,
    LONG *p);
void __RPC_STUB IHTMLStyle_get_pixelLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_pixelWidth_Proxy(
    IHTMLStyle* This,
    LONG v);
void __RPC_STUB IHTMLStyle_put_pixelWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_pixelWidth_Proxy(
    IHTMLStyle* This,
    LONG *p);
void __RPC_STUB IHTMLStyle_get_pixelWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_pixelHeight_Proxy(
    IHTMLStyle* This,
    LONG v);
void __RPC_STUB IHTMLStyle_put_pixelHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_pixelHeight_Proxy(
    IHTMLStyle* This,
    LONG *p);
void __RPC_STUB IHTMLStyle_get_pixelHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_posTop_Proxy(
    IHTMLStyle* This,
    float v);
void __RPC_STUB IHTMLStyle_put_posTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_posTop_Proxy(
    IHTMLStyle* This,
    float *p);
void __RPC_STUB IHTMLStyle_get_posTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_posLeft_Proxy(
    IHTMLStyle* This,
    float v);
void __RPC_STUB IHTMLStyle_put_posLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_posLeft_Proxy(
    IHTMLStyle* This,
    float *p);
void __RPC_STUB IHTMLStyle_get_posLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_posWidth_Proxy(
    IHTMLStyle* This,
    float v);
void __RPC_STUB IHTMLStyle_put_posWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_posWidth_Proxy(
    IHTMLStyle* This,
    float *p);
void __RPC_STUB IHTMLStyle_get_posWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_posHeight_Proxy(
    IHTMLStyle* This,
    float v);
void __RPC_STUB IHTMLStyle_put_posHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_posHeight_Proxy(
    IHTMLStyle* This,
    float *p);
void __RPC_STUB IHTMLStyle_get_posHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_cursor_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_cursor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_cursor_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_cursor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_clip_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_clip_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_clip_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_clip_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_put_filter_Proxy(
    IHTMLStyle* This,
    BSTR v);
void __RPC_STUB IHTMLStyle_put_filter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_get_filter_Proxy(
    IHTMLStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle_get_filter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_setAttribute_Proxy(
    IHTMLStyle* This,
    BSTR strAttributeName,
    VARIANT AttributeValue,
    LONG lFlags);
void __RPC_STUB IHTMLStyle_setAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_getAttribute_Proxy(
    IHTMLStyle* This,
    BSTR strAttributeName,
    LONG lFlags,
    VARIANT *AttributeValue);
void __RPC_STUB IHTMLStyle_getAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_removeAttribute_Proxy(
    IHTMLStyle* This,
    BSTR strAttributeName,
    LONG lFlags,
    VARIANT_BOOL *pfSuccess);
void __RPC_STUB IHTMLStyle_removeAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle_toString_Proxy(
    IHTMLStyle* This,
    BSTR *String);
void __RPC_STUB IHTMLStyle_toString_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLStyle_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLStyle2 interface
 */
#ifndef __IHTMLStyle2_INTERFACE_DEFINED__
#define __IHTMLStyle2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLStyle2, 0x3050f4a2, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLStyle2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_tableLayout(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_tableLayout(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderCollapse(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderCollapse(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_direction(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_direction(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_behavior(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_behavior(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE setExpression(
        BSTR propname,
        BSTR expression,
        BSTR language) = 0;

    virtual HRESULT STDMETHODCALLTYPE getExpression(
        BSTR propname,
        VARIANT *expression) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeExpression(
        BSTR propname,
        VARIANT_BOOL *pfSuccess) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_position(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_position(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_unicodeBidi(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_unicodeBidi(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_bottom(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_bottom(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_right(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_right(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pixelBottom(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pixelBottom(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pixelRight(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pixelRight(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_posBottom(
        float v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_posBottom(
        float *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_posRight(
        float v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_posRight(
        float *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_imeMode(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_imeMode(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_rubyAlign(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rubyAlign(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_rubyPosition(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rubyPosition(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_rubyOverhang(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rubyOverhang(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_layoutGridChar(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_layoutGridChar(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_layoutGridLine(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_layoutGridLine(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_layoutGridMode(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_layoutGridMode(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_layoutGridType(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_layoutGridType(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_layoutGrid(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_layoutGrid(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_wordBreak(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_wordBreak(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_lineBreak(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_lineBreak(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textJustify(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textJustify(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textJustifyTrim(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textJustifyTrim(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textKashida(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textKashida(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textAutospace(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textAutospace(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_overflowX(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_overflowX(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_overflowY(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_overflowY(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_accelerator(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_accelerator(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLStyle2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLStyle2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLStyle2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLStyle2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLStyle2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLStyle2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLStyle2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLStyle2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLStyle2 methods ***/
    HRESULT (STDMETHODCALLTYPE *put_tableLayout)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_tableLayout)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderCollapse)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderCollapse)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_direction)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_direction)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_behavior)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_behavior)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *setExpression)(
        IHTMLStyle2* This,
        BSTR propname,
        BSTR expression,
        BSTR language);

    HRESULT (STDMETHODCALLTYPE *getExpression)(
        IHTMLStyle2* This,
        BSTR propname,
        VARIANT *expression);

    HRESULT (STDMETHODCALLTYPE *removeExpression)(
        IHTMLStyle2* This,
        BSTR propname,
        VARIANT_BOOL *pfSuccess);

    HRESULT (STDMETHODCALLTYPE *put_position)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_position)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_unicodeBidi)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_unicodeBidi)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_bottom)(
        IHTMLStyle2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_bottom)(
        IHTMLStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_right)(
        IHTMLStyle2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_right)(
        IHTMLStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_pixelBottom)(
        IHTMLStyle2* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_pixelBottom)(
        IHTMLStyle2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_pixelRight)(
        IHTMLStyle2* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_pixelRight)(
        IHTMLStyle2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_posBottom)(
        IHTMLStyle2* This,
        float v);

    HRESULT (STDMETHODCALLTYPE *get_posBottom)(
        IHTMLStyle2* This,
        float *p);

    HRESULT (STDMETHODCALLTYPE *put_posRight)(
        IHTMLStyle2* This,
        float v);

    HRESULT (STDMETHODCALLTYPE *get_posRight)(
        IHTMLStyle2* This,
        float *p);

    HRESULT (STDMETHODCALLTYPE *put_imeMode)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_imeMode)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_rubyAlign)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_rubyAlign)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_rubyPosition)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_rubyPosition)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_rubyOverhang)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_rubyOverhang)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_layoutGridChar)(
        IHTMLStyle2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_layoutGridChar)(
        IHTMLStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_layoutGridLine)(
        IHTMLStyle2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_layoutGridLine)(
        IHTMLStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_layoutGridMode)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_layoutGridMode)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_layoutGridType)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_layoutGridType)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_layoutGrid)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_layoutGrid)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_wordBreak)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_wordBreak)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_lineBreak)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_lineBreak)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textJustify)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textJustify)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textJustifyTrim)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textJustifyTrim)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textKashida)(
        IHTMLStyle2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_textKashida)(
        IHTMLStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_textAutospace)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textAutospace)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_overflowX)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_overflowX)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_overflowY)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_overflowY)(
        IHTMLStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_accelerator)(
        IHTMLStyle2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_accelerator)(
        IHTMLStyle2* This,
        BSTR *p);

    END_INTERFACE
} IHTMLStyle2Vtbl;
interface IHTMLStyle2 {
    CONST_VTBL IHTMLStyle2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLStyle2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLStyle2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLStyle2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLStyle2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLStyle2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLStyle2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLStyle2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLStyle2 methods ***/
#define IHTMLStyle2_put_tableLayout(This,v) (This)->lpVtbl->put_tableLayout(This,v)
#define IHTMLStyle2_get_tableLayout(This,p) (This)->lpVtbl->get_tableLayout(This,p)
#define IHTMLStyle2_put_borderCollapse(This,v) (This)->lpVtbl->put_borderCollapse(This,v)
#define IHTMLStyle2_get_borderCollapse(This,p) (This)->lpVtbl->get_borderCollapse(This,p)
#define IHTMLStyle2_put_direction(This,v) (This)->lpVtbl->put_direction(This,v)
#define IHTMLStyle2_get_direction(This,p) (This)->lpVtbl->get_direction(This,p)
#define IHTMLStyle2_put_behavior(This,v) (This)->lpVtbl->put_behavior(This,v)
#define IHTMLStyle2_get_behavior(This,p) (This)->lpVtbl->get_behavior(This,p)
#define IHTMLStyle2_setExpression(This,propname,expression,language) (This)->lpVtbl->setExpression(This,propname,expression,language)
#define IHTMLStyle2_getExpression(This,propname,expression) (This)->lpVtbl->getExpression(This,propname,expression)
#define IHTMLStyle2_removeExpression(This,propname,pfSuccess) (This)->lpVtbl->removeExpression(This,propname,pfSuccess)
#define IHTMLStyle2_put_position(This,v) (This)->lpVtbl->put_position(This,v)
#define IHTMLStyle2_get_position(This,p) (This)->lpVtbl->get_position(This,p)
#define IHTMLStyle2_put_unicodeBidi(This,v) (This)->lpVtbl->put_unicodeBidi(This,v)
#define IHTMLStyle2_get_unicodeBidi(This,p) (This)->lpVtbl->get_unicodeBidi(This,p)
#define IHTMLStyle2_put_bottom(This,v) (This)->lpVtbl->put_bottom(This,v)
#define IHTMLStyle2_get_bottom(This,p) (This)->lpVtbl->get_bottom(This,p)
#define IHTMLStyle2_put_right(This,v) (This)->lpVtbl->put_right(This,v)
#define IHTMLStyle2_get_right(This,p) (This)->lpVtbl->get_right(This,p)
#define IHTMLStyle2_put_pixelBottom(This,v) (This)->lpVtbl->put_pixelBottom(This,v)
#define IHTMLStyle2_get_pixelBottom(This,p) (This)->lpVtbl->get_pixelBottom(This,p)
#define IHTMLStyle2_put_pixelRight(This,v) (This)->lpVtbl->put_pixelRight(This,v)
#define IHTMLStyle2_get_pixelRight(This,p) (This)->lpVtbl->get_pixelRight(This,p)
#define IHTMLStyle2_put_posBottom(This,v) (This)->lpVtbl->put_posBottom(This,v)
#define IHTMLStyle2_get_posBottom(This,p) (This)->lpVtbl->get_posBottom(This,p)
#define IHTMLStyle2_put_posRight(This,v) (This)->lpVtbl->put_posRight(This,v)
#define IHTMLStyle2_get_posRight(This,p) (This)->lpVtbl->get_posRight(This,p)
#define IHTMLStyle2_put_imeMode(This,v) (This)->lpVtbl->put_imeMode(This,v)
#define IHTMLStyle2_get_imeMode(This,p) (This)->lpVtbl->get_imeMode(This,p)
#define IHTMLStyle2_put_rubyAlign(This,v) (This)->lpVtbl->put_rubyAlign(This,v)
#define IHTMLStyle2_get_rubyAlign(This,p) (This)->lpVtbl->get_rubyAlign(This,p)
#define IHTMLStyle2_put_rubyPosition(This,v) (This)->lpVtbl->put_rubyPosition(This,v)
#define IHTMLStyle2_get_rubyPosition(This,p) (This)->lpVtbl->get_rubyPosition(This,p)
#define IHTMLStyle2_put_rubyOverhang(This,v) (This)->lpVtbl->put_rubyOverhang(This,v)
#define IHTMLStyle2_get_rubyOverhang(This,p) (This)->lpVtbl->get_rubyOverhang(This,p)
#define IHTMLStyle2_put_layoutGridChar(This,v) (This)->lpVtbl->put_layoutGridChar(This,v)
#define IHTMLStyle2_get_layoutGridChar(This,p) (This)->lpVtbl->get_layoutGridChar(This,p)
#define IHTMLStyle2_put_layoutGridLine(This,v) (This)->lpVtbl->put_layoutGridLine(This,v)
#define IHTMLStyle2_get_layoutGridLine(This,p) (This)->lpVtbl->get_layoutGridLine(This,p)
#define IHTMLStyle2_put_layoutGridMode(This,v) (This)->lpVtbl->put_layoutGridMode(This,v)
#define IHTMLStyle2_get_layoutGridMode(This,p) (This)->lpVtbl->get_layoutGridMode(This,p)
#define IHTMLStyle2_put_layoutGridType(This,v) (This)->lpVtbl->put_layoutGridType(This,v)
#define IHTMLStyle2_get_layoutGridType(This,p) (This)->lpVtbl->get_layoutGridType(This,p)
#define IHTMLStyle2_put_layoutGrid(This,v) (This)->lpVtbl->put_layoutGrid(This,v)
#define IHTMLStyle2_get_layoutGrid(This,p) (This)->lpVtbl->get_layoutGrid(This,p)
#define IHTMLStyle2_put_wordBreak(This,v) (This)->lpVtbl->put_wordBreak(This,v)
#define IHTMLStyle2_get_wordBreak(This,p) (This)->lpVtbl->get_wordBreak(This,p)
#define IHTMLStyle2_put_lineBreak(This,v) (This)->lpVtbl->put_lineBreak(This,v)
#define IHTMLStyle2_get_lineBreak(This,p) (This)->lpVtbl->get_lineBreak(This,p)
#define IHTMLStyle2_put_textJustify(This,v) (This)->lpVtbl->put_textJustify(This,v)
#define IHTMLStyle2_get_textJustify(This,p) (This)->lpVtbl->get_textJustify(This,p)
#define IHTMLStyle2_put_textJustifyTrim(This,v) (This)->lpVtbl->put_textJustifyTrim(This,v)
#define IHTMLStyle2_get_textJustifyTrim(This,p) (This)->lpVtbl->get_textJustifyTrim(This,p)
#define IHTMLStyle2_put_textKashida(This,v) (This)->lpVtbl->put_textKashida(This,v)
#define IHTMLStyle2_get_textKashida(This,p) (This)->lpVtbl->get_textKashida(This,p)
#define IHTMLStyle2_put_textAutospace(This,v) (This)->lpVtbl->put_textAutospace(This,v)
#define IHTMLStyle2_get_textAutospace(This,p) (This)->lpVtbl->get_textAutospace(This,p)
#define IHTMLStyle2_put_overflowX(This,v) (This)->lpVtbl->put_overflowX(This,v)
#define IHTMLStyle2_get_overflowX(This,p) (This)->lpVtbl->get_overflowX(This,p)
#define IHTMLStyle2_put_overflowY(This,v) (This)->lpVtbl->put_overflowY(This,v)
#define IHTMLStyle2_get_overflowY(This,p) (This)->lpVtbl->get_overflowY(This,p)
#define IHTMLStyle2_put_accelerator(This,v) (This)->lpVtbl->put_accelerator(This,v)
#define IHTMLStyle2_get_accelerator(This,p) (This)->lpVtbl->get_accelerator(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_tableLayout_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_tableLayout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_tableLayout_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_tableLayout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_borderCollapse_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_borderCollapse_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_borderCollapse_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_borderCollapse_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_direction_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_direction_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_direction_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_direction_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_behavior_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_behavior_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_behavior_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_behavior_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_setExpression_Proxy(
    IHTMLStyle2* This,
    BSTR propname,
    BSTR expression,
    BSTR language);
void __RPC_STUB IHTMLStyle2_setExpression_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_getExpression_Proxy(
    IHTMLStyle2* This,
    BSTR propname,
    VARIANT *expression);
void __RPC_STUB IHTMLStyle2_getExpression_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_removeExpression_Proxy(
    IHTMLStyle2* This,
    BSTR propname,
    VARIANT_BOOL *pfSuccess);
void __RPC_STUB IHTMLStyle2_removeExpression_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_position_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_position_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_position_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_position_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_unicodeBidi_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_unicodeBidi_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_unicodeBidi_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_unicodeBidi_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_bottom_Proxy(
    IHTMLStyle2* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle2_put_bottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_bottom_Proxy(
    IHTMLStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle2_get_bottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_right_Proxy(
    IHTMLStyle2* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle2_put_right_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_right_Proxy(
    IHTMLStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle2_get_right_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_pixelBottom_Proxy(
    IHTMLStyle2* This,
    LONG v);
void __RPC_STUB IHTMLStyle2_put_pixelBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_pixelBottom_Proxy(
    IHTMLStyle2* This,
    LONG *p);
void __RPC_STUB IHTMLStyle2_get_pixelBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_pixelRight_Proxy(
    IHTMLStyle2* This,
    LONG v);
void __RPC_STUB IHTMLStyle2_put_pixelRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_pixelRight_Proxy(
    IHTMLStyle2* This,
    LONG *p);
void __RPC_STUB IHTMLStyle2_get_pixelRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_posBottom_Proxy(
    IHTMLStyle2* This,
    float v);
void __RPC_STUB IHTMLStyle2_put_posBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_posBottom_Proxy(
    IHTMLStyle2* This,
    float *p);
void __RPC_STUB IHTMLStyle2_get_posBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_posRight_Proxy(
    IHTMLStyle2* This,
    float v);
void __RPC_STUB IHTMLStyle2_put_posRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_posRight_Proxy(
    IHTMLStyle2* This,
    float *p);
void __RPC_STUB IHTMLStyle2_get_posRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_imeMode_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_imeMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_imeMode_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_imeMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_rubyAlign_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_rubyAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_rubyAlign_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_rubyAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_rubyPosition_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_rubyPosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_rubyPosition_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_rubyPosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_rubyOverhang_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_rubyOverhang_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_rubyOverhang_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_rubyOverhang_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_layoutGridChar_Proxy(
    IHTMLStyle2* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle2_put_layoutGridChar_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_layoutGridChar_Proxy(
    IHTMLStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle2_get_layoutGridChar_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_layoutGridLine_Proxy(
    IHTMLStyle2* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle2_put_layoutGridLine_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_layoutGridLine_Proxy(
    IHTMLStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle2_get_layoutGridLine_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_layoutGridMode_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_layoutGridMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_layoutGridMode_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_layoutGridMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_layoutGridType_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_layoutGridType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_layoutGridType_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_layoutGridType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_layoutGrid_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_layoutGrid_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_layoutGrid_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_layoutGrid_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_wordBreak_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_wordBreak_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_wordBreak_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_wordBreak_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_lineBreak_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_lineBreak_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_lineBreak_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_lineBreak_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_textJustify_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_textJustify_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_textJustify_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_textJustify_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_textJustifyTrim_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_textJustifyTrim_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_textJustifyTrim_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_textJustifyTrim_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_textKashida_Proxy(
    IHTMLStyle2* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle2_put_textKashida_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_textKashida_Proxy(
    IHTMLStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle2_get_textKashida_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_textAutospace_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_textAutospace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_textAutospace_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_textAutospace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_overflowX_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_overflowX_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_overflowX_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_overflowX_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_overflowY_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_overflowY_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_overflowY_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_overflowY_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_put_accelerator_Proxy(
    IHTMLStyle2* This,
    BSTR v);
void __RPC_STUB IHTMLStyle2_put_accelerator_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle2_get_accelerator_Proxy(
    IHTMLStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle2_get_accelerator_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLStyle2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLRuleStyle interface
 */
#ifndef __IHTMLRuleStyle_INTERFACE_DEFINED__
#define __IHTMLRuleStyle_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLRuleStyle, 0x3050f3cf, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLRuleStyle : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_fontFamily(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontFamily(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_fontStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_fontVariant(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontVariant(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_fontWeight(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontWeight(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_fontSize(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontSize(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_font(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_font(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_color(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_color(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_background(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_background(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundImage(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundImage(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundRepeat(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundRepeat(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundAttachment(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundAttachment(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundPosition(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundPosition(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundPositionX(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundPositionX(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_backgroundPositionY(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundPositionY(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_wordSpacing(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_wordSpacing(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_letterSpacing(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_letterSpacing(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecoration(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecoration(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecorationNone(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecorationNone(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecorationUnderline(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecorationUnderline(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecorationOverline(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecorationOverline(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecorationLineThrough(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecorationLineThrough(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecorationBlink(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecorationBlink(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_verticalAlign(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_verticalAlign(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textTransform(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textTransform(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textAlign(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textAlign(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textIndent(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textIndent(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_lineHeight(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_lineHeight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_marginTop(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginTop(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_marginRight(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginRight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_marginBottom(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginBottom(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_marginLeft(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginLeft(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_margin(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_margin(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_paddingTop(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_paddingTop(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_paddingRight(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_paddingRight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_paddingBottom(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_paddingBottom(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_paddingLeft(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_paddingLeft(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_padding(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_padding(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_border(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_border(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderTop(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderTop(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderRight(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderRight(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderBottom(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderBottom(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderLeft(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderLeft(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderColor(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderColor(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderTopColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderTopColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderRightColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderRightColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderBottomColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderBottomColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderLeftColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderLeftColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderWidth(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderWidth(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderTopWidth(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderTopWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderRightWidth(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderRightWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderBottomWidth(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderBottomWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderLeftWidth(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderLeftWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderTopStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderTopStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderRightStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderRightStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderBottomStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderBottomStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderLeftStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderLeftStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_width(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_width(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_height(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_height(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_styleFloat(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_styleFloat(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_clear(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clear(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_display(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_display(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_visibility(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_visibility(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_listStyleType(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_listStyleType(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_listStylePosition(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_listStylePosition(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_listStyleImage(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_listStyleImage(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_listStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_listStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_whiteSpace(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_whiteSpace(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_top(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_top(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_left(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_left(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_position(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_zIndex(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_zIndex(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_overflow(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_overflow(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pageBreakBefore(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pageBreakBefore(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pageBreakAfter(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pageBreakAfter(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_cssText(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cssText(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_cursor(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cursor(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_clip(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clip(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_filter(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_filter(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE setAttribute(
        BSTR strAttributeName,
        VARIANT AttributeValue,
        LONG lFlags) = 0;

    virtual HRESULT STDMETHODCALLTYPE getAttribute(
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT *AttributeValue) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeAttribute(
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT_BOOL *pfSuccess) = 0;

};
#else
typedef struct IHTMLRuleStyleVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLRuleStyle* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLRuleStyle* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLRuleStyle* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLRuleStyle* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLRuleStyle* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLRuleStyle* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLRuleStyle* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLRuleStyle methods ***/
    HRESULT (STDMETHODCALLTYPE *put_fontFamily)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_fontFamily)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_fontStyle)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_fontStyle)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_fontVariant)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_fontVariant)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_fontWeight)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_fontWeight)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_fontSize)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_fontSize)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_font)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_font)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_color)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_color)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_background)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_background)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundColor)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundColor)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundImage)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundImage)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundRepeat)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundRepeat)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundAttachment)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundAttachment)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundPosition)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundPosition)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundPositionX)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundPositionX)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_backgroundPositionY)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_backgroundPositionY)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_wordSpacing)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_wordSpacing)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_letterSpacing)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_letterSpacing)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecoration)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textDecoration)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecorationNone)(
        IHTMLRuleStyle* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_textDecorationNone)(
        IHTMLRuleStyle* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecorationUnderline)(
        IHTMLRuleStyle* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_textDecorationUnderline)(
        IHTMLRuleStyle* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecorationOverline)(
        IHTMLRuleStyle* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_textDecorationOverline)(
        IHTMLRuleStyle* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecorationLineThrough)(
        IHTMLRuleStyle* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_textDecorationLineThrough)(
        IHTMLRuleStyle* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecorationBlink)(
        IHTMLRuleStyle* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_textDecorationBlink)(
        IHTMLRuleStyle* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_verticalAlign)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_verticalAlign)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_textTransform)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textTransform)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textAlign)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textAlign)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textIndent)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_textIndent)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_lineHeight)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_lineHeight)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_marginTop)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_marginTop)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_marginRight)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_marginRight)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_marginBottom)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_marginBottom)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_marginLeft)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_marginLeft)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_margin)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_margin)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_paddingTop)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_paddingTop)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_paddingRight)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_paddingRight)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_paddingBottom)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_paddingBottom)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_paddingLeft)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_paddingLeft)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_padding)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_padding)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_border)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_border)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderTop)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderTop)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderRight)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderRight)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderBottom)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderBottom)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderLeft)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderLeft)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderColor)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderColor)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderTopColor)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderTopColor)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderRightColor)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderRightColor)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderBottomColor)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderBottomColor)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderLeftColor)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderLeftColor)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderWidth)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderWidth)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderTopWidth)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderTopWidth)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderRightWidth)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderRightWidth)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderBottomWidth)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderBottomWidth)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderLeftWidth)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderLeftWidth)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderStyle)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderStyle)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderTopStyle)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderTopStyle)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderRightStyle)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderRightStyle)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderBottomStyle)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderBottomStyle)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_borderLeftStyle)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_borderLeftStyle)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_width)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_width)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_height)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_height)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_styleFloat)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_styleFloat)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_clear)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_clear)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_display)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_display)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_visibility)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_visibility)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_listStyleType)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_listStyleType)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_listStylePosition)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_listStylePosition)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_listStyleImage)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_listStyleImage)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_listStyle)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_listStyle)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_whiteSpace)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_whiteSpace)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_top)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_top)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_left)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_left)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_position)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_zIndex)(
        IHTMLRuleStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_zIndex)(
        IHTMLRuleStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_overflow)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_overflow)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_pageBreakBefore)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_pageBreakBefore)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_pageBreakAfter)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_pageBreakAfter)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_cssText)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_cssText)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_cursor)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_cursor)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_clip)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_clip)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_filter)(
        IHTMLRuleStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_filter)(
        IHTMLRuleStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *setAttribute)(
        IHTMLRuleStyle* This,
        BSTR strAttributeName,
        VARIANT AttributeValue,
        LONG lFlags);

    HRESULT (STDMETHODCALLTYPE *getAttribute)(
        IHTMLRuleStyle* This,
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT *AttributeValue);

    HRESULT (STDMETHODCALLTYPE *removeAttribute)(
        IHTMLRuleStyle* This,
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT_BOOL *pfSuccess);

    END_INTERFACE
} IHTMLRuleStyleVtbl;
interface IHTMLRuleStyle {
    CONST_VTBL IHTMLRuleStyleVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLRuleStyle_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLRuleStyle_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLRuleStyle_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLRuleStyle_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLRuleStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLRuleStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLRuleStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLRuleStyle methods ***/
#define IHTMLRuleStyle_put_fontFamily(This,v) (This)->lpVtbl->put_fontFamily(This,v)
#define IHTMLRuleStyle_get_fontFamily(This,p) (This)->lpVtbl->get_fontFamily(This,p)
#define IHTMLRuleStyle_put_fontStyle(This,v) (This)->lpVtbl->put_fontStyle(This,v)
#define IHTMLRuleStyle_get_fontStyle(This,p) (This)->lpVtbl->get_fontStyle(This,p)
#define IHTMLRuleStyle_put_fontVariant(This,v) (This)->lpVtbl->put_fontVariant(This,v)
#define IHTMLRuleStyle_get_fontVariant(This,p) (This)->lpVtbl->get_fontVariant(This,p)
#define IHTMLRuleStyle_put_fontWeight(This,v) (This)->lpVtbl->put_fontWeight(This,v)
#define IHTMLRuleStyle_get_fontWeight(This,p) (This)->lpVtbl->get_fontWeight(This,p)
#define IHTMLRuleStyle_put_fontSize(This,v) (This)->lpVtbl->put_fontSize(This,v)
#define IHTMLRuleStyle_get_fontSize(This,p) (This)->lpVtbl->get_fontSize(This,p)
#define IHTMLRuleStyle_put_font(This,v) (This)->lpVtbl->put_font(This,v)
#define IHTMLRuleStyle_get_font(This,p) (This)->lpVtbl->get_font(This,p)
#define IHTMLRuleStyle_put_color(This,v) (This)->lpVtbl->put_color(This,v)
#define IHTMLRuleStyle_get_color(This,p) (This)->lpVtbl->get_color(This,p)
#define IHTMLRuleStyle_put_background(This,v) (This)->lpVtbl->put_background(This,v)
#define IHTMLRuleStyle_get_background(This,p) (This)->lpVtbl->get_background(This,p)
#define IHTMLRuleStyle_put_backgroundColor(This,v) (This)->lpVtbl->put_backgroundColor(This,v)
#define IHTMLRuleStyle_get_backgroundColor(This,p) (This)->lpVtbl->get_backgroundColor(This,p)
#define IHTMLRuleStyle_put_backgroundImage(This,v) (This)->lpVtbl->put_backgroundImage(This,v)
#define IHTMLRuleStyle_get_backgroundImage(This,p) (This)->lpVtbl->get_backgroundImage(This,p)
#define IHTMLRuleStyle_put_backgroundRepeat(This,v) (This)->lpVtbl->put_backgroundRepeat(This,v)
#define IHTMLRuleStyle_get_backgroundRepeat(This,p) (This)->lpVtbl->get_backgroundRepeat(This,p)
#define IHTMLRuleStyle_put_backgroundAttachment(This,v) (This)->lpVtbl->put_backgroundAttachment(This,v)
#define IHTMLRuleStyle_get_backgroundAttachment(This,p) (This)->lpVtbl->get_backgroundAttachment(This,p)
#define IHTMLRuleStyle_put_backgroundPosition(This,v) (This)->lpVtbl->put_backgroundPosition(This,v)
#define IHTMLRuleStyle_get_backgroundPosition(This,p) (This)->lpVtbl->get_backgroundPosition(This,p)
#define IHTMLRuleStyle_put_backgroundPositionX(This,v) (This)->lpVtbl->put_backgroundPositionX(This,v)
#define IHTMLRuleStyle_get_backgroundPositionX(This,p) (This)->lpVtbl->get_backgroundPositionX(This,p)
#define IHTMLRuleStyle_put_backgroundPositionY(This,v) (This)->lpVtbl->put_backgroundPositionY(This,v)
#define IHTMLRuleStyle_get_backgroundPositionY(This,p) (This)->lpVtbl->get_backgroundPositionY(This,p)
#define IHTMLRuleStyle_put_wordSpacing(This,v) (This)->lpVtbl->put_wordSpacing(This,v)
#define IHTMLRuleStyle_get_wordSpacing(This,p) (This)->lpVtbl->get_wordSpacing(This,p)
#define IHTMLRuleStyle_put_letterSpacing(This,v) (This)->lpVtbl->put_letterSpacing(This,v)
#define IHTMLRuleStyle_get_letterSpacing(This,p) (This)->lpVtbl->get_letterSpacing(This,p)
#define IHTMLRuleStyle_put_textDecoration(This,v) (This)->lpVtbl->put_textDecoration(This,v)
#define IHTMLRuleStyle_get_textDecoration(This,p) (This)->lpVtbl->get_textDecoration(This,p)
#define IHTMLRuleStyle_put_textDecorationNone(This,v) (This)->lpVtbl->put_textDecorationNone(This,v)
#define IHTMLRuleStyle_get_textDecorationNone(This,p) (This)->lpVtbl->get_textDecorationNone(This,p)
#define IHTMLRuleStyle_put_textDecorationUnderline(This,v) (This)->lpVtbl->put_textDecorationUnderline(This,v)
#define IHTMLRuleStyle_get_textDecorationUnderline(This,p) (This)->lpVtbl->get_textDecorationUnderline(This,p)
#define IHTMLRuleStyle_put_textDecorationOverline(This,v) (This)->lpVtbl->put_textDecorationOverline(This,v)
#define IHTMLRuleStyle_get_textDecorationOverline(This,p) (This)->lpVtbl->get_textDecorationOverline(This,p)
#define IHTMLRuleStyle_put_textDecorationLineThrough(This,v) (This)->lpVtbl->put_textDecorationLineThrough(This,v)
#define IHTMLRuleStyle_get_textDecorationLineThrough(This,p) (This)->lpVtbl->get_textDecorationLineThrough(This,p)
#define IHTMLRuleStyle_put_textDecorationBlink(This,v) (This)->lpVtbl->put_textDecorationBlink(This,v)
#define IHTMLRuleStyle_get_textDecorationBlink(This,p) (This)->lpVtbl->get_textDecorationBlink(This,p)
#define IHTMLRuleStyle_put_verticalAlign(This,v) (This)->lpVtbl->put_verticalAlign(This,v)
#define IHTMLRuleStyle_get_verticalAlign(This,p) (This)->lpVtbl->get_verticalAlign(This,p)
#define IHTMLRuleStyle_put_textTransform(This,v) (This)->lpVtbl->put_textTransform(This,v)
#define IHTMLRuleStyle_get_textTransform(This,p) (This)->lpVtbl->get_textTransform(This,p)
#define IHTMLRuleStyle_put_textAlign(This,v) (This)->lpVtbl->put_textAlign(This,v)
#define IHTMLRuleStyle_get_textAlign(This,p) (This)->lpVtbl->get_textAlign(This,p)
#define IHTMLRuleStyle_put_textIndent(This,v) (This)->lpVtbl->put_textIndent(This,v)
#define IHTMLRuleStyle_get_textIndent(This,p) (This)->lpVtbl->get_textIndent(This,p)
#define IHTMLRuleStyle_put_lineHeight(This,v) (This)->lpVtbl->put_lineHeight(This,v)
#define IHTMLRuleStyle_get_lineHeight(This,p) (This)->lpVtbl->get_lineHeight(This,p)
#define IHTMLRuleStyle_put_marginTop(This,v) (This)->lpVtbl->put_marginTop(This,v)
#define IHTMLRuleStyle_get_marginTop(This,p) (This)->lpVtbl->get_marginTop(This,p)
#define IHTMLRuleStyle_put_marginRight(This,v) (This)->lpVtbl->put_marginRight(This,v)
#define IHTMLRuleStyle_get_marginRight(This,p) (This)->lpVtbl->get_marginRight(This,p)
#define IHTMLRuleStyle_put_marginBottom(This,v) (This)->lpVtbl->put_marginBottom(This,v)
#define IHTMLRuleStyle_get_marginBottom(This,p) (This)->lpVtbl->get_marginBottom(This,p)
#define IHTMLRuleStyle_put_marginLeft(This,v) (This)->lpVtbl->put_marginLeft(This,v)
#define IHTMLRuleStyle_get_marginLeft(This,p) (This)->lpVtbl->get_marginLeft(This,p)
#define IHTMLRuleStyle_put_margin(This,v) (This)->lpVtbl->put_margin(This,v)
#define IHTMLRuleStyle_get_margin(This,p) (This)->lpVtbl->get_margin(This,p)
#define IHTMLRuleStyle_put_paddingTop(This,v) (This)->lpVtbl->put_paddingTop(This,v)
#define IHTMLRuleStyle_get_paddingTop(This,p) (This)->lpVtbl->get_paddingTop(This,p)
#define IHTMLRuleStyle_put_paddingRight(This,v) (This)->lpVtbl->put_paddingRight(This,v)
#define IHTMLRuleStyle_get_paddingRight(This,p) (This)->lpVtbl->get_paddingRight(This,p)
#define IHTMLRuleStyle_put_paddingBottom(This,v) (This)->lpVtbl->put_paddingBottom(This,v)
#define IHTMLRuleStyle_get_paddingBottom(This,p) (This)->lpVtbl->get_paddingBottom(This,p)
#define IHTMLRuleStyle_put_paddingLeft(This,v) (This)->lpVtbl->put_paddingLeft(This,v)
#define IHTMLRuleStyle_get_paddingLeft(This,p) (This)->lpVtbl->get_paddingLeft(This,p)
#define IHTMLRuleStyle_put_padding(This,v) (This)->lpVtbl->put_padding(This,v)
#define IHTMLRuleStyle_get_padding(This,p) (This)->lpVtbl->get_padding(This,p)
#define IHTMLRuleStyle_put_border(This,v) (This)->lpVtbl->put_border(This,v)
#define IHTMLRuleStyle_get_border(This,p) (This)->lpVtbl->get_border(This,p)
#define IHTMLRuleStyle_put_borderTop(This,v) (This)->lpVtbl->put_borderTop(This,v)
#define IHTMLRuleStyle_get_borderTop(This,p) (This)->lpVtbl->get_borderTop(This,p)
#define IHTMLRuleStyle_put_borderRight(This,v) (This)->lpVtbl->put_borderRight(This,v)
#define IHTMLRuleStyle_get_borderRight(This,p) (This)->lpVtbl->get_borderRight(This,p)
#define IHTMLRuleStyle_put_borderBottom(This,v) (This)->lpVtbl->put_borderBottom(This,v)
#define IHTMLRuleStyle_get_borderBottom(This,p) (This)->lpVtbl->get_borderBottom(This,p)
#define IHTMLRuleStyle_put_borderLeft(This,v) (This)->lpVtbl->put_borderLeft(This,v)
#define IHTMLRuleStyle_get_borderLeft(This,p) (This)->lpVtbl->get_borderLeft(This,p)
#define IHTMLRuleStyle_put_borderColor(This,v) (This)->lpVtbl->put_borderColor(This,v)
#define IHTMLRuleStyle_get_borderColor(This,p) (This)->lpVtbl->get_borderColor(This,p)
#define IHTMLRuleStyle_put_borderTopColor(This,v) (This)->lpVtbl->put_borderTopColor(This,v)
#define IHTMLRuleStyle_get_borderTopColor(This,p) (This)->lpVtbl->get_borderTopColor(This,p)
#define IHTMLRuleStyle_put_borderRightColor(This,v) (This)->lpVtbl->put_borderRightColor(This,v)
#define IHTMLRuleStyle_get_borderRightColor(This,p) (This)->lpVtbl->get_borderRightColor(This,p)
#define IHTMLRuleStyle_put_borderBottomColor(This,v) (This)->lpVtbl->put_borderBottomColor(This,v)
#define IHTMLRuleStyle_get_borderBottomColor(This,p) (This)->lpVtbl->get_borderBottomColor(This,p)
#define IHTMLRuleStyle_put_borderLeftColor(This,v) (This)->lpVtbl->put_borderLeftColor(This,v)
#define IHTMLRuleStyle_get_borderLeftColor(This,p) (This)->lpVtbl->get_borderLeftColor(This,p)
#define IHTMLRuleStyle_put_borderWidth(This,v) (This)->lpVtbl->put_borderWidth(This,v)
#define IHTMLRuleStyle_get_borderWidth(This,p) (This)->lpVtbl->get_borderWidth(This,p)
#define IHTMLRuleStyle_put_borderTopWidth(This,v) (This)->lpVtbl->put_borderTopWidth(This,v)
#define IHTMLRuleStyle_get_borderTopWidth(This,p) (This)->lpVtbl->get_borderTopWidth(This,p)
#define IHTMLRuleStyle_put_borderRightWidth(This,v) (This)->lpVtbl->put_borderRightWidth(This,v)
#define IHTMLRuleStyle_get_borderRightWidth(This,p) (This)->lpVtbl->get_borderRightWidth(This,p)
#define IHTMLRuleStyle_put_borderBottomWidth(This,v) (This)->lpVtbl->put_borderBottomWidth(This,v)
#define IHTMLRuleStyle_get_borderBottomWidth(This,p) (This)->lpVtbl->get_borderBottomWidth(This,p)
#define IHTMLRuleStyle_put_borderLeftWidth(This,v) (This)->lpVtbl->put_borderLeftWidth(This,v)
#define IHTMLRuleStyle_get_borderLeftWidth(This,p) (This)->lpVtbl->get_borderLeftWidth(This,p)
#define IHTMLRuleStyle_put_borderStyle(This,v) (This)->lpVtbl->put_borderStyle(This,v)
#define IHTMLRuleStyle_get_borderStyle(This,p) (This)->lpVtbl->get_borderStyle(This,p)
#define IHTMLRuleStyle_put_borderTopStyle(This,v) (This)->lpVtbl->put_borderTopStyle(This,v)
#define IHTMLRuleStyle_get_borderTopStyle(This,p) (This)->lpVtbl->get_borderTopStyle(This,p)
#define IHTMLRuleStyle_put_borderRightStyle(This,v) (This)->lpVtbl->put_borderRightStyle(This,v)
#define IHTMLRuleStyle_get_borderRightStyle(This,p) (This)->lpVtbl->get_borderRightStyle(This,p)
#define IHTMLRuleStyle_put_borderBottomStyle(This,v) (This)->lpVtbl->put_borderBottomStyle(This,v)
#define IHTMLRuleStyle_get_borderBottomStyle(This,p) (This)->lpVtbl->get_borderBottomStyle(This,p)
#define IHTMLRuleStyle_put_borderLeftStyle(This,v) (This)->lpVtbl->put_borderLeftStyle(This,v)
#define IHTMLRuleStyle_get_borderLeftStyle(This,p) (This)->lpVtbl->get_borderLeftStyle(This,p)
#define IHTMLRuleStyle_put_width(This,v) (This)->lpVtbl->put_width(This,v)
#define IHTMLRuleStyle_get_width(This,p) (This)->lpVtbl->get_width(This,p)
#define IHTMLRuleStyle_put_height(This,v) (This)->lpVtbl->put_height(This,v)
#define IHTMLRuleStyle_get_height(This,p) (This)->lpVtbl->get_height(This,p)
#define IHTMLRuleStyle_put_styleFloat(This,v) (This)->lpVtbl->put_styleFloat(This,v)
#define IHTMLRuleStyle_get_styleFloat(This,p) (This)->lpVtbl->get_styleFloat(This,p)
#define IHTMLRuleStyle_put_clear(This,v) (This)->lpVtbl->put_clear(This,v)
#define IHTMLRuleStyle_get_clear(This,p) (This)->lpVtbl->get_clear(This,p)
#define IHTMLRuleStyle_put_display(This,v) (This)->lpVtbl->put_display(This,v)
#define IHTMLRuleStyle_get_display(This,p) (This)->lpVtbl->get_display(This,p)
#define IHTMLRuleStyle_put_visibility(This,v) (This)->lpVtbl->put_visibility(This,v)
#define IHTMLRuleStyle_get_visibility(This,p) (This)->lpVtbl->get_visibility(This,p)
#define IHTMLRuleStyle_put_listStyleType(This,v) (This)->lpVtbl->put_listStyleType(This,v)
#define IHTMLRuleStyle_get_listStyleType(This,p) (This)->lpVtbl->get_listStyleType(This,p)
#define IHTMLRuleStyle_put_listStylePosition(This,v) (This)->lpVtbl->put_listStylePosition(This,v)
#define IHTMLRuleStyle_get_listStylePosition(This,p) (This)->lpVtbl->get_listStylePosition(This,p)
#define IHTMLRuleStyle_put_listStyleImage(This,v) (This)->lpVtbl->put_listStyleImage(This,v)
#define IHTMLRuleStyle_get_listStyleImage(This,p) (This)->lpVtbl->get_listStyleImage(This,p)
#define IHTMLRuleStyle_put_listStyle(This,v) (This)->lpVtbl->put_listStyle(This,v)
#define IHTMLRuleStyle_get_listStyle(This,p) (This)->lpVtbl->get_listStyle(This,p)
#define IHTMLRuleStyle_put_whiteSpace(This,v) (This)->lpVtbl->put_whiteSpace(This,v)
#define IHTMLRuleStyle_get_whiteSpace(This,p) (This)->lpVtbl->get_whiteSpace(This,p)
#define IHTMLRuleStyle_put_top(This,v) (This)->lpVtbl->put_top(This,v)
#define IHTMLRuleStyle_get_top(This,p) (This)->lpVtbl->get_top(This,p)
#define IHTMLRuleStyle_put_left(This,v) (This)->lpVtbl->put_left(This,v)
#define IHTMLRuleStyle_get_left(This,p) (This)->lpVtbl->get_left(This,p)
#define IHTMLRuleStyle_get_position(This,p) (This)->lpVtbl->get_position(This,p)
#define IHTMLRuleStyle_put_zIndex(This,v) (This)->lpVtbl->put_zIndex(This,v)
#define IHTMLRuleStyle_get_zIndex(This,p) (This)->lpVtbl->get_zIndex(This,p)
#define IHTMLRuleStyle_put_overflow(This,v) (This)->lpVtbl->put_overflow(This,v)
#define IHTMLRuleStyle_get_overflow(This,p) (This)->lpVtbl->get_overflow(This,p)
#define IHTMLRuleStyle_put_pageBreakBefore(This,v) (This)->lpVtbl->put_pageBreakBefore(This,v)
#define IHTMLRuleStyle_get_pageBreakBefore(This,p) (This)->lpVtbl->get_pageBreakBefore(This,p)
#define IHTMLRuleStyle_put_pageBreakAfter(This,v) (This)->lpVtbl->put_pageBreakAfter(This,v)
#define IHTMLRuleStyle_get_pageBreakAfter(This,p) (This)->lpVtbl->get_pageBreakAfter(This,p)
#define IHTMLRuleStyle_put_cssText(This,v) (This)->lpVtbl->put_cssText(This,v)
#define IHTMLRuleStyle_get_cssText(This,p) (This)->lpVtbl->get_cssText(This,p)
#define IHTMLRuleStyle_put_cursor(This,v) (This)->lpVtbl->put_cursor(This,v)
#define IHTMLRuleStyle_get_cursor(This,p) (This)->lpVtbl->get_cursor(This,p)
#define IHTMLRuleStyle_put_clip(This,v) (This)->lpVtbl->put_clip(This,v)
#define IHTMLRuleStyle_get_clip(This,p) (This)->lpVtbl->get_clip(This,p)
#define IHTMLRuleStyle_put_filter(This,v) (This)->lpVtbl->put_filter(This,v)
#define IHTMLRuleStyle_get_filter(This,p) (This)->lpVtbl->get_filter(This,p)
#define IHTMLRuleStyle_setAttribute(This,strAttributeName,AttributeValue,lFlags) (This)->lpVtbl->setAttribute(This,strAttributeName,AttributeValue,lFlags)
#define IHTMLRuleStyle_getAttribute(This,strAttributeName,lFlags,AttributeValue) (This)->lpVtbl->getAttribute(This,strAttributeName,lFlags,AttributeValue)
#define IHTMLRuleStyle_removeAttribute(This,strAttributeName,lFlags,pfSuccess) (This)->lpVtbl->removeAttribute(This,strAttributeName,lFlags,pfSuccess)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_fontFamily_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_fontFamily_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_fontFamily_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_fontFamily_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_fontStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_fontStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_fontStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_fontStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_fontVariant_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_fontVariant_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_fontVariant_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_fontVariant_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_fontWeight_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_fontWeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_fontWeight_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_fontWeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_fontSize_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_fontSize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_fontSize_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_fontSize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_font_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_font_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_font_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_font_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_color_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_color_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_color_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_color_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_background_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_background_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_background_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_background_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_backgroundColor_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_backgroundColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_backgroundColor_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_backgroundColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_backgroundImage_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_backgroundImage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_backgroundImage_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_backgroundImage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_backgroundRepeat_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_backgroundRepeat_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_backgroundRepeat_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_backgroundRepeat_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_backgroundAttachment_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_backgroundAttachment_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_backgroundAttachment_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_backgroundAttachment_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_backgroundPosition_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_backgroundPosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_backgroundPosition_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_backgroundPosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_backgroundPositionX_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_backgroundPositionX_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_backgroundPositionX_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_backgroundPositionX_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_backgroundPositionY_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_backgroundPositionY_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_backgroundPositionY_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_backgroundPositionY_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_wordSpacing_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_wordSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_wordSpacing_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_wordSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_letterSpacing_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_letterSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_letterSpacing_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_letterSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_textDecoration_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_textDecoration_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_textDecoration_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_textDecoration_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_textDecorationNone_Proxy(
    IHTMLRuleStyle* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLRuleStyle_put_textDecorationNone_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_textDecorationNone_Proxy(
    IHTMLRuleStyle* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLRuleStyle_get_textDecorationNone_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_textDecorationUnderline_Proxy(
    IHTMLRuleStyle* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLRuleStyle_put_textDecorationUnderline_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_textDecorationUnderline_Proxy(
    IHTMLRuleStyle* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLRuleStyle_get_textDecorationUnderline_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_textDecorationOverline_Proxy(
    IHTMLRuleStyle* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLRuleStyle_put_textDecorationOverline_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_textDecorationOverline_Proxy(
    IHTMLRuleStyle* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLRuleStyle_get_textDecorationOverline_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_textDecorationLineThrough_Proxy(
    IHTMLRuleStyle* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLRuleStyle_put_textDecorationLineThrough_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_textDecorationLineThrough_Proxy(
    IHTMLRuleStyle* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLRuleStyle_get_textDecorationLineThrough_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_textDecorationBlink_Proxy(
    IHTMLRuleStyle* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLRuleStyle_put_textDecorationBlink_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_textDecorationBlink_Proxy(
    IHTMLRuleStyle* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLRuleStyle_get_textDecorationBlink_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_verticalAlign_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_verticalAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_verticalAlign_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_verticalAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_textTransform_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_textTransform_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_textTransform_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_textTransform_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_textAlign_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_textAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_textAlign_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_textAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_textIndent_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_textIndent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_textIndent_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_textIndent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_lineHeight_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_lineHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_lineHeight_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_lineHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_marginTop_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_marginTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_marginTop_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_marginTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_marginRight_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_marginRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_marginRight_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_marginRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_marginBottom_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_marginBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_marginBottom_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_marginBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_marginLeft_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_marginLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_marginLeft_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_marginLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_margin_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_margin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_margin_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_margin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_paddingTop_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_paddingTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_paddingTop_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_paddingTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_paddingRight_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_paddingRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_paddingRight_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_paddingRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_paddingBottom_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_paddingBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_paddingBottom_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_paddingBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_paddingLeft_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_paddingLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_paddingLeft_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_paddingLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_padding_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_padding_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_padding_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_padding_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_border_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_border_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_border_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_border_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderTop_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_borderTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderTop_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_borderTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderRight_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_borderRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderRight_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_borderRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderBottom_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_borderBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderBottom_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_borderBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderLeft_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_borderLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderLeft_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_borderLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderColor_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_borderColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderColor_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_borderColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderTopColor_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_borderTopColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderTopColor_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_borderTopColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderRightColor_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_borderRightColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderRightColor_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_borderRightColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderBottomColor_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_borderBottomColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderBottomColor_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_borderBottomColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderLeftColor_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_borderLeftColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderLeftColor_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_borderLeftColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderWidth_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_borderWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderWidth_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_borderWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderTopWidth_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_borderTopWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderTopWidth_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_borderTopWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderRightWidth_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_borderRightWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderRightWidth_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_borderRightWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderBottomWidth_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_borderBottomWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderBottomWidth_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_borderBottomWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderLeftWidth_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_borderLeftWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderLeftWidth_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_borderLeftWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_borderStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_borderStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderTopStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_borderTopStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderTopStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_borderTopStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderRightStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_borderRightStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderRightStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_borderRightStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderBottomStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_borderBottomStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderBottomStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_borderBottomStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_borderLeftStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_borderLeftStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_borderLeftStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_borderLeftStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_width_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_width_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_height_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_height_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_styleFloat_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_styleFloat_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_styleFloat_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_styleFloat_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_clear_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_clear_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_clear_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_clear_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_display_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_display_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_display_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_display_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_visibility_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_visibility_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_visibility_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_visibility_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_listStyleType_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_listStyleType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_listStyleType_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_listStyleType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_listStylePosition_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_listStylePosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_listStylePosition_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_listStylePosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_listStyleImage_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_listStyleImage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_listStyleImage_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_listStyleImage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_listStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_listStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_listStyle_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_listStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_whiteSpace_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_whiteSpace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_whiteSpace_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_whiteSpace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_top_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_top_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_top_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_top_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_left_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_left_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_left_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_left_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_position_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_position_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_zIndex_Proxy(
    IHTMLRuleStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRuleStyle_put_zIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_zIndex_Proxy(
    IHTMLRuleStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRuleStyle_get_zIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_overflow_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_overflow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_overflow_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_overflow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_pageBreakBefore_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_pageBreakBefore_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_pageBreakBefore_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_pageBreakBefore_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_pageBreakAfter_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_pageBreakAfter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_pageBreakAfter_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_pageBreakAfter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_cssText_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_cssText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_cssText_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_cssText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_cursor_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_cursor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_cursor_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_cursor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_clip_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_clip_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_clip_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_clip_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_put_filter_Proxy(
    IHTMLRuleStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRuleStyle_put_filter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_get_filter_Proxy(
    IHTMLRuleStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRuleStyle_get_filter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_setAttribute_Proxy(
    IHTMLRuleStyle* This,
    BSTR strAttributeName,
    VARIANT AttributeValue,
    LONG lFlags);
void __RPC_STUB IHTMLRuleStyle_setAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_getAttribute_Proxy(
    IHTMLRuleStyle* This,
    BSTR strAttributeName,
    LONG lFlags,
    VARIANT *AttributeValue);
void __RPC_STUB IHTMLRuleStyle_getAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRuleStyle_removeAttribute_Proxy(
    IHTMLRuleStyle* This,
    BSTR strAttributeName,
    LONG lFlags,
    VARIANT_BOOL *pfSuccess);
void __RPC_STUB IHTMLRuleStyle_removeAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLRuleStyle_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLStyle dispinterface
 */
#ifndef __DispHTMLStyle_DISPINTERFACE_DEFINED__
#define __DispHTMLStyle_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLStyle, 0x3050f55a, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLStyle : public IDispatch
{
};
#else
typedef struct DispHTMLStyleVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLStyle* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLStyle* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLStyle* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLStyle* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLStyle* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLStyle* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLStyle* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLStyleVtbl;
interface DispHTMLStyle {
    CONST_VTBL DispHTMLStyleVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLStyle_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLStyle_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLStyle_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLStyle_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLStyle_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLStyle3 interface
 */
#ifndef __IHTMLStyle3_INTERFACE_DEFINED__
#define __IHTMLStyle3_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLStyle3, 0x3050f656, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLStyle3 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_layoutFlow(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_layoutFlow(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_zoom(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_zoom(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_wordWrap(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_wordWrap(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textUnderlinePosition(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textUnderlinePosition(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrollbarBaseColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarBaseColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrollbarFaceColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarFaceColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrollbar3dLightColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbar3dLightColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrollbarShadowColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarShadowColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrollbarHighlightColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarHighlightColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrollbarDarkShadowColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarDarkShadowColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrollbarArrowColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarArrowColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrollbarTrackColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarTrackColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_writingMode(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_writingMode(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textAlignLast(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textAlignLast(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textKashidaSpace(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textKashidaSpace(
        VARIANT *p) = 0;

};
#else
typedef struct IHTMLStyle3Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLStyle3* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLStyle3* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLStyle3* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLStyle3* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLStyle3* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLStyle3* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLStyle3* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLStyle3 methods ***/
    HRESULT (STDMETHODCALLTYPE *put_layoutFlow)(
        IHTMLStyle3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_layoutFlow)(
        IHTMLStyle3* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_zoom)(
        IHTMLStyle3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_zoom)(
        IHTMLStyle3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_wordWrap)(
        IHTMLStyle3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_wordWrap)(
        IHTMLStyle3* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textUnderlinePosition)(
        IHTMLStyle3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textUnderlinePosition)(
        IHTMLStyle3* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_scrollbarBaseColor)(
        IHTMLStyle3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarBaseColor)(
        IHTMLStyle3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_scrollbarFaceColor)(
        IHTMLStyle3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarFaceColor)(
        IHTMLStyle3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_scrollbar3dLightColor)(
        IHTMLStyle3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_scrollbar3dLightColor)(
        IHTMLStyle3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_scrollbarShadowColor)(
        IHTMLStyle3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarShadowColor)(
        IHTMLStyle3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_scrollbarHighlightColor)(
        IHTMLStyle3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarHighlightColor)(
        IHTMLStyle3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_scrollbarDarkShadowColor)(
        IHTMLStyle3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarDarkShadowColor)(
        IHTMLStyle3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_scrollbarArrowColor)(
        IHTMLStyle3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarArrowColor)(
        IHTMLStyle3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_scrollbarTrackColor)(
        IHTMLStyle3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarTrackColor)(
        IHTMLStyle3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_writingMode)(
        IHTMLStyle3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_writingMode)(
        IHTMLStyle3* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textAlignLast)(
        IHTMLStyle3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textAlignLast)(
        IHTMLStyle3* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textKashidaSpace)(
        IHTMLStyle3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_textKashidaSpace)(
        IHTMLStyle3* This,
        VARIANT *p);

    END_INTERFACE
} IHTMLStyle3Vtbl;
interface IHTMLStyle3 {
    CONST_VTBL IHTMLStyle3Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLStyle3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLStyle3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLStyle3_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLStyle3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLStyle3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLStyle3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLStyle3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLStyle3 methods ***/
#define IHTMLStyle3_put_layoutFlow(This,v) (This)->lpVtbl->put_layoutFlow(This,v)
#define IHTMLStyle3_get_layoutFlow(This,p) (This)->lpVtbl->get_layoutFlow(This,p)
#define IHTMLStyle3_put_zoom(This,v) (This)->lpVtbl->put_zoom(This,v)
#define IHTMLStyle3_get_zoom(This,p) (This)->lpVtbl->get_zoom(This,p)
#define IHTMLStyle3_put_wordWrap(This,v) (This)->lpVtbl->put_wordWrap(This,v)
#define IHTMLStyle3_get_wordWrap(This,p) (This)->lpVtbl->get_wordWrap(This,p)
#define IHTMLStyle3_put_textUnderlinePosition(This,v) (This)->lpVtbl->put_textUnderlinePosition(This,v)
#define IHTMLStyle3_get_textUnderlinePosition(This,p) (This)->lpVtbl->get_textUnderlinePosition(This,p)
#define IHTMLStyle3_put_scrollbarBaseColor(This,v) (This)->lpVtbl->put_scrollbarBaseColor(This,v)
#define IHTMLStyle3_get_scrollbarBaseColor(This,p) (This)->lpVtbl->get_scrollbarBaseColor(This,p)
#define IHTMLStyle3_put_scrollbarFaceColor(This,v) (This)->lpVtbl->put_scrollbarFaceColor(This,v)
#define IHTMLStyle3_get_scrollbarFaceColor(This,p) (This)->lpVtbl->get_scrollbarFaceColor(This,p)
#define IHTMLStyle3_put_scrollbar3dLightColor(This,v) (This)->lpVtbl->put_scrollbar3dLightColor(This,v)
#define IHTMLStyle3_get_scrollbar3dLightColor(This,p) (This)->lpVtbl->get_scrollbar3dLightColor(This,p)
#define IHTMLStyle3_put_scrollbarShadowColor(This,v) (This)->lpVtbl->put_scrollbarShadowColor(This,v)
#define IHTMLStyle3_get_scrollbarShadowColor(This,p) (This)->lpVtbl->get_scrollbarShadowColor(This,p)
#define IHTMLStyle3_put_scrollbarHighlightColor(This,v) (This)->lpVtbl->put_scrollbarHighlightColor(This,v)
#define IHTMLStyle3_get_scrollbarHighlightColor(This,p) (This)->lpVtbl->get_scrollbarHighlightColor(This,p)
#define IHTMLStyle3_put_scrollbarDarkShadowColor(This,v) (This)->lpVtbl->put_scrollbarDarkShadowColor(This,v)
#define IHTMLStyle3_get_scrollbarDarkShadowColor(This,p) (This)->lpVtbl->get_scrollbarDarkShadowColor(This,p)
#define IHTMLStyle3_put_scrollbarArrowColor(This,v) (This)->lpVtbl->put_scrollbarArrowColor(This,v)
#define IHTMLStyle3_get_scrollbarArrowColor(This,p) (This)->lpVtbl->get_scrollbarArrowColor(This,p)
#define IHTMLStyle3_put_scrollbarTrackColor(This,v) (This)->lpVtbl->put_scrollbarTrackColor(This,v)
#define IHTMLStyle3_get_scrollbarTrackColor(This,p) (This)->lpVtbl->get_scrollbarTrackColor(This,p)
#define IHTMLStyle3_put_writingMode(This,v) (This)->lpVtbl->put_writingMode(This,v)
#define IHTMLStyle3_get_writingMode(This,p) (This)->lpVtbl->get_writingMode(This,p)
#define IHTMLStyle3_put_textAlignLast(This,v) (This)->lpVtbl->put_textAlignLast(This,v)
#define IHTMLStyle3_get_textAlignLast(This,p) (This)->lpVtbl->get_textAlignLast(This,p)
#define IHTMLStyle3_put_textKashidaSpace(This,v) (This)->lpVtbl->put_textKashidaSpace(This,v)
#define IHTMLStyle3_get_textKashidaSpace(This,p) (This)->lpVtbl->get_textKashidaSpace(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_layoutFlow_Proxy(
    IHTMLStyle3* This,
    BSTR v);
void __RPC_STUB IHTMLStyle3_put_layoutFlow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_layoutFlow_Proxy(
    IHTMLStyle3* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle3_get_layoutFlow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_zoom_Proxy(
    IHTMLStyle3* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle3_put_zoom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_zoom_Proxy(
    IHTMLStyle3* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle3_get_zoom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_wordWrap_Proxy(
    IHTMLStyle3* This,
    BSTR v);
void __RPC_STUB IHTMLStyle3_put_wordWrap_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_wordWrap_Proxy(
    IHTMLStyle3* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle3_get_wordWrap_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_textUnderlinePosition_Proxy(
    IHTMLStyle3* This,
    BSTR v);
void __RPC_STUB IHTMLStyle3_put_textUnderlinePosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_textUnderlinePosition_Proxy(
    IHTMLStyle3* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle3_get_textUnderlinePosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_scrollbarBaseColor_Proxy(
    IHTMLStyle3* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle3_put_scrollbarBaseColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_scrollbarBaseColor_Proxy(
    IHTMLStyle3* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle3_get_scrollbarBaseColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_scrollbarFaceColor_Proxy(
    IHTMLStyle3* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle3_put_scrollbarFaceColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_scrollbarFaceColor_Proxy(
    IHTMLStyle3* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle3_get_scrollbarFaceColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_scrollbar3dLightColor_Proxy(
    IHTMLStyle3* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle3_put_scrollbar3dLightColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_scrollbar3dLightColor_Proxy(
    IHTMLStyle3* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle3_get_scrollbar3dLightColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_scrollbarShadowColor_Proxy(
    IHTMLStyle3* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle3_put_scrollbarShadowColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_scrollbarShadowColor_Proxy(
    IHTMLStyle3* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle3_get_scrollbarShadowColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_scrollbarHighlightColor_Proxy(
    IHTMLStyle3* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle3_put_scrollbarHighlightColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_scrollbarHighlightColor_Proxy(
    IHTMLStyle3* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle3_get_scrollbarHighlightColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_scrollbarDarkShadowColor_Proxy(
    IHTMLStyle3* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle3_put_scrollbarDarkShadowColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_scrollbarDarkShadowColor_Proxy(
    IHTMLStyle3* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle3_get_scrollbarDarkShadowColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_scrollbarArrowColor_Proxy(
    IHTMLStyle3* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle3_put_scrollbarArrowColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_scrollbarArrowColor_Proxy(
    IHTMLStyle3* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle3_get_scrollbarArrowColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_scrollbarTrackColor_Proxy(
    IHTMLStyle3* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle3_put_scrollbarTrackColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_scrollbarTrackColor_Proxy(
    IHTMLStyle3* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle3_get_scrollbarTrackColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_writingMode_Proxy(
    IHTMLStyle3* This,
    BSTR v);
void __RPC_STUB IHTMLStyle3_put_writingMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_writingMode_Proxy(
    IHTMLStyle3* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle3_get_writingMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_textAlignLast_Proxy(
    IHTMLStyle3* This,
    BSTR v);
void __RPC_STUB IHTMLStyle3_put_textAlignLast_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_textAlignLast_Proxy(
    IHTMLStyle3* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle3_get_textAlignLast_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_put_textKashidaSpace_Proxy(
    IHTMLStyle3* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle3_put_textKashidaSpace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle3_get_textKashidaSpace_Proxy(
    IHTMLStyle3* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle3_get_textKashidaSpace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLStyle3_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLStyle4 interface
 */
#ifndef __IHTMLStyle4_INTERFACE_DEFINED__
#define __IHTMLStyle4_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLStyle4, 0x3050f816, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLStyle4 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_textOverflow(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textOverflow(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_minHeight(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_minHeight(
        VARIANT *p) = 0;

};
#else
typedef struct IHTMLStyle4Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLStyle4* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLStyle4* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLStyle4* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLStyle4* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLStyle4* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLStyle4* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLStyle4* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLStyle4 methods ***/
    HRESULT (STDMETHODCALLTYPE *put_textOverflow)(
        IHTMLStyle4* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textOverflow)(
        IHTMLStyle4* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_minHeight)(
        IHTMLStyle4* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_minHeight)(
        IHTMLStyle4* This,
        VARIANT *p);

    END_INTERFACE
} IHTMLStyle4Vtbl;
interface IHTMLStyle4 {
    CONST_VTBL IHTMLStyle4Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLStyle4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLStyle4_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLStyle4_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLStyle4_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLStyle4_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLStyle4_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLStyle4_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLStyle4 methods ***/
#define IHTMLStyle4_put_textOverflow(This,v) (This)->lpVtbl->put_textOverflow(This,v)
#define IHTMLStyle4_get_textOverflow(This,p) (This)->lpVtbl->get_textOverflow(This,p)
#define IHTMLStyle4_put_minHeight(This,v) (This)->lpVtbl->put_minHeight(This,v)
#define IHTMLStyle4_get_minHeight(This,p) (This)->lpVtbl->get_minHeight(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLStyle4_put_textOverflow_Proxy(
    IHTMLStyle4* This,
    BSTR v);
void __RPC_STUB IHTMLStyle4_put_textOverflow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle4_get_textOverflow_Proxy(
    IHTMLStyle4* This,
    BSTR *p);
void __RPC_STUB IHTMLStyle4_get_textOverflow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle4_put_minHeight_Proxy(
    IHTMLStyle4* This,
    VARIANT v);
void __RPC_STUB IHTMLStyle4_put_minHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyle4_get_minHeight_Proxy(
    IHTMLStyle4* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyle4_get_minHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLStyle4_INTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLStyle coclass
 */

DEFINE_GUID(CLSID_HTMLStyle, 0x3050f285, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLRenderStyle interface
 */
#ifndef __IHTMLRenderStyle_INTERFACE_DEFINED__
#define __IHTMLRenderStyle_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLRenderStyle, 0x3050f6ae, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLRenderStyle : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_textLineThroughStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textLineThroughStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textUnderlineStyle(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textUnderlineStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textEffect(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textEffect(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textBackgroundColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textBackgroundColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecorationColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecorationColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_renderingPriority(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_renderingPriority(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_defaultTextSelection(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_defaultTextSelection(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_textDecoration(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecoration(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLRenderStyleVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLRenderStyle* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLRenderStyle* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLRenderStyle* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLRenderStyle* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLRenderStyle* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLRenderStyle* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLRenderStyle* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLRenderStyle methods ***/
    HRESULT (STDMETHODCALLTYPE *put_textLineThroughStyle)(
        IHTMLRenderStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textLineThroughStyle)(
        IHTMLRenderStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textUnderlineStyle)(
        IHTMLRenderStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textUnderlineStyle)(
        IHTMLRenderStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textEffect)(
        IHTMLRenderStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textEffect)(
        IHTMLRenderStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textColor)(
        IHTMLRenderStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_textColor)(
        IHTMLRenderStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_textBackgroundColor)(
        IHTMLRenderStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_textBackgroundColor)(
        IHTMLRenderStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecorationColor)(
        IHTMLRenderStyle* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_textDecorationColor)(
        IHTMLRenderStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_renderingPriority)(
        IHTMLRenderStyle* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_renderingPriority)(
        IHTMLRenderStyle* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_defaultTextSelection)(
        IHTMLRenderStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_defaultTextSelection)(
        IHTMLRenderStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_textDecoration)(
        IHTMLRenderStyle* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_textDecoration)(
        IHTMLRenderStyle* This,
        BSTR *p);

    END_INTERFACE
} IHTMLRenderStyleVtbl;
interface IHTMLRenderStyle {
    CONST_VTBL IHTMLRenderStyleVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLRenderStyle_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLRenderStyle_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLRenderStyle_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLRenderStyle_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLRenderStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLRenderStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLRenderStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLRenderStyle methods ***/
#define IHTMLRenderStyle_put_textLineThroughStyle(This,v) (This)->lpVtbl->put_textLineThroughStyle(This,v)
#define IHTMLRenderStyle_get_textLineThroughStyle(This,p) (This)->lpVtbl->get_textLineThroughStyle(This,p)
#define IHTMLRenderStyle_put_textUnderlineStyle(This,v) (This)->lpVtbl->put_textUnderlineStyle(This,v)
#define IHTMLRenderStyle_get_textUnderlineStyle(This,p) (This)->lpVtbl->get_textUnderlineStyle(This,p)
#define IHTMLRenderStyle_put_textEffect(This,v) (This)->lpVtbl->put_textEffect(This,v)
#define IHTMLRenderStyle_get_textEffect(This,p) (This)->lpVtbl->get_textEffect(This,p)
#define IHTMLRenderStyle_put_textColor(This,v) (This)->lpVtbl->put_textColor(This,v)
#define IHTMLRenderStyle_get_textColor(This,p) (This)->lpVtbl->get_textColor(This,p)
#define IHTMLRenderStyle_put_textBackgroundColor(This,v) (This)->lpVtbl->put_textBackgroundColor(This,v)
#define IHTMLRenderStyle_get_textBackgroundColor(This,p) (This)->lpVtbl->get_textBackgroundColor(This,p)
#define IHTMLRenderStyle_put_textDecorationColor(This,v) (This)->lpVtbl->put_textDecorationColor(This,v)
#define IHTMLRenderStyle_get_textDecorationColor(This,p) (This)->lpVtbl->get_textDecorationColor(This,p)
#define IHTMLRenderStyle_put_renderingPriority(This,v) (This)->lpVtbl->put_renderingPriority(This,v)
#define IHTMLRenderStyle_get_renderingPriority(This,p) (This)->lpVtbl->get_renderingPriority(This,p)
#define IHTMLRenderStyle_put_defaultTextSelection(This,v) (This)->lpVtbl->put_defaultTextSelection(This,v)
#define IHTMLRenderStyle_get_defaultTextSelection(This,p) (This)->lpVtbl->get_defaultTextSelection(This,p)
#define IHTMLRenderStyle_put_textDecoration(This,v) (This)->lpVtbl->put_textDecoration(This,v)
#define IHTMLRenderStyle_get_textDecoration(This,p) (This)->lpVtbl->get_textDecoration(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_put_textLineThroughStyle_Proxy(
    IHTMLRenderStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRenderStyle_put_textLineThroughStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_get_textLineThroughStyle_Proxy(
    IHTMLRenderStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRenderStyle_get_textLineThroughStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_put_textUnderlineStyle_Proxy(
    IHTMLRenderStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRenderStyle_put_textUnderlineStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_get_textUnderlineStyle_Proxy(
    IHTMLRenderStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRenderStyle_get_textUnderlineStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_put_textEffect_Proxy(
    IHTMLRenderStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRenderStyle_put_textEffect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_get_textEffect_Proxy(
    IHTMLRenderStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRenderStyle_get_textEffect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_put_textColor_Proxy(
    IHTMLRenderStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRenderStyle_put_textColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_get_textColor_Proxy(
    IHTMLRenderStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRenderStyle_get_textColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_put_textBackgroundColor_Proxy(
    IHTMLRenderStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRenderStyle_put_textBackgroundColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_get_textBackgroundColor_Proxy(
    IHTMLRenderStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRenderStyle_get_textBackgroundColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_put_textDecorationColor_Proxy(
    IHTMLRenderStyle* This,
    VARIANT v);
void __RPC_STUB IHTMLRenderStyle_put_textDecorationColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_get_textDecorationColor_Proxy(
    IHTMLRenderStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLRenderStyle_get_textDecorationColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_put_renderingPriority_Proxy(
    IHTMLRenderStyle* This,
    LONG v);
void __RPC_STUB IHTMLRenderStyle_put_renderingPriority_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_get_renderingPriority_Proxy(
    IHTMLRenderStyle* This,
    LONG *p);
void __RPC_STUB IHTMLRenderStyle_get_renderingPriority_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_put_defaultTextSelection_Proxy(
    IHTMLRenderStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRenderStyle_put_defaultTextSelection_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_get_defaultTextSelection_Proxy(
    IHTMLRenderStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRenderStyle_get_defaultTextSelection_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_put_textDecoration_Proxy(
    IHTMLRenderStyle* This,
    BSTR v);
void __RPC_STUB IHTMLRenderStyle_put_textDecoration_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRenderStyle_get_textDecoration_Proxy(
    IHTMLRenderStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLRenderStyle_get_textDecoration_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLRenderStyle_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLCurrentStyle interface
 */
#ifndef __IHTMLCurrentStyle_INTERFACE_DEFINED__
#define __IHTMLCurrentStyle_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLCurrentStyle, 0x3050f3db, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLCurrentStyle : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_position(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_styleFloat(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_color(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontFamily(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontVariant(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontWeight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontSize(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundImage(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundPositionX(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundPositionY(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundRepeat(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderLeftColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderTopColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderRightColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderBottomColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderTopStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderRightStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderBottomStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderLeftStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderTopWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderRightWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderBottomWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderLeftWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_left(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_top(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_width(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_height(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_paddingLeft(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_paddingTop(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_paddingRight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_paddingBottom(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textAlign(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDecoration(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_display(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_visibility(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_zIndex(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_letterSpacing(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_lineHeight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textIndent(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_verticalAlign(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundAttachment(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginTop(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginRight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginBottom(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginLeft(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clear(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_listStyleType(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_listStylePosition(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_listStyleImage(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clipTop(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clipRight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clipBottom(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clipLeft(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_overflow(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pageBreakBefore(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pageBreakAfter(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cursor(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_tableLayout(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderCollapse(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_direction(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_behavior(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE getAttribute(
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT *AttributeValue) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_unicodeBidi(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_right(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_bottom(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_imeMode(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rubyAlign(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rubyPosition(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rubyOverhang(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textAutospace(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_lineBreak(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_wordBreak(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textJustify(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textJustifyTrim(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textKashida(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_blockDirection(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_layoutGridChar(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_layoutGridLine(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_layoutGridMode(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_layoutGridType(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderStyle(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderColor(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderWidth(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_padding(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_margin(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_accelerator(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_overflowX(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_overflowY(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textTransform(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLCurrentStyleVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLCurrentStyle* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLCurrentStyle* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLCurrentStyle* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLCurrentStyle* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLCurrentStyle* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLCurrentStyle* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLCurrentStyle* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLCurrentStyle methods ***/
    HRESULT (STDMETHODCALLTYPE *get_position)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_styleFloat)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_color)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_backgroundColor)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_fontFamily)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_fontStyle)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_fontVariant)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_fontWeight)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_fontSize)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_backgroundImage)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_backgroundPositionX)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_backgroundPositionY)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_backgroundRepeat)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_borderLeftColor)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_borderTopColor)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_borderRightColor)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_borderBottomColor)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_borderTopStyle)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_borderRightStyle)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_borderBottomStyle)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_borderLeftStyle)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_borderTopWidth)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_borderRightWidth)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_borderBottomWidth)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_borderLeftWidth)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_left)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_top)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_width)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_height)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_paddingLeft)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_paddingTop)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_paddingRight)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_paddingBottom)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_textAlign)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_textDecoration)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_display)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_visibility)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_zIndex)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_letterSpacing)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_lineHeight)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_textIndent)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_verticalAlign)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_backgroundAttachment)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_marginTop)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_marginRight)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_marginBottom)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_marginLeft)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_clear)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_listStyleType)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_listStylePosition)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_listStyleImage)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_clipTop)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_clipRight)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_clipBottom)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_clipLeft)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_overflow)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_pageBreakBefore)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_pageBreakAfter)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_cursor)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_tableLayout)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_borderCollapse)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_direction)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_behavior)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *getAttribute)(
        IHTMLCurrentStyle* This,
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT *AttributeValue);

    HRESULT (STDMETHODCALLTYPE *get_unicodeBidi)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_right)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_bottom)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_imeMode)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_rubyAlign)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_rubyPosition)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_rubyOverhang)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_textAutospace)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_lineBreak)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_wordBreak)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_textJustify)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_textJustifyTrim)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_textKashida)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_blockDirection)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_layoutGridChar)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_layoutGridLine)(
        IHTMLCurrentStyle* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_layoutGridMode)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_layoutGridType)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_borderStyle)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_borderColor)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_borderWidth)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_padding)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_margin)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_accelerator)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_overflowX)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_overflowY)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_textTransform)(
        IHTMLCurrentStyle* This,
        BSTR *p);

    END_INTERFACE
} IHTMLCurrentStyleVtbl;
interface IHTMLCurrentStyle {
    CONST_VTBL IHTMLCurrentStyleVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLCurrentStyle_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLCurrentStyle_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLCurrentStyle_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLCurrentStyle_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLCurrentStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLCurrentStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLCurrentStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLCurrentStyle methods ***/
#define IHTMLCurrentStyle_get_position(This,p) (This)->lpVtbl->get_position(This,p)
#define IHTMLCurrentStyle_get_styleFloat(This,p) (This)->lpVtbl->get_styleFloat(This,p)
#define IHTMLCurrentStyle_get_color(This,p) (This)->lpVtbl->get_color(This,p)
#define IHTMLCurrentStyle_get_backgroundColor(This,p) (This)->lpVtbl->get_backgroundColor(This,p)
#define IHTMLCurrentStyle_get_fontFamily(This,p) (This)->lpVtbl->get_fontFamily(This,p)
#define IHTMLCurrentStyle_get_fontStyle(This,p) (This)->lpVtbl->get_fontStyle(This,p)
#define IHTMLCurrentStyle_get_fontVariant(This,p) (This)->lpVtbl->get_fontVariant(This,p)
#define IHTMLCurrentStyle_get_fontWeight(This,p) (This)->lpVtbl->get_fontWeight(This,p)
#define IHTMLCurrentStyle_get_fontSize(This,p) (This)->lpVtbl->get_fontSize(This,p)
#define IHTMLCurrentStyle_get_backgroundImage(This,p) (This)->lpVtbl->get_backgroundImage(This,p)
#define IHTMLCurrentStyle_get_backgroundPositionX(This,p) (This)->lpVtbl->get_backgroundPositionX(This,p)
#define IHTMLCurrentStyle_get_backgroundPositionY(This,p) (This)->lpVtbl->get_backgroundPositionY(This,p)
#define IHTMLCurrentStyle_get_backgroundRepeat(This,p) (This)->lpVtbl->get_backgroundRepeat(This,p)
#define IHTMLCurrentStyle_get_borderLeftColor(This,p) (This)->lpVtbl->get_borderLeftColor(This,p)
#define IHTMLCurrentStyle_get_borderTopColor(This,p) (This)->lpVtbl->get_borderTopColor(This,p)
#define IHTMLCurrentStyle_get_borderRightColor(This,p) (This)->lpVtbl->get_borderRightColor(This,p)
#define IHTMLCurrentStyle_get_borderBottomColor(This,p) (This)->lpVtbl->get_borderBottomColor(This,p)
#define IHTMLCurrentStyle_get_borderTopStyle(This,p) (This)->lpVtbl->get_borderTopStyle(This,p)
#define IHTMLCurrentStyle_get_borderRightStyle(This,p) (This)->lpVtbl->get_borderRightStyle(This,p)
#define IHTMLCurrentStyle_get_borderBottomStyle(This,p) (This)->lpVtbl->get_borderBottomStyle(This,p)
#define IHTMLCurrentStyle_get_borderLeftStyle(This,p) (This)->lpVtbl->get_borderLeftStyle(This,p)
#define IHTMLCurrentStyle_get_borderTopWidth(This,p) (This)->lpVtbl->get_borderTopWidth(This,p)
#define IHTMLCurrentStyle_get_borderRightWidth(This,p) (This)->lpVtbl->get_borderRightWidth(This,p)
#define IHTMLCurrentStyle_get_borderBottomWidth(This,p) (This)->lpVtbl->get_borderBottomWidth(This,p)
#define IHTMLCurrentStyle_get_borderLeftWidth(This,p) (This)->lpVtbl->get_borderLeftWidth(This,p)
#define IHTMLCurrentStyle_get_left(This,p) (This)->lpVtbl->get_left(This,p)
#define IHTMLCurrentStyle_get_top(This,p) (This)->lpVtbl->get_top(This,p)
#define IHTMLCurrentStyle_get_width(This,p) (This)->lpVtbl->get_width(This,p)
#define IHTMLCurrentStyle_get_height(This,p) (This)->lpVtbl->get_height(This,p)
#define IHTMLCurrentStyle_get_paddingLeft(This,p) (This)->lpVtbl->get_paddingLeft(This,p)
#define IHTMLCurrentStyle_get_paddingTop(This,p) (This)->lpVtbl->get_paddingTop(This,p)
#define IHTMLCurrentStyle_get_paddingRight(This,p) (This)->lpVtbl->get_paddingRight(This,p)
#define IHTMLCurrentStyle_get_paddingBottom(This,p) (This)->lpVtbl->get_paddingBottom(This,p)
#define IHTMLCurrentStyle_get_textAlign(This,p) (This)->lpVtbl->get_textAlign(This,p)
#define IHTMLCurrentStyle_get_textDecoration(This,p) (This)->lpVtbl->get_textDecoration(This,p)
#define IHTMLCurrentStyle_get_display(This,p) (This)->lpVtbl->get_display(This,p)
#define IHTMLCurrentStyle_get_visibility(This,p) (This)->lpVtbl->get_visibility(This,p)
#define IHTMLCurrentStyle_get_zIndex(This,p) (This)->lpVtbl->get_zIndex(This,p)
#define IHTMLCurrentStyle_get_letterSpacing(This,p) (This)->lpVtbl->get_letterSpacing(This,p)
#define IHTMLCurrentStyle_get_lineHeight(This,p) (This)->lpVtbl->get_lineHeight(This,p)
#define IHTMLCurrentStyle_get_textIndent(This,p) (This)->lpVtbl->get_textIndent(This,p)
#define IHTMLCurrentStyle_get_verticalAlign(This,p) (This)->lpVtbl->get_verticalAlign(This,p)
#define IHTMLCurrentStyle_get_backgroundAttachment(This,p) (This)->lpVtbl->get_backgroundAttachment(This,p)
#define IHTMLCurrentStyle_get_marginTop(This,p) (This)->lpVtbl->get_marginTop(This,p)
#define IHTMLCurrentStyle_get_marginRight(This,p) (This)->lpVtbl->get_marginRight(This,p)
#define IHTMLCurrentStyle_get_marginBottom(This,p) (This)->lpVtbl->get_marginBottom(This,p)
#define IHTMLCurrentStyle_get_marginLeft(This,p) (This)->lpVtbl->get_marginLeft(This,p)
#define IHTMLCurrentStyle_get_clear(This,p) (This)->lpVtbl->get_clear(This,p)
#define IHTMLCurrentStyle_get_listStyleType(This,p) (This)->lpVtbl->get_listStyleType(This,p)
#define IHTMLCurrentStyle_get_listStylePosition(This,p) (This)->lpVtbl->get_listStylePosition(This,p)
#define IHTMLCurrentStyle_get_listStyleImage(This,p) (This)->lpVtbl->get_listStyleImage(This,p)
#define IHTMLCurrentStyle_get_clipTop(This,p) (This)->lpVtbl->get_clipTop(This,p)
#define IHTMLCurrentStyle_get_clipRight(This,p) (This)->lpVtbl->get_clipRight(This,p)
#define IHTMLCurrentStyle_get_clipBottom(This,p) (This)->lpVtbl->get_clipBottom(This,p)
#define IHTMLCurrentStyle_get_clipLeft(This,p) (This)->lpVtbl->get_clipLeft(This,p)
#define IHTMLCurrentStyle_get_overflow(This,p) (This)->lpVtbl->get_overflow(This,p)
#define IHTMLCurrentStyle_get_pageBreakBefore(This,p) (This)->lpVtbl->get_pageBreakBefore(This,p)
#define IHTMLCurrentStyle_get_pageBreakAfter(This,p) (This)->lpVtbl->get_pageBreakAfter(This,p)
#define IHTMLCurrentStyle_get_cursor(This,p) (This)->lpVtbl->get_cursor(This,p)
#define IHTMLCurrentStyle_get_tableLayout(This,p) (This)->lpVtbl->get_tableLayout(This,p)
#define IHTMLCurrentStyle_get_borderCollapse(This,p) (This)->lpVtbl->get_borderCollapse(This,p)
#define IHTMLCurrentStyle_get_direction(This,p) (This)->lpVtbl->get_direction(This,p)
#define IHTMLCurrentStyle_get_behavior(This,p) (This)->lpVtbl->get_behavior(This,p)
#define IHTMLCurrentStyle_getAttribute(This,strAttributeName,lFlags,AttributeValue) (This)->lpVtbl->getAttribute(This,strAttributeName,lFlags,AttributeValue)
#define IHTMLCurrentStyle_get_unicodeBidi(This,p) (This)->lpVtbl->get_unicodeBidi(This,p)
#define IHTMLCurrentStyle_get_right(This,p) (This)->lpVtbl->get_right(This,p)
#define IHTMLCurrentStyle_get_bottom(This,p) (This)->lpVtbl->get_bottom(This,p)
#define IHTMLCurrentStyle_get_imeMode(This,p) (This)->lpVtbl->get_imeMode(This,p)
#define IHTMLCurrentStyle_get_rubyAlign(This,p) (This)->lpVtbl->get_rubyAlign(This,p)
#define IHTMLCurrentStyle_get_rubyPosition(This,p) (This)->lpVtbl->get_rubyPosition(This,p)
#define IHTMLCurrentStyle_get_rubyOverhang(This,p) (This)->lpVtbl->get_rubyOverhang(This,p)
#define IHTMLCurrentStyle_get_textAutospace(This,p) (This)->lpVtbl->get_textAutospace(This,p)
#define IHTMLCurrentStyle_get_lineBreak(This,p) (This)->lpVtbl->get_lineBreak(This,p)
#define IHTMLCurrentStyle_get_wordBreak(This,p) (This)->lpVtbl->get_wordBreak(This,p)
#define IHTMLCurrentStyle_get_textJustify(This,p) (This)->lpVtbl->get_textJustify(This,p)
#define IHTMLCurrentStyle_get_textJustifyTrim(This,p) (This)->lpVtbl->get_textJustifyTrim(This,p)
#define IHTMLCurrentStyle_get_textKashida(This,p) (This)->lpVtbl->get_textKashida(This,p)
#define IHTMLCurrentStyle_get_blockDirection(This,p) (This)->lpVtbl->get_blockDirection(This,p)
#define IHTMLCurrentStyle_get_layoutGridChar(This,p) (This)->lpVtbl->get_layoutGridChar(This,p)
#define IHTMLCurrentStyle_get_layoutGridLine(This,p) (This)->lpVtbl->get_layoutGridLine(This,p)
#define IHTMLCurrentStyle_get_layoutGridMode(This,p) (This)->lpVtbl->get_layoutGridMode(This,p)
#define IHTMLCurrentStyle_get_layoutGridType(This,p) (This)->lpVtbl->get_layoutGridType(This,p)
#define IHTMLCurrentStyle_get_borderStyle(This,p) (This)->lpVtbl->get_borderStyle(This,p)
#define IHTMLCurrentStyle_get_borderColor(This,p) (This)->lpVtbl->get_borderColor(This,p)
#define IHTMLCurrentStyle_get_borderWidth(This,p) (This)->lpVtbl->get_borderWidth(This,p)
#define IHTMLCurrentStyle_get_padding(This,p) (This)->lpVtbl->get_padding(This,p)
#define IHTMLCurrentStyle_get_margin(This,p) (This)->lpVtbl->get_margin(This,p)
#define IHTMLCurrentStyle_get_accelerator(This,p) (This)->lpVtbl->get_accelerator(This,p)
#define IHTMLCurrentStyle_get_overflowX(This,p) (This)->lpVtbl->get_overflowX(This,p)
#define IHTMLCurrentStyle_get_overflowY(This,p) (This)->lpVtbl->get_overflowY(This,p)
#define IHTMLCurrentStyle_get_textTransform(This,p) (This)->lpVtbl->get_textTransform(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_position_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_position_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_styleFloat_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_styleFloat_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_color_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_color_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_backgroundColor_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_backgroundColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_fontFamily_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_fontFamily_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_fontStyle_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_fontStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_fontVariant_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_fontVariant_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_fontWeight_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_fontWeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_fontSize_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_fontSize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_backgroundImage_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_backgroundImage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_backgroundPositionX_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_backgroundPositionX_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_backgroundPositionY_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_backgroundPositionY_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_backgroundRepeat_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_backgroundRepeat_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderLeftColor_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderLeftColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderTopColor_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderTopColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderRightColor_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderRightColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderBottomColor_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderBottomColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderTopStyle_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderTopStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderRightStyle_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderRightStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderBottomStyle_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderBottomStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderLeftStyle_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderLeftStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderTopWidth_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderTopWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderRightWidth_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderRightWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderBottomWidth_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderBottomWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderLeftWidth_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderLeftWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_left_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_left_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_top_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_top_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_width_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_height_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_paddingLeft_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_paddingLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_paddingTop_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_paddingTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_paddingRight_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_paddingRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_paddingBottom_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_paddingBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_textAlign_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_textAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_textDecoration_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_textDecoration_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_display_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_display_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_visibility_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_visibility_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_zIndex_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_zIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_letterSpacing_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_letterSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_lineHeight_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_lineHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_textIndent_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_textIndent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_verticalAlign_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_verticalAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_backgroundAttachment_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_backgroundAttachment_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_marginTop_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_marginTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_marginRight_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_marginRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_marginBottom_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_marginBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_marginLeft_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_marginLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_clear_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_clear_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_listStyleType_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_listStyleType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_listStylePosition_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_listStylePosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_listStyleImage_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_listStyleImage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_clipTop_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_clipTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_clipRight_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_clipRight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_clipBottom_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_clipBottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_clipLeft_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_clipLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_overflow_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_overflow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_pageBreakBefore_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_pageBreakBefore_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_pageBreakAfter_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_pageBreakAfter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_cursor_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_cursor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_tableLayout_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_tableLayout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderCollapse_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderCollapse_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_direction_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_direction_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_behavior_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_behavior_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_getAttribute_Proxy(
    IHTMLCurrentStyle* This,
    BSTR strAttributeName,
    LONG lFlags,
    VARIANT *AttributeValue);
void __RPC_STUB IHTMLCurrentStyle_getAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_unicodeBidi_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_unicodeBidi_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_right_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_right_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_bottom_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_bottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_imeMode_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_imeMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_rubyAlign_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_rubyAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_rubyPosition_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_rubyPosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_rubyOverhang_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_rubyOverhang_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_textAutospace_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_textAutospace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_lineBreak_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_lineBreak_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_wordBreak_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_wordBreak_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_textJustify_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_textJustify_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_textJustifyTrim_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_textJustifyTrim_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_textKashida_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_textKashida_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_blockDirection_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_blockDirection_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_layoutGridChar_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_layoutGridChar_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_layoutGridLine_Proxy(
    IHTMLCurrentStyle* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle_get_layoutGridLine_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_layoutGridMode_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_layoutGridMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_layoutGridType_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_layoutGridType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderStyle_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderColor_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_borderWidth_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_borderWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_padding_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_padding_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_margin_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_margin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_accelerator_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_accelerator_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_overflowX_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_overflowX_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_overflowY_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_overflowY_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle_get_textTransform_Proxy(
    IHTMLCurrentStyle* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle_get_textTransform_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLCurrentStyle_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLCurrentStyle2 interface
 */
#ifndef __IHTMLCurrentStyle2_INTERFACE_DEFINED__
#define __IHTMLCurrentStyle2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLCurrentStyle2, 0x3050f658, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLCurrentStyle2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_layoutFlow(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_wordWrap(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textUnderlinePosition(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hasLayout(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarBaseColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarFaceColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbar3dLightColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarShadowColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarHighlightColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarDarkShadowColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarArrowColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollbarTrackColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_writingMode(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_zoom(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_filter(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textAlignLast(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textKashidaSpace(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_isBlock(
        VARIANT_BOOL *p) = 0;

};
#else
typedef struct IHTMLCurrentStyle2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLCurrentStyle2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLCurrentStyle2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLCurrentStyle2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLCurrentStyle2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLCurrentStyle2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLCurrentStyle2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLCurrentStyle2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLCurrentStyle2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_layoutFlow)(
        IHTMLCurrentStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_wordWrap)(
        IHTMLCurrentStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_textUnderlinePosition)(
        IHTMLCurrentStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_hasLayout)(
        IHTMLCurrentStyle2* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarBaseColor)(
        IHTMLCurrentStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarFaceColor)(
        IHTMLCurrentStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_scrollbar3dLightColor)(
        IHTMLCurrentStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarShadowColor)(
        IHTMLCurrentStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarHighlightColor)(
        IHTMLCurrentStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarDarkShadowColor)(
        IHTMLCurrentStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarArrowColor)(
        IHTMLCurrentStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_scrollbarTrackColor)(
        IHTMLCurrentStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_writingMode)(
        IHTMLCurrentStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_zoom)(
        IHTMLCurrentStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_filter)(
        IHTMLCurrentStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_textAlignLast)(
        IHTMLCurrentStyle2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_textKashidaSpace)(
        IHTMLCurrentStyle2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_isBlock)(
        IHTMLCurrentStyle2* This,
        VARIANT_BOOL *p);

    END_INTERFACE
} IHTMLCurrentStyle2Vtbl;
interface IHTMLCurrentStyle2 {
    CONST_VTBL IHTMLCurrentStyle2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLCurrentStyle2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLCurrentStyle2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLCurrentStyle2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLCurrentStyle2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLCurrentStyle2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLCurrentStyle2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLCurrentStyle2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLCurrentStyle2 methods ***/
#define IHTMLCurrentStyle2_get_layoutFlow(This,p) (This)->lpVtbl->get_layoutFlow(This,p)
#define IHTMLCurrentStyle2_get_wordWrap(This,p) (This)->lpVtbl->get_wordWrap(This,p)
#define IHTMLCurrentStyle2_get_textUnderlinePosition(This,p) (This)->lpVtbl->get_textUnderlinePosition(This,p)
#define IHTMLCurrentStyle2_get_hasLayout(This,p) (This)->lpVtbl->get_hasLayout(This,p)
#define IHTMLCurrentStyle2_get_scrollbarBaseColor(This,p) (This)->lpVtbl->get_scrollbarBaseColor(This,p)
#define IHTMLCurrentStyle2_get_scrollbarFaceColor(This,p) (This)->lpVtbl->get_scrollbarFaceColor(This,p)
#define IHTMLCurrentStyle2_get_scrollbar3dLightColor(This,p) (This)->lpVtbl->get_scrollbar3dLightColor(This,p)
#define IHTMLCurrentStyle2_get_scrollbarShadowColor(This,p) (This)->lpVtbl->get_scrollbarShadowColor(This,p)
#define IHTMLCurrentStyle2_get_scrollbarHighlightColor(This,p) (This)->lpVtbl->get_scrollbarHighlightColor(This,p)
#define IHTMLCurrentStyle2_get_scrollbarDarkShadowColor(This,p) (This)->lpVtbl->get_scrollbarDarkShadowColor(This,p)
#define IHTMLCurrentStyle2_get_scrollbarArrowColor(This,p) (This)->lpVtbl->get_scrollbarArrowColor(This,p)
#define IHTMLCurrentStyle2_get_scrollbarTrackColor(This,p) (This)->lpVtbl->get_scrollbarTrackColor(This,p)
#define IHTMLCurrentStyle2_get_writingMode(This,p) (This)->lpVtbl->get_writingMode(This,p)
#define IHTMLCurrentStyle2_get_zoom(This,p) (This)->lpVtbl->get_zoom(This,p)
#define IHTMLCurrentStyle2_get_filter(This,p) (This)->lpVtbl->get_filter(This,p)
#define IHTMLCurrentStyle2_get_textAlignLast(This,p) (This)->lpVtbl->get_textAlignLast(This,p)
#define IHTMLCurrentStyle2_get_textKashidaSpace(This,p) (This)->lpVtbl->get_textKashidaSpace(This,p)
#define IHTMLCurrentStyle2_get_isBlock(This,p) (This)->lpVtbl->get_isBlock(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_layoutFlow_Proxy(
    IHTMLCurrentStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle2_get_layoutFlow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_wordWrap_Proxy(
    IHTMLCurrentStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle2_get_wordWrap_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_textUnderlinePosition_Proxy(
    IHTMLCurrentStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle2_get_textUnderlinePosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_hasLayout_Proxy(
    IHTMLCurrentStyle2* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLCurrentStyle2_get_hasLayout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_scrollbarBaseColor_Proxy(
    IHTMLCurrentStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle2_get_scrollbarBaseColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_scrollbarFaceColor_Proxy(
    IHTMLCurrentStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle2_get_scrollbarFaceColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_scrollbar3dLightColor_Proxy(
    IHTMLCurrentStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle2_get_scrollbar3dLightColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_scrollbarShadowColor_Proxy(
    IHTMLCurrentStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle2_get_scrollbarShadowColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_scrollbarHighlightColor_Proxy(
    IHTMLCurrentStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle2_get_scrollbarHighlightColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_scrollbarDarkShadowColor_Proxy(
    IHTMLCurrentStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle2_get_scrollbarDarkShadowColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_scrollbarArrowColor_Proxy(
    IHTMLCurrentStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle2_get_scrollbarArrowColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_scrollbarTrackColor_Proxy(
    IHTMLCurrentStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle2_get_scrollbarTrackColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_writingMode_Proxy(
    IHTMLCurrentStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle2_get_writingMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_zoom_Proxy(
    IHTMLCurrentStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle2_get_zoom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_filter_Proxy(
    IHTMLCurrentStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle2_get_filter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_textAlignLast_Proxy(
    IHTMLCurrentStyle2* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle2_get_textAlignLast_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_textKashidaSpace_Proxy(
    IHTMLCurrentStyle2* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle2_get_textKashidaSpace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle2_get_isBlock_Proxy(
    IHTMLCurrentStyle2* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLCurrentStyle2_get_isBlock_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLCurrentStyle2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLCurrentStyle3 interface
 */
#ifndef __IHTMLCurrentStyle3_INTERFACE_DEFINED__
#define __IHTMLCurrentStyle3_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLCurrentStyle3, 0x3050f818, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLCurrentStyle3 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_textOverflow(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_minHeight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_wordSpacing(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_whiteSpace(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLCurrentStyle3Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLCurrentStyle3* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLCurrentStyle3* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLCurrentStyle3* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLCurrentStyle3* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLCurrentStyle3* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLCurrentStyle3* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLCurrentStyle3* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLCurrentStyle3 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_textOverflow)(
        IHTMLCurrentStyle3* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_minHeight)(
        IHTMLCurrentStyle3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_wordSpacing)(
        IHTMLCurrentStyle3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_whiteSpace)(
        IHTMLCurrentStyle3* This,
        BSTR *p);

    END_INTERFACE
} IHTMLCurrentStyle3Vtbl;
interface IHTMLCurrentStyle3 {
    CONST_VTBL IHTMLCurrentStyle3Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLCurrentStyle3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLCurrentStyle3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLCurrentStyle3_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLCurrentStyle3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLCurrentStyle3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLCurrentStyle3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLCurrentStyle3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLCurrentStyle3 methods ***/
#define IHTMLCurrentStyle3_get_textOverflow(This,p) (This)->lpVtbl->get_textOverflow(This,p)
#define IHTMLCurrentStyle3_get_minHeight(This,p) (This)->lpVtbl->get_minHeight(This,p)
#define IHTMLCurrentStyle3_get_wordSpacing(This,p) (This)->lpVtbl->get_wordSpacing(This,p)
#define IHTMLCurrentStyle3_get_whiteSpace(This,p) (This)->lpVtbl->get_whiteSpace(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle3_get_textOverflow_Proxy(
    IHTMLCurrentStyle3* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle3_get_textOverflow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle3_get_minHeight_Proxy(
    IHTMLCurrentStyle3* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle3_get_minHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle3_get_wordSpacing_Proxy(
    IHTMLCurrentStyle3* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle3_get_wordSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle3_get_whiteSpace_Proxy(
    IHTMLCurrentStyle3* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle3_get_whiteSpace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLCurrentStyle3_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLCurrentStyle4 interface
 */
#ifndef __IHTMLCurrentStyle4_INTERFACE_DEFINED__
#define __IHTMLCurrentStyle4_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLCurrentStyle4, 0x3050f33b, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLCurrentStyle4 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_msInterpolationMode(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_maxHeight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_minWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_maxWidth(
        VARIANT *p) = 0;

};
#else
typedef struct IHTMLCurrentStyle4Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLCurrentStyle4* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLCurrentStyle4* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLCurrentStyle4* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLCurrentStyle4* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLCurrentStyle4* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLCurrentStyle4* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLCurrentStyle4* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLCurrentStyle4 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_msInterpolationMode)(
        IHTMLCurrentStyle4* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_maxHeight)(
        IHTMLCurrentStyle4* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_minWidth)(
        IHTMLCurrentStyle4* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_maxWidth)(
        IHTMLCurrentStyle4* This,
        VARIANT *p);

    END_INTERFACE
} IHTMLCurrentStyle4Vtbl;
interface IHTMLCurrentStyle4 {
    CONST_VTBL IHTMLCurrentStyle4Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLCurrentStyle4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLCurrentStyle4_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLCurrentStyle4_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLCurrentStyle4_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLCurrentStyle4_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLCurrentStyle4_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLCurrentStyle4_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLCurrentStyle4 methods ***/
#define IHTMLCurrentStyle4_get_msInterpolationMode(This,p) (This)->lpVtbl->get_msInterpolationMode(This,p)
#define IHTMLCurrentStyle4_get_maxHeight(This,p) (This)->lpVtbl->get_maxHeight(This,p)
#define IHTMLCurrentStyle4_get_minWidth(This,p) (This)->lpVtbl->get_minWidth(This,p)
#define IHTMLCurrentStyle4_get_maxWidth(This,p) (This)->lpVtbl->get_maxWidth(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle4_get_msInterpolationMode_Proxy(
    IHTMLCurrentStyle4* This,
    BSTR *p);
void __RPC_STUB IHTMLCurrentStyle4_get_msInterpolationMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle4_get_maxHeight_Proxy(
    IHTMLCurrentStyle4* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle4_get_maxHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle4_get_minWidth_Proxy(
    IHTMLCurrentStyle4* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle4_get_minWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCurrentStyle4_get_maxWidth_Proxy(
    IHTMLCurrentStyle4* This,
    VARIANT *p);
void __RPC_STUB IHTMLCurrentStyle4_get_maxWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLCurrentStyle4_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLCurrentStyle dispinterface
 */
#ifndef __DispHTMLCurrentStyle_DISPINTERFACE_DEFINED__
#define __DispHTMLCurrentStyle_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLCurrentStyle, 0x3050f557, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLCurrentStyle : public IDispatch
{
};
#else
typedef struct DispHTMLCurrentStyleVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLCurrentStyle* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLCurrentStyle* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLCurrentStyle* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLCurrentStyle* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLCurrentStyle* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLCurrentStyle* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLCurrentStyle* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLCurrentStyleVtbl;
interface DispHTMLCurrentStyle {
    CONST_VTBL DispHTMLCurrentStyleVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLCurrentStyle_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLCurrentStyle_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLCurrentStyle_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLCurrentStyle_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLCurrentStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLCurrentStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLCurrentStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLCurrentStyle_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLCurrentStyle coclass
 */

DEFINE_GUID(CLSID_HTMLCurrentStyle, 0x3050f3dc, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLRect interface
 */
#ifndef __IHTMLRect_INTERFACE_DEFINED__
#define __IHTMLRect_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLRect, 0x3050f4a3, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLRect : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_left(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_left(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_top(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_top(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_right(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_right(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_bottom(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_bottom(
        LONG *p) = 0;

};
#else
typedef struct IHTMLRectVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLRect* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLRect* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLRect* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLRect* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLRect* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLRect* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLRect* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLRect methods ***/
    HRESULT (STDMETHODCALLTYPE *put_left)(
        IHTMLRect* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_left)(
        IHTMLRect* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_top)(
        IHTMLRect* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_top)(
        IHTMLRect* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_right)(
        IHTMLRect* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_right)(
        IHTMLRect* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_bottom)(
        IHTMLRect* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_bottom)(
        IHTMLRect* This,
        LONG *p);

    END_INTERFACE
} IHTMLRectVtbl;
interface IHTMLRect {
    CONST_VTBL IHTMLRectVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLRect_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLRect_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLRect_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLRect_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLRect_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLRect_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLRect_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLRect methods ***/
#define IHTMLRect_put_left(This,v) (This)->lpVtbl->put_left(This,v)
#define IHTMLRect_get_left(This,p) (This)->lpVtbl->get_left(This,p)
#define IHTMLRect_put_top(This,v) (This)->lpVtbl->put_top(This,v)
#define IHTMLRect_get_top(This,p) (This)->lpVtbl->get_top(This,p)
#define IHTMLRect_put_right(This,v) (This)->lpVtbl->put_right(This,v)
#define IHTMLRect_get_right(This,p) (This)->lpVtbl->get_right(This,p)
#define IHTMLRect_put_bottom(This,v) (This)->lpVtbl->put_bottom(This,v)
#define IHTMLRect_get_bottom(This,p) (This)->lpVtbl->get_bottom(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLRect_put_left_Proxy(
    IHTMLRect* This,
    LONG v);
void __RPC_STUB IHTMLRect_put_left_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRect_get_left_Proxy(
    IHTMLRect* This,
    LONG *p);
void __RPC_STUB IHTMLRect_get_left_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRect_put_top_Proxy(
    IHTMLRect* This,
    LONG v);
void __RPC_STUB IHTMLRect_put_top_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRect_get_top_Proxy(
    IHTMLRect* This,
    LONG *p);
void __RPC_STUB IHTMLRect_get_top_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRect_put_right_Proxy(
    IHTMLRect* This,
    LONG v);
void __RPC_STUB IHTMLRect_put_right_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRect_get_right_Proxy(
    IHTMLRect* This,
    LONG *p);
void __RPC_STUB IHTMLRect_get_right_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRect_put_bottom_Proxy(
    IHTMLRect* This,
    LONG v);
void __RPC_STUB IHTMLRect_put_bottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRect_get_bottom_Proxy(
    IHTMLRect* This,
    LONG *p);
void __RPC_STUB IHTMLRect_get_bottom_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLRect_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLRectCollection interface
 */
#ifndef __IHTMLRectCollection_INTERFACE_DEFINED__
#define __IHTMLRectCollection_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLRectCollection, 0x3050f4a4, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLRectCollection : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
        IUnknown **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE item(
        VARIANT *pvarIndex,
        VARIANT *pvarResult) = 0;

};
#else
typedef struct IHTMLRectCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLRectCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLRectCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLRectCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLRectCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLRectCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLRectCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLRectCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLRectCollection methods ***/
    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLRectCollection* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
        IHTMLRectCollection* This,
        IUnknown **p);

    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLRectCollection* This,
        VARIANT *pvarIndex,
        VARIANT *pvarResult);

    END_INTERFACE
} IHTMLRectCollectionVtbl;
interface IHTMLRectCollection {
    CONST_VTBL IHTMLRectCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLRectCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLRectCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLRectCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLRectCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLRectCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLRectCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLRectCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLRectCollection methods ***/
#define IHTMLRectCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLRectCollection_get__newEnum(This,p) (This)->lpVtbl->get__newEnum(This,p)
#define IHTMLRectCollection_item(This,pvarIndex,pvarResult) (This)->lpVtbl->item(This,pvarIndex,pvarResult)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLRectCollection_get_length_Proxy(
    IHTMLRectCollection* This,
    LONG *p);
void __RPC_STUB IHTMLRectCollection_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRectCollection_get__newEnum_Proxy(
    IHTMLRectCollection* This,
    IUnknown **p);
void __RPC_STUB IHTMLRectCollection_get__newEnum_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLRectCollection_item_Proxy(
    IHTMLRectCollection* This,
    VARIANT *pvarIndex,
    VARIANT *pvarResult);
void __RPC_STUB IHTMLRectCollection_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLRectCollection_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDOMNode interface
 */
#ifndef __IHTMLDOMNode_INTERFACE_DEFINED__
#define __IHTMLDOMNode_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDOMNode, 0x3050f5da, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDOMNode : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_nodeType(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_parentNode(
        IHTMLDOMNode **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE hasChildNodes(
        VARIANT_BOOL *fChildren) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_childNodes(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_attributes(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE insertBefore(
        IHTMLDOMNode *newChild,
        VARIANT refChild,
        IHTMLDOMNode **node) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeChild(
        IHTMLDOMNode *oldChild,
        IHTMLDOMNode **node) = 0;

    virtual HRESULT STDMETHODCALLTYPE replaceChild(
        IHTMLDOMNode *newChild,
        IHTMLDOMNode *oldChild,
        IHTMLDOMNode **node) = 0;

    virtual HRESULT STDMETHODCALLTYPE cloneNode(
        VARIANT_BOOL fDeep,
        IHTMLDOMNode **clonedNode) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeNode(
        VARIANT_BOOL fDeep,
        IHTMLDOMNode **removed) = 0;

    virtual HRESULT STDMETHODCALLTYPE swapNode(
        IHTMLDOMNode *otherNode,
        IHTMLDOMNode **swappedNode) = 0;

    virtual HRESULT STDMETHODCALLTYPE replaceNode(
        IHTMLDOMNode *replacement,
        IHTMLDOMNode **replaced) = 0;

    virtual HRESULT STDMETHODCALLTYPE appendChild(
        IHTMLDOMNode *newChild,
        IHTMLDOMNode **node) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_nodeName(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_nodeValue(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_nodeValue(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_firstChild(
        IHTMLDOMNode **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_lastChild(
        IHTMLDOMNode **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_previousSibling(
        IHTMLDOMNode **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_nextSibling(
        IHTMLDOMNode **p) = 0;

};
#else
typedef struct IHTMLDOMNodeVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDOMNode* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDOMNode* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDOMNode* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDOMNode* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDOMNode* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDOMNode* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDOMNode* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDOMNode methods ***/
    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
        IHTMLDOMNode* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
        IHTMLDOMNode* This,
        IHTMLDOMNode **p);

    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
        IHTMLDOMNode* This,
        VARIANT_BOOL *fChildren);

    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
        IHTMLDOMNode* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *get_attributes)(
        IHTMLDOMNode* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *insertBefore)(
        IHTMLDOMNode* This,
        IHTMLDOMNode *newChild,
        VARIANT refChild,
        IHTMLDOMNode **node);

    HRESULT (STDMETHODCALLTYPE *removeChild)(
        IHTMLDOMNode* This,
        IHTMLDOMNode *oldChild,
        IHTMLDOMNode **node);

    HRESULT (STDMETHODCALLTYPE *replaceChild)(
        IHTMLDOMNode* This,
        IHTMLDOMNode *newChild,
        IHTMLDOMNode *oldChild,
        IHTMLDOMNode **node);

    HRESULT (STDMETHODCALLTYPE *cloneNode)(
        IHTMLDOMNode* This,
        VARIANT_BOOL fDeep,
        IHTMLDOMNode **clonedNode);

    HRESULT (STDMETHODCALLTYPE *removeNode)(
        IHTMLDOMNode* This,
        VARIANT_BOOL fDeep,
        IHTMLDOMNode **removed);

    HRESULT (STDMETHODCALLTYPE *swapNode)(
        IHTMLDOMNode* This,
        IHTMLDOMNode *otherNode,
        IHTMLDOMNode **swappedNode);

    HRESULT (STDMETHODCALLTYPE *replaceNode)(
        IHTMLDOMNode* This,
        IHTMLDOMNode *replacement,
        IHTMLDOMNode **replaced);

    HRESULT (STDMETHODCALLTYPE *appendChild)(
        IHTMLDOMNode* This,
        IHTMLDOMNode *newChild,
        IHTMLDOMNode **node);

    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
        IHTMLDOMNode* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
        IHTMLDOMNode* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
        IHTMLDOMNode* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
        IHTMLDOMNode* This,
        IHTMLDOMNode **p);

    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
        IHTMLDOMNode* This,
        IHTMLDOMNode **p);

    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
        IHTMLDOMNode* This,
        IHTMLDOMNode **p);

    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
        IHTMLDOMNode* This,
        IHTMLDOMNode **p);

    END_INTERFACE
} IHTMLDOMNodeVtbl;
interface IHTMLDOMNode {
    CONST_VTBL IHTMLDOMNodeVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDOMNode_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDOMNode_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDOMNode_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDOMNode_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDOMNode_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDOMNode_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDOMNode_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDOMNode methods ***/
#define IHTMLDOMNode_get_nodeType(This,p) (This)->lpVtbl->get_nodeType(This,p)
#define IHTMLDOMNode_get_parentNode(This,p) (This)->lpVtbl->get_parentNode(This,p)
#define IHTMLDOMNode_hasChildNodes(This,fChildren) (This)->lpVtbl->hasChildNodes(This,fChildren)
#define IHTMLDOMNode_get_childNodes(This,p) (This)->lpVtbl->get_childNodes(This,p)
#define IHTMLDOMNode_get_attributes(This,p) (This)->lpVtbl->get_attributes(This,p)
#define IHTMLDOMNode_insertBefore(This,newChild,refChild,node) (This)->lpVtbl->insertBefore(This,newChild,refChild,node)
#define IHTMLDOMNode_removeChild(This,oldChild,node) (This)->lpVtbl->removeChild(This,oldChild,node)
#define IHTMLDOMNode_replaceChild(This,newChild,oldChild,node) (This)->lpVtbl->replaceChild(This,newChild,oldChild,node)
#define IHTMLDOMNode_cloneNode(This,fDeep,clonedNode) (This)->lpVtbl->cloneNode(This,fDeep,clonedNode)
#define IHTMLDOMNode_removeNode(This,fDeep,removed) (This)->lpVtbl->removeNode(This,fDeep,removed)
#define IHTMLDOMNode_swapNode(This,otherNode,swappedNode) (This)->lpVtbl->swapNode(This,otherNode,swappedNode)
#define IHTMLDOMNode_replaceNode(This,replacement,replaced) (This)->lpVtbl->replaceNode(This,replacement,replaced)
#define IHTMLDOMNode_appendChild(This,newChild,node) (This)->lpVtbl->appendChild(This,newChild,node)
#define IHTMLDOMNode_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
#define IHTMLDOMNode_put_nodeValue(This,v) (This)->lpVtbl->put_nodeValue(This,v)
#define IHTMLDOMNode_get_nodeValue(This,p) (This)->lpVtbl->get_nodeValue(This,p)
#define IHTMLDOMNode_get_firstChild(This,p) (This)->lpVtbl->get_firstChild(This,p)
#define IHTMLDOMNode_get_lastChild(This,p) (This)->lpVtbl->get_lastChild(This,p)
#define IHTMLDOMNode_get_previousSibling(This,p) (This)->lpVtbl->get_previousSibling(This,p)
#define IHTMLDOMNode_get_nextSibling(This,p) (This)->lpVtbl->get_nextSibling(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_nodeType_Proxy(
    IHTMLDOMNode* This,
    LONG *p);
void __RPC_STUB IHTMLDOMNode_get_nodeType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_parentNode_Proxy(
    IHTMLDOMNode* This,
    IHTMLDOMNode **p);
void __RPC_STUB IHTMLDOMNode_get_parentNode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_hasChildNodes_Proxy(
    IHTMLDOMNode* This,
    VARIANT_BOOL *fChildren);
void __RPC_STUB IHTMLDOMNode_hasChildNodes_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_childNodes_Proxy(
    IHTMLDOMNode* This,
    IDispatch **p);
void __RPC_STUB IHTMLDOMNode_get_childNodes_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_attributes_Proxy(
    IHTMLDOMNode* This,
    IDispatch **p);
void __RPC_STUB IHTMLDOMNode_get_attributes_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_insertBefore_Proxy(
    IHTMLDOMNode* This,
    IHTMLDOMNode *newChild,
    VARIANT refChild,
    IHTMLDOMNode **node);
void __RPC_STUB IHTMLDOMNode_insertBefore_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_removeChild_Proxy(
    IHTMLDOMNode* This,
    IHTMLDOMNode *oldChild,
    IHTMLDOMNode **node);
void __RPC_STUB IHTMLDOMNode_removeChild_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_replaceChild_Proxy(
    IHTMLDOMNode* This,
    IHTMLDOMNode *newChild,
    IHTMLDOMNode *oldChild,
    IHTMLDOMNode **node);
void __RPC_STUB IHTMLDOMNode_replaceChild_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_cloneNode_Proxy(
    IHTMLDOMNode* This,
    VARIANT_BOOL fDeep,
    IHTMLDOMNode **clonedNode);
void __RPC_STUB IHTMLDOMNode_cloneNode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_removeNode_Proxy(
    IHTMLDOMNode* This,
    VARIANT_BOOL fDeep,
    IHTMLDOMNode **removed);
void __RPC_STUB IHTMLDOMNode_removeNode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_swapNode_Proxy(
    IHTMLDOMNode* This,
    IHTMLDOMNode *otherNode,
    IHTMLDOMNode **swappedNode);
void __RPC_STUB IHTMLDOMNode_swapNode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_replaceNode_Proxy(
    IHTMLDOMNode* This,
    IHTMLDOMNode *replacement,
    IHTMLDOMNode **replaced);
void __RPC_STUB IHTMLDOMNode_replaceNode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_appendChild_Proxy(
    IHTMLDOMNode* This,
    IHTMLDOMNode *newChild,
    IHTMLDOMNode **node);
void __RPC_STUB IHTMLDOMNode_appendChild_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_nodeName_Proxy(
    IHTMLDOMNode* This,
    BSTR *p);
void __RPC_STUB IHTMLDOMNode_get_nodeName_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_put_nodeValue_Proxy(
    IHTMLDOMNode* This,
    VARIANT v);
void __RPC_STUB IHTMLDOMNode_put_nodeValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_nodeValue_Proxy(
    IHTMLDOMNode* This,
    VARIANT *p);
void __RPC_STUB IHTMLDOMNode_get_nodeValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_firstChild_Proxy(
    IHTMLDOMNode* This,
    IHTMLDOMNode **p);
void __RPC_STUB IHTMLDOMNode_get_firstChild_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_lastChild_Proxy(
    IHTMLDOMNode* This,
    IHTMLDOMNode **p);
void __RPC_STUB IHTMLDOMNode_get_lastChild_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_previousSibling_Proxy(
    IHTMLDOMNode* This,
    IHTMLDOMNode **p);
void __RPC_STUB IHTMLDOMNode_get_previousSibling_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_nextSibling_Proxy(
    IHTMLDOMNode* This,
    IHTMLDOMNode **p);
void __RPC_STUB IHTMLDOMNode_get_nextSibling_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDOMNode_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDOMNode2 interface
 */
#ifndef __IHTMLDOMNode2_INTERFACE_DEFINED__
#define __IHTMLDOMNode2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDOMNode2, 0x3050f80b, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDOMNode2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_ownerDocument(
        IDispatch **p) = 0;

};
#else
typedef struct IHTMLDOMNode2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDOMNode2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDOMNode2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDOMNode2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDOMNode2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDOMNode2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDOMNode2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDOMNode2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDOMNode2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
        IHTMLDOMNode2* This,
        IDispatch **p);

    END_INTERFACE
} IHTMLDOMNode2Vtbl;
interface IHTMLDOMNode2 {
    CONST_VTBL IHTMLDOMNode2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDOMNode2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDOMNode2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDOMNode2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDOMNode2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDOMNode2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDOMNode2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDOMNode2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDOMNode2 methods ***/
#define IHTMLDOMNode2_get_ownerDocument(This,p) (This)->lpVtbl->get_ownerDocument(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDOMNode2_get_ownerDocument_Proxy(
    IHTMLDOMNode2* This,
    IDispatch **p);
void __RPC_STUB IHTMLDOMNode2_get_ownerDocument_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDOMNode2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDOMAttribute interface
 */
#ifndef __IHTMLDOMAttribute_INTERFACE_DEFINED__
#define __IHTMLDOMAttribute_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDOMAttribute, 0x3050f4b0, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDOMAttribute : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_nodeName(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_nodeValue(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_nodeValue(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_specified(
        VARIANT_BOOL *p) = 0;

};
#else
typedef struct IHTMLDOMAttributeVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDOMAttribute* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDOMAttribute* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDOMAttribute* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDOMAttribute* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDOMAttribute* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDOMAttribute* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDOMAttribute* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDOMAttribute methods ***/
    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
        IHTMLDOMAttribute* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
        IHTMLDOMAttribute* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
        IHTMLDOMAttribute* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_specified)(
        IHTMLDOMAttribute* This,
        VARIANT_BOOL *p);

    END_INTERFACE
} IHTMLDOMAttributeVtbl;
interface IHTMLDOMAttribute {
    CONST_VTBL IHTMLDOMAttributeVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDOMAttribute_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDOMAttribute_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDOMAttribute_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDOMAttribute_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDOMAttribute_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDOMAttribute_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDOMAttribute_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDOMAttribute methods ***/
#define IHTMLDOMAttribute_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
#define IHTMLDOMAttribute_put_nodeValue(This,v) (This)->lpVtbl->put_nodeValue(This,v)
#define IHTMLDOMAttribute_get_nodeValue(This,p) (This)->lpVtbl->get_nodeValue(This,p)
#define IHTMLDOMAttribute_get_specified(This,p) (This)->lpVtbl->get_specified(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute_get_nodeName_Proxy(
    IHTMLDOMAttribute* This,
    BSTR *p);
void __RPC_STUB IHTMLDOMAttribute_get_nodeName_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute_put_nodeValue_Proxy(
    IHTMLDOMAttribute* This,
    VARIANT v);
void __RPC_STUB IHTMLDOMAttribute_put_nodeValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute_get_nodeValue_Proxy(
    IHTMLDOMAttribute* This,
    VARIANT *p);
void __RPC_STUB IHTMLDOMAttribute_get_nodeValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute_get_specified_Proxy(
    IHTMLDOMAttribute* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLDOMAttribute_get_specified_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDOMAttribute_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDOMAttribute2 interface
 */
#ifndef __IHTMLDOMAttribute2_INTERFACE_DEFINED__
#define __IHTMLDOMAttribute2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDOMAttribute2, 0x3050f810, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDOMAttribute2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_value(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_value(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_expando(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_nodeType(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_parentNode(
        IHTMLDOMNode **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_childNodes(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_firstChild(
        IHTMLDOMNode **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_lastChild(
        IHTMLDOMNode **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_previousSibling(
        IHTMLDOMNode **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_nextSibling(
        IHTMLDOMNode **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_attributes(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ownerDocument(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE insertBefore(
        IHTMLDOMNode *newChild,
        VARIANT refChild,
        IHTMLDOMNode **node) = 0;

    virtual HRESULT STDMETHODCALLTYPE replaceChild(
        IHTMLDOMNode *newChild,
        IHTMLDOMNode *oldChild,
        IHTMLDOMNode **node) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeChild(
        IHTMLDOMNode *oldChild,
        IHTMLDOMNode **node) = 0;

    virtual HRESULT STDMETHODCALLTYPE appendChild(
        IHTMLDOMNode *newChild,
        IHTMLDOMNode **node) = 0;

    virtual HRESULT STDMETHODCALLTYPE hasChildNodes(
        VARIANT_BOOL *fChildren) = 0;

    virtual HRESULT STDMETHODCALLTYPE cloneNode(
        VARIANT_BOOL fDeep,
        IHTMLDOMAttribute **clonedNode) = 0;

};
#else
typedef struct IHTMLDOMAttribute2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDOMAttribute2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDOMAttribute2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDOMAttribute2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDOMAttribute2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDOMAttribute2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDOMAttribute2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDOMAttribute2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDOMAttribute2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLDOMAttribute2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_value)(
        IHTMLDOMAttribute2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_value)(
        IHTMLDOMAttribute2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_expando)(
        IHTMLDOMAttribute2* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
        IHTMLDOMAttribute2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
        IHTMLDOMAttribute2* This,
        IHTMLDOMNode **p);

    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
        IHTMLDOMAttribute2* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
        IHTMLDOMAttribute2* This,
        IHTMLDOMNode **p);

    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
        IHTMLDOMAttribute2* This,
        IHTMLDOMNode **p);

    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
        IHTMLDOMAttribute2* This,
        IHTMLDOMNode **p);

    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
        IHTMLDOMAttribute2* This,
        IHTMLDOMNode **p);

    HRESULT (STDMETHODCALLTYPE *get_attributes)(
        IHTMLDOMAttribute2* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
        IHTMLDOMAttribute2* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *insertBefore)(
        IHTMLDOMAttribute2* This,
        IHTMLDOMNode *newChild,
        VARIANT refChild,
        IHTMLDOMNode **node);

    HRESULT (STDMETHODCALLTYPE *replaceChild)(
        IHTMLDOMAttribute2* This,
        IHTMLDOMNode *newChild,
        IHTMLDOMNode *oldChild,
        IHTMLDOMNode **node);

    HRESULT (STDMETHODCALLTYPE *removeChild)(
        IHTMLDOMAttribute2* This,
        IHTMLDOMNode *oldChild,
        IHTMLDOMNode **node);

    HRESULT (STDMETHODCALLTYPE *appendChild)(
        IHTMLDOMAttribute2* This,
        IHTMLDOMNode *newChild,
        IHTMLDOMNode **node);

    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
        IHTMLDOMAttribute2* This,
        VARIANT_BOOL *fChildren);

    HRESULT (STDMETHODCALLTYPE *cloneNode)(
        IHTMLDOMAttribute2* This,
        VARIANT_BOOL fDeep,
        IHTMLDOMAttribute **clonedNode);

    END_INTERFACE
} IHTMLDOMAttribute2Vtbl;
interface IHTMLDOMAttribute2 {
    CONST_VTBL IHTMLDOMAttribute2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDOMAttribute2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDOMAttribute2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDOMAttribute2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDOMAttribute2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDOMAttribute2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDOMAttribute2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDOMAttribute2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDOMAttribute2 methods ***/
#define IHTMLDOMAttribute2_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLDOMAttribute2_put_value(This,v) (This)->lpVtbl->put_value(This,v)
#define IHTMLDOMAttribute2_get_value(This,p) (This)->lpVtbl->get_value(This,p)
#define IHTMLDOMAttribute2_get_expando(This,p) (This)->lpVtbl->get_expando(This,p)
#define IHTMLDOMAttribute2_get_nodeType(This,p) (This)->lpVtbl->get_nodeType(This,p)
#define IHTMLDOMAttribute2_get_parentNode(This,p) (This)->lpVtbl->get_parentNode(This,p)
#define IHTMLDOMAttribute2_get_childNodes(This,p) (This)->lpVtbl->get_childNodes(This,p)
#define IHTMLDOMAttribute2_get_firstChild(This,p) (This)->lpVtbl->get_firstChild(This,p)
#define IHTMLDOMAttribute2_get_lastChild(This,p) (This)->lpVtbl->get_lastChild(This,p)
#define IHTMLDOMAttribute2_get_previousSibling(This,p) (This)->lpVtbl->get_previousSibling(This,p)
#define IHTMLDOMAttribute2_get_nextSibling(This,p) (This)->lpVtbl->get_nextSibling(This,p)
#define IHTMLDOMAttribute2_get_attributes(This,p) (This)->lpVtbl->get_attributes(This,p)
#define IHTMLDOMAttribute2_get_ownerDocument(This,p) (This)->lpVtbl->get_ownerDocument(This,p)
#define IHTMLDOMAttribute2_insertBefore(This,newChild,refChild,node) (This)->lpVtbl->insertBefore(This,newChild,refChild,node)
#define IHTMLDOMAttribute2_replaceChild(This,newChild,oldChild,node) (This)->lpVtbl->replaceChild(This,newChild,oldChild,node)
#define IHTMLDOMAttribute2_removeChild(This,oldChild,node) (This)->lpVtbl->removeChild(This,oldChild,node)
#define IHTMLDOMAttribute2_appendChild(This,newChild,node) (This)->lpVtbl->appendChild(This,newChild,node)
#define IHTMLDOMAttribute2_hasChildNodes(This,fChildren) (This)->lpVtbl->hasChildNodes(This,fChildren)
#define IHTMLDOMAttribute2_cloneNode(This,fDeep,clonedNode) (This)->lpVtbl->cloneNode(This,fDeep,clonedNode)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_name_Proxy(
    IHTMLDOMAttribute2* This,
    BSTR *p);
void __RPC_STUB IHTMLDOMAttribute2_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_put_value_Proxy(
    IHTMLDOMAttribute2* This,
    BSTR v);
void __RPC_STUB IHTMLDOMAttribute2_put_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_value_Proxy(
    IHTMLDOMAttribute2* This,
    BSTR *p);
void __RPC_STUB IHTMLDOMAttribute2_get_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_expando_Proxy(
    IHTMLDOMAttribute2* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLDOMAttribute2_get_expando_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_nodeType_Proxy(
    IHTMLDOMAttribute2* This,
    LONG *p);
void __RPC_STUB IHTMLDOMAttribute2_get_nodeType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_parentNode_Proxy(
    IHTMLDOMAttribute2* This,
    IHTMLDOMNode **p);
void __RPC_STUB IHTMLDOMAttribute2_get_parentNode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_childNodes_Proxy(
    IHTMLDOMAttribute2* This,
    IDispatch **p);
void __RPC_STUB IHTMLDOMAttribute2_get_childNodes_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_firstChild_Proxy(
    IHTMLDOMAttribute2* This,
    IHTMLDOMNode **p);
void __RPC_STUB IHTMLDOMAttribute2_get_firstChild_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_lastChild_Proxy(
    IHTMLDOMAttribute2* This,
    IHTMLDOMNode **p);
void __RPC_STUB IHTMLDOMAttribute2_get_lastChild_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_previousSibling_Proxy(
    IHTMLDOMAttribute2* This,
    IHTMLDOMNode **p);
void __RPC_STUB IHTMLDOMAttribute2_get_previousSibling_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_nextSibling_Proxy(
    IHTMLDOMAttribute2* This,
    IHTMLDOMNode **p);
void __RPC_STUB IHTMLDOMAttribute2_get_nextSibling_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_attributes_Proxy(
    IHTMLDOMAttribute2* This,
    IDispatch **p);
void __RPC_STUB IHTMLDOMAttribute2_get_attributes_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_ownerDocument_Proxy(
    IHTMLDOMAttribute2* This,
    IDispatch **p);
void __RPC_STUB IHTMLDOMAttribute2_get_ownerDocument_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_insertBefore_Proxy(
    IHTMLDOMAttribute2* This,
    IHTMLDOMNode *newChild,
    VARIANT refChild,
    IHTMLDOMNode **node);
void __RPC_STUB IHTMLDOMAttribute2_insertBefore_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_replaceChild_Proxy(
    IHTMLDOMAttribute2* This,
    IHTMLDOMNode *newChild,
    IHTMLDOMNode *oldChild,
    IHTMLDOMNode **node);
void __RPC_STUB IHTMLDOMAttribute2_replaceChild_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_removeChild_Proxy(
    IHTMLDOMAttribute2* This,
    IHTMLDOMNode *oldChild,
    IHTMLDOMNode **node);
void __RPC_STUB IHTMLDOMAttribute2_removeChild_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_appendChild_Proxy(
    IHTMLDOMAttribute2* This,
    IHTMLDOMNode *newChild,
    IHTMLDOMNode **node);
void __RPC_STUB IHTMLDOMAttribute2_appendChild_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_hasChildNodes_Proxy(
    IHTMLDOMAttribute2* This,
    VARIANT_BOOL *fChildren);
void __RPC_STUB IHTMLDOMAttribute2_hasChildNodes_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_cloneNode_Proxy(
    IHTMLDOMAttribute2* This,
    VARIANT_BOOL fDeep,
    IHTMLDOMAttribute **clonedNode);
void __RPC_STUB IHTMLDOMAttribute2_cloneNode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDOMAttribute2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDOMTextNode interface
 */
#ifndef __IHTMLDOMTextNode_INTERFACE_DEFINED__
#define __IHTMLDOMTextNode_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDOMTextNode, 0x3050f4b1, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDOMTextNode : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_data(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_data(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE toString(
        BSTR *String) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE splitText(
        LONG offset,
        IHTMLDOMNode **pRetNode) = 0;

};
#else
typedef struct IHTMLDOMTextNodeVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDOMTextNode* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDOMTextNode* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDOMTextNode* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDOMTextNode* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDOMTextNode* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDOMTextNode* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDOMTextNode* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDOMTextNode methods ***/
    HRESULT (STDMETHODCALLTYPE *put_data)(
        IHTMLDOMTextNode* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_data)(
        IHTMLDOMTextNode* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *toString)(
        IHTMLDOMTextNode* This,
        BSTR *String);

    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLDOMTextNode* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *splitText)(
        IHTMLDOMTextNode* This,
        LONG offset,
        IHTMLDOMNode **pRetNode);

    END_INTERFACE
} IHTMLDOMTextNodeVtbl;
interface IHTMLDOMTextNode {
    CONST_VTBL IHTMLDOMTextNodeVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDOMTextNode_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDOMTextNode_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDOMTextNode_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDOMTextNode_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDOMTextNode_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDOMTextNode_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDOMTextNode_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDOMTextNode methods ***/
#define IHTMLDOMTextNode_put_data(This,v) (This)->lpVtbl->put_data(This,v)
#define IHTMLDOMTextNode_get_data(This,p) (This)->lpVtbl->get_data(This,p)
#define IHTMLDOMTextNode_toString(This,String) (This)->lpVtbl->toString(This,String)
#define IHTMLDOMTextNode_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLDOMTextNode_splitText(This,offset,pRetNode) (This)->lpVtbl->splitText(This,offset,pRetNode)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode_put_data_Proxy(
    IHTMLDOMTextNode* This,
    BSTR v);
void __RPC_STUB IHTMLDOMTextNode_put_data_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode_get_data_Proxy(
    IHTMLDOMTextNode* This,
    BSTR *p);
void __RPC_STUB IHTMLDOMTextNode_get_data_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode_toString_Proxy(
    IHTMLDOMTextNode* This,
    BSTR *String);
void __RPC_STUB IHTMLDOMTextNode_toString_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode_get_length_Proxy(
    IHTMLDOMTextNode* This,
    LONG *p);
void __RPC_STUB IHTMLDOMTextNode_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode_splitText_Proxy(
    IHTMLDOMTextNode* This,
    LONG offset,
    IHTMLDOMNode **pRetNode);
void __RPC_STUB IHTMLDOMTextNode_splitText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDOMTextNode_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDOMTextNode2 interface
 */
#ifndef __IHTMLDOMTextNode2_INTERFACE_DEFINED__
#define __IHTMLDOMTextNode2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDOMTextNode2, 0x3050f809, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDOMTextNode2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE substringData(
        LONG offset,
        LONG Count,
        BSTR *pbstrsubString) = 0;

    virtual HRESULT STDMETHODCALLTYPE appendData(
        BSTR bstrstring) = 0;

    virtual HRESULT STDMETHODCALLTYPE insertData(
        LONG offset,
        BSTR bstrstring) = 0;

    virtual HRESULT STDMETHODCALLTYPE deleteData(
        LONG offset,
        LONG Count) = 0;

    virtual HRESULT STDMETHODCALLTYPE replaceData(
        LONG offset,
        LONG Count,
        BSTR bstrstring) = 0;

};
#else
typedef struct IHTMLDOMTextNode2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDOMTextNode2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDOMTextNode2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDOMTextNode2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDOMTextNode2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDOMTextNode2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDOMTextNode2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDOMTextNode2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDOMTextNode2 methods ***/
    HRESULT (STDMETHODCALLTYPE *substringData)(
        IHTMLDOMTextNode2* This,
        LONG offset,
        LONG Count,
        BSTR *pbstrsubString);

    HRESULT (STDMETHODCALLTYPE *appendData)(
        IHTMLDOMTextNode2* This,
        BSTR bstrstring);

    HRESULT (STDMETHODCALLTYPE *insertData)(
        IHTMLDOMTextNode2* This,
        LONG offset,
        BSTR bstrstring);

    HRESULT (STDMETHODCALLTYPE *deleteData)(
        IHTMLDOMTextNode2* This,
        LONG offset,
        LONG Count);

    HRESULT (STDMETHODCALLTYPE *replaceData)(
        IHTMLDOMTextNode2* This,
        LONG offset,
        LONG Count,
        BSTR bstrstring);

    END_INTERFACE
} IHTMLDOMTextNode2Vtbl;
interface IHTMLDOMTextNode2 {
    CONST_VTBL IHTMLDOMTextNode2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDOMTextNode2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDOMTextNode2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDOMTextNode2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDOMTextNode2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDOMTextNode2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDOMTextNode2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDOMTextNode2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDOMTextNode2 methods ***/
#define IHTMLDOMTextNode2_substringData(This,offset,Count,pbstrsubString) (This)->lpVtbl->substringData(This,offset,Count,pbstrsubString)
#define IHTMLDOMTextNode2_appendData(This,bstrstring) (This)->lpVtbl->appendData(This,bstrstring)
#define IHTMLDOMTextNode2_insertData(This,offset,bstrstring) (This)->lpVtbl->insertData(This,offset,bstrstring)
#define IHTMLDOMTextNode2_deleteData(This,offset,Count) (This)->lpVtbl->deleteData(This,offset,Count)
#define IHTMLDOMTextNode2_replaceData(This,offset,Count,bstrstring) (This)->lpVtbl->replaceData(This,offset,Count,bstrstring)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode2_substringData_Proxy(
    IHTMLDOMTextNode2* This,
    LONG offset,
    LONG Count,
    BSTR *pbstrsubString);
void __RPC_STUB IHTMLDOMTextNode2_substringData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode2_appendData_Proxy(
    IHTMLDOMTextNode2* This,
    BSTR bstrstring);
void __RPC_STUB IHTMLDOMTextNode2_appendData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode2_insertData_Proxy(
    IHTMLDOMTextNode2* This,
    LONG offset,
    BSTR bstrstring);
void __RPC_STUB IHTMLDOMTextNode2_insertData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode2_deleteData_Proxy(
    IHTMLDOMTextNode2* This,
    LONG offset,
    LONG Count);
void __RPC_STUB IHTMLDOMTextNode2_deleteData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode2_replaceData_Proxy(
    IHTMLDOMTextNode2* This,
    LONG offset,
    LONG Count,
    BSTR bstrstring);
void __RPC_STUB IHTMLDOMTextNode2_replaceData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDOMTextNode2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLDOMTextNode coclass
 */

DEFINE_GUID(CLSID_HTMLDOMTextNode, 0x3050f4ba, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLDOMImplementation interface
 */
#ifndef __IHTMLDOMImplementation_INTERFACE_DEFINED__
#define __IHTMLDOMImplementation_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDOMImplementation, 0x3050f80d, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDOMImplementation : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE hasFeature(
        BSTR bstrfeature,
        VARIANT version,
        VARIANT_BOOL *pfHasFeature) = 0;

};
#else
typedef struct IHTMLDOMImplementationVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDOMImplementation* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDOMImplementation* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDOMImplementation* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDOMImplementation* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDOMImplementation* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDOMImplementation* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDOMImplementation* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDOMImplementation methods ***/
    HRESULT (STDMETHODCALLTYPE *hasFeature)(
        IHTMLDOMImplementation* This,
        BSTR bstrfeature,
        VARIANT version,
        VARIANT_BOOL *pfHasFeature);

    END_INTERFACE
} IHTMLDOMImplementationVtbl;
interface IHTMLDOMImplementation {
    CONST_VTBL IHTMLDOMImplementationVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDOMImplementation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDOMImplementation_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDOMImplementation_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDOMImplementation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDOMImplementation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDOMImplementation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDOMImplementation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDOMImplementation methods ***/
#define IHTMLDOMImplementation_hasFeature(This,bstrfeature,version,pfHasFeature) (This)->lpVtbl->hasFeature(This,bstrfeature,version,pfHasFeature)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDOMImplementation_hasFeature_Proxy(
    IHTMLDOMImplementation* This,
    BSTR bstrfeature,
    VARIANT version,
    VARIANT_BOOL *pfHasFeature);
void __RPC_STUB IHTMLDOMImplementation_hasFeature_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDOMImplementation_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLDOMAttribute dispinterface
 */
#ifndef __DispHTMLDOMAttribute_DISPINTERFACE_DEFINED__
#define __DispHTMLDOMAttribute_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLDOMAttribute, 0x3050f564, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLDOMAttribute : public IDispatch
{
};
#else
typedef struct DispHTMLDOMAttributeVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLDOMAttribute* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLDOMAttribute* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLDOMAttribute* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLDOMAttribute* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLDOMAttribute* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLDOMAttribute* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLDOMAttribute* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLDOMAttributeVtbl;
interface DispHTMLDOMAttribute {
    CONST_VTBL DispHTMLDOMAttributeVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLDOMAttribute_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLDOMAttribute_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLDOMAttribute_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLDOMAttribute_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLDOMAttribute_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLDOMAttribute_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLDOMAttribute_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLDOMAttribute_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDocumentCompatibleInfo interface
 */
#ifndef __IHTMLDocumentCompatibleInfo_INTERFACE_DEFINED__
#define __IHTMLDocumentCompatibleInfo_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDocumentCompatibleInfo, 0x3051041a, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDocumentCompatibleInfo : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_userAgent(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_version(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLDocumentCompatibleInfoVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDocumentCompatibleInfo* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDocumentCompatibleInfo* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDocumentCompatibleInfo* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDocumentCompatibleInfo* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDocumentCompatibleInfo* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDocumentCompatibleInfo* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDocumentCompatibleInfo* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDocumentCompatibleInfo methods ***/
    HRESULT (STDMETHODCALLTYPE *get_userAgent)(
        IHTMLDocumentCompatibleInfo* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_version)(
        IHTMLDocumentCompatibleInfo* This,
        BSTR *p);

    END_INTERFACE
} IHTMLDocumentCompatibleInfoVtbl;
interface IHTMLDocumentCompatibleInfo {
    CONST_VTBL IHTMLDocumentCompatibleInfoVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDocumentCompatibleInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDocumentCompatibleInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDocumentCompatibleInfo_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDocumentCompatibleInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDocumentCompatibleInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDocumentCompatibleInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDocumentCompatibleInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDocumentCompatibleInfo methods ***/
#define IHTMLDocumentCompatibleInfo_get_userAgent(This,p) (This)->lpVtbl->get_userAgent(This,p)
#define IHTMLDocumentCompatibleInfo_get_version(This,p) (This)->lpVtbl->get_version(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDocumentCompatibleInfo_get_userAgent_Proxy(
    IHTMLDocumentCompatibleInfo* This,
    BSTR *p);
void __RPC_STUB IHTMLDocumentCompatibleInfo_get_userAgent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocumentCompatibleInfo_get_version_Proxy(
    IHTMLDocumentCompatibleInfo* This,
    BSTR *p);
void __RPC_STUB IHTMLDocumentCompatibleInfo_get_version_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDocumentCompatibleInfo_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDocumentCompatibleInfoCollection interface
 */
#ifndef __IHTMLDocumentCompatibleInfoCollection_INTERFACE_DEFINED__
#define __IHTMLDocumentCompatibleInfoCollection_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDocumentCompatibleInfoCollection, 0x30510418, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDocumentCompatibleInfoCollection : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE item(
        LONG i,
        IHTMLDocumentCompatibleInfo **p) = 0;

};
#else
typedef struct IHTMLDocumentCompatibleInfoCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDocumentCompatibleInfoCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDocumentCompatibleInfoCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDocumentCompatibleInfoCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDocumentCompatibleInfoCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDocumentCompatibleInfoCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDocumentCompatibleInfoCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDocumentCompatibleInfoCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDocumentCompatibleInfoCollection methods ***/
    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLDocumentCompatibleInfoCollection* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLDocumentCompatibleInfoCollection* This,
        LONG i,
        IHTMLDocumentCompatibleInfo **p);

    END_INTERFACE
} IHTMLDocumentCompatibleInfoCollectionVtbl;
interface IHTMLDocumentCompatibleInfoCollection {
    CONST_VTBL IHTMLDocumentCompatibleInfoCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDocumentCompatibleInfoCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDocumentCompatibleInfoCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDocumentCompatibleInfoCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDocumentCompatibleInfoCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDocumentCompatibleInfoCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDocumentCompatibleInfoCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDocumentCompatibleInfoCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDocumentCompatibleInfoCollection methods ***/
#define IHTMLDocumentCompatibleInfoCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLDocumentCompatibleInfoCollection_item(This,i,p) (This)->lpVtbl->item(This,i,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDocumentCompatibleInfoCollection_get_length_Proxy(
    IHTMLDocumentCompatibleInfoCollection* This,
    LONG *p);
void __RPC_STUB IHTMLDocumentCompatibleInfoCollection_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocumentCompatibleInfoCollection_item_Proxy(
    IHTMLDocumentCompatibleInfoCollection* This,
    LONG i,
    IHTMLDocumentCompatibleInfo **p);
void __RPC_STUB IHTMLDocumentCompatibleInfoCollection_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDocumentCompatibleInfoCollection_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLDOMTextNode dispinterface
 */
#ifndef __DispHTMLDOMTextNode_DISPINTERFACE_DEFINED__
#define __DispHTMLDOMTextNode_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLDOMTextNode, 0x3050f565, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLDOMTextNode : public IDispatch
{
};
#else
typedef struct DispHTMLDOMTextNodeVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLDOMTextNode* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLDOMTextNode* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLDOMTextNode* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLDOMTextNode* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLDOMTextNode* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLDOMTextNode* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLDOMTextNode* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLDOMTextNodeVtbl;
interface DispHTMLDOMTextNode {
    CONST_VTBL DispHTMLDOMTextNodeVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLDOMTextNode_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLDOMTextNode_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLDOMTextNode_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLDOMTextNode_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLDOMTextNode_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLDOMTextNode_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLDOMTextNode_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLDOMTextNode_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLAttributeCollection3 interface
 */
#ifndef __IHTMLAttributeCollection3_INTERFACE_DEFINED__
#define __IHTMLAttributeCollection3_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLAttributeCollection3, 0x30510469, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLAttributeCollection3 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE getNamedItem(
        BSTR bstrName,
        IHTMLDOMAttribute **ppNodeOut) = 0;

    virtual HRESULT STDMETHODCALLTYPE setNamedItem(
        IHTMLDOMAttribute *pNodeIn,
        IHTMLDOMAttribute **ppNodeOut) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeNamedItem(
        BSTR bstrName,
        IHTMLDOMAttribute **ppNodeOut) = 0;

    virtual HRESULT STDMETHODCALLTYPE item(
        LONG index,
        IHTMLDOMAttribute **ppNodeOut) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

};
#else
typedef struct IHTMLAttributeCollection3Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLAttributeCollection3* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLAttributeCollection3* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLAttributeCollection3* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLAttributeCollection3* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLAttributeCollection3* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLAttributeCollection3* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLAttributeCollection3* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLAttributeCollection3 methods ***/
    HRESULT (STDMETHODCALLTYPE *getNamedItem)(
        IHTMLAttributeCollection3* This,
        BSTR bstrName,
        IHTMLDOMAttribute **ppNodeOut);

    HRESULT (STDMETHODCALLTYPE *setNamedItem)(
        IHTMLAttributeCollection3* This,
        IHTMLDOMAttribute *pNodeIn,
        IHTMLDOMAttribute **ppNodeOut);

    HRESULT (STDMETHODCALLTYPE *removeNamedItem)(
        IHTMLAttributeCollection3* This,
        BSTR bstrName,
        IHTMLDOMAttribute **ppNodeOut);

    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLAttributeCollection3* This,
        LONG index,
        IHTMLDOMAttribute **ppNodeOut);

    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLAttributeCollection3* This,
        LONG *p);

    END_INTERFACE
} IHTMLAttributeCollection3Vtbl;
interface IHTMLAttributeCollection3 {
    CONST_VTBL IHTMLAttributeCollection3Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLAttributeCollection3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLAttributeCollection3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLAttributeCollection3_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLAttributeCollection3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLAttributeCollection3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLAttributeCollection3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLAttributeCollection3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLAttributeCollection3 methods ***/
#define IHTMLAttributeCollection3_getNamedItem(This,bstrName,ppNodeOut) (This)->lpVtbl->getNamedItem(This,bstrName,ppNodeOut)
#define IHTMLAttributeCollection3_setNamedItem(This,pNodeIn,ppNodeOut) (This)->lpVtbl->setNamedItem(This,pNodeIn,ppNodeOut)
#define IHTMLAttributeCollection3_removeNamedItem(This,bstrName,ppNodeOut) (This)->lpVtbl->removeNamedItem(This,bstrName,ppNodeOut)
#define IHTMLAttributeCollection3_item(This,index,ppNodeOut) (This)->lpVtbl->item(This,index,ppNodeOut)
#define IHTMLAttributeCollection3_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLAttributeCollection3_getNamedItem_Proxy(
    IHTMLAttributeCollection3* This,
    BSTR bstrName,
    IHTMLDOMAttribute **ppNodeOut);
void __RPC_STUB IHTMLAttributeCollection3_getNamedItem_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAttributeCollection3_setNamedItem_Proxy(
    IHTMLAttributeCollection3* This,
    IHTMLDOMAttribute *pNodeIn,
    IHTMLDOMAttribute **ppNodeOut);
void __RPC_STUB IHTMLAttributeCollection3_setNamedItem_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAttributeCollection3_removeNamedItem_Proxy(
    IHTMLAttributeCollection3* This,
    BSTR bstrName,
    IHTMLDOMAttribute **ppNodeOut);
void __RPC_STUB IHTMLAttributeCollection3_removeNamedItem_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAttributeCollection3_item_Proxy(
    IHTMLAttributeCollection3* This,
    LONG index,
    IHTMLDOMAttribute **ppNodeOut);
void __RPC_STUB IHTMLAttributeCollection3_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAttributeCollection3_get_length_Proxy(
    IHTMLAttributeCollection3* This,
    LONG *p);
void __RPC_STUB IHTMLAttributeCollection3_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLAttributeCollection3_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDOMChildrenCollection interface
 */
#ifndef __IHTMLDOMChildrenCollection_INTERFACE_DEFINED__
#define __IHTMLDOMChildrenCollection_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDOMChildrenCollection, 0x3050f5ab, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDOMChildrenCollection : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
        IUnknown **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE item(
        LONG index,
        IDispatch **ppItem) = 0;

};
#else
typedef struct IHTMLDOMChildrenCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDOMChildrenCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDOMChildrenCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDOMChildrenCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDOMChildrenCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDOMChildrenCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDOMChildrenCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDOMChildrenCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDOMChildrenCollection methods ***/
    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLDOMChildrenCollection* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
        IHTMLDOMChildrenCollection* This,
        IUnknown **p);

    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLDOMChildrenCollection* This,
        LONG index,
        IDispatch **ppItem);

    END_INTERFACE
} IHTMLDOMChildrenCollectionVtbl;
interface IHTMLDOMChildrenCollection {
    CONST_VTBL IHTMLDOMChildrenCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDOMChildrenCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDOMChildrenCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDOMChildrenCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDOMChildrenCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDOMChildrenCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDOMChildrenCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDOMChildrenCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDOMChildrenCollection methods ***/
#define IHTMLDOMChildrenCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLDOMChildrenCollection_get__newEnum(This,p) (This)->lpVtbl->get__newEnum(This,p)
#define IHTMLDOMChildrenCollection_item(This,index,ppItem) (This)->lpVtbl->item(This,index,ppItem)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDOMChildrenCollection_get_length_Proxy(
    IHTMLDOMChildrenCollection* This,
    LONG *p);
void __RPC_STUB IHTMLDOMChildrenCollection_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMChildrenCollection_get__newEnum_Proxy(
    IHTMLDOMChildrenCollection* This,
    IUnknown **p);
void __RPC_STUB IHTMLDOMChildrenCollection_get__newEnum_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDOMChildrenCollection_item_Proxy(
    IHTMLDOMChildrenCollection* This,
    LONG index,
    IDispatch **ppItem);
void __RPC_STUB IHTMLDOMChildrenCollection_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDOMChildrenCollection_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispDOMChildrenCollection dispinterface
 */
#ifndef __DispDOMChildrenCollection_DISPINTERFACE_DEFINED__
#define __DispDOMChildrenCollection_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispDOMChildrenCollection, 0x3050f577, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispDOMChildrenCollection : public IDispatch
{
};
#else
typedef struct DispDOMChildrenCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispDOMChildrenCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispDOMChildrenCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispDOMChildrenCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispDOMChildrenCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispDOMChildrenCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispDOMChildrenCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispDOMChildrenCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispDOMChildrenCollectionVtbl;
interface DispDOMChildrenCollection {
    CONST_VTBL DispDOMChildrenCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispDOMChildrenCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispDOMChildrenCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispDOMChildrenCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispDOMChildrenCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispDOMChildrenCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispDOMChildrenCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispDOMChildrenCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispDOMChildrenCollection_DISPINTERFACE_DEFINED__ */

#ifndef __IHTMLElementCollection_FWD_DEFINED__
#define __IHTMLElementCollection_FWD_DEFINED__
typedef interface IHTMLElementCollection IHTMLElementCollection;
#endif

/*****************************************************************************
 * IHTMLElement interface
 */
#ifndef __IHTMLElement_INTERFACE_DEFINED__
#define __IHTMLElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLElement, 0x3050f1ff, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE setAttribute(
        BSTR strAttributeName,
        VARIANT AttributeValue,
        LONG lFlags) = 0;

    virtual HRESULT STDMETHODCALLTYPE getAttribute(
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT *AttributeValue) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeAttribute(
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT_BOOL *pfSuccess) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_className(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_className(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_id(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_id(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_tagName(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_parentElement(
        IHTMLElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_style(
        IHTMLStyle **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onhelp(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onhelp(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onclick(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onclick(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondblclick(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondblclick(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onkeydown(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onkeydown(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onkeyup(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onkeyup(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onkeypress(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onkeypress(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmouseout(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmouseout(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmouseover(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmouseover(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmousemove(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmousemove(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmousedown(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmousedown(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmouseup(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmouseup(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_document(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_title(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_title(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_language(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_language(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onselectstart(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onselectstart(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE scrollIntoView(
        VARIANT varargStart) = 0;

    virtual HRESULT STDMETHODCALLTYPE contains(
        IHTMLElement *pChild,
        VARIANT_BOOL *pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_sourceIndex(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_recordNumber(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_lang(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_lang(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_offsetLeft(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_offsetTop(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_offsetWidth(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_offsetHeight(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_offsetParent(
        IHTMLElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_innerHTML(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_innerHTML(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_innerText(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_innerText(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_outerHTML(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_outerHTML(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_outerText(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_outerText(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE insertAdjacentHTML(
        BSTR where,
        BSTR html) = 0;

    virtual HRESULT STDMETHODCALLTYPE insertAdjacentText(
        BSTR where,
        BSTR text) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_parentTextEdit(
        IHTMLElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_isTextEdit(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE click(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_filters(
        IHTMLFiltersCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondragstart(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondragstart(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE toString(
        BSTR *String) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforeupdate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforeupdate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onafterupdate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onafterupdate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onerrorupdate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onerrorupdate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onrowexit(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onrowexit(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onrowenter(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onrowenter(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondatasetchanged(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondatasetchanged(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondataavailable(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondataavailable(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondatasetcomplete(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondatasetcomplete(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onfilterchange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onfilterchange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_children(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_all(
        IDispatch **p) = 0;

};
#else
typedef struct IHTMLElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLElement methods ***/
    HRESULT (STDMETHODCALLTYPE *setAttribute)(
        IHTMLElement* This,
        BSTR strAttributeName,
        VARIANT AttributeValue,
        LONG lFlags);

    HRESULT (STDMETHODCALLTYPE *getAttribute)(
        IHTMLElement* This,
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT *AttributeValue);

    HRESULT (STDMETHODCALLTYPE *removeAttribute)(
        IHTMLElement* This,
        BSTR strAttributeName,
        LONG lFlags,
        VARIANT_BOOL *pfSuccess);

    HRESULT (STDMETHODCALLTYPE *put_className)(
        IHTMLElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_className)(
        IHTMLElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_id)(
        IHTMLElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_id)(
        IHTMLElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_tagName)(
        IHTMLElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_parentElement)(
        IHTMLElement* This,
        IHTMLElement **p);

    HRESULT (STDMETHODCALLTYPE *get_style)(
        IHTMLElement* This,
        IHTMLStyle **p);

    HRESULT (STDMETHODCALLTYPE *put_onhelp)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onhelp)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onclick)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onclick)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondblclick)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondblclick)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onkeydown)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onkeydown)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onkeyup)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onkeyup)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onkeypress)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onkeypress)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmouseout)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmouseout)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmouseover)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmouseover)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmousemove)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmousemove)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmousedown)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmousedown)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmouseup)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmouseup)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_document)(
        IHTMLElement* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *put_title)(
        IHTMLElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_title)(
        IHTMLElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_language)(
        IHTMLElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_language)(
        IHTMLElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_onselectstart)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onselectstart)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *scrollIntoView)(
        IHTMLElement* This,
        VARIANT varargStart);

    HRESULT (STDMETHODCALLTYPE *contains)(
        IHTMLElement* This,
        IHTMLElement *pChild,
        VARIANT_BOOL *pfResult);

    HRESULT (STDMETHODCALLTYPE *get_sourceIndex)(
        IHTMLElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_recordNumber)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_lang)(
        IHTMLElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_lang)(
        IHTMLElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_offsetLeft)(
        IHTMLElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_offsetTop)(
        IHTMLElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_offsetWidth)(
        IHTMLElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_offsetHeight)(
        IHTMLElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_offsetParent)(
        IHTMLElement* This,
        IHTMLElement **p);

    HRESULT (STDMETHODCALLTYPE *put_innerHTML)(
        IHTMLElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_innerHTML)(
        IHTMLElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_innerText)(
        IHTMLElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_innerText)(
        IHTMLElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_outerHTML)(
        IHTMLElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_outerHTML)(
        IHTMLElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_outerText)(
        IHTMLElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_outerText)(
        IHTMLElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *insertAdjacentHTML)(
        IHTMLElement* This,
        BSTR where,
        BSTR html);

    HRESULT (STDMETHODCALLTYPE *insertAdjacentText)(
        IHTMLElement* This,
        BSTR where,
        BSTR text);

    HRESULT (STDMETHODCALLTYPE *get_parentTextEdit)(
        IHTMLElement* This,
        IHTMLElement **p);

    HRESULT (STDMETHODCALLTYPE *get_isTextEdit)(
        IHTMLElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *click)(
        IHTMLElement* This);

    HRESULT (STDMETHODCALLTYPE *get_filters)(
        IHTMLElement* This,
        IHTMLFiltersCollection **p);

    HRESULT (STDMETHODCALLTYPE *put_ondragstart)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondragstart)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *toString)(
        IHTMLElement* This,
        BSTR *String);

    HRESULT (STDMETHODCALLTYPE *put_onbeforeupdate)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforeupdate)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onafterupdate)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onafterupdate)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onerrorupdate)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onerrorupdate)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onrowexit)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onrowexit)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onrowenter)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onrowenter)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondatasetchanged)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondatasetchanged)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondataavailable)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondataavailable)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondatasetcomplete)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondatasetcomplete)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onfilterchange)(
        IHTMLElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onfilterchange)(
        IHTMLElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_children)(
        IHTMLElement* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *get_all)(
        IHTMLElement* This,
        IDispatch **p);

    END_INTERFACE
} IHTMLElementVtbl;
interface IHTMLElement {
    CONST_VTBL IHTMLElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLElement methods ***/
#define IHTMLElement_setAttribute(This,strAttributeName,AttributeValue,lFlags) (This)->lpVtbl->setAttribute(This,strAttributeName,AttributeValue,lFlags)
#define IHTMLElement_getAttribute(This,strAttributeName,lFlags,AttributeValue) (This)->lpVtbl->getAttribute(This,strAttributeName,lFlags,AttributeValue)
#define IHTMLElement_removeAttribute(This,strAttributeName,lFlags,pfSuccess) (This)->lpVtbl->removeAttribute(This,strAttributeName,lFlags,pfSuccess)
#define IHTMLElement_put_className(This,v) (This)->lpVtbl->put_className(This,v)
#define IHTMLElement_get_className(This,p) (This)->lpVtbl->get_className(This,p)
#define IHTMLElement_put_id(This,v) (This)->lpVtbl->put_id(This,v)
#define IHTMLElement_get_id(This,p) (This)->lpVtbl->get_id(This,p)
#define IHTMLElement_get_tagName(This,p) (This)->lpVtbl->get_tagName(This,p)
#define IHTMLElement_get_parentElement(This,p) (This)->lpVtbl->get_parentElement(This,p)
#define IHTMLElement_get_style(This,p) (This)->lpVtbl->get_style(This,p)
#define IHTMLElement_put_onhelp(This,v) (This)->lpVtbl->put_onhelp(This,v)
#define IHTMLElement_get_onhelp(This,p) (This)->lpVtbl->get_onhelp(This,p)
#define IHTMLElement_put_onclick(This,v) (This)->lpVtbl->put_onclick(This,v)
#define IHTMLElement_get_onclick(This,p) (This)->lpVtbl->get_onclick(This,p)
#define IHTMLElement_put_ondblclick(This,v) (This)->lpVtbl->put_ondblclick(This,v)
#define IHTMLElement_get_ondblclick(This,p) (This)->lpVtbl->get_ondblclick(This,p)
#define IHTMLElement_put_onkeydown(This,v) (This)->lpVtbl->put_onkeydown(This,v)
#define IHTMLElement_get_onkeydown(This,p) (This)->lpVtbl->get_onkeydown(This,p)
#define IHTMLElement_put_onkeyup(This,v) (This)->lpVtbl->put_onkeyup(This,v)
#define IHTMLElement_get_onkeyup(This,p) (This)->lpVtbl->get_onkeyup(This,p)
#define IHTMLElement_put_onkeypress(This,v) (This)->lpVtbl->put_onkeypress(This,v)
#define IHTMLElement_get_onkeypress(This,p) (This)->lpVtbl->get_onkeypress(This,p)
#define IHTMLElement_put_onmouseout(This,v) (This)->lpVtbl->put_onmouseout(This,v)
#define IHTMLElement_get_onmouseout(This,p) (This)->lpVtbl->get_onmouseout(This,p)
#define IHTMLElement_put_onmouseover(This,v) (This)->lpVtbl->put_onmouseover(This,v)
#define IHTMLElement_get_onmouseover(This,p) (This)->lpVtbl->get_onmouseover(This,p)
#define IHTMLElement_put_onmousemove(This,v) (This)->lpVtbl->put_onmousemove(This,v)
#define IHTMLElement_get_onmousemove(This,p) (This)->lpVtbl->get_onmousemove(This,p)
#define IHTMLElement_put_onmousedown(This,v) (This)->lpVtbl->put_onmousedown(This,v)
#define IHTMLElement_get_onmousedown(This,p) (This)->lpVtbl->get_onmousedown(This,p)
#define IHTMLElement_put_onmouseup(This,v) (This)->lpVtbl->put_onmouseup(This,v)
#define IHTMLElement_get_onmouseup(This,p) (This)->lpVtbl->get_onmouseup(This,p)
#define IHTMLElement_get_document(This,p) (This)->lpVtbl->get_document(This,p)
#define IHTMLElement_put_title(This,v) (This)->lpVtbl->put_title(This,v)
#define IHTMLElement_get_title(This,p) (This)->lpVtbl->get_title(This,p)
#define IHTMLElement_put_language(This,v) (This)->lpVtbl->put_language(This,v)
#define IHTMLElement_get_language(This,p) (This)->lpVtbl->get_language(This,p)
#define IHTMLElement_put_onselectstart(This,v) (This)->lpVtbl->put_onselectstart(This,v)
#define IHTMLElement_get_onselectstart(This,p) (This)->lpVtbl->get_onselectstart(This,p)
#define IHTMLElement_scrollIntoView(This,varargStart) (This)->lpVtbl->scrollIntoView(This,varargStart)
#define IHTMLElement_contains(This,pChild,pfResult) (This)->lpVtbl->contains(This,pChild,pfResult)
#define IHTMLElement_get_sourceIndex(This,p) (This)->lpVtbl->get_sourceIndex(This,p)
#define IHTMLElement_get_recordNumber(This,p) (This)->lpVtbl->get_recordNumber(This,p)
#define IHTMLElement_put_lang(This,v) (This)->lpVtbl->put_lang(This,v)
#define IHTMLElement_get_lang(This,p) (This)->lpVtbl->get_lang(This,p)
#define IHTMLElement_get_offsetLeft(This,p) (This)->lpVtbl->get_offsetLeft(This,p)
#define IHTMLElement_get_offsetTop(This,p) (This)->lpVtbl->get_offsetTop(This,p)
#define IHTMLElement_get_offsetWidth(This,p) (This)->lpVtbl->get_offsetWidth(This,p)
#define IHTMLElement_get_offsetHeight(This,p) (This)->lpVtbl->get_offsetHeight(This,p)
#define IHTMLElement_get_offsetParent(This,p) (This)->lpVtbl->get_offsetParent(This,p)
#define IHTMLElement_put_innerHTML(This,v) (This)->lpVtbl->put_innerHTML(This,v)
#define IHTMLElement_get_innerHTML(This,p) (This)->lpVtbl->get_innerHTML(This,p)
#define IHTMLElement_put_innerText(This,v) (This)->lpVtbl->put_innerText(This,v)
#define IHTMLElement_get_innerText(This,p) (This)->lpVtbl->get_innerText(This,p)
#define IHTMLElement_put_outerHTML(This,v) (This)->lpVtbl->put_outerHTML(This,v)
#define IHTMLElement_get_outerHTML(This,p) (This)->lpVtbl->get_outerHTML(This,p)
#define IHTMLElement_put_outerText(This,v) (This)->lpVtbl->put_outerText(This,v)
#define IHTMLElement_get_outerText(This,p) (This)->lpVtbl->get_outerText(This,p)
#define IHTMLElement_insertAdjacentHTML(This,where,html) (This)->lpVtbl->insertAdjacentHTML(This,where,html)
#define IHTMLElement_insertAdjacentText(This,where,text) (This)->lpVtbl->insertAdjacentText(This,where,text)
#define IHTMLElement_get_parentTextEdit(This,p) (This)->lpVtbl->get_parentTextEdit(This,p)
#define IHTMLElement_get_isTextEdit(This,p) (This)->lpVtbl->get_isTextEdit(This,p)
#define IHTMLElement_click(This) (This)->lpVtbl->click(This)
#define IHTMLElement_get_filters(This,p) (This)->lpVtbl->get_filters(This,p)
#define IHTMLElement_put_ondragstart(This,v) (This)->lpVtbl->put_ondragstart(This,v)
#define IHTMLElement_get_ondragstart(This,p) (This)->lpVtbl->get_ondragstart(This,p)
#define IHTMLElement_toString(This,String) (This)->lpVtbl->toString(This,String)
#define IHTMLElement_put_onbeforeupdate(This,v) (This)->lpVtbl->put_onbeforeupdate(This,v)
#define IHTMLElement_get_onbeforeupdate(This,p) (This)->lpVtbl->get_onbeforeupdate(This,p)
#define IHTMLElement_put_onafterupdate(This,v) (This)->lpVtbl->put_onafterupdate(This,v)
#define IHTMLElement_get_onafterupdate(This,p) (This)->lpVtbl->get_onafterupdate(This,p)
#define IHTMLElement_put_onerrorupdate(This,v) (This)->lpVtbl->put_onerrorupdate(This,v)
#define IHTMLElement_get_onerrorupdate(This,p) (This)->lpVtbl->get_onerrorupdate(This,p)
#define IHTMLElement_put_onrowexit(This,v) (This)->lpVtbl->put_onrowexit(This,v)
#define IHTMLElement_get_onrowexit(This,p) (This)->lpVtbl->get_onrowexit(This,p)
#define IHTMLElement_put_onrowenter(This,v) (This)->lpVtbl->put_onrowenter(This,v)
#define IHTMLElement_get_onrowenter(This,p) (This)->lpVtbl->get_onrowenter(This,p)
#define IHTMLElement_put_ondatasetchanged(This,v) (This)->lpVtbl->put_ondatasetchanged(This,v)
#define IHTMLElement_get_ondatasetchanged(This,p) (This)->lpVtbl->get_ondatasetchanged(This,p)
#define IHTMLElement_put_ondataavailable(This,v) (This)->lpVtbl->put_ondataavailable(This,v)
#define IHTMLElement_get_ondataavailable(This,p) (This)->lpVtbl->get_ondataavailable(This,p)
#define IHTMLElement_put_ondatasetcomplete(This,v) (This)->lpVtbl->put_ondatasetcomplete(This,v)
#define IHTMLElement_get_ondatasetcomplete(This,p) (This)->lpVtbl->get_ondatasetcomplete(This,p)
#define IHTMLElement_put_onfilterchange(This,v) (This)->lpVtbl->put_onfilterchange(This,v)
#define IHTMLElement_get_onfilterchange(This,p) (This)->lpVtbl->get_onfilterchange(This,p)
#define IHTMLElement_get_children(This,p) (This)->lpVtbl->get_children(This,p)
#define IHTMLElement_get_all(This,p) (This)->lpVtbl->get_all(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLElement_setAttribute_Proxy(
    IHTMLElement* This,
    BSTR strAttributeName,
    VARIANT AttributeValue,
    LONG lFlags);
void __RPC_STUB IHTMLElement_setAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_getAttribute_Proxy(
    IHTMLElement* This,
    BSTR strAttributeName,
    LONG lFlags,
    VARIANT *AttributeValue);
void __RPC_STUB IHTMLElement_getAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_removeAttribute_Proxy(
    IHTMLElement* This,
    BSTR strAttributeName,
    LONG lFlags,
    VARIANT_BOOL *pfSuccess);
void __RPC_STUB IHTMLElement_removeAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_className_Proxy(
    IHTMLElement* This,
    BSTR v);
void __RPC_STUB IHTMLElement_put_className_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_className_Proxy(
    IHTMLElement* This,
    BSTR *p);
void __RPC_STUB IHTMLElement_get_className_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_id_Proxy(
    IHTMLElement* This,
    BSTR v);
void __RPC_STUB IHTMLElement_put_id_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_id_Proxy(
    IHTMLElement* This,
    BSTR *p);
void __RPC_STUB IHTMLElement_get_id_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_tagName_Proxy(
    IHTMLElement* This,
    BSTR *p);
void __RPC_STUB IHTMLElement_get_tagName_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_parentElement_Proxy(
    IHTMLElement* This,
    IHTMLElement **p);
void __RPC_STUB IHTMLElement_get_parentElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_style_Proxy(
    IHTMLElement* This,
    IHTMLStyle **p);
void __RPC_STUB IHTMLElement_get_style_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onhelp_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onhelp_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onhelp_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onhelp_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onclick_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onclick_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onclick_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onclick_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_ondblclick_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_ondblclick_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_ondblclick_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_ondblclick_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onkeydown_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onkeydown_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onkeydown_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onkeydown_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onkeyup_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onkeyup_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onkeyup_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onkeyup_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onkeypress_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onkeypress_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onkeypress_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onkeypress_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onmouseout_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onmouseout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onmouseout_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onmouseout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onmouseover_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onmouseover_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onmouseover_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onmouseover_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onmousemove_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onmousemove_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onmousemove_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onmousemove_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onmousedown_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onmousedown_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onmousedown_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onmousedown_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onmouseup_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onmouseup_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onmouseup_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onmouseup_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_document_Proxy(
    IHTMLElement* This,
    IDispatch **p);
void __RPC_STUB IHTMLElement_get_document_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_title_Proxy(
    IHTMLElement* This,
    BSTR v);
void __RPC_STUB IHTMLElement_put_title_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_title_Proxy(
    IHTMLElement* This,
    BSTR *p);
void __RPC_STUB IHTMLElement_get_title_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_language_Proxy(
    IHTMLElement* This,
    BSTR v);
void __RPC_STUB IHTMLElement_put_language_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_language_Proxy(
    IHTMLElement* This,
    BSTR *p);
void __RPC_STUB IHTMLElement_get_language_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onselectstart_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onselectstart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onselectstart_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onselectstart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_scrollIntoView_Proxy(
    IHTMLElement* This,
    VARIANT varargStart);
void __RPC_STUB IHTMLElement_scrollIntoView_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_contains_Proxy(
    IHTMLElement* This,
    IHTMLElement *pChild,
    VARIANT_BOOL *pfResult);
void __RPC_STUB IHTMLElement_contains_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_sourceIndex_Proxy(
    IHTMLElement* This,
    LONG *p);
void __RPC_STUB IHTMLElement_get_sourceIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_recordNumber_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_recordNumber_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_lang_Proxy(
    IHTMLElement* This,
    BSTR v);
void __RPC_STUB IHTMLElement_put_lang_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_lang_Proxy(
    IHTMLElement* This,
    BSTR *p);
void __RPC_STUB IHTMLElement_get_lang_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_offsetLeft_Proxy(
    IHTMLElement* This,
    LONG *p);
void __RPC_STUB IHTMLElement_get_offsetLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_offsetTop_Proxy(
    IHTMLElement* This,
    LONG *p);
void __RPC_STUB IHTMLElement_get_offsetTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_offsetWidth_Proxy(
    IHTMLElement* This,
    LONG *p);
void __RPC_STUB IHTMLElement_get_offsetWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_offsetHeight_Proxy(
    IHTMLElement* This,
    LONG *p);
void __RPC_STUB IHTMLElement_get_offsetHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_offsetParent_Proxy(
    IHTMLElement* This,
    IHTMLElement **p);
void __RPC_STUB IHTMLElement_get_offsetParent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_innerHTML_Proxy(
    IHTMLElement* This,
    BSTR v);
void __RPC_STUB IHTMLElement_put_innerHTML_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_innerHTML_Proxy(
    IHTMLElement* This,
    BSTR *p);
void __RPC_STUB IHTMLElement_get_innerHTML_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_innerText_Proxy(
    IHTMLElement* This,
    BSTR v);
void __RPC_STUB IHTMLElement_put_innerText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_innerText_Proxy(
    IHTMLElement* This,
    BSTR *p);
void __RPC_STUB IHTMLElement_get_innerText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_outerHTML_Proxy(
    IHTMLElement* This,
    BSTR v);
void __RPC_STUB IHTMLElement_put_outerHTML_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_outerHTML_Proxy(
    IHTMLElement* This,
    BSTR *p);
void __RPC_STUB IHTMLElement_get_outerHTML_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_outerText_Proxy(
    IHTMLElement* This,
    BSTR v);
void __RPC_STUB IHTMLElement_put_outerText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_outerText_Proxy(
    IHTMLElement* This,
    BSTR *p);
void __RPC_STUB IHTMLElement_get_outerText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_insertAdjacentHTML_Proxy(
    IHTMLElement* This,
    BSTR where,
    BSTR html);
void __RPC_STUB IHTMLElement_insertAdjacentHTML_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_insertAdjacentText_Proxy(
    IHTMLElement* This,
    BSTR where,
    BSTR text);
void __RPC_STUB IHTMLElement_insertAdjacentText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_parentTextEdit_Proxy(
    IHTMLElement* This,
    IHTMLElement **p);
void __RPC_STUB IHTMLElement_get_parentTextEdit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_isTextEdit_Proxy(
    IHTMLElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLElement_get_isTextEdit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_click_Proxy(
    IHTMLElement* This);
void __RPC_STUB IHTMLElement_click_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_filters_Proxy(
    IHTMLElement* This,
    IHTMLFiltersCollection **p);
void __RPC_STUB IHTMLElement_get_filters_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_ondragstart_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_ondragstart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_ondragstart_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_ondragstart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_toString_Proxy(
    IHTMLElement* This,
    BSTR *String);
void __RPC_STUB IHTMLElement_toString_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onbeforeupdate_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onbeforeupdate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onbeforeupdate_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onbeforeupdate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onafterupdate_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onafterupdate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onafterupdate_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onafterupdate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onerrorupdate_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onerrorupdate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onerrorupdate_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onerrorupdate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onrowexit_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onrowexit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onrowexit_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onrowexit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onrowenter_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onrowenter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onrowenter_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onrowenter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_ondatasetchanged_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_ondatasetchanged_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_ondatasetchanged_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_ondatasetchanged_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_ondataavailable_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_ondataavailable_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_ondataavailable_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_ondataavailable_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_ondatasetcomplete_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_ondatasetcomplete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_ondatasetcomplete_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_ondatasetcomplete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_put_onfilterchange_Proxy(
    IHTMLElement* This,
    VARIANT v);
void __RPC_STUB IHTMLElement_put_onfilterchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_onfilterchange_Proxy(
    IHTMLElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement_get_onfilterchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_children_Proxy(
    IHTMLElement* This,
    IDispatch **p);
void __RPC_STUB IHTMLElement_get_children_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement_get_all_Proxy(
    IHTMLElement* This,
    IDispatch **p);
void __RPC_STUB IHTMLElement_get_all_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLElement2 interface
 */
#ifndef __IHTMLElement2_INTERFACE_DEFINED__
#define __IHTMLElement2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLElement2, 0x3050f434, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLElement2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_scopeName(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE setCapture(
        VARIANT_BOOL containerCapture) = 0;

    virtual HRESULT STDMETHODCALLTYPE releaseCapture(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onlosecapture(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onlosecapture(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE componentFromPoint(
        LONG x,
        LONG y,
        BSTR *component) = 0;

    virtual HRESULT STDMETHODCALLTYPE doScroll(
        VARIANT component) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onscroll(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onscroll(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondrag(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondrag(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondragend(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondragend(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondragenter(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondragenter(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondragover(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondragover(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondragleave(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondragleave(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondrop(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondrop(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforecut(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforecut(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_oncut(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_oncut(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforecopy(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforecopy(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_oncopy(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_oncopy(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforepaste(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforepaste(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onpaste(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onpaste(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_currentStyle(
        IHTMLCurrentStyle **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onpropertychange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onpropertychange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE getClientRects(
        IHTMLRectCollection **pRectCol) = 0;

    virtual HRESULT STDMETHODCALLTYPE getBoundingClientRect(
        IHTMLRect **pRect) = 0;

    virtual HRESULT STDMETHODCALLTYPE setExpression(
        BSTR propname,
        BSTR expression,
        BSTR language) = 0;

    virtual HRESULT STDMETHODCALLTYPE getExpression(
        BSTR propname,
        VARIANT *expression) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeExpression(
        BSTR propname,
        VARIANT_BOOL *pfSuccess) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_tabIndex(
        short v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_tabIndex(
        short *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE focus(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_accessKey(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_accessKey(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onblur(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onblur(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onfocus(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onfocus(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onresize(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onresize(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE blur(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE addFilter(
        IUnknown *pUnk) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeFilter(
        IUnknown *pUnk) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clientHeight(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clientWidth(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clientTop(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clientLeft(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE attachEvent(
        BSTR event,
        IDispatch *pDisp,
        VARIANT_BOOL *pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE detachEvent(
        BSTR event,
        IDispatch *pDisp) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readyState(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onreadystatechange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onreadystatechange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onrowsdelete(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onrowsdelete(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onrowsinserted(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onrowsinserted(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_oncellchange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_oncellchange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_dir(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_dir(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE createControlRange(
        IDispatch **range) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollHeight(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollWidth(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrollTop(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollTop(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrollLeft(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollLeft(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE clearAttributes(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE mergeAttributes(
        IHTMLElement *mergeThis) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_oncontextmenu(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_oncontextmenu(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE insertAdjacentElement(
        BSTR where,
        IHTMLElement *insertedElement,
        IHTMLElement **inserted) = 0;

    virtual HRESULT STDMETHODCALLTYPE applyElement(
        IHTMLElement *apply,
        BSTR where,
        IHTMLElement **applied) = 0;

    virtual HRESULT STDMETHODCALLTYPE getAdjacentText(
        BSTR where,
        BSTR *text) = 0;

    virtual HRESULT STDMETHODCALLTYPE replaceAdjacentText(
        BSTR where,
        BSTR newText,
        BSTR *oldText) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_canHaveChildren(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE addBehavior(
        BSTR bstrUrl,
        VARIANT *pvarFactory,
        LONG *pCookie) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeBehavior(
        LONG cookie,
        VARIANT_BOOL *pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_runtimeStyle(
        IHTMLStyle **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_behaviorUrns(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_tagUrn(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_tagUrn(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforeeditfocus(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforeeditfocus(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readyStateValue(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE getElementsByTagName(
        BSTR v,
        IHTMLElementCollection **pelColl) = 0;

};
#else
typedef struct IHTMLElement2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLElement2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLElement2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLElement2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLElement2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLElement2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLElement2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLElement2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLElement2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_scopeName)(
        IHTMLElement2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *setCapture)(
        IHTMLElement2* This,
        VARIANT_BOOL containerCapture);

    HRESULT (STDMETHODCALLTYPE *releaseCapture)(
        IHTMLElement2* This);

    HRESULT (STDMETHODCALLTYPE *put_onlosecapture)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onlosecapture)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *componentFromPoint)(
        IHTMLElement2* This,
        LONG x,
        LONG y,
        BSTR *component);

    HRESULT (STDMETHODCALLTYPE *doScroll)(
        IHTMLElement2* This,
        VARIANT component);

    HRESULT (STDMETHODCALLTYPE *put_onscroll)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onscroll)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondrag)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondrag)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondragend)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondragend)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondragenter)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondragenter)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondragover)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondragover)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondragleave)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondragleave)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondrop)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondrop)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onbeforecut)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforecut)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_oncut)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_oncut)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onbeforecopy)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforecopy)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_oncopy)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_oncopy)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onbeforepaste)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforepaste)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onpaste)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onpaste)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_currentStyle)(
        IHTMLElement2* This,
        IHTMLCurrentStyle **p);

    HRESULT (STDMETHODCALLTYPE *put_onpropertychange)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onpropertychange)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *getClientRects)(
        IHTMLElement2* This,
        IHTMLRectCollection **pRectCol);

    HRESULT (STDMETHODCALLTYPE *getBoundingClientRect)(
        IHTMLElement2* This,
        IHTMLRect **pRect);

    HRESULT (STDMETHODCALLTYPE *setExpression)(
        IHTMLElement2* This,
        BSTR propname,
        BSTR expression,
        BSTR language);

    HRESULT (STDMETHODCALLTYPE *getExpression)(
        IHTMLElement2* This,
        BSTR propname,
        VARIANT *expression);

    HRESULT (STDMETHODCALLTYPE *removeExpression)(
        IHTMLElement2* This,
        BSTR propname,
        VARIANT_BOOL *pfSuccess);

    HRESULT (STDMETHODCALLTYPE *put_tabIndex)(
        IHTMLElement2* This,
        short v);

    HRESULT (STDMETHODCALLTYPE *get_tabIndex)(
        IHTMLElement2* This,
        short *p);

    HRESULT (STDMETHODCALLTYPE *focus)(
        IHTMLElement2* This);

    HRESULT (STDMETHODCALLTYPE *put_accessKey)(
        IHTMLElement2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_accessKey)(
        IHTMLElement2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_onblur)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onblur)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onfocus)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onfocus)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onresize)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onresize)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *blur)(
        IHTMLElement2* This);

    HRESULT (STDMETHODCALLTYPE *addFilter)(
        IHTMLElement2* This,
        IUnknown *pUnk);

    HRESULT (STDMETHODCALLTYPE *removeFilter)(
        IHTMLElement2* This,
        IUnknown *pUnk);

    HRESULT (STDMETHODCALLTYPE *get_clientHeight)(
        IHTMLElement2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_clientWidth)(
        IHTMLElement2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_clientTop)(
        IHTMLElement2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_clientLeft)(
        IHTMLElement2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *attachEvent)(
        IHTMLElement2* This,
        BSTR event,
        IDispatch *pDisp,
        VARIANT_BOOL *pfResult);

    HRESULT (STDMETHODCALLTYPE *detachEvent)(
        IHTMLElement2* This,
        BSTR event,
        IDispatch *pDisp);

    HRESULT (STDMETHODCALLTYPE *get_readyState)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onreadystatechange)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onrowsdelete)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onrowsdelete)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onrowsinserted)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onrowsinserted)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_oncellchange)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_oncellchange)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_dir)(
        IHTMLElement2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_dir)(
        IHTMLElement2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *createControlRange)(
        IHTMLElement2* This,
        IDispatch **range);

    HRESULT (STDMETHODCALLTYPE *get_scrollHeight)(
        IHTMLElement2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_scrollWidth)(
        IHTMLElement2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_scrollTop)(
        IHTMLElement2* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_scrollTop)(
        IHTMLElement2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_scrollLeft)(
        IHTMLElement2* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_scrollLeft)(
        IHTMLElement2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *clearAttributes)(
        IHTMLElement2* This);

    HRESULT (STDMETHODCALLTYPE *mergeAttributes)(
        IHTMLElement2* This,
        IHTMLElement *mergeThis);

    HRESULT (STDMETHODCALLTYPE *put_oncontextmenu)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_oncontextmenu)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *insertAdjacentElement)(
        IHTMLElement2* This,
        BSTR where,
        IHTMLElement *insertedElement,
        IHTMLElement **inserted);

    HRESULT (STDMETHODCALLTYPE *applyElement)(
        IHTMLElement2* This,
        IHTMLElement *apply,
        BSTR where,
        IHTMLElement **applied);

    HRESULT (STDMETHODCALLTYPE *getAdjacentText)(
        IHTMLElement2* This,
        BSTR where,
        BSTR *text);

    HRESULT (STDMETHODCALLTYPE *replaceAdjacentText)(
        IHTMLElement2* This,
        BSTR where,
        BSTR newText,
        BSTR *oldText);

    HRESULT (STDMETHODCALLTYPE *get_canHaveChildren)(
        IHTMLElement2* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *addBehavior)(
        IHTMLElement2* This,
        BSTR bstrUrl,
        VARIANT *pvarFactory,
        LONG *pCookie);

    HRESULT (STDMETHODCALLTYPE *removeBehavior)(
        IHTMLElement2* This,
        LONG cookie,
        VARIANT_BOOL *pfResult);

    HRESULT (STDMETHODCALLTYPE *get_runtimeStyle)(
        IHTMLElement2* This,
        IHTMLStyle **p);

    HRESULT (STDMETHODCALLTYPE *get_behaviorUrns)(
        IHTMLElement2* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *put_tagUrn)(
        IHTMLElement2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_tagUrn)(
        IHTMLElement2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_onbeforeeditfocus)(
        IHTMLElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforeeditfocus)(
        IHTMLElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_readyStateValue)(
        IHTMLElement2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *getElementsByTagName)(
        IHTMLElement2* This,
        BSTR v,
        IHTMLElementCollection **pelColl);

    END_INTERFACE
} IHTMLElement2Vtbl;
interface IHTMLElement2 {
    CONST_VTBL IHTMLElement2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLElement2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLElement2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLElement2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLElement2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLElement2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLElement2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLElement2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLElement2 methods ***/
#define IHTMLElement2_get_scopeName(This,p) (This)->lpVtbl->get_scopeName(This,p)
#define IHTMLElement2_setCapture(This,containerCapture) (This)->lpVtbl->setCapture(This,containerCapture)
#define IHTMLElement2_releaseCapture(This) (This)->lpVtbl->releaseCapture(This)
#define IHTMLElement2_put_onlosecapture(This,v) (This)->lpVtbl->put_onlosecapture(This,v)
#define IHTMLElement2_get_onlosecapture(This,p) (This)->lpVtbl->get_onlosecapture(This,p)
#define IHTMLElement2_componentFromPoint(This,x,y,component) (This)->lpVtbl->componentFromPoint(This,x,y,component)
#define IHTMLElement2_doScroll(This,component) (This)->lpVtbl->doScroll(This,component)
#define IHTMLElement2_put_onscroll(This,v) (This)->lpVtbl->put_onscroll(This,v)
#define IHTMLElement2_get_onscroll(This,p) (This)->lpVtbl->get_onscroll(This,p)
#define IHTMLElement2_put_ondrag(This,v) (This)->lpVtbl->put_ondrag(This,v)
#define IHTMLElement2_get_ondrag(This,p) (This)->lpVtbl->get_ondrag(This,p)
#define IHTMLElement2_put_ondragend(This,v) (This)->lpVtbl->put_ondragend(This,v)
#define IHTMLElement2_get_ondragend(This,p) (This)->lpVtbl->get_ondragend(This,p)
#define IHTMLElement2_put_ondragenter(This,v) (This)->lpVtbl->put_ondragenter(This,v)
#define IHTMLElement2_get_ondragenter(This,p) (This)->lpVtbl->get_ondragenter(This,p)
#define IHTMLElement2_put_ondragover(This,v) (This)->lpVtbl->put_ondragover(This,v)
#define IHTMLElement2_get_ondragover(This,p) (This)->lpVtbl->get_ondragover(This,p)
#define IHTMLElement2_put_ondragleave(This,v) (This)->lpVtbl->put_ondragleave(This,v)
#define IHTMLElement2_get_ondragleave(This,p) (This)->lpVtbl->get_ondragleave(This,p)
#define IHTMLElement2_put_ondrop(This,v) (This)->lpVtbl->put_ondrop(This,v)
#define IHTMLElement2_get_ondrop(This,p) (This)->lpVtbl->get_ondrop(This,p)
#define IHTMLElement2_put_onbeforecut(This,v) (This)->lpVtbl->put_onbeforecut(This,v)
#define IHTMLElement2_get_onbeforecut(This,p) (This)->lpVtbl->get_onbeforecut(This,p)
#define IHTMLElement2_put_oncut(This,v) (This)->lpVtbl->put_oncut(This,v)
#define IHTMLElement2_get_oncut(This,p) (This)->lpVtbl->get_oncut(This,p)
#define IHTMLElement2_put_onbeforecopy(This,v) (This)->lpVtbl->put_onbeforecopy(This,v)
#define IHTMLElement2_get_onbeforecopy(This,p) (This)->lpVtbl->get_onbeforecopy(This,p)
#define IHTMLElement2_put_oncopy(This,v) (This)->lpVtbl->put_oncopy(This,v)
#define IHTMLElement2_get_oncopy(This,p) (This)->lpVtbl->get_oncopy(This,p)
#define IHTMLElement2_put_onbeforepaste(This,v) (This)->lpVtbl->put_onbeforepaste(This,v)
#define IHTMLElement2_get_onbeforepaste(This,p) (This)->lpVtbl->get_onbeforepaste(This,p)
#define IHTMLElement2_put_onpaste(This,v) (This)->lpVtbl->put_onpaste(This,v)
#define IHTMLElement2_get_onpaste(This,p) (This)->lpVtbl->get_onpaste(This,p)
#define IHTMLElement2_get_currentStyle(This,p) (This)->lpVtbl->get_currentStyle(This,p)
#define IHTMLElement2_put_onpropertychange(This,v) (This)->lpVtbl->put_onpropertychange(This,v)
#define IHTMLElement2_get_onpropertychange(This,p) (This)->lpVtbl->get_onpropertychange(This,p)
#define IHTMLElement2_getClientRects(This,pRectCol) (This)->lpVtbl->getClientRects(This,pRectCol)
#define IHTMLElement2_getBoundingClientRect(This,pRect) (This)->lpVtbl->getBoundingClientRect(This,pRect)
#define IHTMLElement2_setExpression(This,propname,expression,language) (This)->lpVtbl->setExpression(This,propname,expression,language)
#define IHTMLElement2_getExpression(This,propname,expression) (This)->lpVtbl->getExpression(This,propname,expression)
#define IHTMLElement2_removeExpression(This,propname,pfSuccess) (This)->lpVtbl->removeExpression(This,propname,pfSuccess)
#define IHTMLElement2_put_tabIndex(This,v) (This)->lpVtbl->put_tabIndex(This,v)
#define IHTMLElement2_get_tabIndex(This,p) (This)->lpVtbl->get_tabIndex(This,p)
#define IHTMLElement2_focus(This) (This)->lpVtbl->focus(This)
#define IHTMLElement2_put_accessKey(This,v) (This)->lpVtbl->put_accessKey(This,v)
#define IHTMLElement2_get_accessKey(This,p) (This)->lpVtbl->get_accessKey(This,p)
#define IHTMLElement2_put_onblur(This,v) (This)->lpVtbl->put_onblur(This,v)
#define IHTMLElement2_get_onblur(This,p) (This)->lpVtbl->get_onblur(This,p)
#define IHTMLElement2_put_onfocus(This,v) (This)->lpVtbl->put_onfocus(This,v)
#define IHTMLElement2_get_onfocus(This,p) (This)->lpVtbl->get_onfocus(This,p)
#define IHTMLElement2_put_onresize(This,v) (This)->lpVtbl->put_onresize(This,v)
#define IHTMLElement2_get_onresize(This,p) (This)->lpVtbl->get_onresize(This,p)
#define IHTMLElement2_blur(This) (This)->lpVtbl->blur(This)
#define IHTMLElement2_addFilter(This,pUnk) (This)->lpVtbl->addFilter(This,pUnk)
#define IHTMLElement2_removeFilter(This,pUnk) (This)->lpVtbl->removeFilter(This,pUnk)
#define IHTMLElement2_get_clientHeight(This,p) (This)->lpVtbl->get_clientHeight(This,p)
#define IHTMLElement2_get_clientWidth(This,p) (This)->lpVtbl->get_clientWidth(This,p)
#define IHTMLElement2_get_clientTop(This,p) (This)->lpVtbl->get_clientTop(This,p)
#define IHTMLElement2_get_clientLeft(This,p) (This)->lpVtbl->get_clientLeft(This,p)
#define IHTMLElement2_attachEvent(This,event,pDisp,pfResult) (This)->lpVtbl->attachEvent(This,event,pDisp,pfResult)
#define IHTMLElement2_detachEvent(This,event,pDisp) (This)->lpVtbl->detachEvent(This,event,pDisp)
#define IHTMLElement2_get_readyState(This,p) (This)->lpVtbl->get_readyState(This,p)
#define IHTMLElement2_put_onreadystatechange(This,v) (This)->lpVtbl->put_onreadystatechange(This,v)
#define IHTMLElement2_get_onreadystatechange(This,p) (This)->lpVtbl->get_onreadystatechange(This,p)
#define IHTMLElement2_put_onrowsdelete(This,v) (This)->lpVtbl->put_onrowsdelete(This,v)
#define IHTMLElement2_get_onrowsdelete(This,p) (This)->lpVtbl->get_onrowsdelete(This,p)
#define IHTMLElement2_put_onrowsinserted(This,v) (This)->lpVtbl->put_onrowsinserted(This,v)
#define IHTMLElement2_get_onrowsinserted(This,p) (This)->lpVtbl->get_onrowsinserted(This,p)
#define IHTMLElement2_put_oncellchange(This,v) (This)->lpVtbl->put_oncellchange(This,v)
#define IHTMLElement2_get_oncellchange(This,p) (This)->lpVtbl->get_oncellchange(This,p)
#define IHTMLElement2_put_dir(This,v) (This)->lpVtbl->put_dir(This,v)
#define IHTMLElement2_get_dir(This,p) (This)->lpVtbl->get_dir(This,p)
#define IHTMLElement2_createControlRange(This,range) (This)->lpVtbl->createControlRange(This,range)
#define IHTMLElement2_get_scrollHeight(This,p) (This)->lpVtbl->get_scrollHeight(This,p)
#define IHTMLElement2_get_scrollWidth(This,p) (This)->lpVtbl->get_scrollWidth(This,p)
#define IHTMLElement2_put_scrollTop(This,v) (This)->lpVtbl->put_scrollTop(This,v)
#define IHTMLElement2_get_scrollTop(This,p) (This)->lpVtbl->get_scrollTop(This,p)
#define IHTMLElement2_put_scrollLeft(This,v) (This)->lpVtbl->put_scrollLeft(This,v)
#define IHTMLElement2_get_scrollLeft(This,p) (This)->lpVtbl->get_scrollLeft(This,p)
#define IHTMLElement2_clearAttributes(This) (This)->lpVtbl->clearAttributes(This)
#define IHTMLElement2_mergeAttributes(This,mergeThis) (This)->lpVtbl->mergeAttributes(This,mergeThis)
#define IHTMLElement2_put_oncontextmenu(This,v) (This)->lpVtbl->put_oncontextmenu(This,v)
#define IHTMLElement2_get_oncontextmenu(This,p) (This)->lpVtbl->get_oncontextmenu(This,p)
#define IHTMLElement2_insertAdjacentElement(This,where,insertedElement,inserted) (This)->lpVtbl->insertAdjacentElement(This,where,insertedElement,inserted)
#define IHTMLElement2_applyElement(This,apply,where,applied) (This)->lpVtbl->applyElement(This,apply,where,applied)
#define IHTMLElement2_getAdjacentText(This,where,text) (This)->lpVtbl->getAdjacentText(This,where,text)
#define IHTMLElement2_replaceAdjacentText(This,where,newText,oldText) (This)->lpVtbl->replaceAdjacentText(This,where,newText,oldText)
#define IHTMLElement2_get_canHaveChildren(This,p) (This)->lpVtbl->get_canHaveChildren(This,p)
#define IHTMLElement2_addBehavior(This,bstrUrl,pvarFactory,pCookie) (This)->lpVtbl->addBehavior(This,bstrUrl,pvarFactory,pCookie)
#define IHTMLElement2_removeBehavior(This,cookie,pfResult) (This)->lpVtbl->removeBehavior(This,cookie,pfResult)
#define IHTMLElement2_get_runtimeStyle(This,p) (This)->lpVtbl->get_runtimeStyle(This,p)
#define IHTMLElement2_get_behaviorUrns(This,p) (This)->lpVtbl->get_behaviorUrns(This,p)
#define IHTMLElement2_put_tagUrn(This,v) (This)->lpVtbl->put_tagUrn(This,v)
#define IHTMLElement2_get_tagUrn(This,p) (This)->lpVtbl->get_tagUrn(This,p)
#define IHTMLElement2_put_onbeforeeditfocus(This,v) (This)->lpVtbl->put_onbeforeeditfocus(This,v)
#define IHTMLElement2_get_onbeforeeditfocus(This,p) (This)->lpVtbl->get_onbeforeeditfocus(This,p)
#define IHTMLElement2_get_readyStateValue(This,p) (This)->lpVtbl->get_readyStateValue(This,p)
#define IHTMLElement2_getElementsByTagName(This,v,pelColl) (This)->lpVtbl->getElementsByTagName(This,v,pelColl)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLElement2_get_scopeName_Proxy(
    IHTMLElement2* This,
    BSTR *p);
void __RPC_STUB IHTMLElement2_get_scopeName_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_setCapture_Proxy(
    IHTMLElement2* This,
    VARIANT_BOOL containerCapture);
void __RPC_STUB IHTMLElement2_setCapture_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_releaseCapture_Proxy(
    IHTMLElement2* This);
void __RPC_STUB IHTMLElement2_releaseCapture_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onlosecapture_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onlosecapture_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onlosecapture_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onlosecapture_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_componentFromPoint_Proxy(
    IHTMLElement2* This,
    LONG x,
    LONG y,
    BSTR *component);
void __RPC_STUB IHTMLElement2_componentFromPoint_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_doScroll_Proxy(
    IHTMLElement2* This,
    VARIANT component);
void __RPC_STUB IHTMLElement2_doScroll_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onscroll_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onscroll_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onscroll_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onscroll_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_ondrag_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_ondrag_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_ondrag_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_ondrag_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_ondragend_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_ondragend_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_ondragend_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_ondragend_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_ondragenter_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_ondragenter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_ondragenter_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_ondragenter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_ondragover_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_ondragover_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_ondragover_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_ondragover_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_ondragleave_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_ondragleave_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_ondragleave_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_ondragleave_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_ondrop_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_ondrop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_ondrop_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_ondrop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onbeforecut_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onbeforecut_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onbeforecut_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onbeforecut_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_oncut_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_oncut_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_oncut_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_oncut_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onbeforecopy_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onbeforecopy_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onbeforecopy_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onbeforecopy_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_oncopy_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_oncopy_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_oncopy_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_oncopy_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onbeforepaste_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onbeforepaste_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onbeforepaste_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onbeforepaste_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onpaste_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onpaste_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onpaste_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onpaste_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_currentStyle_Proxy(
    IHTMLElement2* This,
    IHTMLCurrentStyle **p);
void __RPC_STUB IHTMLElement2_get_currentStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onpropertychange_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onpropertychange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onpropertychange_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onpropertychange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_getClientRects_Proxy(
    IHTMLElement2* This,
    IHTMLRectCollection **pRectCol);
void __RPC_STUB IHTMLElement2_getClientRects_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_getBoundingClientRect_Proxy(
    IHTMLElement2* This,
    IHTMLRect **pRect);
void __RPC_STUB IHTMLElement2_getBoundingClientRect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_setExpression_Proxy(
    IHTMLElement2* This,
    BSTR propname,
    BSTR expression,
    BSTR language);
void __RPC_STUB IHTMLElement2_setExpression_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_getExpression_Proxy(
    IHTMLElement2* This,
    BSTR propname,
    VARIANT *expression);
void __RPC_STUB IHTMLElement2_getExpression_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_removeExpression_Proxy(
    IHTMLElement2* This,
    BSTR propname,
    VARIANT_BOOL *pfSuccess);
void __RPC_STUB IHTMLElement2_removeExpression_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_tabIndex_Proxy(
    IHTMLElement2* This,
    short v);
void __RPC_STUB IHTMLElement2_put_tabIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_tabIndex_Proxy(
    IHTMLElement2* This,
    short *p);
void __RPC_STUB IHTMLElement2_get_tabIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_focus_Proxy(
    IHTMLElement2* This);
void __RPC_STUB IHTMLElement2_focus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_accessKey_Proxy(
    IHTMLElement2* This,
    BSTR v);
void __RPC_STUB IHTMLElement2_put_accessKey_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_accessKey_Proxy(
    IHTMLElement2* This,
    BSTR *p);
void __RPC_STUB IHTMLElement2_get_accessKey_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onblur_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onblur_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onblur_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onblur_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onfocus_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onfocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onfocus_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onfocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onresize_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onresize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onresize_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onresize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_blur_Proxy(
    IHTMLElement2* This);
void __RPC_STUB IHTMLElement2_blur_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_addFilter_Proxy(
    IHTMLElement2* This,
    IUnknown *pUnk);
void __RPC_STUB IHTMLElement2_addFilter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_removeFilter_Proxy(
    IHTMLElement2* This,
    IUnknown *pUnk);
void __RPC_STUB IHTMLElement2_removeFilter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_clientHeight_Proxy(
    IHTMLElement2* This,
    LONG *p);
void __RPC_STUB IHTMLElement2_get_clientHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_clientWidth_Proxy(
    IHTMLElement2* This,
    LONG *p);
void __RPC_STUB IHTMLElement2_get_clientWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_clientTop_Proxy(
    IHTMLElement2* This,
    LONG *p);
void __RPC_STUB IHTMLElement2_get_clientTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_clientLeft_Proxy(
    IHTMLElement2* This,
    LONG *p);
void __RPC_STUB IHTMLElement2_get_clientLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_attachEvent_Proxy(
    IHTMLElement2* This,
    BSTR event,
    IDispatch *pDisp,
    VARIANT_BOOL *pfResult);
void __RPC_STUB IHTMLElement2_attachEvent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_detachEvent_Proxy(
    IHTMLElement2* This,
    BSTR event,
    IDispatch *pDisp);
void __RPC_STUB IHTMLElement2_detachEvent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_readyState_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_readyState_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onreadystatechange_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onreadystatechange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onreadystatechange_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onreadystatechange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onrowsdelete_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onrowsdelete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onrowsdelete_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onrowsdelete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onrowsinserted_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onrowsinserted_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onrowsinserted_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onrowsinserted_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_oncellchange_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_oncellchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_oncellchange_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_oncellchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_dir_Proxy(
    IHTMLElement2* This,
    BSTR v);
void __RPC_STUB IHTMLElement2_put_dir_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_dir_Proxy(
    IHTMLElement2* This,
    BSTR *p);
void __RPC_STUB IHTMLElement2_get_dir_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_createControlRange_Proxy(
    IHTMLElement2* This,
    IDispatch **range);
void __RPC_STUB IHTMLElement2_createControlRange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_scrollHeight_Proxy(
    IHTMLElement2* This,
    LONG *p);
void __RPC_STUB IHTMLElement2_get_scrollHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_scrollWidth_Proxy(
    IHTMLElement2* This,
    LONG *p);
void __RPC_STUB IHTMLElement2_get_scrollWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_scrollTop_Proxy(
    IHTMLElement2* This,
    LONG v);
void __RPC_STUB IHTMLElement2_put_scrollTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_scrollTop_Proxy(
    IHTMLElement2* This,
    LONG *p);
void __RPC_STUB IHTMLElement2_get_scrollTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_scrollLeft_Proxy(
    IHTMLElement2* This,
    LONG v);
void __RPC_STUB IHTMLElement2_put_scrollLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_scrollLeft_Proxy(
    IHTMLElement2* This,
    LONG *p);
void __RPC_STUB IHTMLElement2_get_scrollLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_clearAttributes_Proxy(
    IHTMLElement2* This);
void __RPC_STUB IHTMLElement2_clearAttributes_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_mergeAttributes_Proxy(
    IHTMLElement2* This,
    IHTMLElement *mergeThis);
void __RPC_STUB IHTMLElement2_mergeAttributes_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_oncontextmenu_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_oncontextmenu_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_oncontextmenu_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_oncontextmenu_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_insertAdjacentElement_Proxy(
    IHTMLElement2* This,
    BSTR where,
    IHTMLElement *insertedElement,
    IHTMLElement **inserted);
void __RPC_STUB IHTMLElement2_insertAdjacentElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_applyElement_Proxy(
    IHTMLElement2* This,
    IHTMLElement *apply,
    BSTR where,
    IHTMLElement **applied);
void __RPC_STUB IHTMLElement2_applyElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_getAdjacentText_Proxy(
    IHTMLElement2* This,
    BSTR where,
    BSTR *text);
void __RPC_STUB IHTMLElement2_getAdjacentText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_replaceAdjacentText_Proxy(
    IHTMLElement2* This,
    BSTR where,
    BSTR newText,
    BSTR *oldText);
void __RPC_STUB IHTMLElement2_replaceAdjacentText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_canHaveChildren_Proxy(
    IHTMLElement2* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLElement2_get_canHaveChildren_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_addBehavior_Proxy(
    IHTMLElement2* This,
    BSTR bstrUrl,
    VARIANT *pvarFactory,
    LONG *pCookie);
void __RPC_STUB IHTMLElement2_addBehavior_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_removeBehavior_Proxy(
    IHTMLElement2* This,
    LONG cookie,
    VARIANT_BOOL *pfResult);
void __RPC_STUB IHTMLElement2_removeBehavior_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_runtimeStyle_Proxy(
    IHTMLElement2* This,
    IHTMLStyle **p);
void __RPC_STUB IHTMLElement2_get_runtimeStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_behaviorUrns_Proxy(
    IHTMLElement2* This,
    IDispatch **p);
void __RPC_STUB IHTMLElement2_get_behaviorUrns_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_tagUrn_Proxy(
    IHTMLElement2* This,
    BSTR v);
void __RPC_STUB IHTMLElement2_put_tagUrn_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_tagUrn_Proxy(
    IHTMLElement2* This,
    BSTR *p);
void __RPC_STUB IHTMLElement2_get_tagUrn_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_put_onbeforeeditfocus_Proxy(
    IHTMLElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLElement2_put_onbeforeeditfocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_onbeforeeditfocus_Proxy(
    IHTMLElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement2_get_onbeforeeditfocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_get_readyStateValue_Proxy(
    IHTMLElement2* This,
    LONG *p);
void __RPC_STUB IHTMLElement2_get_readyStateValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement2_getElementsByTagName_Proxy(
    IHTMLElement2* This,
    BSTR v,
    IHTMLElementCollection **pelColl);
void __RPC_STUB IHTMLElement2_getElementsByTagName_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLElement2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLElement3 interface
 */
#ifndef __IHTMLElement3_INTERFACE_DEFINED__
#define __IHTMLElement3_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLElement3, 0x3050f673, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLElement3 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE mergeAttributes(
        IHTMLElement *mergeThis,
        VARIANT *pvarFlags) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_isMultiLine(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_canHaveHTML(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onlayoutcomplete(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onlayoutcomplete(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onpage(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onpage(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_inflateBlock(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_inflateBlock(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforedeactivate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforedeactivate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE setActive(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_contentEditable(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_contentEditable(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_isContentEditable(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_hideFocus(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hideFocus(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_disabled(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_disabled(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_isDisabled(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmove(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmove(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_oncontrolselect(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_oncontrolselect(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE fireEvent(
        BSTR bstrEventName,
        VARIANT *pvarEventObject,
        VARIANT_BOOL *pfCancelled) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onresizestart(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onresizestart(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onresizeend(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onresizeend(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmovestart(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmovestart(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmoveend(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmoveend(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmouseenter(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmouseenter(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmouseleave(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmouseleave(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onactivate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onactivate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondeactivate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondeactivate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE dragDrop(
        VARIANT_BOOL *pfRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_glyphMode(
        LONG *p) = 0;

};
#else
typedef struct IHTMLElement3Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLElement3* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLElement3* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLElement3* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLElement3* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLElement3* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLElement3* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLElement3* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLElement3 methods ***/
    HRESULT (STDMETHODCALLTYPE *mergeAttributes)(
        IHTMLElement3* This,
        IHTMLElement *mergeThis,
        VARIANT *pvarFlags);

    HRESULT (STDMETHODCALLTYPE *get_isMultiLine)(
        IHTMLElement3* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_canHaveHTML)(
        IHTMLElement3* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_onlayoutcomplete)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onlayoutcomplete)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onpage)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onpage)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_inflateBlock)(
        IHTMLElement3* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_inflateBlock)(
        IHTMLElement3* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_onbeforedeactivate)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforedeactivate)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *setActive)(
        IHTMLElement3* This);

    HRESULT (STDMETHODCALLTYPE *put_contentEditable)(
        IHTMLElement3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_contentEditable)(
        IHTMLElement3* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_isContentEditable)(
        IHTMLElement3* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_hideFocus)(
        IHTMLElement3* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_hideFocus)(
        IHTMLElement3* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_disabled)(
        IHTMLElement3* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_disabled)(
        IHTMLElement3* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_isDisabled)(
        IHTMLElement3* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_onmove)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmove)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_oncontrolselect)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_oncontrolselect)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *fireEvent)(
        IHTMLElement3* This,
        BSTR bstrEventName,
        VARIANT *pvarEventObject,
        VARIANT_BOOL *pfCancelled);

    HRESULT (STDMETHODCALLTYPE *put_onresizestart)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onresizestart)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onresizeend)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onresizeend)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmovestart)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmovestart)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmoveend)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmoveend)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmouseenter)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmouseenter)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmouseleave)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmouseleave)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onactivate)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onactivate)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondeactivate)(
        IHTMLElement3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondeactivate)(
        IHTMLElement3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *dragDrop)(
        IHTMLElement3* This,
        VARIANT_BOOL *pfRet);

    HRESULT (STDMETHODCALLTYPE *get_glyphMode)(
        IHTMLElement3* This,
        LONG *p);

    END_INTERFACE
} IHTMLElement3Vtbl;
interface IHTMLElement3 {
    CONST_VTBL IHTMLElement3Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLElement3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLElement3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLElement3_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLElement3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLElement3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLElement3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLElement3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLElement3 methods ***/
#define IHTMLElement3_mergeAttributes(This,mergeThis,pvarFlags) (This)->lpVtbl->mergeAttributes(This,mergeThis,pvarFlags)
#define IHTMLElement3_get_isMultiLine(This,p) (This)->lpVtbl->get_isMultiLine(This,p)
#define IHTMLElement3_get_canHaveHTML(This,p) (This)->lpVtbl->get_canHaveHTML(This,p)
#define IHTMLElement3_put_onlayoutcomplete(This,v) (This)->lpVtbl->put_onlayoutcomplete(This,v)
#define IHTMLElement3_get_onlayoutcomplete(This,p) (This)->lpVtbl->get_onlayoutcomplete(This,p)
#define IHTMLElement3_put_onpage(This,v) (This)->lpVtbl->put_onpage(This,v)
#define IHTMLElement3_get_onpage(This,p) (This)->lpVtbl->get_onpage(This,p)
#define IHTMLElement3_put_inflateBlock(This,v) (This)->lpVtbl->put_inflateBlock(This,v)
#define IHTMLElement3_get_inflateBlock(This,p) (This)->lpVtbl->get_inflateBlock(This,p)
#define IHTMLElement3_put_onbeforedeactivate(This,v) (This)->lpVtbl->put_onbeforedeactivate(This,v)
#define IHTMLElement3_get_onbeforedeactivate(This,p) (This)->lpVtbl->get_onbeforedeactivate(This,p)
#define IHTMLElement3_setActive(This) (This)->lpVtbl->setActive(This)
#define IHTMLElement3_put_contentEditable(This,v) (This)->lpVtbl->put_contentEditable(This,v)
#define IHTMLElement3_get_contentEditable(This,p) (This)->lpVtbl->get_contentEditable(This,p)
#define IHTMLElement3_get_isContentEditable(This,p) (This)->lpVtbl->get_isContentEditable(This,p)
#define IHTMLElement3_put_hideFocus(This,v) (This)->lpVtbl->put_hideFocus(This,v)
#define IHTMLElement3_get_hideFocus(This,p) (This)->lpVtbl->get_hideFocus(This,p)
#define IHTMLElement3_put_disabled(This,v) (This)->lpVtbl->put_disabled(This,v)
#define IHTMLElement3_get_disabled(This,p) (This)->lpVtbl->get_disabled(This,p)
#define IHTMLElement3_get_isDisabled(This,p) (This)->lpVtbl->get_isDisabled(This,p)
#define IHTMLElement3_put_onmove(This,v) (This)->lpVtbl->put_onmove(This,v)
#define IHTMLElement3_get_onmove(This,p) (This)->lpVtbl->get_onmove(This,p)
#define IHTMLElement3_put_oncontrolselect(This,v) (This)->lpVtbl->put_oncontrolselect(This,v)
#define IHTMLElement3_get_oncontrolselect(This,p) (This)->lpVtbl->get_oncontrolselect(This,p)
#define IHTMLElement3_fireEvent(This,bstrEventName,pvarEventObject,pfCancelled) (This)->lpVtbl->fireEvent(This,bstrEventName,pvarEventObject,pfCancelled)
#define IHTMLElement3_put_onresizestart(This,v) (This)->lpVtbl->put_onresizestart(This,v)
#define IHTMLElement3_get_onresizestart(This,p) (This)->lpVtbl->get_onresizestart(This,p)
#define IHTMLElement3_put_onresizeend(This,v) (This)->lpVtbl->put_onresizeend(This,v)
#define IHTMLElement3_get_onresizeend(This,p) (This)->lpVtbl->get_onresizeend(This,p)
#define IHTMLElement3_put_onmovestart(This,v) (This)->lpVtbl->put_onmovestart(This,v)
#define IHTMLElement3_get_onmovestart(This,p) (This)->lpVtbl->get_onmovestart(This,p)
#define IHTMLElement3_put_onmoveend(This,v) (This)->lpVtbl->put_onmoveend(This,v)
#define IHTMLElement3_get_onmoveend(This,p) (This)->lpVtbl->get_onmoveend(This,p)
#define IHTMLElement3_put_onmouseenter(This,v) (This)->lpVtbl->put_onmouseenter(This,v)
#define IHTMLElement3_get_onmouseenter(This,p) (This)->lpVtbl->get_onmouseenter(This,p)
#define IHTMLElement3_put_onmouseleave(This,v) (This)->lpVtbl->put_onmouseleave(This,v)
#define IHTMLElement3_get_onmouseleave(This,p) (This)->lpVtbl->get_onmouseleave(This,p)
#define IHTMLElement3_put_onactivate(This,v) (This)->lpVtbl->put_onactivate(This,v)
#define IHTMLElement3_get_onactivate(This,p) (This)->lpVtbl->get_onactivate(This,p)
#define IHTMLElement3_put_ondeactivate(This,v) (This)->lpVtbl->put_ondeactivate(This,v)
#define IHTMLElement3_get_ondeactivate(This,p) (This)->lpVtbl->get_ondeactivate(This,p)
#define IHTMLElement3_dragDrop(This,pfRet) (This)->lpVtbl->dragDrop(This,pfRet)
#define IHTMLElement3_get_glyphMode(This,p) (This)->lpVtbl->get_glyphMode(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLElement3_mergeAttributes_Proxy(
    IHTMLElement3* This,
    IHTMLElement *mergeThis,
    VARIANT *pvarFlags);
void __RPC_STUB IHTMLElement3_mergeAttributes_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_isMultiLine_Proxy(
    IHTMLElement3* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLElement3_get_isMultiLine_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_canHaveHTML_Proxy(
    IHTMLElement3* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLElement3_get_canHaveHTML_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_onlayoutcomplete_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_onlayoutcomplete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_onlayoutcomplete_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_onlayoutcomplete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_onpage_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_onpage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_onpage_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_onpage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_inflateBlock_Proxy(
    IHTMLElement3* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLElement3_put_inflateBlock_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_inflateBlock_Proxy(
    IHTMLElement3* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLElement3_get_inflateBlock_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_onbeforedeactivate_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_onbeforedeactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_onbeforedeactivate_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_onbeforedeactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_setActive_Proxy(
    IHTMLElement3* This);
void __RPC_STUB IHTMLElement3_setActive_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_contentEditable_Proxy(
    IHTMLElement3* This,
    BSTR v);
void __RPC_STUB IHTMLElement3_put_contentEditable_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_contentEditable_Proxy(
    IHTMLElement3* This,
    BSTR *p);
void __RPC_STUB IHTMLElement3_get_contentEditable_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_isContentEditable_Proxy(
    IHTMLElement3* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLElement3_get_isContentEditable_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_hideFocus_Proxy(
    IHTMLElement3* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLElement3_put_hideFocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_hideFocus_Proxy(
    IHTMLElement3* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLElement3_get_hideFocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_disabled_Proxy(
    IHTMLElement3* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLElement3_put_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_disabled_Proxy(
    IHTMLElement3* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLElement3_get_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_isDisabled_Proxy(
    IHTMLElement3* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLElement3_get_isDisabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_onmove_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_onmove_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_onmove_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_onmove_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_oncontrolselect_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_oncontrolselect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_oncontrolselect_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_oncontrolselect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_fireEvent_Proxy(
    IHTMLElement3* This,
    BSTR bstrEventName,
    VARIANT *pvarEventObject,
    VARIANT_BOOL *pfCancelled);
void __RPC_STUB IHTMLElement3_fireEvent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_onresizestart_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_onresizestart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_onresizestart_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_onresizestart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_onresizeend_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_onresizeend_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_onresizeend_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_onresizeend_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_onmovestart_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_onmovestart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_onmovestart_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_onmovestart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_onmoveend_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_onmoveend_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_onmoveend_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_onmoveend_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_onmouseenter_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_onmouseenter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_onmouseenter_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_onmouseenter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_onmouseleave_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_onmouseleave_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_onmouseleave_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_onmouseleave_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_onactivate_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_onactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_onactivate_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_onactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_put_ondeactivate_Proxy(
    IHTMLElement3* This,
    VARIANT v);
void __RPC_STUB IHTMLElement3_put_ondeactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_ondeactivate_Proxy(
    IHTMLElement3* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement3_get_ondeactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_dragDrop_Proxy(
    IHTMLElement3* This,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLElement3_dragDrop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement3_get_glyphMode_Proxy(
    IHTMLElement3* This,
    LONG *p);
void __RPC_STUB IHTMLElement3_get_glyphMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLElement3_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLElement4 interface
 */
#ifndef __IHTMLElement4_INTERFACE_DEFINED__
#define __IHTMLElement4_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLElement4, 0x3050f80f, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLElement4 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_onmousewheel(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmousewheel(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE normalize(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE getAttributeNode(
        BSTR bstrname,
        IHTMLDOMAttribute **ppAttribute) = 0;

    virtual HRESULT STDMETHODCALLTYPE setAttributeNode(
        IHTMLDOMAttribute *pattr,
        IHTMLDOMAttribute **ppretAttribute) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeAttributeNode(
        IHTMLDOMAttribute *pattr,
        IHTMLDOMAttribute **ppretAttribute) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforeactivate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforeactivate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onfocusin(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onfocusin(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onfocusout(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onfocusout(
        VARIANT *p) = 0;

};
#else
typedef struct IHTMLElement4Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLElement4* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLElement4* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLElement4* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLElement4* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLElement4* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLElement4* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLElement4* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLElement4 methods ***/
    HRESULT (STDMETHODCALLTYPE *put_onmousewheel)(
        IHTMLElement4* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmousewheel)(
        IHTMLElement4* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *normalize)(
        IHTMLElement4* This);

    HRESULT (STDMETHODCALLTYPE *getAttributeNode)(
        IHTMLElement4* This,
        BSTR bstrname,
        IHTMLDOMAttribute **ppAttribute);

    HRESULT (STDMETHODCALLTYPE *setAttributeNode)(
        IHTMLElement4* This,
        IHTMLDOMAttribute *pattr,
        IHTMLDOMAttribute **ppretAttribute);

    HRESULT (STDMETHODCALLTYPE *removeAttributeNode)(
        IHTMLElement4* This,
        IHTMLDOMAttribute *pattr,
        IHTMLDOMAttribute **ppretAttribute);

    HRESULT (STDMETHODCALLTYPE *put_onbeforeactivate)(
        IHTMLElement4* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforeactivate)(
        IHTMLElement4* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onfocusin)(
        IHTMLElement4* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onfocusin)(
        IHTMLElement4* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onfocusout)(
        IHTMLElement4* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onfocusout)(
        IHTMLElement4* This,
        VARIANT *p);

    END_INTERFACE
} IHTMLElement4Vtbl;
interface IHTMLElement4 {
    CONST_VTBL IHTMLElement4Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLElement4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLElement4_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLElement4_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLElement4_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLElement4_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLElement4_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLElement4_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLElement4 methods ***/
#define IHTMLElement4_put_onmousewheel(This,v) (This)->lpVtbl->put_onmousewheel(This,v)
#define IHTMLElement4_get_onmousewheel(This,p) (This)->lpVtbl->get_onmousewheel(This,p)
#define IHTMLElement4_normalize(This) (This)->lpVtbl->normalize(This)
#define IHTMLElement4_getAttributeNode(This,bstrname,ppAttribute) (This)->lpVtbl->getAttributeNode(This,bstrname,ppAttribute)
#define IHTMLElement4_setAttributeNode(This,pattr,ppretAttribute) (This)->lpVtbl->setAttributeNode(This,pattr,ppretAttribute)
#define IHTMLElement4_removeAttributeNode(This,pattr,ppretAttribute) (This)->lpVtbl->removeAttributeNode(This,pattr,ppretAttribute)
#define IHTMLElement4_put_onbeforeactivate(This,v) (This)->lpVtbl->put_onbeforeactivate(This,v)
#define IHTMLElement4_get_onbeforeactivate(This,p) (This)->lpVtbl->get_onbeforeactivate(This,p)
#define IHTMLElement4_put_onfocusin(This,v) (This)->lpVtbl->put_onfocusin(This,v)
#define IHTMLElement4_get_onfocusin(This,p) (This)->lpVtbl->get_onfocusin(This,p)
#define IHTMLElement4_put_onfocusout(This,v) (This)->lpVtbl->put_onfocusout(This,v)
#define IHTMLElement4_get_onfocusout(This,p) (This)->lpVtbl->get_onfocusout(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLElement4_put_onmousewheel_Proxy(
    IHTMLElement4* This,
    VARIANT v);
void __RPC_STUB IHTMLElement4_put_onmousewheel_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement4_get_onmousewheel_Proxy(
    IHTMLElement4* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement4_get_onmousewheel_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement4_normalize_Proxy(
    IHTMLElement4* This);
void __RPC_STUB IHTMLElement4_normalize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement4_getAttributeNode_Proxy(
    IHTMLElement4* This,
    BSTR bstrname,
    IHTMLDOMAttribute **ppAttribute);
void __RPC_STUB IHTMLElement4_getAttributeNode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement4_setAttributeNode_Proxy(
    IHTMLElement4* This,
    IHTMLDOMAttribute *pattr,
    IHTMLDOMAttribute **ppretAttribute);
void __RPC_STUB IHTMLElement4_setAttributeNode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement4_removeAttributeNode_Proxy(
    IHTMLElement4* This,
    IHTMLDOMAttribute *pattr,
    IHTMLDOMAttribute **ppretAttribute);
void __RPC_STUB IHTMLElement4_removeAttributeNode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement4_put_onbeforeactivate_Proxy(
    IHTMLElement4* This,
    VARIANT v);
void __RPC_STUB IHTMLElement4_put_onbeforeactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement4_get_onbeforeactivate_Proxy(
    IHTMLElement4* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement4_get_onbeforeactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement4_put_onfocusin_Proxy(
    IHTMLElement4* This,
    VARIANT v);
void __RPC_STUB IHTMLElement4_put_onfocusin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement4_get_onfocusin_Proxy(
    IHTMLElement4* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement4_get_onfocusin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement4_put_onfocusout_Proxy(
    IHTMLElement4* This,
    VARIANT v);
void __RPC_STUB IHTMLElement4_put_onfocusout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElement4_get_onfocusout_Proxy(
    IHTMLElement4* This,
    VARIANT *p);
void __RPC_STUB IHTMLElement4_get_onfocusout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLElement4_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLUniqueName interface
 */
#ifndef __IHTMLUniqueName_INTERFACE_DEFINED__
#define __IHTMLUniqueName_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLUniqueName, 0x3050f4d0, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLUniqueName : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_uniqueNumber(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_uniqueID(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLUniqueNameVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLUniqueName* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLUniqueName* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLUniqueName* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLUniqueName* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLUniqueName* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLUniqueName* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLUniqueName* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLUniqueName methods ***/
    HRESULT (STDMETHODCALLTYPE *get_uniqueNumber)(
        IHTMLUniqueName* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_uniqueID)(
        IHTMLUniqueName* This,
        BSTR *p);

    END_INTERFACE
} IHTMLUniqueNameVtbl;
interface IHTMLUniqueName {
    CONST_VTBL IHTMLUniqueNameVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLUniqueName_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLUniqueName_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLUniqueName_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLUniqueName_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLUniqueName_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLUniqueName_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLUniqueName_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLUniqueName methods ***/
#define IHTMLUniqueName_get_uniqueNumber(This,p) (This)->lpVtbl->get_uniqueNumber(This,p)
#define IHTMLUniqueName_get_uniqueID(This,p) (This)->lpVtbl->get_uniqueID(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLUniqueName_get_uniqueNumber_Proxy(
    IHTMLUniqueName* This,
    LONG *p);
void __RPC_STUB IHTMLUniqueName_get_uniqueNumber_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLUniqueName_get_uniqueID_Proxy(
    IHTMLUniqueName* This,
    BSTR *p);
void __RPC_STUB IHTMLUniqueName_get_uniqueID_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLUniqueName_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDatabinding interface
 */
#ifndef __IHTMLDatabinding_INTERFACE_DEFINED__
#define __IHTMLDatabinding_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDatabinding, 0x3050f3f2, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDatabinding : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_dataFld(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_dataFld(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_dataSrc(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_dataSrc(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_dataFormatAs(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_dataFormatAs(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLDatabindingVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDatabinding* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDatabinding* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDatabinding* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDatabinding* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDatabinding* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDatabinding* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDatabinding* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDatabinding methods ***/
    HRESULT (STDMETHODCALLTYPE *put_dataFld)(
        IHTMLDatabinding* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_dataFld)(
        IHTMLDatabinding* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_dataSrc)(
        IHTMLDatabinding* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_dataSrc)(
        IHTMLDatabinding* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_dataFormatAs)(
        IHTMLDatabinding* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_dataFormatAs)(
        IHTMLDatabinding* This,
        BSTR *p);

    END_INTERFACE
} IHTMLDatabindingVtbl;
interface IHTMLDatabinding {
    CONST_VTBL IHTMLDatabindingVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDatabinding_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDatabinding_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDatabinding_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDatabinding_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDatabinding_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDatabinding_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDatabinding_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDatabinding methods ***/
#define IHTMLDatabinding_put_dataFld(This,v) (This)->lpVtbl->put_dataFld(This,v)
#define IHTMLDatabinding_get_dataFld(This,p) (This)->lpVtbl->get_dataFld(This,p)
#define IHTMLDatabinding_put_dataSrc(This,v) (This)->lpVtbl->put_dataSrc(This,v)
#define IHTMLDatabinding_get_dataSrc(This,p) (This)->lpVtbl->get_dataSrc(This,p)
#define IHTMLDatabinding_put_dataFormatAs(This,v) (This)->lpVtbl->put_dataFormatAs(This,v)
#define IHTMLDatabinding_get_dataFormatAs(This,p) (This)->lpVtbl->get_dataFormatAs(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDatabinding_put_dataFld_Proxy(
    IHTMLDatabinding* This,
    BSTR v);
void __RPC_STUB IHTMLDatabinding_put_dataFld_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDatabinding_get_dataFld_Proxy(
    IHTMLDatabinding* This,
    BSTR *p);
void __RPC_STUB IHTMLDatabinding_get_dataFld_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDatabinding_put_dataSrc_Proxy(
    IHTMLDatabinding* This,
    BSTR v);
void __RPC_STUB IHTMLDatabinding_put_dataSrc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDatabinding_get_dataSrc_Proxy(
    IHTMLDatabinding* This,
    BSTR *p);
void __RPC_STUB IHTMLDatabinding_get_dataSrc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDatabinding_put_dataFormatAs_Proxy(
    IHTMLDatabinding* This,
    BSTR v);
void __RPC_STUB IHTMLDatabinding_put_dataFormatAs_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDatabinding_get_dataFormatAs_Proxy(
    IHTMLDatabinding* This,
    BSTR *p);
void __RPC_STUB IHTMLDatabinding_get_dataFormatAs_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDatabinding_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLGenericElement interface
 */
#ifndef __IHTMLGenericElement_INTERFACE_DEFINED__
#define __IHTMLGenericElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLGenericElement, 0x3050f4b7, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLGenericElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_recordset(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE namedRecordset(
        BSTR dataMember,
        VARIANT *hierarchy,
        IDispatch **ppRecordset) = 0;

};
#else
typedef struct IHTMLGenericElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLGenericElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLGenericElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLGenericElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLGenericElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLGenericElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLGenericElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLGenericElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLGenericElement methods ***/
    HRESULT (STDMETHODCALLTYPE *get_recordset)(
        IHTMLGenericElement* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *namedRecordset)(
        IHTMLGenericElement* This,
        BSTR dataMember,
        VARIANT *hierarchy,
        IDispatch **ppRecordset);

    END_INTERFACE
} IHTMLGenericElementVtbl;
interface IHTMLGenericElement {
    CONST_VTBL IHTMLGenericElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLGenericElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLGenericElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLGenericElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLGenericElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLGenericElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLGenericElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLGenericElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLGenericElement methods ***/
#define IHTMLGenericElement_get_recordset(This,p) (This)->lpVtbl->get_recordset(This,p)
#define IHTMLGenericElement_namedRecordset(This,dataMember,hierarchy,ppRecordset) (This)->lpVtbl->namedRecordset(This,dataMember,hierarchy,ppRecordset)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLGenericElement_get_recordset_Proxy(
    IHTMLGenericElement* This,
    IDispatch **p);
void __RPC_STUB IHTMLGenericElement_get_recordset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLGenericElement_namedRecordset_Proxy(
    IHTMLGenericElement* This,
    BSTR dataMember,
    VARIANT *hierarchy,
    IDispatch **ppRecordset);
void __RPC_STUB IHTMLGenericElement_namedRecordset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLGenericElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLGenericElement dispinterface
 */
#ifndef __DispHTMLGenericElement_DISPINTERFACE_DEFINED__
#define __DispHTMLGenericElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLGenericElement, 0x3050f563, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLGenericElement : public IDispatch
{
};
#else
typedef struct DispHTMLGenericElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLGenericElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLGenericElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLGenericElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLGenericElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLGenericElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLGenericElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLGenericElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLGenericElementVtbl;
interface DispHTMLGenericElement {
    CONST_VTBL DispHTMLGenericElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLGenericElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLGenericElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLGenericElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLGenericElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLGenericElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLGenericElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLGenericElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLGenericElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLStyleSheetRule interface
 */
#ifndef __IHTMLStyleSheetRule_INTERFACE_DEFINED__
#define __IHTMLStyleSheetRule_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLStyleSheetRule, 0x3050f357, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLStyleSheetRule : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_selectorText(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_selectorText(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_style(
        IHTMLRuleStyle **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readOnly(
        VARIANT_BOOL *p) = 0;

};
#else
typedef struct IHTMLStyleSheetRuleVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLStyleSheetRule* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLStyleSheetRule* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLStyleSheetRule* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLStyleSheetRule* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLStyleSheetRule* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLStyleSheetRule* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLStyleSheetRule* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLStyleSheetRule methods ***/
    HRESULT (STDMETHODCALLTYPE *put_selectorText)(
        IHTMLStyleSheetRule* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_selectorText)(
        IHTMLStyleSheetRule* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_style)(
        IHTMLStyleSheetRule* This,
        IHTMLRuleStyle **p);

    HRESULT (STDMETHODCALLTYPE *get_readOnly)(
        IHTMLStyleSheetRule* This,
        VARIANT_BOOL *p);

    END_INTERFACE
} IHTMLStyleSheetRuleVtbl;
interface IHTMLStyleSheetRule {
    CONST_VTBL IHTMLStyleSheetRuleVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLStyleSheetRule_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLStyleSheetRule_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLStyleSheetRule_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLStyleSheetRule_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLStyleSheetRule_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLStyleSheetRule_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLStyleSheetRule_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLStyleSheetRule methods ***/
#define IHTMLStyleSheetRule_put_selectorText(This,v) (This)->lpVtbl->put_selectorText(This,v)
#define IHTMLStyleSheetRule_get_selectorText(This,p) (This)->lpVtbl->get_selectorText(This,p)
#define IHTMLStyleSheetRule_get_style(This,p) (This)->lpVtbl->get_style(This,p)
#define IHTMLStyleSheetRule_get_readOnly(This,p) (This)->lpVtbl->get_readOnly(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLStyleSheetRule_put_selectorText_Proxy(
    IHTMLStyleSheetRule* This,
    BSTR v);
void __RPC_STUB IHTMLStyleSheetRule_put_selectorText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheetRule_get_selectorText_Proxy(
    IHTMLStyleSheetRule* This,
    BSTR *p);
void __RPC_STUB IHTMLStyleSheetRule_get_selectorText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheetRule_get_style_Proxy(
    IHTMLStyleSheetRule* This,
    IHTMLRuleStyle **p);
void __RPC_STUB IHTMLStyleSheetRule_get_style_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheetRule_get_readOnly_Proxy(
    IHTMLStyleSheetRule* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLStyleSheetRule_get_readOnly_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLStyleSheetRule_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLStyleSheetRule dispinterface
 */
#ifndef __DispHTMLStyleSheetRule_DISPINTERFACE_DEFINED__
#define __DispHTMLStyleSheetRule_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLStyleSheetRule, 0x3050f50e, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLStyleSheetRule : public IDispatch
{
};
#else
typedef struct DispHTMLStyleSheetRuleVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLStyleSheetRule* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLStyleSheetRule* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLStyleSheetRule* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLStyleSheetRule* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLStyleSheetRule* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLStyleSheetRule* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLStyleSheetRule* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLStyleSheetRuleVtbl;
interface DispHTMLStyleSheetRule {
    CONST_VTBL DispHTMLStyleSheetRuleVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLStyleSheetRule_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLStyleSheetRule_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLStyleSheetRule_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLStyleSheetRule_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLStyleSheetRule_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLStyleSheetRule_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLStyleSheetRule_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLStyleSheetRule_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLStyleSheetRule coclass
 */

DEFINE_GUID(CLSID_HTMLStyleSheetRule, 0x3050f3ce, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLStyleSheetRulesCollection interface
 */
#ifndef __IHTMLStyleSheetRulesCollection_INTERFACE_DEFINED__
#define __IHTMLStyleSheetRulesCollection_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLStyleSheetRulesCollection, 0x3050f2e5, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLStyleSheetRulesCollection : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE item(
        LONG index,
        IHTMLStyleSheetRule **ppHTMLStyleSheetRule) = 0;

};
#else
typedef struct IHTMLStyleSheetRulesCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLStyleSheetRulesCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLStyleSheetRulesCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLStyleSheetRulesCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLStyleSheetRulesCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLStyleSheetRulesCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLStyleSheetRulesCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLStyleSheetRulesCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLStyleSheetRulesCollection methods ***/
    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLStyleSheetRulesCollection* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLStyleSheetRulesCollection* This,
        LONG index,
        IHTMLStyleSheetRule **ppHTMLStyleSheetRule);

    END_INTERFACE
} IHTMLStyleSheetRulesCollectionVtbl;
interface IHTMLStyleSheetRulesCollection {
    CONST_VTBL IHTMLStyleSheetRulesCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLStyleSheetRulesCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLStyleSheetRulesCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLStyleSheetRulesCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLStyleSheetRulesCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLStyleSheetRulesCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLStyleSheetRulesCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLStyleSheetRulesCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLStyleSheetRulesCollection methods ***/
#define IHTMLStyleSheetRulesCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLStyleSheetRulesCollection_item(This,index,ppHTMLStyleSheetRule) (This)->lpVtbl->item(This,index,ppHTMLStyleSheetRule)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLStyleSheetRulesCollection_get_length_Proxy(
    IHTMLStyleSheetRulesCollection* This,
    LONG *p);
void __RPC_STUB IHTMLStyleSheetRulesCollection_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheetRulesCollection_item_Proxy(
    IHTMLStyleSheetRulesCollection* This,
    LONG index,
    IHTMLStyleSheetRule **ppHTMLStyleSheetRule);
void __RPC_STUB IHTMLStyleSheetRulesCollection_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLStyleSheetRulesCollection_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLStyleSheetRulesCollection dispinterface
 */
#ifndef __DispHTMLStyleSheetRulesCollection_DISPINTERFACE_DEFINED__
#define __DispHTMLStyleSheetRulesCollection_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLStyleSheetRulesCollection, 0x3050f52f, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLStyleSheetRulesCollection : public IDispatch
{
};
#else
typedef struct DispHTMLStyleSheetRulesCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLStyleSheetRulesCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLStyleSheetRulesCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLStyleSheetRulesCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLStyleSheetRulesCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLStyleSheetRulesCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLStyleSheetRulesCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLStyleSheetRulesCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLStyleSheetRulesCollectionVtbl;
interface DispHTMLStyleSheetRulesCollection {
    CONST_VTBL DispHTMLStyleSheetRulesCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLStyleSheetRulesCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLStyleSheetRulesCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLStyleSheetRulesCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLStyleSheetRulesCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLStyleSheetRulesCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLStyleSheetRulesCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLStyleSheetRulesCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLStyleSheetRulesCollection_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLStyleSheetRulesCollection coclass
 */

DEFINE_GUID(CLSID_HTMLStyleSheetRulesCollection, 0x3050f3cd, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLStyleSheetPage interface
 */
#ifndef __IHTMLStyleSheetPage_INTERFACE_DEFINED__
#define __IHTMLStyleSheetPage_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLStyleSheetPage, 0x3050f7ee, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLStyleSheetPage : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_selector(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pseudoClass(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLStyleSheetPageVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLStyleSheetPage* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLStyleSheetPage* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLStyleSheetPage* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLStyleSheetPage* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLStyleSheetPage* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLStyleSheetPage* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLStyleSheetPage* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLStyleSheetPage methods ***/
    HRESULT (STDMETHODCALLTYPE *get_selector)(
        IHTMLStyleSheetPage* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_pseudoClass)(
        IHTMLStyleSheetPage* This,
        BSTR *p);

    END_INTERFACE
} IHTMLStyleSheetPageVtbl;
interface IHTMLStyleSheetPage {
    CONST_VTBL IHTMLStyleSheetPageVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLStyleSheetPage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLStyleSheetPage_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLStyleSheetPage_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLStyleSheetPage_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLStyleSheetPage_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLStyleSheetPage_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLStyleSheetPage_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLStyleSheetPage methods ***/
#define IHTMLStyleSheetPage_get_selector(This,p) (This)->lpVtbl->get_selector(This,p)
#define IHTMLStyleSheetPage_get_pseudoClass(This,p) (This)->lpVtbl->get_pseudoClass(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLStyleSheetPage_get_selector_Proxy(
    IHTMLStyleSheetPage* This,
    BSTR *p);
void __RPC_STUB IHTMLStyleSheetPage_get_selector_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheetPage_get_pseudoClass_Proxy(
    IHTMLStyleSheetPage* This,
    BSTR *p);
void __RPC_STUB IHTMLStyleSheetPage_get_pseudoClass_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLStyleSheetPage_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLStyleSheetPage dispinterface
 */
#ifndef __DispHTMLStyleSheetPage_DISPINTERFACE_DEFINED__
#define __DispHTMLStyleSheetPage_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLStyleSheetPage, 0x3050f540, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLStyleSheetPage : public IDispatch
{
};
#else
typedef struct DispHTMLStyleSheetPageVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLStyleSheetPage* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLStyleSheetPage* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLStyleSheetPage* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLStyleSheetPage* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLStyleSheetPage* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLStyleSheetPage* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLStyleSheetPage* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLStyleSheetPageVtbl;
interface DispHTMLStyleSheetPage {
    CONST_VTBL DispHTMLStyleSheetPageVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLStyleSheetPage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLStyleSheetPage_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLStyleSheetPage_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLStyleSheetPage_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLStyleSheetPage_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLStyleSheetPage_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLStyleSheetPage_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLStyleSheetPage_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLStyleSheetPage coclass
 */

DEFINE_GUID(CLSID_HTMLStyleSheetPage, 0x3050f7ef, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLStyleSheetPagesCollection interface
 */
#ifndef __IHTMLStyleSheetPagesCollection_INTERFACE_DEFINED__
#define __IHTMLStyleSheetPagesCollection_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLStyleSheetPagesCollection, 0x3050f7f0, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLStyleSheetPagesCollection : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE item(
        LONG index,
        IHTMLStyleSheetPage **ppHTMLStyleSheetPage) = 0;

};
#else
typedef struct IHTMLStyleSheetPagesCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLStyleSheetPagesCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLStyleSheetPagesCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLStyleSheetPagesCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLStyleSheetPagesCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLStyleSheetPagesCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLStyleSheetPagesCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLStyleSheetPagesCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLStyleSheetPagesCollection methods ***/
    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLStyleSheetPagesCollection* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLStyleSheetPagesCollection* This,
        LONG index,
        IHTMLStyleSheetPage **ppHTMLStyleSheetPage);

    END_INTERFACE
} IHTMLStyleSheetPagesCollectionVtbl;
interface IHTMLStyleSheetPagesCollection {
    CONST_VTBL IHTMLStyleSheetPagesCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLStyleSheetPagesCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLStyleSheetPagesCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLStyleSheetPagesCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLStyleSheetPagesCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLStyleSheetPagesCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLStyleSheetPagesCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLStyleSheetPagesCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLStyleSheetPagesCollection methods ***/
#define IHTMLStyleSheetPagesCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLStyleSheetPagesCollection_item(This,index,ppHTMLStyleSheetPage) (This)->lpVtbl->item(This,index,ppHTMLStyleSheetPage)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLStyleSheetPagesCollection_get_length_Proxy(
    IHTMLStyleSheetPagesCollection* This,
    LONG *p);
void __RPC_STUB IHTMLStyleSheetPagesCollection_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheetPagesCollection_item_Proxy(
    IHTMLStyleSheetPagesCollection* This,
    LONG index,
    IHTMLStyleSheetPage **ppHTMLStyleSheetPage);
void __RPC_STUB IHTMLStyleSheetPagesCollection_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLStyleSheetPagesCollection_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLStyleSheetPagesCollection dispinterface
 */
#ifndef __DispHTMLStyleSheetPagesCollection_DISPINTERFACE_DEFINED__
#define __DispHTMLStyleSheetPagesCollection_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLStyleSheetPagesCollection, 0x3050f543, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLStyleSheetPagesCollection : public IDispatch
{
};
#else
typedef struct DispHTMLStyleSheetPagesCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLStyleSheetPagesCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLStyleSheetPagesCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLStyleSheetPagesCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLStyleSheetPagesCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLStyleSheetPagesCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLStyleSheetPagesCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLStyleSheetPagesCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLStyleSheetPagesCollectionVtbl;
interface DispHTMLStyleSheetPagesCollection {
    CONST_VTBL DispHTMLStyleSheetPagesCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLStyleSheetPagesCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLStyleSheetPagesCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLStyleSheetPagesCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLStyleSheetPagesCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLStyleSheetPagesCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLStyleSheetPagesCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLStyleSheetPagesCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLStyleSheetPagesCollection_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLStyleSheetPagesCollection coclass
 */

DEFINE_GUID(CLSID_HTMLStyleSheetPagesCollection, 0x3050f7f1, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLStyleSheet interface
 */
#ifndef __IHTMLStyleSheet_INTERFACE_DEFINED__
#define __IHTMLStyleSheet_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLStyleSheet, 0x3050f2e3, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLStyleSheet : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_title(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_title(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_parentStyleSheet(
        IHTMLStyleSheet **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_owningElement(
        IHTMLElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_disabled(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_disabled(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readOnly(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_imports(
        IHTMLStyleSheetsCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_href(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_href(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_type(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_id(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE addImport(
        BSTR bstrURL,
        LONG lIndex,
        LONG *plIndex) = 0;

    virtual HRESULT STDMETHODCALLTYPE addRule(
        BSTR bstrSelector,
        BSTR bstrStyle,
        LONG lIndex,
        LONG *plNewIndex) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeImport(
        LONG lIndex) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeRule(
        LONG lIndex) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_media(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_media(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_cssText(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cssText(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rules(
        IHTMLStyleSheetRulesCollection **p) = 0;

};
#else
typedef struct IHTMLStyleSheetVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLStyleSheet* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLStyleSheet* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLStyleSheet* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLStyleSheet* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLStyleSheet* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLStyleSheet* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLStyleSheet* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLStyleSheet methods ***/
    HRESULT (STDMETHODCALLTYPE *put_title)(
        IHTMLStyleSheet* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_title)(
        IHTMLStyleSheet* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_parentStyleSheet)(
        IHTMLStyleSheet* This,
        IHTMLStyleSheet **p);

    HRESULT (STDMETHODCALLTYPE *get_owningElement)(
        IHTMLStyleSheet* This,
        IHTMLElement **p);

    HRESULT (STDMETHODCALLTYPE *put_disabled)(
        IHTMLStyleSheet* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_disabled)(
        IHTMLStyleSheet* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_readOnly)(
        IHTMLStyleSheet* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_imports)(
        IHTMLStyleSheet* This,
        IHTMLStyleSheetsCollection **p);

    HRESULT (STDMETHODCALLTYPE *put_href)(
        IHTMLStyleSheet* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_href)(
        IHTMLStyleSheet* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_type)(
        IHTMLStyleSheet* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_id)(
        IHTMLStyleSheet* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *addImport)(
        IHTMLStyleSheet* This,
        BSTR bstrURL,
        LONG lIndex,
        LONG *plIndex);

    HRESULT (STDMETHODCALLTYPE *addRule)(
        IHTMLStyleSheet* This,
        BSTR bstrSelector,
        BSTR bstrStyle,
        LONG lIndex,
        LONG *plNewIndex);

    HRESULT (STDMETHODCALLTYPE *removeImport)(
        IHTMLStyleSheet* This,
        LONG lIndex);

    HRESULT (STDMETHODCALLTYPE *removeRule)(
        IHTMLStyleSheet* This,
        LONG lIndex);

    HRESULT (STDMETHODCALLTYPE *put_media)(
        IHTMLStyleSheet* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_media)(
        IHTMLStyleSheet* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_cssText)(
        IHTMLStyleSheet* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_cssText)(
        IHTMLStyleSheet* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_rules)(
        IHTMLStyleSheet* This,
        IHTMLStyleSheetRulesCollection **p);

    END_INTERFACE
} IHTMLStyleSheetVtbl;
interface IHTMLStyleSheet {
    CONST_VTBL IHTMLStyleSheetVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLStyleSheet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLStyleSheet_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLStyleSheet_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLStyleSheet_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLStyleSheet_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLStyleSheet_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLStyleSheet_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLStyleSheet methods ***/
#define IHTMLStyleSheet_put_title(This,v) (This)->lpVtbl->put_title(This,v)
#define IHTMLStyleSheet_get_title(This,p) (This)->lpVtbl->get_title(This,p)
#define IHTMLStyleSheet_get_parentStyleSheet(This,p) (This)->lpVtbl->get_parentStyleSheet(This,p)
#define IHTMLStyleSheet_get_owningElement(This,p) (This)->lpVtbl->get_owningElement(This,p)
#define IHTMLStyleSheet_put_disabled(This,v) (This)->lpVtbl->put_disabled(This,v)
#define IHTMLStyleSheet_get_disabled(This,p) (This)->lpVtbl->get_disabled(This,p)
#define IHTMLStyleSheet_get_readOnly(This,p) (This)->lpVtbl->get_readOnly(This,p)
#define IHTMLStyleSheet_get_imports(This,p) (This)->lpVtbl->get_imports(This,p)
#define IHTMLStyleSheet_put_href(This,v) (This)->lpVtbl->put_href(This,v)
#define IHTMLStyleSheet_get_href(This,p) (This)->lpVtbl->get_href(This,p)
#define IHTMLStyleSheet_get_type(This,p) (This)->lpVtbl->get_type(This,p)
#define IHTMLStyleSheet_get_id(This,p) (This)->lpVtbl->get_id(This,p)
#define IHTMLStyleSheet_addImport(This,bstrURL,lIndex,plIndex) (This)->lpVtbl->addImport(This,bstrURL,lIndex,plIndex)
#define IHTMLStyleSheet_addRule(This,bstrSelector,bstrStyle,lIndex,plNewIndex) (This)->lpVtbl->addRule(This,bstrSelector,bstrStyle,lIndex,plNewIndex)
#define IHTMLStyleSheet_removeImport(This,lIndex) (This)->lpVtbl->removeImport(This,lIndex)
#define IHTMLStyleSheet_removeRule(This,lIndex) (This)->lpVtbl->removeRule(This,lIndex)
#define IHTMLStyleSheet_put_media(This,v) (This)->lpVtbl->put_media(This,v)
#define IHTMLStyleSheet_get_media(This,p) (This)->lpVtbl->get_media(This,p)
#define IHTMLStyleSheet_put_cssText(This,v) (This)->lpVtbl->put_cssText(This,v)
#define IHTMLStyleSheet_get_cssText(This,p) (This)->lpVtbl->get_cssText(This,p)
#define IHTMLStyleSheet_get_rules(This,p) (This)->lpVtbl->get_rules(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_put_title_Proxy(
    IHTMLStyleSheet* This,
    BSTR v);
void __RPC_STUB IHTMLStyleSheet_put_title_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_get_title_Proxy(
    IHTMLStyleSheet* This,
    BSTR *p);
void __RPC_STUB IHTMLStyleSheet_get_title_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_get_parentStyleSheet_Proxy(
    IHTMLStyleSheet* This,
    IHTMLStyleSheet **p);
void __RPC_STUB IHTMLStyleSheet_get_parentStyleSheet_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_get_owningElement_Proxy(
    IHTMLStyleSheet* This,
    IHTMLElement **p);
void __RPC_STUB IHTMLStyleSheet_get_owningElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_put_disabled_Proxy(
    IHTMLStyleSheet* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLStyleSheet_put_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_get_disabled_Proxy(
    IHTMLStyleSheet* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLStyleSheet_get_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_get_readOnly_Proxy(
    IHTMLStyleSheet* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLStyleSheet_get_readOnly_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_get_imports_Proxy(
    IHTMLStyleSheet* This,
    IHTMLStyleSheetsCollection **p);
void __RPC_STUB IHTMLStyleSheet_get_imports_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_put_href_Proxy(
    IHTMLStyleSheet* This,
    BSTR v);
void __RPC_STUB IHTMLStyleSheet_put_href_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_get_href_Proxy(
    IHTMLStyleSheet* This,
    BSTR *p);
void __RPC_STUB IHTMLStyleSheet_get_href_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_get_type_Proxy(
    IHTMLStyleSheet* This,
    BSTR *p);
void __RPC_STUB IHTMLStyleSheet_get_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_get_id_Proxy(
    IHTMLStyleSheet* This,
    BSTR *p);
void __RPC_STUB IHTMLStyleSheet_get_id_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_addImport_Proxy(
    IHTMLStyleSheet* This,
    BSTR bstrURL,
    LONG lIndex,
    LONG *plIndex);
void __RPC_STUB IHTMLStyleSheet_addImport_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_addRule_Proxy(
    IHTMLStyleSheet* This,
    BSTR bstrSelector,
    BSTR bstrStyle,
    LONG lIndex,
    LONG *plNewIndex);
void __RPC_STUB IHTMLStyleSheet_addRule_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_removeImport_Proxy(
    IHTMLStyleSheet* This,
    LONG lIndex);
void __RPC_STUB IHTMLStyleSheet_removeImport_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_removeRule_Proxy(
    IHTMLStyleSheet* This,
    LONG lIndex);
void __RPC_STUB IHTMLStyleSheet_removeRule_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_put_media_Proxy(
    IHTMLStyleSheet* This,
    BSTR v);
void __RPC_STUB IHTMLStyleSheet_put_media_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_get_media_Proxy(
    IHTMLStyleSheet* This,
    BSTR *p);
void __RPC_STUB IHTMLStyleSheet_get_media_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_put_cssText_Proxy(
    IHTMLStyleSheet* This,
    BSTR v);
void __RPC_STUB IHTMLStyleSheet_put_cssText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_get_cssText_Proxy(
    IHTMLStyleSheet* This,
    BSTR *p);
void __RPC_STUB IHTMLStyleSheet_get_cssText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet_get_rules_Proxy(
    IHTMLStyleSheet* This,
    IHTMLStyleSheetRulesCollection **p);
void __RPC_STUB IHTMLStyleSheet_get_rules_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLStyleSheet_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLStyleSheet2 interface
 */
#ifndef __IHTMLStyleSheet2_INTERFACE_DEFINED__
#define __IHTMLStyleSheet2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLStyleSheet2, 0x3050f3d1, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLStyleSheet2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_pages(
        IHTMLStyleSheetPagesCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE addPageRule(
        BSTR bstrSelector,
        BSTR bstrStyle,
        LONG lIndex,
        LONG *plNewIndex) = 0;

};
#else
typedef struct IHTMLStyleSheet2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLStyleSheet2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLStyleSheet2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLStyleSheet2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLStyleSheet2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLStyleSheet2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLStyleSheet2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLStyleSheet2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLStyleSheet2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_pages)(
        IHTMLStyleSheet2* This,
        IHTMLStyleSheetPagesCollection **p);

    HRESULT (STDMETHODCALLTYPE *addPageRule)(
        IHTMLStyleSheet2* This,
        BSTR bstrSelector,
        BSTR bstrStyle,
        LONG lIndex,
        LONG *plNewIndex);

    END_INTERFACE
} IHTMLStyleSheet2Vtbl;
interface IHTMLStyleSheet2 {
    CONST_VTBL IHTMLStyleSheet2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLStyleSheet2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLStyleSheet2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLStyleSheet2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLStyleSheet2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLStyleSheet2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLStyleSheet2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLStyleSheet2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLStyleSheet2 methods ***/
#define IHTMLStyleSheet2_get_pages(This,p) (This)->lpVtbl->get_pages(This,p)
#define IHTMLStyleSheet2_addPageRule(This,bstrSelector,bstrStyle,lIndex,plNewIndex) (This)->lpVtbl->addPageRule(This,bstrSelector,bstrStyle,lIndex,plNewIndex)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLStyleSheet2_get_pages_Proxy(
    IHTMLStyleSheet2* This,
    IHTMLStyleSheetPagesCollection **p);
void __RPC_STUB IHTMLStyleSheet2_get_pages_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheet2_addPageRule_Proxy(
    IHTMLStyleSheet2* This,
    BSTR bstrSelector,
    BSTR bstrStyle,
    LONG lIndex,
    LONG *plNewIndex);
void __RPC_STUB IHTMLStyleSheet2_addPageRule_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLStyleSheet2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLStyleSheet dispinterface
 */
#ifndef __DispHTMLStyleSheet_DISPINTERFACE_DEFINED__
#define __DispHTMLStyleSheet_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLStyleSheet, 0x3050f58d, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLStyleSheet : public IDispatch
{
};
#else
typedef struct DispHTMLStyleSheetVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLStyleSheet* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLStyleSheet* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLStyleSheet* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLStyleSheet* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLStyleSheet* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLStyleSheet* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLStyleSheet* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLStyleSheetVtbl;
interface DispHTMLStyleSheet {
    CONST_VTBL DispHTMLStyleSheetVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLStyleSheet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLStyleSheet_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLStyleSheet_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLStyleSheet_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLStyleSheet_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLStyleSheet_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLStyleSheet_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLStyleSheet_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLStyleSheet coclass
 */

DEFINE_GUID(CLSID_HTMLStyleSheet, 0x3050f2e4, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLStyleSheetsCollection interface
 */
#ifndef __IHTMLStyleSheetsCollection_INTERFACE_DEFINED__
#define __IHTMLStyleSheetsCollection_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLStyleSheetsCollection, 0x3050f37e, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLStyleSheetsCollection : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
        IUnknown **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE item(
        VARIANT *pvarIndex,
        VARIANT *pvarResult) = 0;

};
#else
typedef struct IHTMLStyleSheetsCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLStyleSheetsCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLStyleSheetsCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLStyleSheetsCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLStyleSheetsCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLStyleSheetsCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLStyleSheetsCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLStyleSheetsCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLStyleSheetsCollection methods ***/
    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLStyleSheetsCollection* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
        IHTMLStyleSheetsCollection* This,
        IUnknown **p);

    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLStyleSheetsCollection* This,
        VARIANT *pvarIndex,
        VARIANT *pvarResult);

    END_INTERFACE
} IHTMLStyleSheetsCollectionVtbl;
interface IHTMLStyleSheetsCollection {
    CONST_VTBL IHTMLStyleSheetsCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLStyleSheetsCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLStyleSheetsCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLStyleSheetsCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLStyleSheetsCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLStyleSheetsCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLStyleSheetsCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLStyleSheetsCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLStyleSheetsCollection methods ***/
#define IHTMLStyleSheetsCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLStyleSheetsCollection_get__newEnum(This,p) (This)->lpVtbl->get__newEnum(This,p)
#define IHTMLStyleSheetsCollection_item(This,pvarIndex,pvarResult) (This)->lpVtbl->item(This,pvarIndex,pvarResult)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLStyleSheetsCollection_get_length_Proxy(
    IHTMLStyleSheetsCollection* This,
    LONG *p);
void __RPC_STUB IHTMLStyleSheetsCollection_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheetsCollection_get__newEnum_Proxy(
    IHTMLStyleSheetsCollection* This,
    IUnknown **p);
void __RPC_STUB IHTMLStyleSheetsCollection_get__newEnum_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleSheetsCollection_item_Proxy(
    IHTMLStyleSheetsCollection* This,
    VARIANT *pvarIndex,
    VARIANT *pvarResult);
void __RPC_STUB IHTMLStyleSheetsCollection_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLStyleSheetsCollection_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLStyleSheetsCollection dispinterface
 */
#ifndef __DispHTMLStyleSheetsCollection_DISPINTERFACE_DEFINED__
#define __DispHTMLStyleSheetsCollection_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLStyleSheetsCollection, 0x3050f547, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLStyleSheetsCollection : public IDispatch
{
};
#else
typedef struct DispHTMLStyleSheetsCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLStyleSheetsCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLStyleSheetsCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLStyleSheetsCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLStyleSheetsCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLStyleSheetsCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLStyleSheetsCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLStyleSheetsCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLStyleSheetsCollectionVtbl;
interface DispHTMLStyleSheetsCollection {
    CONST_VTBL DispHTMLStyleSheetsCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLStyleSheetsCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLStyleSheetsCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLStyleSheetsCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLStyleSheetsCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLStyleSheetsCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLStyleSheetsCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLStyleSheetsCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLStyleSheetsCollection_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLTxtRange interface
 */
#ifndef __IHTMLTxtRange_INTERFACE_DEFINED__
#define __IHTMLTxtRange_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLTxtRange, 0x3050f220, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLTxtRange : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_htmlText(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_text(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_text(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE parentElement(
        IHTMLElement **parent) = 0;

    virtual HRESULT STDMETHODCALLTYPE duplicate(
        IHTMLTxtRange **Duplicate) = 0;

    virtual HRESULT STDMETHODCALLTYPE inRange(
        IHTMLTxtRange *Range,
        VARIANT_BOOL *InRange) = 0;

    virtual HRESULT STDMETHODCALLTYPE isEqual(
        IHTMLTxtRange *Range,
        VARIANT_BOOL *IsEqual) = 0;

    virtual HRESULT STDMETHODCALLTYPE scrollIntoView(
        VARIANT_BOOL fStart) = 0;

    virtual HRESULT STDMETHODCALLTYPE collapse(
        VARIANT_BOOL Start) = 0;

    virtual HRESULT STDMETHODCALLTYPE expand(
        BSTR Unit,
        VARIANT_BOOL *Success) = 0;

    virtual HRESULT STDMETHODCALLTYPE move(
        BSTR Unit,
        LONG Count,
        LONG *ActualCount) = 0;

    virtual HRESULT STDMETHODCALLTYPE moveStart(
        BSTR Unit,
        LONG Count,
        LONG *ActualCount) = 0;

    virtual HRESULT STDMETHODCALLTYPE moveEnd(
        BSTR Unit,
        LONG Count,
        LONG *ActualCount) = 0;

    virtual HRESULT STDMETHODCALLTYPE select(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE pasteHTML(
        BSTR html) = 0;

    virtual HRESULT STDMETHODCALLTYPE moveToElementText(
        IHTMLElement *element) = 0;

    virtual HRESULT STDMETHODCALLTYPE setEndPoint(
        BSTR how,
        IHTMLTxtRange *SourceRange) = 0;

    virtual HRESULT STDMETHODCALLTYPE compareEndPoints(
        BSTR how,
        IHTMLTxtRange *SourceRange,
        LONG *ret) = 0;

    virtual HRESULT STDMETHODCALLTYPE findText(
        BSTR String,
        LONG count,
        LONG Flags,
        VARIANT_BOOL *Success) = 0;

    virtual HRESULT STDMETHODCALLTYPE moveToPoint(
        LONG x,
        LONG y) = 0;

    virtual HRESULT STDMETHODCALLTYPE getBookmark(
        BSTR *Boolmark) = 0;

    virtual HRESULT STDMETHODCALLTYPE moveToBookmark(
        BSTR Bookmark,
        VARIANT_BOOL *Success) = 0;

    virtual HRESULT STDMETHODCALLTYPE queryCommandSupported(
        BSTR cmdID,
        VARIANT_BOOL *pfRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE queryCommandEnabled(
        BSTR cmdID,
        VARIANT_BOOL *pfRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE queryCommandState(
        BSTR cmdID,
        VARIANT_BOOL *pfRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE queryCommandIndeterm(
        BSTR cmdID,
        VARIANT_BOOL *pfRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE queryCommandText(
        BSTR cmdID,
        BSTR *pcmdText) = 0;

    virtual HRESULT STDMETHODCALLTYPE queryCommandValue(
        BSTR cmdID,
        VARIANT *pcmdValue) = 0;

    virtual HRESULT STDMETHODCALLTYPE execCommand(
        BSTR cmdID,
        VARIANT_BOOL showUI,
        VARIANT value,
        VARIANT_BOOL *pfRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE execCommandShowHelp(
        BSTR cmdID,
        VARIANT_BOOL *pfRet) = 0;

};
#else
typedef struct IHTMLTxtRangeVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLTxtRange* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLTxtRange* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLTxtRange* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLTxtRange* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLTxtRange* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLTxtRange* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLTxtRange* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLTxtRange methods ***/
    HRESULT (STDMETHODCALLTYPE *get_htmlText)(
        IHTMLTxtRange* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_text)(
        IHTMLTxtRange* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_text)(
        IHTMLTxtRange* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *parentElement)(
        IHTMLTxtRange* This,
        IHTMLElement **parent);

    HRESULT (STDMETHODCALLTYPE *duplicate)(
        IHTMLTxtRange* This,
        IHTMLTxtRange **Duplicate);

    HRESULT (STDMETHODCALLTYPE *inRange)(
        IHTMLTxtRange* This,
        IHTMLTxtRange *Range,
        VARIANT_BOOL *InRange);

    HRESULT (STDMETHODCALLTYPE *isEqual)(
        IHTMLTxtRange* This,
        IHTMLTxtRange *Range,
        VARIANT_BOOL *IsEqual);

    HRESULT (STDMETHODCALLTYPE *scrollIntoView)(
        IHTMLTxtRange* This,
        VARIANT_BOOL fStart);

    HRESULT (STDMETHODCALLTYPE *collapse)(
        IHTMLTxtRange* This,
        VARIANT_BOOL Start);

    HRESULT (STDMETHODCALLTYPE *expand)(
        IHTMLTxtRange* This,
        BSTR Unit,
        VARIANT_BOOL *Success);

    HRESULT (STDMETHODCALLTYPE *move)(
        IHTMLTxtRange* This,
        BSTR Unit,
        LONG Count,
        LONG *ActualCount);

    HRESULT (STDMETHODCALLTYPE *moveStart)(
        IHTMLTxtRange* This,
        BSTR Unit,
        LONG Count,
        LONG *ActualCount);

    HRESULT (STDMETHODCALLTYPE *moveEnd)(
        IHTMLTxtRange* This,
        BSTR Unit,
        LONG Count,
        LONG *ActualCount);

    HRESULT (STDMETHODCALLTYPE *select)(
        IHTMLTxtRange* This);

    HRESULT (STDMETHODCALLTYPE *pasteHTML)(
        IHTMLTxtRange* This,
        BSTR html);

    HRESULT (STDMETHODCALLTYPE *moveToElementText)(
        IHTMLTxtRange* This,
        IHTMLElement *element);

    HRESULT (STDMETHODCALLTYPE *setEndPoint)(
        IHTMLTxtRange* This,
        BSTR how,
        IHTMLTxtRange *SourceRange);

    HRESULT (STDMETHODCALLTYPE *compareEndPoints)(
        IHTMLTxtRange* This,
        BSTR how,
        IHTMLTxtRange *SourceRange,
        LONG *ret);

    HRESULT (STDMETHODCALLTYPE *findText)(
        IHTMLTxtRange* This,
        BSTR String,
        LONG count,
        LONG Flags,
        VARIANT_BOOL *Success);

    HRESULT (STDMETHODCALLTYPE *moveToPoint)(
        IHTMLTxtRange* This,
        LONG x,
        LONG y);

    HRESULT (STDMETHODCALLTYPE *getBookmark)(
        IHTMLTxtRange* This,
        BSTR *Boolmark);

    HRESULT (STDMETHODCALLTYPE *moveToBookmark)(
        IHTMLTxtRange* This,
        BSTR Bookmark,
        VARIANT_BOOL *Success);

    HRESULT (STDMETHODCALLTYPE *queryCommandSupported)(
        IHTMLTxtRange* This,
        BSTR cmdID,
        VARIANT_BOOL *pfRet);

    HRESULT (STDMETHODCALLTYPE *queryCommandEnabled)(
        IHTMLTxtRange* This,
        BSTR cmdID,
        VARIANT_BOOL *pfRet);

    HRESULT (STDMETHODCALLTYPE *queryCommandState)(
        IHTMLTxtRange* This,
        BSTR cmdID,
        VARIANT_BOOL *pfRet);

    HRESULT (STDMETHODCALLTYPE *queryCommandIndeterm)(
        IHTMLTxtRange* This,
        BSTR cmdID,
        VARIANT_BOOL *pfRet);

    HRESULT (STDMETHODCALLTYPE *queryCommandText)(
        IHTMLTxtRange* This,
        BSTR cmdID,
        BSTR *pcmdText);

    HRESULT (STDMETHODCALLTYPE *queryCommandValue)(
        IHTMLTxtRange* This,
        BSTR cmdID,
        VARIANT *pcmdValue);

    HRESULT (STDMETHODCALLTYPE *execCommand)(
        IHTMLTxtRange* This,
        BSTR cmdID,
        VARIANT_BOOL showUI,
        VARIANT value,
        VARIANT_BOOL *pfRet);

    HRESULT (STDMETHODCALLTYPE *execCommandShowHelp)(
        IHTMLTxtRange* This,
        BSTR cmdID,
        VARIANT_BOOL *pfRet);

    END_INTERFACE
} IHTMLTxtRangeVtbl;
interface IHTMLTxtRange {
    CONST_VTBL IHTMLTxtRangeVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLTxtRange_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLTxtRange_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLTxtRange_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLTxtRange_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLTxtRange_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLTxtRange_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLTxtRange_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLTxtRange methods ***/
#define IHTMLTxtRange_get_htmlText(This,p) (This)->lpVtbl->get_htmlText(This,p)
#define IHTMLTxtRange_put_text(This,v) (This)->lpVtbl->put_text(This,v)
#define IHTMLTxtRange_get_text(This,p) (This)->lpVtbl->get_text(This,p)
#define IHTMLTxtRange_parentElement(This,parent) (This)->lpVtbl->parentElement(This,parent)
#define IHTMLTxtRange_duplicate(This,Duplicate) (This)->lpVtbl->duplicate(This,Duplicate)
#define IHTMLTxtRange_inRange(This,Range,InRange) (This)->lpVtbl->inRange(This,Range,InRange)
#define IHTMLTxtRange_isEqual(This,Range,IsEqual) (This)->lpVtbl->isEqual(This,Range,IsEqual)
#define IHTMLTxtRange_scrollIntoView(This,fStart) (This)->lpVtbl->scrollIntoView(This,fStart)
#define IHTMLTxtRange_collapse(This,Start) (This)->lpVtbl->collapse(This,Start)
#define IHTMLTxtRange_expand(This,Unit,Success) (This)->lpVtbl->expand(This,Unit,Success)
#define IHTMLTxtRange_move(This,Unit,Count,ActualCount) (This)->lpVtbl->move(This,Unit,Count,ActualCount)
#define IHTMLTxtRange_moveStart(This,Unit,Count,ActualCount) (This)->lpVtbl->moveStart(This,Unit,Count,ActualCount)
#define IHTMLTxtRange_moveEnd(This,Unit,Count,ActualCount) (This)->lpVtbl->moveEnd(This,Unit,Count,ActualCount)
#define IHTMLTxtRange_select(This) (This)->lpVtbl->select(This)
#define IHTMLTxtRange_pasteHTML(This,html) (This)->lpVtbl->pasteHTML(This,html)
#define IHTMLTxtRange_moveToElementText(This,element) (This)->lpVtbl->moveToElementText(This,element)
#define IHTMLTxtRange_setEndPoint(This,how,SourceRange) (This)->lpVtbl->setEndPoint(This,how,SourceRange)
#define IHTMLTxtRange_compareEndPoints(This,how,SourceRange,ret) (This)->lpVtbl->compareEndPoints(This,how,SourceRange,ret)
#define IHTMLTxtRange_findText(This,String,count,Flags,Success) (This)->lpVtbl->findText(This,String,count,Flags,Success)
#define IHTMLTxtRange_moveToPoint(This,x,y) (This)->lpVtbl->moveToPoint(This,x,y)
#define IHTMLTxtRange_getBookmark(This,Boolmark) (This)->lpVtbl->getBookmark(This,Boolmark)
#define IHTMLTxtRange_moveToBookmark(This,Bookmark,Success) (This)->lpVtbl->moveToBookmark(This,Bookmark,Success)
#define IHTMLTxtRange_queryCommandSupported(This,cmdID,pfRet) (This)->lpVtbl->queryCommandSupported(This,cmdID,pfRet)
#define IHTMLTxtRange_queryCommandEnabled(This,cmdID,pfRet) (This)->lpVtbl->queryCommandEnabled(This,cmdID,pfRet)
#define IHTMLTxtRange_queryCommandState(This,cmdID,pfRet) (This)->lpVtbl->queryCommandState(This,cmdID,pfRet)
#define IHTMLTxtRange_queryCommandIndeterm(This,cmdID,pfRet) (This)->lpVtbl->queryCommandIndeterm(This,cmdID,pfRet)
#define IHTMLTxtRange_queryCommandText(This,cmdID,pcmdText) (This)->lpVtbl->queryCommandText(This,cmdID,pcmdText)
#define IHTMLTxtRange_queryCommandValue(This,cmdID,pcmdValue) (This)->lpVtbl->queryCommandValue(This,cmdID,pcmdValue)
#define IHTMLTxtRange_execCommand(This,cmdID,showUI,value,pfRet) (This)->lpVtbl->execCommand(This,cmdID,showUI,value,pfRet)
#define IHTMLTxtRange_execCommandShowHelp(This,cmdID,pfRet) (This)->lpVtbl->execCommandShowHelp(This,cmdID,pfRet)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLTxtRange_get_htmlText_Proxy(
    IHTMLTxtRange* This,
    BSTR *p);
void __RPC_STUB IHTMLTxtRange_get_htmlText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_put_text_Proxy(
    IHTMLTxtRange* This,
    BSTR v);
void __RPC_STUB IHTMLTxtRange_put_text_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_get_text_Proxy(
    IHTMLTxtRange* This,
    BSTR *p);
void __RPC_STUB IHTMLTxtRange_get_text_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_parentElement_Proxy(
    IHTMLTxtRange* This,
    IHTMLElement **parent);
void __RPC_STUB IHTMLTxtRange_parentElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_duplicate_Proxy(
    IHTMLTxtRange* This,
    IHTMLTxtRange **Duplicate);
void __RPC_STUB IHTMLTxtRange_duplicate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_inRange_Proxy(
    IHTMLTxtRange* This,
    IHTMLTxtRange *Range,
    VARIANT_BOOL *InRange);
void __RPC_STUB IHTMLTxtRange_inRange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_isEqual_Proxy(
    IHTMLTxtRange* This,
    IHTMLTxtRange *Range,
    VARIANT_BOOL *IsEqual);
void __RPC_STUB IHTMLTxtRange_isEqual_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_scrollIntoView_Proxy(
    IHTMLTxtRange* This,
    VARIANT_BOOL fStart);
void __RPC_STUB IHTMLTxtRange_scrollIntoView_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_collapse_Proxy(
    IHTMLTxtRange* This,
    VARIANT_BOOL Start);
void __RPC_STUB IHTMLTxtRange_collapse_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_expand_Proxy(
    IHTMLTxtRange* This,
    BSTR Unit,
    VARIANT_BOOL *Success);
void __RPC_STUB IHTMLTxtRange_expand_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_move_Proxy(
    IHTMLTxtRange* This,
    BSTR Unit,
    LONG Count,
    LONG *ActualCount);
void __RPC_STUB IHTMLTxtRange_move_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_moveStart_Proxy(
    IHTMLTxtRange* This,
    BSTR Unit,
    LONG Count,
    LONG *ActualCount);
void __RPC_STUB IHTMLTxtRange_moveStart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_moveEnd_Proxy(
    IHTMLTxtRange* This,
    BSTR Unit,
    LONG Count,
    LONG *ActualCount);
void __RPC_STUB IHTMLTxtRange_moveEnd_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_select_Proxy(
    IHTMLTxtRange* This);
void __RPC_STUB IHTMLTxtRange_select_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_pasteHTML_Proxy(
    IHTMLTxtRange* This,
    BSTR html);
void __RPC_STUB IHTMLTxtRange_pasteHTML_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_moveToElementText_Proxy(
    IHTMLTxtRange* This,
    IHTMLElement *element);
void __RPC_STUB IHTMLTxtRange_moveToElementText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_setEndPoint_Proxy(
    IHTMLTxtRange* This,
    BSTR how,
    IHTMLTxtRange *SourceRange);
void __RPC_STUB IHTMLTxtRange_setEndPoint_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_compareEndPoints_Proxy(
    IHTMLTxtRange* This,
    BSTR how,
    IHTMLTxtRange *SourceRange,
    LONG *ret);
void __RPC_STUB IHTMLTxtRange_compareEndPoints_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_findText_Proxy(
    IHTMLTxtRange* This,
    BSTR String,
    LONG count,
    LONG Flags,
    VARIANT_BOOL *Success);
void __RPC_STUB IHTMLTxtRange_findText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_moveToPoint_Proxy(
    IHTMLTxtRange* This,
    LONG x,
    LONG y);
void __RPC_STUB IHTMLTxtRange_moveToPoint_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_getBookmark_Proxy(
    IHTMLTxtRange* This,
    BSTR *Boolmark);
void __RPC_STUB IHTMLTxtRange_getBookmark_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_moveToBookmark_Proxy(
    IHTMLTxtRange* This,
    BSTR Bookmark,
    VARIANT_BOOL *Success);
void __RPC_STUB IHTMLTxtRange_moveToBookmark_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_queryCommandSupported_Proxy(
    IHTMLTxtRange* This,
    BSTR cmdID,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLTxtRange_queryCommandSupported_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_queryCommandEnabled_Proxy(
    IHTMLTxtRange* This,
    BSTR cmdID,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLTxtRange_queryCommandEnabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_queryCommandState_Proxy(
    IHTMLTxtRange* This,
    BSTR cmdID,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLTxtRange_queryCommandState_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_queryCommandIndeterm_Proxy(
    IHTMLTxtRange* This,
    BSTR cmdID,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLTxtRange_queryCommandIndeterm_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_queryCommandText_Proxy(
    IHTMLTxtRange* This,
    BSTR cmdID,
    BSTR *pcmdText);
void __RPC_STUB IHTMLTxtRange_queryCommandText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_queryCommandValue_Proxy(
    IHTMLTxtRange* This,
    BSTR cmdID,
    VARIANT *pcmdValue);
void __RPC_STUB IHTMLTxtRange_queryCommandValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_execCommand_Proxy(
    IHTMLTxtRange* This,
    BSTR cmdID,
    VARIANT_BOOL showUI,
    VARIANT value,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLTxtRange_execCommand_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTxtRange_execCommandShowHelp_Proxy(
    IHTMLTxtRange* This,
    BSTR cmdID,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLTxtRange_execCommandShowHelp_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLTxtRange_INTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLStyleSheetsCollection coclass
 */

DEFINE_GUID(CLSID_HTMLStyleSheetsCollection, 0x3050f37f, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLFormElement interface
 */
#ifndef __IHTMLFormElement_INTERFACE_DEFINED__
#define __IHTMLFormElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLFormElement, 0x3050f1f7, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLFormElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_action(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_action(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_dir(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_dir(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_encoding(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_encoding(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_method(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_method(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_elements(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_target(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_target(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onsubmit(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onsubmit(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onreset(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onreset(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE submit(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE reset(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_length(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
        IUnknown **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE item(
        VARIANT name,
        VARIANT index,
        IDispatch **pdisp) = 0;

    virtual HRESULT STDMETHODCALLTYPE tags(
        VARIANT tagName,
        IDispatch **pdisp) = 0;

};
#else
typedef struct IHTMLFormElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLFormElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLFormElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLFormElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLFormElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLFormElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLFormElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLFormElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLFormElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_action)(
        IHTMLFormElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_action)(
        IHTMLFormElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_dir)(
        IHTMLFormElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_dir)(
        IHTMLFormElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_encoding)(
        IHTMLFormElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_encoding)(
        IHTMLFormElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_method)(
        IHTMLFormElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_method)(
        IHTMLFormElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_elements)(
        IHTMLFormElement* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *put_target)(
        IHTMLFormElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_target)(
        IHTMLFormElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLFormElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLFormElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_onsubmit)(
        IHTMLFormElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onsubmit)(
        IHTMLFormElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onreset)(
        IHTMLFormElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onreset)(
        IHTMLFormElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *submit)(
        IHTMLFormElement* This);

    HRESULT (STDMETHODCALLTYPE *reset)(
        IHTMLFormElement* This);

    HRESULT (STDMETHODCALLTYPE *put_length)(
        IHTMLFormElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLFormElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
        IHTMLFormElement* This,
        IUnknown **p);

    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLFormElement* This,
        VARIANT name,
        VARIANT index,
        IDispatch **pdisp);

    HRESULT (STDMETHODCALLTYPE *tags)(
        IHTMLFormElement* This,
        VARIANT tagName,
        IDispatch **pdisp);

    END_INTERFACE
} IHTMLFormElementVtbl;
interface IHTMLFormElement {
    CONST_VTBL IHTMLFormElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLFormElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLFormElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLFormElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLFormElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLFormElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLFormElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLFormElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLFormElement methods ***/
#define IHTMLFormElement_put_action(This,v) (This)->lpVtbl->put_action(This,v)
#define IHTMLFormElement_get_action(This,p) (This)->lpVtbl->get_action(This,p)
#define IHTMLFormElement_put_dir(This,v) (This)->lpVtbl->put_dir(This,v)
#define IHTMLFormElement_get_dir(This,p) (This)->lpVtbl->get_dir(This,p)
#define IHTMLFormElement_put_encoding(This,v) (This)->lpVtbl->put_encoding(This,v)
#define IHTMLFormElement_get_encoding(This,p) (This)->lpVtbl->get_encoding(This,p)
#define IHTMLFormElement_put_method(This,v) (This)->lpVtbl->put_method(This,v)
#define IHTMLFormElement_get_method(This,p) (This)->lpVtbl->get_method(This,p)
#define IHTMLFormElement_get_elements(This,p) (This)->lpVtbl->get_elements(This,p)
#define IHTMLFormElement_put_target(This,v) (This)->lpVtbl->put_target(This,v)
#define IHTMLFormElement_get_target(This,p) (This)->lpVtbl->get_target(This,p)
#define IHTMLFormElement_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLFormElement_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLFormElement_put_onsubmit(This,v) (This)->lpVtbl->put_onsubmit(This,v)
#define IHTMLFormElement_get_onsubmit(This,p) (This)->lpVtbl->get_onsubmit(This,p)
#define IHTMLFormElement_put_onreset(This,v) (This)->lpVtbl->put_onreset(This,v)
#define IHTMLFormElement_get_onreset(This,p) (This)->lpVtbl->get_onreset(This,p)
#define IHTMLFormElement_submit(This) (This)->lpVtbl->submit(This)
#define IHTMLFormElement_reset(This) (This)->lpVtbl->reset(This)
#define IHTMLFormElement_put_length(This,v) (This)->lpVtbl->put_length(This,v)
#define IHTMLFormElement_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLFormElement_get__newEnum(This,p) (This)->lpVtbl->get__newEnum(This,p)
#define IHTMLFormElement_item(This,name,index,pdisp) (This)->lpVtbl->item(This,name,index,pdisp)
#define IHTMLFormElement_tags(This,tagName,pdisp) (This)->lpVtbl->tags(This,tagName,pdisp)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLFormElement_put_action_Proxy(
    IHTMLFormElement* This,
    BSTR v);
void __RPC_STUB IHTMLFormElement_put_action_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_get_action_Proxy(
    IHTMLFormElement* This,
    BSTR *p);
void __RPC_STUB IHTMLFormElement_get_action_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_put_dir_Proxy(
    IHTMLFormElement* This,
    BSTR v);
void __RPC_STUB IHTMLFormElement_put_dir_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_get_dir_Proxy(
    IHTMLFormElement* This,
    BSTR *p);
void __RPC_STUB IHTMLFormElement_get_dir_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_put_encoding_Proxy(
    IHTMLFormElement* This,
    BSTR v);
void __RPC_STUB IHTMLFormElement_put_encoding_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_get_encoding_Proxy(
    IHTMLFormElement* This,
    BSTR *p);
void __RPC_STUB IHTMLFormElement_get_encoding_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_put_method_Proxy(
    IHTMLFormElement* This,
    BSTR v);
void __RPC_STUB IHTMLFormElement_put_method_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_get_method_Proxy(
    IHTMLFormElement* This,
    BSTR *p);
void __RPC_STUB IHTMLFormElement_get_method_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_get_elements_Proxy(
    IHTMLFormElement* This,
    IDispatch **p);
void __RPC_STUB IHTMLFormElement_get_elements_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_put_target_Proxy(
    IHTMLFormElement* This,
    BSTR v);
void __RPC_STUB IHTMLFormElement_put_target_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_get_target_Proxy(
    IHTMLFormElement* This,
    BSTR *p);
void __RPC_STUB IHTMLFormElement_get_target_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_put_name_Proxy(
    IHTMLFormElement* This,
    BSTR v);
void __RPC_STUB IHTMLFormElement_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_get_name_Proxy(
    IHTMLFormElement* This,
    BSTR *p);
void __RPC_STUB IHTMLFormElement_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_put_onsubmit_Proxy(
    IHTMLFormElement* This,
    VARIANT v);
void __RPC_STUB IHTMLFormElement_put_onsubmit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_get_onsubmit_Proxy(
    IHTMLFormElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLFormElement_get_onsubmit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_put_onreset_Proxy(
    IHTMLFormElement* This,
    VARIANT v);
void __RPC_STUB IHTMLFormElement_put_onreset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_get_onreset_Proxy(
    IHTMLFormElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLFormElement_get_onreset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_submit_Proxy(
    IHTMLFormElement* This);
void __RPC_STUB IHTMLFormElement_submit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_reset_Proxy(
    IHTMLFormElement* This);
void __RPC_STUB IHTMLFormElement_reset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_put_length_Proxy(
    IHTMLFormElement* This,
    LONG v);
void __RPC_STUB IHTMLFormElement_put_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_get_length_Proxy(
    IHTMLFormElement* This,
    LONG *p);
void __RPC_STUB IHTMLFormElement_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_get__newEnum_Proxy(
    IHTMLFormElement* This,
    IUnknown **p);
void __RPC_STUB IHTMLFormElement_get__newEnum_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_item_Proxy(
    IHTMLFormElement* This,
    VARIANT name,
    VARIANT index,
    IDispatch **pdisp);
void __RPC_STUB IHTMLFormElement_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFormElement_tags_Proxy(
    IHTMLFormElement* This,
    VARIANT tagName,
    IDispatch **pdisp);
void __RPC_STUB IHTMLFormElement_tags_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLFormElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLFormElement dispinterface
 */
#ifndef __DispHTMLFormElement_DISPINTERFACE_DEFINED__
#define __DispHTMLFormElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLFormElement, 0x3050f510, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLFormElement : public IDispatch
{
};
#else
typedef struct DispHTMLFormElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLFormElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLFormElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLFormElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLFormElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLFormElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLFormElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLFormElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLFormElementVtbl;
interface DispHTMLFormElement {
    CONST_VTBL DispHTMLFormElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLFormElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLFormElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLFormElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLFormElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLFormElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLFormElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLFormElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLFormElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLFormElementEvents dispinterface
 */
#ifndef __HTMLFormElementEvents_DISPINTERFACE_DEFINED__
#define __HTMLFormElementEvents_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_HTMLFormElementEvents, 0x3050f364, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface HTMLFormElementEvents : public IDispatch
{
};
#else
typedef struct HTMLFormElementEventsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        HTMLFormElementEvents* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        HTMLFormElementEvents* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        HTMLFormElementEvents* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        HTMLFormElementEvents* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        HTMLFormElementEvents* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        HTMLFormElementEvents* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        HTMLFormElementEvents* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} HTMLFormElementEventsVtbl;
interface HTMLFormElementEvents {
    CONST_VTBL HTMLFormElementEventsVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define HTMLFormElementEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define HTMLFormElementEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
#define HTMLFormElementEvents_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define HTMLFormElementEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define HTMLFormElementEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define HTMLFormElementEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define HTMLFormElementEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __HTMLFormElementEvents_DISPINTERFACE_DEFINED__ */

#ifndef __IHTMLEventObj_FWD_DEFINED__
#define __IHTMLEventObj_FWD_DEFINED__
typedef interface IHTMLEventObj IHTMLEventObj;
#endif

/*****************************************************************************
 * HTMLFormElementEvents2 dispinterface
 */
#ifndef __HTMLFormElementEvents2_DISPINTERFACE_DEFINED__
#define __HTMLFormElementEvents2_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_HTMLFormElementEvents2, 0x3050f614, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface HTMLFormElementEvents2 : public IDispatch
{
};
#else
typedef struct HTMLFormElementEvents2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        HTMLFormElementEvents2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        HTMLFormElementEvents2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        HTMLFormElementEvents2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        HTMLFormElementEvents2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        HTMLFormElementEvents2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        HTMLFormElementEvents2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        HTMLFormElementEvents2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} HTMLFormElementEvents2Vtbl;
interface HTMLFormElementEvents2 {
    CONST_VTBL HTMLFormElementEvents2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define HTMLFormElementEvents2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define HTMLFormElementEvents2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define HTMLFormElementEvents2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define HTMLFormElementEvents2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define HTMLFormElementEvents2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define HTMLFormElementEvents2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define HTMLFormElementEvents2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __HTMLFormElementEvents2_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLFormElement coclass
 */

DEFINE_GUID(CLSID_HTMLFormElement, 0x3050f24d, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLTextContainer interface
 */
#ifndef __IHTMLTextContainer_INTERFACE_DEFINED__
#define __IHTMLTextContainer_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLTextContainer, 0x3050f230, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLTextContainer : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE createControlRange(
        IDispatch **range) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollHeight(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollWidth(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrollTop(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollTop(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrollLeft(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrollLeft(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onscroll(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onscroll(
        VARIANT *p) = 0;

};
#else
typedef struct IHTMLTextContainerVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLTextContainer* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLTextContainer* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLTextContainer* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLTextContainer* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLTextContainer* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLTextContainer* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLTextContainer* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLTextContainer methods ***/
    HRESULT (STDMETHODCALLTYPE *createControlRange)(
        IHTMLTextContainer* This,
        IDispatch **range);

    HRESULT (STDMETHODCALLTYPE *get_scrollHeight)(
        IHTMLTextContainer* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_scrollWidth)(
        IHTMLTextContainer* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_scrollTop)(
        IHTMLTextContainer* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_scrollTop)(
        IHTMLTextContainer* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_scrollLeft)(
        IHTMLTextContainer* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_scrollLeft)(
        IHTMLTextContainer* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_onscroll)(
        IHTMLTextContainer* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onscroll)(
        IHTMLTextContainer* This,
        VARIANT *p);

    END_INTERFACE
} IHTMLTextContainerVtbl;
interface IHTMLTextContainer {
    CONST_VTBL IHTMLTextContainerVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLTextContainer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLTextContainer_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLTextContainer_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLTextContainer_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLTextContainer_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLTextContainer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLTextContainer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLTextContainer methods ***/
#define IHTMLTextContainer_createControlRange(This,range) (This)->lpVtbl->createControlRange(This,range)
#define IHTMLTextContainer_get_scrollHeight(This,p) (This)->lpVtbl->get_scrollHeight(This,p)
#define IHTMLTextContainer_get_scrollWidth(This,p) (This)->lpVtbl->get_scrollWidth(This,p)
#define IHTMLTextContainer_put_scrollTop(This,v) (This)->lpVtbl->put_scrollTop(This,v)
#define IHTMLTextContainer_get_scrollTop(This,p) (This)->lpVtbl->get_scrollTop(This,p)
#define IHTMLTextContainer_put_scrollLeft(This,v) (This)->lpVtbl->put_scrollLeft(This,v)
#define IHTMLTextContainer_get_scrollLeft(This,p) (This)->lpVtbl->get_scrollLeft(This,p)
#define IHTMLTextContainer_put_onscroll(This,v) (This)->lpVtbl->put_onscroll(This,v)
#define IHTMLTextContainer_get_onscroll(This,p) (This)->lpVtbl->get_onscroll(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLTextContainer_createControlRange_Proxy(
    IHTMLTextContainer* This,
    IDispatch **range);
void __RPC_STUB IHTMLTextContainer_createControlRange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextContainer_get_scrollHeight_Proxy(
    IHTMLTextContainer* This,
    LONG *p);
void __RPC_STUB IHTMLTextContainer_get_scrollHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextContainer_get_scrollWidth_Proxy(
    IHTMLTextContainer* This,
    LONG *p);
void __RPC_STUB IHTMLTextContainer_get_scrollWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextContainer_put_scrollTop_Proxy(
    IHTMLTextContainer* This,
    LONG v);
void __RPC_STUB IHTMLTextContainer_put_scrollTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextContainer_get_scrollTop_Proxy(
    IHTMLTextContainer* This,
    LONG *p);
void __RPC_STUB IHTMLTextContainer_get_scrollTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextContainer_put_scrollLeft_Proxy(
    IHTMLTextContainer* This,
    LONG v);
void __RPC_STUB IHTMLTextContainer_put_scrollLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextContainer_get_scrollLeft_Proxy(
    IHTMLTextContainer* This,
    LONG *p);
void __RPC_STUB IHTMLTextContainer_get_scrollLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextContainer_put_onscroll_Proxy(
    IHTMLTextContainer* This,
    VARIANT v);
void __RPC_STUB IHTMLTextContainer_put_onscroll_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextContainer_get_onscroll_Proxy(
    IHTMLTextContainer* This,
    VARIANT *p);
void __RPC_STUB IHTMLTextContainer_get_onscroll_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLTextContainer_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLImgElement interface
 */
#ifndef __IHTMLImgElement_INTERFACE_DEFINED__
#define __IHTMLImgElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLImgElement, 0x3050f240, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLImgElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_isMap(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_isMap(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_useMap(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_useMap(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_mimeType(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fileSize(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fileCreatedDate(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fileModifiedDate(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fileUpdatedDate(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_protocol(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_href(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_nameProp(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_border(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_border(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_vspace(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_vspace(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_hspace(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hspace(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_alt(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_alt(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_src(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_src(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_lowsrc(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_lowsrc(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_vrml(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_vrml(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_dynsrc(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_dynsrc(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readyState(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_complete(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_loop(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_loop(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_align(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_align(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onload(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onload(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onerror(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onerror(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onabort(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onabort(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_width(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_width(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_height(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_height(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_start(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_start(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLImgElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLImgElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLImgElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLImgElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLImgElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLImgElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLImgElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLImgElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLImgElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_isMap)(
        IHTMLImgElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_isMap)(
        IHTMLImgElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_useMap)(
        IHTMLImgElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_useMap)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_mimeType)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_fileSize)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_fileCreatedDate)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_fileModifiedDate)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_fileUpdatedDate)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_protocol)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_href)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_nameProp)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_border)(
        IHTMLImgElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_border)(
        IHTMLImgElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_vspace)(
        IHTMLImgElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_vspace)(
        IHTMLImgElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_hspace)(
        IHTMLImgElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_hspace)(
        IHTMLImgElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_alt)(
        IHTMLImgElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_alt)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_src)(
        IHTMLImgElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_src)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_lowsrc)(
        IHTMLImgElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_lowsrc)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_vrml)(
        IHTMLImgElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_vrml)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_dynsrc)(
        IHTMLImgElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_dynsrc)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_readyState)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_complete)(
        IHTMLImgElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_loop)(
        IHTMLImgElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_loop)(
        IHTMLImgElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_align)(
        IHTMLImgElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_align)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_onload)(
        IHTMLImgElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onload)(
        IHTMLImgElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onerror)(
        IHTMLImgElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onerror)(
        IHTMLImgElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onabort)(
        IHTMLImgElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onabort)(
        IHTMLImgElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLImgElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLImgElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_width)(
        IHTMLImgElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_width)(
        IHTMLImgElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_height)(
        IHTMLImgElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_height)(
        IHTMLImgElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_start)(
        IHTMLImgElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_start)(
        IHTMLImgElement* This,
        BSTR *p);

    END_INTERFACE
} IHTMLImgElementVtbl;
interface IHTMLImgElement {
    CONST_VTBL IHTMLImgElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLImgElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLImgElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLImgElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLImgElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLImgElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLImgElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLImgElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLImgElement methods ***/
#define IHTMLImgElement_put_isMap(This,v) (This)->lpVtbl->put_isMap(This,v)
#define IHTMLImgElement_get_isMap(This,p) (This)->lpVtbl->get_isMap(This,p)
#define IHTMLImgElement_put_useMap(This,v) (This)->lpVtbl->put_useMap(This,v)
#define IHTMLImgElement_get_useMap(This,p) (This)->lpVtbl->get_useMap(This,p)
#define IHTMLImgElement_get_mimeType(This,p) (This)->lpVtbl->get_mimeType(This,p)
#define IHTMLImgElement_get_fileSize(This,p) (This)->lpVtbl->get_fileSize(This,p)
#define IHTMLImgElement_get_fileCreatedDate(This,p) (This)->lpVtbl->get_fileCreatedDate(This,p)
#define IHTMLImgElement_get_fileModifiedDate(This,p) (This)->lpVtbl->get_fileModifiedDate(This,p)
#define IHTMLImgElement_get_fileUpdatedDate(This,p) (This)->lpVtbl->get_fileUpdatedDate(This,p)
#define IHTMLImgElement_get_protocol(This,p) (This)->lpVtbl->get_protocol(This,p)
#define IHTMLImgElement_get_href(This,p) (This)->lpVtbl->get_href(This,p)
#define IHTMLImgElement_get_nameProp(This,p) (This)->lpVtbl->get_nameProp(This,p)
#define IHTMLImgElement_put_border(This,v) (This)->lpVtbl->put_border(This,v)
#define IHTMLImgElement_get_border(This,p) (This)->lpVtbl->get_border(This,p)
#define IHTMLImgElement_put_vspace(This,v) (This)->lpVtbl->put_vspace(This,v)
#define IHTMLImgElement_get_vspace(This,p) (This)->lpVtbl->get_vspace(This,p)
#define IHTMLImgElement_put_hspace(This,v) (This)->lpVtbl->put_hspace(This,v)
#define IHTMLImgElement_get_hspace(This,p) (This)->lpVtbl->get_hspace(This,p)
#define IHTMLImgElement_put_alt(This,v) (This)->lpVtbl->put_alt(This,v)
#define IHTMLImgElement_get_alt(This,p) (This)->lpVtbl->get_alt(This,p)
#define IHTMLImgElement_put_src(This,v) (This)->lpVtbl->put_src(This,v)
#define IHTMLImgElement_get_src(This,p) (This)->lpVtbl->get_src(This,p)
#define IHTMLImgElement_put_lowsrc(This,v) (This)->lpVtbl->put_lowsrc(This,v)
#define IHTMLImgElement_get_lowsrc(This,p) (This)->lpVtbl->get_lowsrc(This,p)
#define IHTMLImgElement_put_vrml(This,v) (This)->lpVtbl->put_vrml(This,v)
#define IHTMLImgElement_get_vrml(This,p) (This)->lpVtbl->get_vrml(This,p)
#define IHTMLImgElement_put_dynsrc(This,v) (This)->lpVtbl->put_dynsrc(This,v)
#define IHTMLImgElement_get_dynsrc(This,p) (This)->lpVtbl->get_dynsrc(This,p)
#define IHTMLImgElement_get_readyState(This,p) (This)->lpVtbl->get_readyState(This,p)
#define IHTMLImgElement_get_complete(This,p) (This)->lpVtbl->get_complete(This,p)
#define IHTMLImgElement_put_loop(This,v) (This)->lpVtbl->put_loop(This,v)
#define IHTMLImgElement_get_loop(This,p) (This)->lpVtbl->get_loop(This,p)
#define IHTMLImgElement_put_align(This,v) (This)->lpVtbl->put_align(This,v)
#define IHTMLImgElement_get_align(This,p) (This)->lpVtbl->get_align(This,p)
#define IHTMLImgElement_put_onload(This,v) (This)->lpVtbl->put_onload(This,v)
#define IHTMLImgElement_get_onload(This,p) (This)->lpVtbl->get_onload(This,p)
#define IHTMLImgElement_put_onerror(This,v) (This)->lpVtbl->put_onerror(This,v)
#define IHTMLImgElement_get_onerror(This,p) (This)->lpVtbl->get_onerror(This,p)
#define IHTMLImgElement_put_onabort(This,v) (This)->lpVtbl->put_onabort(This,v)
#define IHTMLImgElement_get_onabort(This,p) (This)->lpVtbl->get_onabort(This,p)
#define IHTMLImgElement_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLImgElement_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLImgElement_put_width(This,v) (This)->lpVtbl->put_width(This,v)
#define IHTMLImgElement_get_width(This,p) (This)->lpVtbl->get_width(This,p)
#define IHTMLImgElement_put_height(This,v) (This)->lpVtbl->put_height(This,v)
#define IHTMLImgElement_get_height(This,p) (This)->lpVtbl->get_height(This,p)
#define IHTMLImgElement_put_start(This,v) (This)->lpVtbl->put_start(This,v)
#define IHTMLImgElement_get_start(This,p) (This)->lpVtbl->get_start(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_isMap_Proxy(
    IHTMLImgElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLImgElement_put_isMap_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_isMap_Proxy(
    IHTMLImgElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLImgElement_get_isMap_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_useMap_Proxy(
    IHTMLImgElement* This,
    BSTR v);
void __RPC_STUB IHTMLImgElement_put_useMap_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_useMap_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_useMap_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_mimeType_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_mimeType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_fileSize_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_fileSize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_fileCreatedDate_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_fileCreatedDate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_fileModifiedDate_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_fileModifiedDate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_fileUpdatedDate_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_fileUpdatedDate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_protocol_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_protocol_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_href_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_href_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_nameProp_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_nameProp_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_border_Proxy(
    IHTMLImgElement* This,
    VARIANT v);
void __RPC_STUB IHTMLImgElement_put_border_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_border_Proxy(
    IHTMLImgElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLImgElement_get_border_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_vspace_Proxy(
    IHTMLImgElement* This,
    LONG v);
void __RPC_STUB IHTMLImgElement_put_vspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_vspace_Proxy(
    IHTMLImgElement* This,
    LONG *p);
void __RPC_STUB IHTMLImgElement_get_vspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_hspace_Proxy(
    IHTMLImgElement* This,
    LONG v);
void __RPC_STUB IHTMLImgElement_put_hspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_hspace_Proxy(
    IHTMLImgElement* This,
    LONG *p);
void __RPC_STUB IHTMLImgElement_get_hspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_alt_Proxy(
    IHTMLImgElement* This,
    BSTR v);
void __RPC_STUB IHTMLImgElement_put_alt_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_alt_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_alt_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_src_Proxy(
    IHTMLImgElement* This,
    BSTR v);
void __RPC_STUB IHTMLImgElement_put_src_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_src_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_src_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_lowsrc_Proxy(
    IHTMLImgElement* This,
    BSTR v);
void __RPC_STUB IHTMLImgElement_put_lowsrc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_lowsrc_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_lowsrc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_vrml_Proxy(
    IHTMLImgElement* This,
    BSTR v);
void __RPC_STUB IHTMLImgElement_put_vrml_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_vrml_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_vrml_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_dynsrc_Proxy(
    IHTMLImgElement* This,
    BSTR v);
void __RPC_STUB IHTMLImgElement_put_dynsrc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_dynsrc_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_dynsrc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_readyState_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_readyState_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_complete_Proxy(
    IHTMLImgElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLImgElement_get_complete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_loop_Proxy(
    IHTMLImgElement* This,
    VARIANT v);
void __RPC_STUB IHTMLImgElement_put_loop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_loop_Proxy(
    IHTMLImgElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLImgElement_get_loop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_align_Proxy(
    IHTMLImgElement* This,
    BSTR v);
void __RPC_STUB IHTMLImgElement_put_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_align_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_onload_Proxy(
    IHTMLImgElement* This,
    VARIANT v);
void __RPC_STUB IHTMLImgElement_put_onload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_onload_Proxy(
    IHTMLImgElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLImgElement_get_onload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_onerror_Proxy(
    IHTMLImgElement* This,
    VARIANT v);
void __RPC_STUB IHTMLImgElement_put_onerror_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_onerror_Proxy(
    IHTMLImgElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLImgElement_get_onerror_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_onabort_Proxy(
    IHTMLImgElement* This,
    VARIANT v);
void __RPC_STUB IHTMLImgElement_put_onabort_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_onabort_Proxy(
    IHTMLImgElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLImgElement_get_onabort_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_name_Proxy(
    IHTMLImgElement* This,
    BSTR v);
void __RPC_STUB IHTMLImgElement_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_name_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_width_Proxy(
    IHTMLImgElement* This,
    LONG v);
void __RPC_STUB IHTMLImgElement_put_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_width_Proxy(
    IHTMLImgElement* This,
    LONG *p);
void __RPC_STUB IHTMLImgElement_get_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_height_Proxy(
    IHTMLImgElement* This,
    LONG v);
void __RPC_STUB IHTMLImgElement_put_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_height_Proxy(
    IHTMLImgElement* This,
    LONG *p);
void __RPC_STUB IHTMLImgElement_get_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_put_start_Proxy(
    IHTMLImgElement* This,
    BSTR v);
void __RPC_STUB IHTMLImgElement_put_start_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLImgElement_get_start_Proxy(
    IHTMLImgElement* This,
    BSTR *p);
void __RPC_STUB IHTMLImgElement_get_start_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLImgElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLImageElementFactory interface
 */
#ifndef __IHTMLImageElementFactory_INTERFACE_DEFINED__
#define __IHTMLImageElementFactory_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLImageElementFactory, 0x3050f38e, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLImageElementFactory : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE create(
        VARIANT width,
        VARIANT height,
        IHTMLImgElement **elem) = 0;

};
#else
typedef struct IHTMLImageElementFactoryVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLImageElementFactory* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLImageElementFactory* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLImageElementFactory* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLImageElementFactory* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLImageElementFactory* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLImageElementFactory* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLImageElementFactory* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLImageElementFactory methods ***/
    HRESULT (STDMETHODCALLTYPE *create)(
        IHTMLImageElementFactory* This,
        VARIANT width,
        VARIANT height,
        IHTMLImgElement **elem);

    END_INTERFACE
} IHTMLImageElementFactoryVtbl;
interface IHTMLImageElementFactory {
    CONST_VTBL IHTMLImageElementFactoryVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLImageElementFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLImageElementFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLImageElementFactory_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLImageElementFactory_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLImageElementFactory_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLImageElementFactory_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLImageElementFactory_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLImageElementFactory methods ***/
#define IHTMLImageElementFactory_create(This,width,height,elem) (This)->lpVtbl->create(This,width,height,elem)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLImageElementFactory_create_Proxy(
    IHTMLImageElementFactory* This,
    VARIANT width,
    VARIANT height,
    IHTMLImgElement **elem);
void __RPC_STUB IHTMLImageElementFactory_create_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLImageElementFactory_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLImg dispinterface
 */
#ifndef __DispHTMLImg_DISPINTERFACE_DEFINED__
#define __DispHTMLImg_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLImg, 0x3050f51c, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLImg : public IDispatch
{
};
#else
typedef struct DispHTMLImgVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLImg* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLImg* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLImg* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLImg* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLImg* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLImg* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLImg* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLImgVtbl;
interface DispHTMLImg {
    CONST_VTBL DispHTMLImgVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLImg_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLImg_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLImg_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLImg_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLImg_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLImg_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLImg_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLImg_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLControlElement interface
 */
#ifndef __IHTMLControlElement_INTERFACE_DEFINED__
#define __IHTMLControlElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLControlElement, 0x3050f4e9, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLControlElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_tabIndex(
        short v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_tabIndex(
        short *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE focus(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_accessKey(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_accessKey(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onblur(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onblur(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onfocus(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onfocus(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onresize(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onresize(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE blur(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE addFilter(
        IUnknown *pUnk) = 0;

    virtual HRESULT STDMETHODCALLTYPE removeFilter(
        IUnknown *pUnk) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clientHeight(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clientWidth(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clientTop(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clientLeft(
        LONG *p) = 0;

};
#else
typedef struct IHTMLControlElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLControlElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLControlElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLControlElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLControlElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLControlElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLControlElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLControlElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLControlElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_tabIndex)(
        IHTMLControlElement* This,
        short v);

    HRESULT (STDMETHODCALLTYPE *get_tabIndex)(
        IHTMLControlElement* This,
        short *p);

    HRESULT (STDMETHODCALLTYPE *focus)(
        IHTMLControlElement* This);

    HRESULT (STDMETHODCALLTYPE *put_accessKey)(
        IHTMLControlElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_accessKey)(
        IHTMLControlElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_onblur)(
        IHTMLControlElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onblur)(
        IHTMLControlElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onfocus)(
        IHTMLControlElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onfocus)(
        IHTMLControlElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onresize)(
        IHTMLControlElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onresize)(
        IHTMLControlElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *blur)(
        IHTMLControlElement* This);

    HRESULT (STDMETHODCALLTYPE *addFilter)(
        IHTMLControlElement* This,
        IUnknown *pUnk);

    HRESULT (STDMETHODCALLTYPE *removeFilter)(
        IHTMLControlElement* This,
        IUnknown *pUnk);

    HRESULT (STDMETHODCALLTYPE *get_clientHeight)(
        IHTMLControlElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_clientWidth)(
        IHTMLControlElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_clientTop)(
        IHTMLControlElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_clientLeft)(
        IHTMLControlElement* This,
        LONG *p);

    END_INTERFACE
} IHTMLControlElementVtbl;
interface IHTMLControlElement {
    CONST_VTBL IHTMLControlElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLControlElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLControlElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLControlElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLControlElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLControlElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLControlElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLControlElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLControlElement methods ***/
#define IHTMLControlElement_put_tabIndex(This,v) (This)->lpVtbl->put_tabIndex(This,v)
#define IHTMLControlElement_get_tabIndex(This,p) (This)->lpVtbl->get_tabIndex(This,p)
#define IHTMLControlElement_focus(This) (This)->lpVtbl->focus(This)
#define IHTMLControlElement_put_accessKey(This,v) (This)->lpVtbl->put_accessKey(This,v)
#define IHTMLControlElement_get_accessKey(This,p) (This)->lpVtbl->get_accessKey(This,p)
#define IHTMLControlElement_put_onblur(This,v) (This)->lpVtbl->put_onblur(This,v)
#define IHTMLControlElement_get_onblur(This,p) (This)->lpVtbl->get_onblur(This,p)
#define IHTMLControlElement_put_onfocus(This,v) (This)->lpVtbl->put_onfocus(This,v)
#define IHTMLControlElement_get_onfocus(This,p) (This)->lpVtbl->get_onfocus(This,p)
#define IHTMLControlElement_put_onresize(This,v) (This)->lpVtbl->put_onresize(This,v)
#define IHTMLControlElement_get_onresize(This,p) (This)->lpVtbl->get_onresize(This,p)
#define IHTMLControlElement_blur(This) (This)->lpVtbl->blur(This)
#define IHTMLControlElement_addFilter(This,pUnk) (This)->lpVtbl->addFilter(This,pUnk)
#define IHTMLControlElement_removeFilter(This,pUnk) (This)->lpVtbl->removeFilter(This,pUnk)
#define IHTMLControlElement_get_clientHeight(This,p) (This)->lpVtbl->get_clientHeight(This,p)
#define IHTMLControlElement_get_clientWidth(This,p) (This)->lpVtbl->get_clientWidth(This,p)
#define IHTMLControlElement_get_clientTop(This,p) (This)->lpVtbl->get_clientTop(This,p)
#define IHTMLControlElement_get_clientLeft(This,p) (This)->lpVtbl->get_clientLeft(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLControlElement_put_tabIndex_Proxy(
    IHTMLControlElement* This,
    short v);
void __RPC_STUB IHTMLControlElement_put_tabIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_get_tabIndex_Proxy(
    IHTMLControlElement* This,
    short *p);
void __RPC_STUB IHTMLControlElement_get_tabIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_focus_Proxy(
    IHTMLControlElement* This);
void __RPC_STUB IHTMLControlElement_focus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_put_accessKey_Proxy(
    IHTMLControlElement* This,
    BSTR v);
void __RPC_STUB IHTMLControlElement_put_accessKey_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_get_accessKey_Proxy(
    IHTMLControlElement* This,
    BSTR *p);
void __RPC_STUB IHTMLControlElement_get_accessKey_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_put_onblur_Proxy(
    IHTMLControlElement* This,
    VARIANT v);
void __RPC_STUB IHTMLControlElement_put_onblur_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_get_onblur_Proxy(
    IHTMLControlElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLControlElement_get_onblur_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_put_onfocus_Proxy(
    IHTMLControlElement* This,
    VARIANT v);
void __RPC_STUB IHTMLControlElement_put_onfocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_get_onfocus_Proxy(
    IHTMLControlElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLControlElement_get_onfocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_put_onresize_Proxy(
    IHTMLControlElement* This,
    VARIANT v);
void __RPC_STUB IHTMLControlElement_put_onresize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_get_onresize_Proxy(
    IHTMLControlElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLControlElement_get_onresize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_blur_Proxy(
    IHTMLControlElement* This);
void __RPC_STUB IHTMLControlElement_blur_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_addFilter_Proxy(
    IHTMLControlElement* This,
    IUnknown *pUnk);
void __RPC_STUB IHTMLControlElement_addFilter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_removeFilter_Proxy(
    IHTMLControlElement* This,
    IUnknown *pUnk);
void __RPC_STUB IHTMLControlElement_removeFilter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_get_clientHeight_Proxy(
    IHTMLControlElement* This,
    LONG *p);
void __RPC_STUB IHTMLControlElement_get_clientHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_get_clientWidth_Proxy(
    IHTMLControlElement* This,
    LONG *p);
void __RPC_STUB IHTMLControlElement_get_clientWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_get_clientTop_Proxy(
    IHTMLControlElement* This,
    LONG *p);
void __RPC_STUB IHTMLControlElement_get_clientTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLControlElement_get_clientLeft_Proxy(
    IHTMLControlElement* This,
    LONG *p);
void __RPC_STUB IHTMLControlElement_get_clientLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLControlElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLBodyElement interface
 */
#ifndef __IHTMLBodyElement_INTERFACE_DEFINED__
#define __IHTMLBodyElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLBodyElement, 0x3050f1d8, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLBodyElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_background(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_background(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_bgProperties(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_bgProperties(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_leftMargin(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_leftMargin(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_topMargin(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_topMargin(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_rightMargin(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rightMargin(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_bottomMargin(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_bottomMargin(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_noWrap(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_noWrap(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_bgColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_bgColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_text(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_text(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_link(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_link(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_vLink(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_vLink(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_aLink(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_aLink(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onload(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onload(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onunload(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onunload(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scroll(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scroll(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onselect(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onselect(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforeunload(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforeunload(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE createTextRange(
        IHTMLTxtRange **range) = 0;

};
#else
typedef struct IHTMLBodyElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLBodyElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLBodyElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLBodyElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLBodyElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLBodyElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLBodyElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLBodyElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLBodyElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_background)(
        IHTMLBodyElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_background)(
        IHTMLBodyElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_bgProperties)(
        IHTMLBodyElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_bgProperties)(
        IHTMLBodyElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_leftMargin)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_leftMargin)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_topMargin)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_topMargin)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_rightMargin)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_rightMargin)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_bottomMargin)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_bottomMargin)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_noWrap)(
        IHTMLBodyElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_noWrap)(
        IHTMLBodyElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_bgColor)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_bgColor)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_text)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_text)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_link)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_link)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_vLink)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_vLink)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_aLink)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_aLink)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onload)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onload)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onunload)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onunload)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_scroll)(
        IHTMLBodyElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_scroll)(
        IHTMLBodyElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_onselect)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onselect)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onbeforeunload)(
        IHTMLBodyElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforeunload)(
        IHTMLBodyElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *createTextRange)(
        IHTMLBodyElement* This,
        IHTMLTxtRange **range);

    END_INTERFACE
} IHTMLBodyElementVtbl;
interface IHTMLBodyElement {
    CONST_VTBL IHTMLBodyElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLBodyElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLBodyElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLBodyElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLBodyElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLBodyElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLBodyElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLBodyElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLBodyElement methods ***/
#define IHTMLBodyElement_put_background(This,v) (This)->lpVtbl->put_background(This,v)
#define IHTMLBodyElement_get_background(This,p) (This)->lpVtbl->get_background(This,p)
#define IHTMLBodyElement_put_bgProperties(This,v) (This)->lpVtbl->put_bgProperties(This,v)
#define IHTMLBodyElement_get_bgProperties(This,p) (This)->lpVtbl->get_bgProperties(This,p)
#define IHTMLBodyElement_put_leftMargin(This,v) (This)->lpVtbl->put_leftMargin(This,v)
#define IHTMLBodyElement_get_leftMargin(This,p) (This)->lpVtbl->get_leftMargin(This,p)
#define IHTMLBodyElement_put_topMargin(This,v) (This)->lpVtbl->put_topMargin(This,v)
#define IHTMLBodyElement_get_topMargin(This,p) (This)->lpVtbl->get_topMargin(This,p)
#define IHTMLBodyElement_put_rightMargin(This,v) (This)->lpVtbl->put_rightMargin(This,v)
#define IHTMLBodyElement_get_rightMargin(This,p) (This)->lpVtbl->get_rightMargin(This,p)
#define IHTMLBodyElement_put_bottomMargin(This,v) (This)->lpVtbl->put_bottomMargin(This,v)
#define IHTMLBodyElement_get_bottomMargin(This,p) (This)->lpVtbl->get_bottomMargin(This,p)
#define IHTMLBodyElement_put_noWrap(This,v) (This)->lpVtbl->put_noWrap(This,v)
#define IHTMLBodyElement_get_noWrap(This,p) (This)->lpVtbl->get_noWrap(This,p)
#define IHTMLBodyElement_put_bgColor(This,v) (This)->lpVtbl->put_bgColor(This,v)
#define IHTMLBodyElement_get_bgColor(This,p) (This)->lpVtbl->get_bgColor(This,p)
#define IHTMLBodyElement_put_text(This,v) (This)->lpVtbl->put_text(This,v)
#define IHTMLBodyElement_get_text(This,p) (This)->lpVtbl->get_text(This,p)
#define IHTMLBodyElement_put_link(This,v) (This)->lpVtbl->put_link(This,v)
#define IHTMLBodyElement_get_link(This,p) (This)->lpVtbl->get_link(This,p)
#define IHTMLBodyElement_put_vLink(This,v) (This)->lpVtbl->put_vLink(This,v)
#define IHTMLBodyElement_get_vLink(This,p) (This)->lpVtbl->get_vLink(This,p)
#define IHTMLBodyElement_put_aLink(This,v) (This)->lpVtbl->put_aLink(This,v)
#define IHTMLBodyElement_get_aLink(This,p) (This)->lpVtbl->get_aLink(This,p)
#define IHTMLBodyElement_put_onload(This,v) (This)->lpVtbl->put_onload(This,v)
#define IHTMLBodyElement_get_onload(This,p) (This)->lpVtbl->get_onload(This,p)
#define IHTMLBodyElement_put_onunload(This,v) (This)->lpVtbl->put_onunload(This,v)
#define IHTMLBodyElement_get_onunload(This,p) (This)->lpVtbl->get_onunload(This,p)
#define IHTMLBodyElement_put_scroll(This,v) (This)->lpVtbl->put_scroll(This,v)
#define IHTMLBodyElement_get_scroll(This,p) (This)->lpVtbl->get_scroll(This,p)
#define IHTMLBodyElement_put_onselect(This,v) (This)->lpVtbl->put_onselect(This,v)
#define IHTMLBodyElement_get_onselect(This,p) (This)->lpVtbl->get_onselect(This,p)
#define IHTMLBodyElement_put_onbeforeunload(This,v) (This)->lpVtbl->put_onbeforeunload(This,v)
#define IHTMLBodyElement_get_onbeforeunload(This,p) (This)->lpVtbl->get_onbeforeunload(This,p)
#define IHTMLBodyElement_createTextRange(This,range) (This)->lpVtbl->createTextRange(This,range)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_background_Proxy(
    IHTMLBodyElement* This,
    BSTR v);
void __RPC_STUB IHTMLBodyElement_put_background_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_background_Proxy(
    IHTMLBodyElement* This,
    BSTR *p);
void __RPC_STUB IHTMLBodyElement_get_background_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_bgProperties_Proxy(
    IHTMLBodyElement* This,
    BSTR v);
void __RPC_STUB IHTMLBodyElement_put_bgProperties_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_bgProperties_Proxy(
    IHTMLBodyElement* This,
    BSTR *p);
void __RPC_STUB IHTMLBodyElement_get_bgProperties_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_leftMargin_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_leftMargin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_leftMargin_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_leftMargin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_topMargin_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_topMargin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_topMargin_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_topMargin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_rightMargin_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_rightMargin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_rightMargin_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_rightMargin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_bottomMargin_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_bottomMargin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_bottomMargin_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_bottomMargin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_noWrap_Proxy(
    IHTMLBodyElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLBodyElement_put_noWrap_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_noWrap_Proxy(
    IHTMLBodyElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLBodyElement_get_noWrap_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_bgColor_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_bgColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_bgColor_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_bgColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_text_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_text_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_text_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_text_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_link_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_link_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_link_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_link_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_vLink_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_vLink_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_vLink_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_vLink_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_aLink_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_aLink_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_aLink_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_aLink_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_onload_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_onload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_onload_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_onload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_onunload_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_onunload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_onunload_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_onunload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_scroll_Proxy(
    IHTMLBodyElement* This,
    BSTR v);
void __RPC_STUB IHTMLBodyElement_put_scroll_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_scroll_Proxy(
    IHTMLBodyElement* This,
    BSTR *p);
void __RPC_STUB IHTMLBodyElement_get_scroll_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_onselect_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_onselect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_onselect_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_onselect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_put_onbeforeunload_Proxy(
    IHTMLBodyElement* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement_put_onbeforeunload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_get_onbeforeunload_Proxy(
    IHTMLBodyElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement_get_onbeforeunload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement_createTextRange_Proxy(
    IHTMLBodyElement* This,
    IHTMLTxtRange **range);
void __RPC_STUB IHTMLBodyElement_createTextRange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLBodyElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLBodyElement2 interface
 */
#ifndef __IHTMLBodyElement2_INTERFACE_DEFINED__
#define __IHTMLBodyElement2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLBodyElement2, 0x3050f5c5, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLBodyElement2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_onbeforeprint(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforeprint(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onafterprint(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onafterprint(
        VARIANT *p) = 0;

};
#else
typedef struct IHTMLBodyElement2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLBodyElement2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLBodyElement2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLBodyElement2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLBodyElement2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLBodyElement2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLBodyElement2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLBodyElement2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLBodyElement2 methods ***/
    HRESULT (STDMETHODCALLTYPE *put_onbeforeprint)(
        IHTMLBodyElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforeprint)(
        IHTMLBodyElement2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onafterprint)(
        IHTMLBodyElement2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onafterprint)(
        IHTMLBodyElement2* This,
        VARIANT *p);

    END_INTERFACE
} IHTMLBodyElement2Vtbl;
interface IHTMLBodyElement2 {
    CONST_VTBL IHTMLBodyElement2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLBodyElement2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLBodyElement2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLBodyElement2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLBodyElement2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLBodyElement2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLBodyElement2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLBodyElement2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLBodyElement2 methods ***/
#define IHTMLBodyElement2_put_onbeforeprint(This,v) (This)->lpVtbl->put_onbeforeprint(This,v)
#define IHTMLBodyElement2_get_onbeforeprint(This,p) (This)->lpVtbl->get_onbeforeprint(This,p)
#define IHTMLBodyElement2_put_onafterprint(This,v) (This)->lpVtbl->put_onafterprint(This,v)
#define IHTMLBodyElement2_get_onafterprint(This,p) (This)->lpVtbl->get_onafterprint(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLBodyElement2_put_onbeforeprint_Proxy(
    IHTMLBodyElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement2_put_onbeforeprint_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement2_get_onbeforeprint_Proxy(
    IHTMLBodyElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement2_get_onbeforeprint_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement2_put_onafterprint_Proxy(
    IHTMLBodyElement2* This,
    VARIANT v);
void __RPC_STUB IHTMLBodyElement2_put_onafterprint_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBodyElement2_get_onafterprint_Proxy(
    IHTMLBodyElement2* This,
    VARIANT *p);
void __RPC_STUB IHTMLBodyElement2_get_onafterprint_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLBodyElement2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLBody dispinterface
 */
#ifndef __DispHTMLBody_DISPINTERFACE_DEFINED__
#define __DispHTMLBody_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLBody, 0x3050f507, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLBody : public IDispatch
{
};
#else
typedef struct DispHTMLBodyVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLBody* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLBody* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLBody* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLBody* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLBody* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLBody* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLBody* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLBodyVtbl;
interface DispHTMLBody {
    CONST_VTBL DispHTMLBodyVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLBody_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLBody_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLBody_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLBody_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLBody_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLBody_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLBody_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLBody_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLBody coclass
 */

DEFINE_GUID(CLSID_HTMLBody, 0x3050f24a, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLAnchorElement interface
 */
#ifndef __IHTMLAnchorElement_INTERFACE_DEFINED__
#define __IHTMLAnchorElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLAnchorElement, 0x3050f1da, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLAnchorElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_href(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_href(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_target(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_target(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_rel(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rel(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_rev(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rev(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_urn(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_urn(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_Methods(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_Methods(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_host(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_host(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_hostname(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hostname(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pathname(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pathname(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_port(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_port(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_protocol(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_protocol(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_search(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_search(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_hash(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hash(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onblur(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onblur(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onfocus(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onfocus(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_accessKey(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_accessKey(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_protocolLong(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_mimeType(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_nameProp(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_tabIndex(
        short v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_tabIndex(
        short *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE focus(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE blur(
        ) = 0;

};
#else
typedef struct IHTMLAnchorElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLAnchorElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLAnchorElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLAnchorElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLAnchorElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLAnchorElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLAnchorElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLAnchorElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLAnchorElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_href)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_href)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_target)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_target)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_rel)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_rel)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_rev)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_rev)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_urn)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_urn)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_Methods)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_Methods)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_host)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_host)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_hostname)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_hostname)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_pathname)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_pathname)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_port)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_port)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_protocol)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_protocol)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_search)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_search)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_hash)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_hash)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_onblur)(
        IHTMLAnchorElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onblur)(
        IHTMLAnchorElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onfocus)(
        IHTMLAnchorElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onfocus)(
        IHTMLAnchorElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_accessKey)(
        IHTMLAnchorElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_accessKey)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_protocolLong)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_mimeType)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_nameProp)(
        IHTMLAnchorElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_tabIndex)(
        IHTMLAnchorElement* This,
        short v);

    HRESULT (STDMETHODCALLTYPE *get_tabIndex)(
        IHTMLAnchorElement* This,
        short *p);

    HRESULT (STDMETHODCALLTYPE *focus)(
        IHTMLAnchorElement* This);

    HRESULT (STDMETHODCALLTYPE *blur)(
        IHTMLAnchorElement* This);

    END_INTERFACE
} IHTMLAnchorElementVtbl;
interface IHTMLAnchorElement {
    CONST_VTBL IHTMLAnchorElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLAnchorElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLAnchorElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLAnchorElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLAnchorElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLAnchorElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLAnchorElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLAnchorElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLAnchorElement methods ***/
#define IHTMLAnchorElement_put_href(This,v) (This)->lpVtbl->put_href(This,v)
#define IHTMLAnchorElement_get_href(This,p) (This)->lpVtbl->get_href(This,p)
#define IHTMLAnchorElement_put_target(This,v) (This)->lpVtbl->put_target(This,v)
#define IHTMLAnchorElement_get_target(This,p) (This)->lpVtbl->get_target(This,p)
#define IHTMLAnchorElement_put_rel(This,v) (This)->lpVtbl->put_rel(This,v)
#define IHTMLAnchorElement_get_rel(This,p) (This)->lpVtbl->get_rel(This,p)
#define IHTMLAnchorElement_put_rev(This,v) (This)->lpVtbl->put_rev(This,v)
#define IHTMLAnchorElement_get_rev(This,p) (This)->lpVtbl->get_rev(This,p)
#define IHTMLAnchorElement_put_urn(This,v) (This)->lpVtbl->put_urn(This,v)
#define IHTMLAnchorElement_get_urn(This,p) (This)->lpVtbl->get_urn(This,p)
#define IHTMLAnchorElement_put_Methods(This,v) (This)->lpVtbl->put_Methods(This,v)
#define IHTMLAnchorElement_get_Methods(This,p) (This)->lpVtbl->get_Methods(This,p)
#define IHTMLAnchorElement_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLAnchorElement_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLAnchorElement_put_host(This,v) (This)->lpVtbl->put_host(This,v)
#define IHTMLAnchorElement_get_host(This,p) (This)->lpVtbl->get_host(This,p)
#define IHTMLAnchorElement_put_hostname(This,v) (This)->lpVtbl->put_hostname(This,v)
#define IHTMLAnchorElement_get_hostname(This,p) (This)->lpVtbl->get_hostname(This,p)
#define IHTMLAnchorElement_put_pathname(This,v) (This)->lpVtbl->put_pathname(This,v)
#define IHTMLAnchorElement_get_pathname(This,p) (This)->lpVtbl->get_pathname(This,p)
#define IHTMLAnchorElement_put_port(This,v) (This)->lpVtbl->put_port(This,v)
#define IHTMLAnchorElement_get_port(This,p) (This)->lpVtbl->get_port(This,p)
#define IHTMLAnchorElement_put_protocol(This,v) (This)->lpVtbl->put_protocol(This,v)
#define IHTMLAnchorElement_get_protocol(This,p) (This)->lpVtbl->get_protocol(This,p)
#define IHTMLAnchorElement_put_search(This,v) (This)->lpVtbl->put_search(This,v)
#define IHTMLAnchorElement_get_search(This,p) (This)->lpVtbl->get_search(This,p)
#define IHTMLAnchorElement_put_hash(This,v) (This)->lpVtbl->put_hash(This,v)
#define IHTMLAnchorElement_get_hash(This,p) (This)->lpVtbl->get_hash(This,p)
#define IHTMLAnchorElement_put_onblur(This,v) (This)->lpVtbl->put_onblur(This,v)
#define IHTMLAnchorElement_get_onblur(This,p) (This)->lpVtbl->get_onblur(This,p)
#define IHTMLAnchorElement_put_onfocus(This,v) (This)->lpVtbl->put_onfocus(This,v)
#define IHTMLAnchorElement_get_onfocus(This,p) (This)->lpVtbl->get_onfocus(This,p)
#define IHTMLAnchorElement_put_accessKey(This,v) (This)->lpVtbl->put_accessKey(This,v)
#define IHTMLAnchorElement_get_accessKey(This,p) (This)->lpVtbl->get_accessKey(This,p)
#define IHTMLAnchorElement_get_protocolLong(This,p) (This)->lpVtbl->get_protocolLong(This,p)
#define IHTMLAnchorElement_get_mimeType(This,p) (This)->lpVtbl->get_mimeType(This,p)
#define IHTMLAnchorElement_get_nameProp(This,p) (This)->lpVtbl->get_nameProp(This,p)
#define IHTMLAnchorElement_put_tabIndex(This,v) (This)->lpVtbl->put_tabIndex(This,v)
#define IHTMLAnchorElement_get_tabIndex(This,p) (This)->lpVtbl->get_tabIndex(This,p)
#define IHTMLAnchorElement_focus(This) (This)->lpVtbl->focus(This)
#define IHTMLAnchorElement_blur(This) (This)->lpVtbl->blur(This)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_href_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_href_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_href_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_href_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_target_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_target_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_target_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_target_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_rel_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_rel_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_rel_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_rel_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_rev_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_rev_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_rev_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_rev_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_urn_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_urn_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_urn_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_urn_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_Methods_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_Methods_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_Methods_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_Methods_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_name_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_name_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_host_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_host_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_host_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_host_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_hostname_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_hostname_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_hostname_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_hostname_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_pathname_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_pathname_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_pathname_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_pathname_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_port_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_port_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_port_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_port_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_protocol_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_protocol_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_protocol_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_protocol_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_search_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_search_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_search_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_search_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_hash_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_hash_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_hash_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_hash_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_onblur_Proxy(
    IHTMLAnchorElement* This,
    VARIANT v);
void __RPC_STUB IHTMLAnchorElement_put_onblur_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_onblur_Proxy(
    IHTMLAnchorElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLAnchorElement_get_onblur_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_onfocus_Proxy(
    IHTMLAnchorElement* This,
    VARIANT v);
void __RPC_STUB IHTMLAnchorElement_put_onfocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_onfocus_Proxy(
    IHTMLAnchorElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLAnchorElement_get_onfocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_accessKey_Proxy(
    IHTMLAnchorElement* This,
    BSTR v);
void __RPC_STUB IHTMLAnchorElement_put_accessKey_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_accessKey_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_accessKey_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_protocolLong_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_protocolLong_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_mimeType_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_mimeType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_nameProp_Proxy(
    IHTMLAnchorElement* This,
    BSTR *p);
void __RPC_STUB IHTMLAnchorElement_get_nameProp_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_put_tabIndex_Proxy(
    IHTMLAnchorElement* This,
    short v);
void __RPC_STUB IHTMLAnchorElement_put_tabIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_get_tabIndex_Proxy(
    IHTMLAnchorElement* This,
    short *p);
void __RPC_STUB IHTMLAnchorElement_get_tabIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_focus_Proxy(
    IHTMLAnchorElement* This);
void __RPC_STUB IHTMLAnchorElement_focus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLAnchorElement_blur_Proxy(
    IHTMLAnchorElement* This);
void __RPC_STUB IHTMLAnchorElement_blur_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLAnchorElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLAnchorElement dispinterface
 */
#ifndef __DispHTMLAnchorElement_DISPINTERFACE_DEFINED__
#define __DispHTMLAnchorElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLAnchorElement, 0x3050f502, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLAnchorElement : public IDispatch
{
};
#else
typedef struct DispHTMLAnchorElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLAnchorElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLAnchorElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLAnchorElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLAnchorElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLAnchorElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLAnchorElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLAnchorElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLAnchorElementVtbl;
interface DispHTMLAnchorElement {
    CONST_VTBL DispHTMLAnchorElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLAnchorElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLAnchorElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLAnchorElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLAnchorElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLAnchorElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLAnchorElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLAnchorElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLAnchorElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLElementCollection interface
 */
#ifndef __IHTMLElementCollection_INTERFACE_DEFINED__
#define __IHTMLElementCollection_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLElementCollection, 0x3050f21f, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLElementCollection : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE toString(
        BSTR *String) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_length(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
        IUnknown **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE item(
        VARIANT name,
        VARIANT index,
        IDispatch **pdisp) = 0;

    virtual HRESULT STDMETHODCALLTYPE tags(
        VARIANT tagName,
        IDispatch **pdisp) = 0;

};
#else
typedef struct IHTMLElementCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLElementCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLElementCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLElementCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLElementCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLElementCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLElementCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLElementCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLElementCollection methods ***/
    HRESULT (STDMETHODCALLTYPE *toString)(
        IHTMLElementCollection* This,
        BSTR *String);

    HRESULT (STDMETHODCALLTYPE *put_length)(
        IHTMLElementCollection* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLElementCollection* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
        IHTMLElementCollection* This,
        IUnknown **p);

    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLElementCollection* This,
        VARIANT name,
        VARIANT index,
        IDispatch **pdisp);

    HRESULT (STDMETHODCALLTYPE *tags)(
        IHTMLElementCollection* This,
        VARIANT tagName,
        IDispatch **pdisp);

    END_INTERFACE
} IHTMLElementCollectionVtbl;
interface IHTMLElementCollection {
    CONST_VTBL IHTMLElementCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLElementCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLElementCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLElementCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLElementCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLElementCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLElementCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLElementCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLElementCollection methods ***/
#define IHTMLElementCollection_toString(This,String) (This)->lpVtbl->toString(This,String)
#define IHTMLElementCollection_put_length(This,v) (This)->lpVtbl->put_length(This,v)
#define IHTMLElementCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLElementCollection_get__newEnum(This,p) (This)->lpVtbl->get__newEnum(This,p)
#define IHTMLElementCollection_item(This,name,index,pdisp) (This)->lpVtbl->item(This,name,index,pdisp)
#define IHTMLElementCollection_tags(This,tagName,pdisp) (This)->lpVtbl->tags(This,tagName,pdisp)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLElementCollection_toString_Proxy(
    IHTMLElementCollection* This,
    BSTR *String);
void __RPC_STUB IHTMLElementCollection_toString_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElementCollection_put_length_Proxy(
    IHTMLElementCollection* This,
    LONG v);
void __RPC_STUB IHTMLElementCollection_put_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElementCollection_get_length_Proxy(
    IHTMLElementCollection* This,
    LONG *p);
void __RPC_STUB IHTMLElementCollection_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElementCollection_get__newEnum_Proxy(
    IHTMLElementCollection* This,
    IUnknown **p);
void __RPC_STUB IHTMLElementCollection_get__newEnum_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElementCollection_item_Proxy(
    IHTMLElementCollection* This,
    VARIANT name,
    VARIANT index,
    IDispatch **pdisp);
void __RPC_STUB IHTMLElementCollection_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLElementCollection_tags_Proxy(
    IHTMLElementCollection* This,
    VARIANT tagName,
    IDispatch **pdisp);
void __RPC_STUB IHTMLElementCollection_tags_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLElementCollection_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLElementCollection dispinterface
 */
#ifndef __DispHTMLElementCollection_DISPINTERFACE_DEFINED__
#define __DispHTMLElementCollection_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLElementCollection, 0x3050f56b, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLElementCollection : public IDispatch
{
};
#else
typedef struct DispHTMLElementCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLElementCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLElementCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLElementCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLElementCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLElementCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLElementCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLElementCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLElementCollectionVtbl;
interface DispHTMLElementCollection {
    CONST_VTBL DispHTMLElementCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLElementCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLElementCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLElementCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLElementCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLElementCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLElementCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLElementCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLElementCollection_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLSelectElement interface
 */
#ifndef __IHTMLSelectElement_INTERFACE_DEFINED__
#define __IHTMLSelectElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLSelectElement, 0x3050f244, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLSelectElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_size(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_size(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_multiple(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_multiple(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_options(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onchange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onchange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_selectedIndex(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_selectedIndex(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_type(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_value(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_value(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_disabled(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_disabled(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_form(
        IHTMLFormElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE add(
        IHTMLElement *element,
        VARIANT before) = 0;

    virtual HRESULT STDMETHODCALLTYPE remove(
        LONG index) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_length(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
        IUnknown **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE item(
        VARIANT name,
        VARIANT index,
        IDispatch **pdisp) = 0;

    virtual HRESULT STDMETHODCALLTYPE tags(
        VARIANT tagName,
        IDispatch **pdisp) = 0;

};
#else
typedef struct IHTMLSelectElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLSelectElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLSelectElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLSelectElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLSelectElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLSelectElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLSelectElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLSelectElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLSelectElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_size)(
        IHTMLSelectElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_size)(
        IHTMLSelectElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_multiple)(
        IHTMLSelectElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_multiple)(
        IHTMLSelectElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLSelectElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLSelectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_options)(
        IHTMLSelectElement* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *put_onchange)(
        IHTMLSelectElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onchange)(
        IHTMLSelectElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_selectedIndex)(
        IHTMLSelectElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_selectedIndex)(
        IHTMLSelectElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_type)(
        IHTMLSelectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_value)(
        IHTMLSelectElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_value)(
        IHTMLSelectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_disabled)(
        IHTMLSelectElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_disabled)(
        IHTMLSelectElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_form)(
        IHTMLSelectElement* This,
        IHTMLFormElement **p);

    HRESULT (STDMETHODCALLTYPE *add)(
        IHTMLSelectElement* This,
        IHTMLElement *element,
        VARIANT before);

    HRESULT (STDMETHODCALLTYPE *remove)(
        IHTMLSelectElement* This,
        LONG index);

    HRESULT (STDMETHODCALLTYPE *put_length)(
        IHTMLSelectElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLSelectElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
        IHTMLSelectElement* This,
        IUnknown **p);

    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLSelectElement* This,
        VARIANT name,
        VARIANT index,
        IDispatch **pdisp);

    HRESULT (STDMETHODCALLTYPE *tags)(
        IHTMLSelectElement* This,
        VARIANT tagName,
        IDispatch **pdisp);

    END_INTERFACE
} IHTMLSelectElementVtbl;
interface IHTMLSelectElement {
    CONST_VTBL IHTMLSelectElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLSelectElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLSelectElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLSelectElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLSelectElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLSelectElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLSelectElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLSelectElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLSelectElement methods ***/
#define IHTMLSelectElement_put_size(This,v) (This)->lpVtbl->put_size(This,v)
#define IHTMLSelectElement_get_size(This,p) (This)->lpVtbl->get_size(This,p)
#define IHTMLSelectElement_put_multiple(This,v) (This)->lpVtbl->put_multiple(This,v)
#define IHTMLSelectElement_get_multiple(This,p) (This)->lpVtbl->get_multiple(This,p)
#define IHTMLSelectElement_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLSelectElement_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLSelectElement_get_options(This,p) (This)->lpVtbl->get_options(This,p)
#define IHTMLSelectElement_put_onchange(This,v) (This)->lpVtbl->put_onchange(This,v)
#define IHTMLSelectElement_get_onchange(This,p) (This)->lpVtbl->get_onchange(This,p)
#define IHTMLSelectElement_put_selectedIndex(This,v) (This)->lpVtbl->put_selectedIndex(This,v)
#define IHTMLSelectElement_get_selectedIndex(This,p) (This)->lpVtbl->get_selectedIndex(This,p)
#define IHTMLSelectElement_get_type(This,p) (This)->lpVtbl->get_type(This,p)
#define IHTMLSelectElement_put_value(This,v) (This)->lpVtbl->put_value(This,v)
#define IHTMLSelectElement_get_value(This,p) (This)->lpVtbl->get_value(This,p)
#define IHTMLSelectElement_put_disabled(This,v) (This)->lpVtbl->put_disabled(This,v)
#define IHTMLSelectElement_get_disabled(This,p) (This)->lpVtbl->get_disabled(This,p)
#define IHTMLSelectElement_get_form(This,p) (This)->lpVtbl->get_form(This,p)
#define IHTMLSelectElement_add(This,element,before) (This)->lpVtbl->add(This,element,before)
#define IHTMLSelectElement_remove(This,index) (This)->lpVtbl->remove(This,index)
#define IHTMLSelectElement_put_length(This,v) (This)->lpVtbl->put_length(This,v)
#define IHTMLSelectElement_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLSelectElement_get__newEnum(This,p) (This)->lpVtbl->get__newEnum(This,p)
#define IHTMLSelectElement_item(This,name,index,pdisp) (This)->lpVtbl->item(This,name,index,pdisp)
#define IHTMLSelectElement_tags(This,tagName,pdisp) (This)->lpVtbl->tags(This,tagName,pdisp)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLSelectElement_put_size_Proxy(
    IHTMLSelectElement* This,
    LONG v);
void __RPC_STUB IHTMLSelectElement_put_size_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_get_size_Proxy(
    IHTMLSelectElement* This,
    LONG *p);
void __RPC_STUB IHTMLSelectElement_get_size_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_put_multiple_Proxy(
    IHTMLSelectElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLSelectElement_put_multiple_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_get_multiple_Proxy(
    IHTMLSelectElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLSelectElement_get_multiple_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_put_name_Proxy(
    IHTMLSelectElement* This,
    BSTR v);
void __RPC_STUB IHTMLSelectElement_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_get_name_Proxy(
    IHTMLSelectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLSelectElement_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_get_options_Proxy(
    IHTMLSelectElement* This,
    IDispatch **p);
void __RPC_STUB IHTMLSelectElement_get_options_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_put_onchange_Proxy(
    IHTMLSelectElement* This,
    VARIANT v);
void __RPC_STUB IHTMLSelectElement_put_onchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_get_onchange_Proxy(
    IHTMLSelectElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLSelectElement_get_onchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_put_selectedIndex_Proxy(
    IHTMLSelectElement* This,
    LONG v);
void __RPC_STUB IHTMLSelectElement_put_selectedIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_get_selectedIndex_Proxy(
    IHTMLSelectElement* This,
    LONG *p);
void __RPC_STUB IHTMLSelectElement_get_selectedIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_get_type_Proxy(
    IHTMLSelectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLSelectElement_get_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_put_value_Proxy(
    IHTMLSelectElement* This,
    BSTR v);
void __RPC_STUB IHTMLSelectElement_put_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_get_value_Proxy(
    IHTMLSelectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLSelectElement_get_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_put_disabled_Proxy(
    IHTMLSelectElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLSelectElement_put_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_get_disabled_Proxy(
    IHTMLSelectElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLSelectElement_get_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_get_form_Proxy(
    IHTMLSelectElement* This,
    IHTMLFormElement **p);
void __RPC_STUB IHTMLSelectElement_get_form_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_add_Proxy(
    IHTMLSelectElement* This,
    IHTMLElement *element,
    VARIANT before);
void __RPC_STUB IHTMLSelectElement_add_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_remove_Proxy(
    IHTMLSelectElement* This,
    LONG index);
void __RPC_STUB IHTMLSelectElement_remove_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_put_length_Proxy(
    IHTMLSelectElement* This,
    LONG v);
void __RPC_STUB IHTMLSelectElement_put_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_get_length_Proxy(
    IHTMLSelectElement* This,
    LONG *p);
void __RPC_STUB IHTMLSelectElement_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_get__newEnum_Proxy(
    IHTMLSelectElement* This,
    IUnknown **p);
void __RPC_STUB IHTMLSelectElement_get__newEnum_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_item_Proxy(
    IHTMLSelectElement* This,
    VARIANT name,
    VARIANT index,
    IDispatch **pdisp);
void __RPC_STUB IHTMLSelectElement_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectElement_tags_Proxy(
    IHTMLSelectElement* This,
    VARIANT tagName,
    IDispatch **pdisp);
void __RPC_STUB IHTMLSelectElement_tags_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLSelectElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLSelectElement dispinterface
 */
#ifndef __DispHTMLSelectElement_DISPINTERFACE_DEFINED__
#define __DispHTMLSelectElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLSelectElement, 0x3050f531, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLSelectElement : public IDispatch
{
};
#else
typedef struct DispHTMLSelectElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLSelectElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLSelectElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLSelectElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLSelectElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLSelectElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLSelectElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLSelectElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLSelectElementVtbl;
interface DispHTMLSelectElement {
    CONST_VTBL DispHTMLSelectElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLSelectElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLSelectElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLSelectElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLSelectElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLSelectElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLSelectElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLSelectElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLSelectElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLSelectionObject interface
 */
#ifndef __IHTMLSelectionObject_INTERFACE_DEFINED__
#define __IHTMLSelectionObject_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLSelectionObject, 0x3050f25a, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLSelectionObject : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE createRange(
        IDispatch **range) = 0;

    virtual HRESULT STDMETHODCALLTYPE empty(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE clear(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_type(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLSelectionObjectVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLSelectionObject* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLSelectionObject* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLSelectionObject* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLSelectionObject* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLSelectionObject* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLSelectionObject* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLSelectionObject* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLSelectionObject methods ***/
    HRESULT (STDMETHODCALLTYPE *createRange)(
        IHTMLSelectionObject* This,
        IDispatch **range);

    HRESULT (STDMETHODCALLTYPE *empty)(
        IHTMLSelectionObject* This);

    HRESULT (STDMETHODCALLTYPE *clear)(
        IHTMLSelectionObject* This);

    HRESULT (STDMETHODCALLTYPE *get_type)(
        IHTMLSelectionObject* This,
        BSTR *p);

    END_INTERFACE
} IHTMLSelectionObjectVtbl;
interface IHTMLSelectionObject {
    CONST_VTBL IHTMLSelectionObjectVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLSelectionObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLSelectionObject_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLSelectionObject_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLSelectionObject_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLSelectionObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLSelectionObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLSelectionObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLSelectionObject methods ***/
#define IHTMLSelectionObject_createRange(This,range) (This)->lpVtbl->createRange(This,range)
#define IHTMLSelectionObject_empty(This) (This)->lpVtbl->empty(This)
#define IHTMLSelectionObject_clear(This) (This)->lpVtbl->clear(This)
#define IHTMLSelectionObject_get_type(This,p) (This)->lpVtbl->get_type(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLSelectionObject_createRange_Proxy(
    IHTMLSelectionObject* This,
    IDispatch **range);
void __RPC_STUB IHTMLSelectionObject_createRange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectionObject_empty_Proxy(
    IHTMLSelectionObject* This);
void __RPC_STUB IHTMLSelectionObject_empty_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectionObject_clear_Proxy(
    IHTMLSelectionObject* This);
void __RPC_STUB IHTMLSelectionObject_clear_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLSelectionObject_get_type_Proxy(
    IHTMLSelectionObject* This,
    BSTR *p);
void __RPC_STUB IHTMLSelectionObject_get_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLSelectionObject_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLOptionElement interface
 */
#ifndef __IHTMLOptionElement_INTERFACE_DEFINED__
#define __IHTMLOptionElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLOptionElement, 0x3050f211, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLOptionElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_selected(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_selected(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_value(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_value(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_defaultSelected(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_defaultSelected(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_index(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_index(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_text(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_text(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_form(
        IHTMLFormElement **p) = 0;

};
#else
typedef struct IHTMLOptionElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLOptionElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLOptionElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLOptionElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLOptionElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLOptionElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLOptionElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLOptionElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLOptionElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_selected)(
        IHTMLOptionElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_selected)(
        IHTMLOptionElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_value)(
        IHTMLOptionElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_value)(
        IHTMLOptionElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_defaultSelected)(
        IHTMLOptionElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_defaultSelected)(
        IHTMLOptionElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_index)(
        IHTMLOptionElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_index)(
        IHTMLOptionElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_text)(
        IHTMLOptionElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_text)(
        IHTMLOptionElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_form)(
        IHTMLOptionElement* This,
        IHTMLFormElement **p);

    END_INTERFACE
} IHTMLOptionElementVtbl;
interface IHTMLOptionElement {
    CONST_VTBL IHTMLOptionElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLOptionElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLOptionElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLOptionElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLOptionElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLOptionElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLOptionElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLOptionElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLOptionElement methods ***/
#define IHTMLOptionElement_put_selected(This,v) (This)->lpVtbl->put_selected(This,v)
#define IHTMLOptionElement_get_selected(This,p) (This)->lpVtbl->get_selected(This,p)
#define IHTMLOptionElement_put_value(This,v) (This)->lpVtbl->put_value(This,v)
#define IHTMLOptionElement_get_value(This,p) (This)->lpVtbl->get_value(This,p)
#define IHTMLOptionElement_put_defaultSelected(This,v) (This)->lpVtbl->put_defaultSelected(This,v)
#define IHTMLOptionElement_get_defaultSelected(This,p) (This)->lpVtbl->get_defaultSelected(This,p)
#define IHTMLOptionElement_put_index(This,v) (This)->lpVtbl->put_index(This,v)
#define IHTMLOptionElement_get_index(This,p) (This)->lpVtbl->get_index(This,p)
#define IHTMLOptionElement_put_text(This,v) (This)->lpVtbl->put_text(This,v)
#define IHTMLOptionElement_get_text(This,p) (This)->lpVtbl->get_text(This,p)
#define IHTMLOptionElement_get_form(This,p) (This)->lpVtbl->get_form(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLOptionElement_put_selected_Proxy(
    IHTMLOptionElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLOptionElement_put_selected_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOptionElement_get_selected_Proxy(
    IHTMLOptionElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLOptionElement_get_selected_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOptionElement_put_value_Proxy(
    IHTMLOptionElement* This,
    BSTR v);
void __RPC_STUB IHTMLOptionElement_put_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOptionElement_get_value_Proxy(
    IHTMLOptionElement* This,
    BSTR *p);
void __RPC_STUB IHTMLOptionElement_get_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOptionElement_put_defaultSelected_Proxy(
    IHTMLOptionElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLOptionElement_put_defaultSelected_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOptionElement_get_defaultSelected_Proxy(
    IHTMLOptionElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLOptionElement_get_defaultSelected_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOptionElement_put_index_Proxy(
    IHTMLOptionElement* This,
    LONG v);
void __RPC_STUB IHTMLOptionElement_put_index_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOptionElement_get_index_Proxy(
    IHTMLOptionElement* This,
    LONG *p);
void __RPC_STUB IHTMLOptionElement_get_index_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOptionElement_put_text_Proxy(
    IHTMLOptionElement* This,
    BSTR v);
void __RPC_STUB IHTMLOptionElement_put_text_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOptionElement_get_text_Proxy(
    IHTMLOptionElement* This,
    BSTR *p);
void __RPC_STUB IHTMLOptionElement_get_text_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOptionElement_get_form_Proxy(
    IHTMLOptionElement* This,
    IHTMLFormElement **p);
void __RPC_STUB IHTMLOptionElement_get_form_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLOptionElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLOptionElement3 interface
 */
#ifndef __IHTMLOptionElement3_INTERFACE_DEFINED__
#define __IHTMLOptionElement3_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLOptionElement3, 0x3050f820, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLOptionElement3 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_label(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_label(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLOptionElement3Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLOptionElement3* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLOptionElement3* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLOptionElement3* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLOptionElement3* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLOptionElement3* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLOptionElement3* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLOptionElement3* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLOptionElement3 methods ***/
    HRESULT (STDMETHODCALLTYPE *put_label)(
        IHTMLOptionElement3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_label)(
        IHTMLOptionElement3* This,
        BSTR *p);

    END_INTERFACE
} IHTMLOptionElement3Vtbl;
interface IHTMLOptionElement3 {
    CONST_VTBL IHTMLOptionElement3Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLOptionElement3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLOptionElement3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLOptionElement3_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLOptionElement3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLOptionElement3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLOptionElement3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLOptionElement3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLOptionElement3 methods ***/
#define IHTMLOptionElement3_put_label(This,v) (This)->lpVtbl->put_label(This,v)
#define IHTMLOptionElement3_get_label(This,p) (This)->lpVtbl->get_label(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLOptionElement3_put_label_Proxy(
    IHTMLOptionElement3* This,
    BSTR v);
void __RPC_STUB IHTMLOptionElement3_put_label_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOptionElement3_get_label_Proxy(
    IHTMLOptionElement3* This,
    BSTR *p);
void __RPC_STUB IHTMLOptionElement3_get_label_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLOptionElement3_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLOptionElementFactory interface
 */
#ifndef __IHTMLOptionElementFactory_INTERFACE_DEFINED__
#define __IHTMLOptionElementFactory_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLOptionElementFactory, 0x3050f38c, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLOptionElementFactory : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE create(
        VARIANT text,
        VARIANT value,
        VARIANT defaultselected,
        VARIANT selected,
        IHTMLOptionElement **optelem) = 0;

};
#else
typedef struct IHTMLOptionElementFactoryVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLOptionElementFactory* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLOptionElementFactory* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLOptionElementFactory* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLOptionElementFactory* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLOptionElementFactory* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLOptionElementFactory* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLOptionElementFactory* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLOptionElementFactory methods ***/
    HRESULT (STDMETHODCALLTYPE *create)(
        IHTMLOptionElementFactory* This,
        VARIANT text,
        VARIANT value,
        VARIANT defaultselected,
        VARIANT selected,
        IHTMLOptionElement **optelem);

    END_INTERFACE
} IHTMLOptionElementFactoryVtbl;
interface IHTMLOptionElementFactory {
    CONST_VTBL IHTMLOptionElementFactoryVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLOptionElementFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLOptionElementFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLOptionElementFactory_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLOptionElementFactory_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLOptionElementFactory_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLOptionElementFactory_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLOptionElementFactory_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLOptionElementFactory methods ***/
#define IHTMLOptionElementFactory_create(This,text,value,defaultselected,selected,optelem) (This)->lpVtbl->create(This,text,value,defaultselected,selected,optelem)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLOptionElementFactory_create_Proxy(
    IHTMLOptionElementFactory* This,
    VARIANT text,
    VARIANT value,
    VARIANT defaultselected,
    VARIANT selected,
    IHTMLOptionElement **optelem);
void __RPC_STUB IHTMLOptionElementFactory_create_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLOptionElementFactory_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLOptionElement dispinterface
 */
#ifndef __DispHTMLOptionElement_DISPINTERFACE_DEFINED__
#define __DispHTMLOptionElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLOptionElement, 0x3050f52b, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLOptionElement : public IDispatch
{
};
#else
typedef struct DispHTMLOptionElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLOptionElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLOptionElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLOptionElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLOptionElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLOptionElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLOptionElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLOptionElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLOptionElementVtbl;
interface DispHTMLOptionElement {
    CONST_VTBL DispHTMLOptionElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLOptionElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLOptionElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLOptionElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLOptionElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLOptionElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLOptionElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLOptionElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLOptionElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLOptionElement coclass
 */

DEFINE_GUID(CLSID_HTMLOptionElement, 0x3050f24d, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLInputElement interface
 */
#ifndef __IHTMLInputElement_INTERFACE_DEFINED__
#define __IHTMLInputElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLInputElement, 0x3050f5d2, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLInputElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_type(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_type(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_value(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_value(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_status(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_status(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_disabled(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_disabled(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_form(
        IHTMLFormElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_size(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_size(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_maxLength(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_maxLength(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE select(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onchange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onchange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onselect(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onselect(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_defaultValue(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_defaultValue(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_readOnly(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readOnly(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE createTextRange(
        IHTMLTxtRange **range) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_indeterminate(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_indeterminate(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_defaultChecked(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_defaultChecked(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_checked(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_checked(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_border(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_border(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_vspace(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_vspace(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_hspace(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hspace(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_alt(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_alt(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_src(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_src(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_lowsrc(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_lowsrc(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_vrml(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_vrml(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_dynsrc(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_dynsrc(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readyState(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_complete(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_loop(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_loop(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_align(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_align(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onload(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onload(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onerror(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onerror(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onabort(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onabort(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_width(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_width(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_height(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_height(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_start(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_start(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLInputElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLInputElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLInputElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLInputElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLInputElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLInputElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLInputElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLInputElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLInputElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_type)(
        IHTMLInputElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_type)(
        IHTMLInputElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_value)(
        IHTMLInputElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_value)(
        IHTMLInputElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLInputElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLInputElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_status)(
        IHTMLInputElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_status)(
        IHTMLInputElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_disabled)(
        IHTMLInputElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_disabled)(
        IHTMLInputElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_form)(
        IHTMLInputElement* This,
        IHTMLFormElement **p);

    HRESULT (STDMETHODCALLTYPE *put_size)(
        IHTMLInputElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_size)(
        IHTMLInputElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_maxLength)(
        IHTMLInputElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_maxLength)(
        IHTMLInputElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *select)(
        IHTMLInputElement* This);

    HRESULT (STDMETHODCALLTYPE *put_onchange)(
        IHTMLInputElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onchange)(
        IHTMLInputElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onselect)(
        IHTMLInputElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onselect)(
        IHTMLInputElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_defaultValue)(
        IHTMLInputElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_defaultValue)(
        IHTMLInputElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_readOnly)(
        IHTMLInputElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_readOnly)(
        IHTMLInputElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *createTextRange)(
        IHTMLInputElement* This,
        IHTMLTxtRange **range);

    HRESULT (STDMETHODCALLTYPE *put_indeterminate)(
        IHTMLInputElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_indeterminate)(
        IHTMLInputElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_defaultChecked)(
        IHTMLInputElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_defaultChecked)(
        IHTMLInputElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_checked)(
        IHTMLInputElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_checked)(
        IHTMLInputElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_border)(
        IHTMLInputElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_border)(
        IHTMLInputElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_vspace)(
        IHTMLInputElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_vspace)(
        IHTMLInputElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_hspace)(
        IHTMLInputElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_hspace)(
        IHTMLInputElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_alt)(
        IHTMLInputElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_alt)(
        IHTMLInputElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_src)(
        IHTMLInputElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_src)(
        IHTMLInputElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_lowsrc)(
        IHTMLInputElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_lowsrc)(
        IHTMLInputElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_vrml)(
        IHTMLInputElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_vrml)(
        IHTMLInputElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_dynsrc)(
        IHTMLInputElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_dynsrc)(
        IHTMLInputElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_readyState)(
        IHTMLInputElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_complete)(
        IHTMLInputElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_loop)(
        IHTMLInputElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_loop)(
        IHTMLInputElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_align)(
        IHTMLInputElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_align)(
        IHTMLInputElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_onload)(
        IHTMLInputElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onload)(
        IHTMLInputElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onerror)(
        IHTMLInputElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onerror)(
        IHTMLInputElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onabort)(
        IHTMLInputElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onabort)(
        IHTMLInputElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_width)(
        IHTMLInputElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_width)(
        IHTMLInputElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_height)(
        IHTMLInputElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_height)(
        IHTMLInputElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_start)(
        IHTMLInputElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_start)(
        IHTMLInputElement* This,
        BSTR *p);

    END_INTERFACE
} IHTMLInputElementVtbl;
interface IHTMLInputElement {
    CONST_VTBL IHTMLInputElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLInputElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLInputElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLInputElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLInputElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLInputElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLInputElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLInputElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLInputElement methods ***/
#define IHTMLInputElement_put_type(This,v) (This)->lpVtbl->put_type(This,v)
#define IHTMLInputElement_get_type(This,p) (This)->lpVtbl->get_type(This,p)
#define IHTMLInputElement_put_value(This,v) (This)->lpVtbl->put_value(This,v)
#define IHTMLInputElement_get_value(This,p) (This)->lpVtbl->get_value(This,p)
#define IHTMLInputElement_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLInputElement_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLInputElement_put_status(This,v) (This)->lpVtbl->put_status(This,v)
#define IHTMLInputElement_get_status(This,p) (This)->lpVtbl->get_status(This,p)
#define IHTMLInputElement_put_disabled(This,v) (This)->lpVtbl->put_disabled(This,v)
#define IHTMLInputElement_get_disabled(This,p) (This)->lpVtbl->get_disabled(This,p)
#define IHTMLInputElement_get_form(This,p) (This)->lpVtbl->get_form(This,p)
#define IHTMLInputElement_put_size(This,v) (This)->lpVtbl->put_size(This,v)
#define IHTMLInputElement_get_size(This,p) (This)->lpVtbl->get_size(This,p)
#define IHTMLInputElement_put_maxLength(This,v) (This)->lpVtbl->put_maxLength(This,v)
#define IHTMLInputElement_get_maxLength(This,p) (This)->lpVtbl->get_maxLength(This,p)
#define IHTMLInputElement_select(This) (This)->lpVtbl->select(This)
#define IHTMLInputElement_put_onchange(This,v) (This)->lpVtbl->put_onchange(This,v)
#define IHTMLInputElement_get_onchange(This,p) (This)->lpVtbl->get_onchange(This,p)
#define IHTMLInputElement_put_onselect(This,v) (This)->lpVtbl->put_onselect(This,v)
#define IHTMLInputElement_get_onselect(This,p) (This)->lpVtbl->get_onselect(This,p)
#define IHTMLInputElement_put_defaultValue(This,v) (This)->lpVtbl->put_defaultValue(This,v)
#define IHTMLInputElement_get_defaultValue(This,p) (This)->lpVtbl->get_defaultValue(This,p)
#define IHTMLInputElement_put_readOnly(This,v) (This)->lpVtbl->put_readOnly(This,v)
#define IHTMLInputElement_get_readOnly(This,p) (This)->lpVtbl->get_readOnly(This,p)
#define IHTMLInputElement_createTextRange(This,range) (This)->lpVtbl->createTextRange(This,range)
#define IHTMLInputElement_put_indeterminate(This,v) (This)->lpVtbl->put_indeterminate(This,v)
#define IHTMLInputElement_get_indeterminate(This,p) (This)->lpVtbl->get_indeterminate(This,p)
#define IHTMLInputElement_put_defaultChecked(This,v) (This)->lpVtbl->put_defaultChecked(This,v)
#define IHTMLInputElement_get_defaultChecked(This,p) (This)->lpVtbl->get_defaultChecked(This,p)
#define IHTMLInputElement_put_checked(This,v) (This)->lpVtbl->put_checked(This,v)
#define IHTMLInputElement_get_checked(This,p) (This)->lpVtbl->get_checked(This,p)
#define IHTMLInputElement_put_border(This,v) (This)->lpVtbl->put_border(This,v)
#define IHTMLInputElement_get_border(This,p) (This)->lpVtbl->get_border(This,p)
#define IHTMLInputElement_put_vspace(This,v) (This)->lpVtbl->put_vspace(This,v)
#define IHTMLInputElement_get_vspace(This,p) (This)->lpVtbl->get_vspace(This,p)
#define IHTMLInputElement_put_hspace(This,v) (This)->lpVtbl->put_hspace(This,v)
#define IHTMLInputElement_get_hspace(This,p) (This)->lpVtbl->get_hspace(This,p)
#define IHTMLInputElement_put_alt(This,v) (This)->lpVtbl->put_alt(This,v)
#define IHTMLInputElement_get_alt(This,p) (This)->lpVtbl->get_alt(This,p)
#define IHTMLInputElement_put_src(This,v) (This)->lpVtbl->put_src(This,v)
#define IHTMLInputElement_get_src(This,p) (This)->lpVtbl->get_src(This,p)
#define IHTMLInputElement_put_lowsrc(This,v) (This)->lpVtbl->put_lowsrc(This,v)
#define IHTMLInputElement_get_lowsrc(This,p) (This)->lpVtbl->get_lowsrc(This,p)
#define IHTMLInputElement_put_vrml(This,v) (This)->lpVtbl->put_vrml(This,v)
#define IHTMLInputElement_get_vrml(This,p) (This)->lpVtbl->get_vrml(This,p)
#define IHTMLInputElement_put_dynsrc(This,v) (This)->lpVtbl->put_dynsrc(This,v)
#define IHTMLInputElement_get_dynsrc(This,p) (This)->lpVtbl->get_dynsrc(This,p)
#define IHTMLInputElement_get_readyState(This,p) (This)->lpVtbl->get_readyState(This,p)
#define IHTMLInputElement_get_complete(This,p) (This)->lpVtbl->get_complete(This,p)
#define IHTMLInputElement_put_loop(This,v) (This)->lpVtbl->put_loop(This,v)
#define IHTMLInputElement_get_loop(This,p) (This)->lpVtbl->get_loop(This,p)
#define IHTMLInputElement_put_align(This,v) (This)->lpVtbl->put_align(This,v)
#define IHTMLInputElement_get_align(This,p) (This)->lpVtbl->get_align(This,p)
#define IHTMLInputElement_put_onload(This,v) (This)->lpVtbl->put_onload(This,v)
#define IHTMLInputElement_get_onload(This,p) (This)->lpVtbl->get_onload(This,p)
#define IHTMLInputElement_put_onerror(This,v) (This)->lpVtbl->put_onerror(This,v)
#define IHTMLInputElement_get_onerror(This,p) (This)->lpVtbl->get_onerror(This,p)
#define IHTMLInputElement_put_onabort(This,v) (This)->lpVtbl->put_onabort(This,v)
#define IHTMLInputElement_get_onabort(This,p) (This)->lpVtbl->get_onabort(This,p)
#define IHTMLInputElement_put_width(This,v) (This)->lpVtbl->put_width(This,v)
#define IHTMLInputElement_get_width(This,p) (This)->lpVtbl->get_width(This,p)
#define IHTMLInputElement_put_height(This,v) (This)->lpVtbl->put_height(This,v)
#define IHTMLInputElement_get_height(This,p) (This)->lpVtbl->get_height(This,p)
#define IHTMLInputElement_put_start(This,v) (This)->lpVtbl->put_start(This,v)
#define IHTMLInputElement_get_start(This,p) (This)->lpVtbl->get_start(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_type_Proxy(
    IHTMLInputElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputElement_put_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_type_Proxy(
    IHTMLInputElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputElement_get_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_value_Proxy(
    IHTMLInputElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputElement_put_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_value_Proxy(
    IHTMLInputElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputElement_get_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_name_Proxy(
    IHTMLInputElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputElement_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_name_Proxy(
    IHTMLInputElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputElement_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_status_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLInputElement_put_status_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_status_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLInputElement_get_status_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_disabled_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLInputElement_put_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_disabled_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLInputElement_get_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_form_Proxy(
    IHTMLInputElement* This,
    IHTMLFormElement **p);
void __RPC_STUB IHTMLInputElement_get_form_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_size_Proxy(
    IHTMLInputElement* This,
    LONG v);
void __RPC_STUB IHTMLInputElement_put_size_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_size_Proxy(
    IHTMLInputElement* This,
    LONG *p);
void __RPC_STUB IHTMLInputElement_get_size_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_maxLength_Proxy(
    IHTMLInputElement* This,
    LONG v);
void __RPC_STUB IHTMLInputElement_put_maxLength_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_maxLength_Proxy(
    IHTMLInputElement* This,
    LONG *p);
void __RPC_STUB IHTMLInputElement_get_maxLength_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_select_Proxy(
    IHTMLInputElement* This);
void __RPC_STUB IHTMLInputElement_select_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_onchange_Proxy(
    IHTMLInputElement* This,
    VARIANT v);
void __RPC_STUB IHTMLInputElement_put_onchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_onchange_Proxy(
    IHTMLInputElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLInputElement_get_onchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_onselect_Proxy(
    IHTMLInputElement* This,
    VARIANT v);
void __RPC_STUB IHTMLInputElement_put_onselect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_onselect_Proxy(
    IHTMLInputElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLInputElement_get_onselect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_defaultValue_Proxy(
    IHTMLInputElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputElement_put_defaultValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_defaultValue_Proxy(
    IHTMLInputElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputElement_get_defaultValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_readOnly_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLInputElement_put_readOnly_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_readOnly_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLInputElement_get_readOnly_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_createTextRange_Proxy(
    IHTMLInputElement* This,
    IHTMLTxtRange **range);
void __RPC_STUB IHTMLInputElement_createTextRange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_indeterminate_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLInputElement_put_indeterminate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_indeterminate_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLInputElement_get_indeterminate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_defaultChecked_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLInputElement_put_defaultChecked_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_defaultChecked_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLInputElement_get_defaultChecked_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_checked_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLInputElement_put_checked_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_checked_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLInputElement_get_checked_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_border_Proxy(
    IHTMLInputElement* This,
    VARIANT v);
void __RPC_STUB IHTMLInputElement_put_border_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_border_Proxy(
    IHTMLInputElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLInputElement_get_border_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_vspace_Proxy(
    IHTMLInputElement* This,
    LONG v);
void __RPC_STUB IHTMLInputElement_put_vspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_vspace_Proxy(
    IHTMLInputElement* This,
    LONG *p);
void __RPC_STUB IHTMLInputElement_get_vspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_hspace_Proxy(
    IHTMLInputElement* This,
    LONG v);
void __RPC_STUB IHTMLInputElement_put_hspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_hspace_Proxy(
    IHTMLInputElement* This,
    LONG *p);
void __RPC_STUB IHTMLInputElement_get_hspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_alt_Proxy(
    IHTMLInputElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputElement_put_alt_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_alt_Proxy(
    IHTMLInputElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputElement_get_alt_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_src_Proxy(
    IHTMLInputElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputElement_put_src_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_src_Proxy(
    IHTMLInputElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputElement_get_src_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_lowsrc_Proxy(
    IHTMLInputElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputElement_put_lowsrc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_lowsrc_Proxy(
    IHTMLInputElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputElement_get_lowsrc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_vrml_Proxy(
    IHTMLInputElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputElement_put_vrml_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_vrml_Proxy(
    IHTMLInputElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputElement_get_vrml_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_dynsrc_Proxy(
    IHTMLInputElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputElement_put_dynsrc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_dynsrc_Proxy(
    IHTMLInputElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputElement_get_dynsrc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_readyState_Proxy(
    IHTMLInputElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputElement_get_readyState_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_complete_Proxy(
    IHTMLInputElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLInputElement_get_complete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_loop_Proxy(
    IHTMLInputElement* This,
    VARIANT v);
void __RPC_STUB IHTMLInputElement_put_loop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_loop_Proxy(
    IHTMLInputElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLInputElement_get_loop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_align_Proxy(
    IHTMLInputElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputElement_put_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_align_Proxy(
    IHTMLInputElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputElement_get_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_onload_Proxy(
    IHTMLInputElement* This,
    VARIANT v);
void __RPC_STUB IHTMLInputElement_put_onload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_onload_Proxy(
    IHTMLInputElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLInputElement_get_onload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_onerror_Proxy(
    IHTMLInputElement* This,
    VARIANT v);
void __RPC_STUB IHTMLInputElement_put_onerror_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_onerror_Proxy(
    IHTMLInputElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLInputElement_get_onerror_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_onabort_Proxy(
    IHTMLInputElement* This,
    VARIANT v);
void __RPC_STUB IHTMLInputElement_put_onabort_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_onabort_Proxy(
    IHTMLInputElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLInputElement_get_onabort_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_width_Proxy(
    IHTMLInputElement* This,
    LONG v);
void __RPC_STUB IHTMLInputElement_put_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_width_Proxy(
    IHTMLInputElement* This,
    LONG *p);
void __RPC_STUB IHTMLInputElement_get_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_height_Proxy(
    IHTMLInputElement* This,
    LONG v);
void __RPC_STUB IHTMLInputElement_put_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_height_Proxy(
    IHTMLInputElement* This,
    LONG *p);
void __RPC_STUB IHTMLInputElement_get_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_put_start_Proxy(
    IHTMLInputElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputElement_put_start_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputElement_get_start_Proxy(
    IHTMLInputElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputElement_get_start_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLInputElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLInputTextElement interface
 */
#ifndef __IHTMLInputTextElement_INTERFACE_DEFINED__
#define __IHTMLInputTextElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLInputTextElement, 0x3050f2a6, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLInputTextElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_type(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_value(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_value(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_status(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_status(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_disabled(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_disabled(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_form(
        IHTMLFormElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_defaultValue(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_defaultValue(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_size(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_size(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_maxLength(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_maxLength(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE select(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onchange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onchange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onselect(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onselect(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_readOnly(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readOnly(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE createTextRange(
        IHTMLTxtRange **range) = 0;

};
#else
typedef struct IHTMLInputTextElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLInputTextElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLInputTextElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLInputTextElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLInputTextElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLInputTextElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLInputTextElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLInputTextElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLInputTextElement methods ***/
    HRESULT (STDMETHODCALLTYPE *get_type)(
        IHTMLInputTextElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_value)(
        IHTMLInputTextElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_value)(
        IHTMLInputTextElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLInputTextElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLInputTextElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_status)(
        IHTMLInputTextElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_status)(
        IHTMLInputTextElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_disabled)(
        IHTMLInputTextElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_disabled)(
        IHTMLInputTextElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_form)(
        IHTMLInputTextElement* This,
        IHTMLFormElement **p);

    HRESULT (STDMETHODCALLTYPE *put_defaultValue)(
        IHTMLInputTextElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_defaultValue)(
        IHTMLInputTextElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_size)(
        IHTMLInputTextElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_size)(
        IHTMLInputTextElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_maxLength)(
        IHTMLInputTextElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_maxLength)(
        IHTMLInputTextElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *select)(
        IHTMLInputTextElement* This);

    HRESULT (STDMETHODCALLTYPE *put_onchange)(
        IHTMLInputTextElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onchange)(
        IHTMLInputTextElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onselect)(
        IHTMLInputTextElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onselect)(
        IHTMLInputTextElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_readOnly)(
        IHTMLInputTextElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_readOnly)(
        IHTMLInputTextElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *createTextRange)(
        IHTMLInputTextElement* This,
        IHTMLTxtRange **range);

    END_INTERFACE
} IHTMLInputTextElementVtbl;
interface IHTMLInputTextElement {
    CONST_VTBL IHTMLInputTextElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLInputTextElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLInputTextElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLInputTextElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLInputTextElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLInputTextElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLInputTextElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLInputTextElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLInputTextElement methods ***/
#define IHTMLInputTextElement_get_type(This,p) (This)->lpVtbl->get_type(This,p)
#define IHTMLInputTextElement_put_value(This,v) (This)->lpVtbl->put_value(This,v)
#define IHTMLInputTextElement_get_value(This,p) (This)->lpVtbl->get_value(This,p)
#define IHTMLInputTextElement_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLInputTextElement_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLInputTextElement_put_status(This,v) (This)->lpVtbl->put_status(This,v)
#define IHTMLInputTextElement_get_status(This,p) (This)->lpVtbl->get_status(This,p)
#define IHTMLInputTextElement_put_disabled(This,v) (This)->lpVtbl->put_disabled(This,v)
#define IHTMLInputTextElement_get_disabled(This,p) (This)->lpVtbl->get_disabled(This,p)
#define IHTMLInputTextElement_get_form(This,p) (This)->lpVtbl->get_form(This,p)
#define IHTMLInputTextElement_put_defaultValue(This,v) (This)->lpVtbl->put_defaultValue(This,v)
#define IHTMLInputTextElement_get_defaultValue(This,p) (This)->lpVtbl->get_defaultValue(This,p)
#define IHTMLInputTextElement_put_size(This,v) (This)->lpVtbl->put_size(This,v)
#define IHTMLInputTextElement_get_size(This,p) (This)->lpVtbl->get_size(This,p)
#define IHTMLInputTextElement_put_maxLength(This,v) (This)->lpVtbl->put_maxLength(This,v)
#define IHTMLInputTextElement_get_maxLength(This,p) (This)->lpVtbl->get_maxLength(This,p)
#define IHTMLInputTextElement_select(This) (This)->lpVtbl->select(This)
#define IHTMLInputTextElement_put_onchange(This,v) (This)->lpVtbl->put_onchange(This,v)
#define IHTMLInputTextElement_get_onchange(This,p) (This)->lpVtbl->get_onchange(This,p)
#define IHTMLInputTextElement_put_onselect(This,v) (This)->lpVtbl->put_onselect(This,v)
#define IHTMLInputTextElement_get_onselect(This,p) (This)->lpVtbl->get_onselect(This,p)
#define IHTMLInputTextElement_put_readOnly(This,v) (This)->lpVtbl->put_readOnly(This,v)
#define IHTMLInputTextElement_get_readOnly(This,p) (This)->lpVtbl->get_readOnly(This,p)
#define IHTMLInputTextElement_createTextRange(This,range) (This)->lpVtbl->createTextRange(This,range)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_get_type_Proxy(
    IHTMLInputTextElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputTextElement_get_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_put_value_Proxy(
    IHTMLInputTextElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputTextElement_put_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_get_value_Proxy(
    IHTMLInputTextElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputTextElement_get_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_put_name_Proxy(
    IHTMLInputTextElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputTextElement_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_get_name_Proxy(
    IHTMLInputTextElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputTextElement_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_put_status_Proxy(
    IHTMLInputTextElement* This,
    VARIANT v);
void __RPC_STUB IHTMLInputTextElement_put_status_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_get_status_Proxy(
    IHTMLInputTextElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLInputTextElement_get_status_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_put_disabled_Proxy(
    IHTMLInputTextElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLInputTextElement_put_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_get_disabled_Proxy(
    IHTMLInputTextElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLInputTextElement_get_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_get_form_Proxy(
    IHTMLInputTextElement* This,
    IHTMLFormElement **p);
void __RPC_STUB IHTMLInputTextElement_get_form_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_put_defaultValue_Proxy(
    IHTMLInputTextElement* This,
    BSTR v);
void __RPC_STUB IHTMLInputTextElement_put_defaultValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_get_defaultValue_Proxy(
    IHTMLInputTextElement* This,
    BSTR *p);
void __RPC_STUB IHTMLInputTextElement_get_defaultValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_put_size_Proxy(
    IHTMLInputTextElement* This,
    LONG v);
void __RPC_STUB IHTMLInputTextElement_put_size_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_get_size_Proxy(
    IHTMLInputTextElement* This,
    LONG *p);
void __RPC_STUB IHTMLInputTextElement_get_size_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_put_maxLength_Proxy(
    IHTMLInputTextElement* This,
    LONG v);
void __RPC_STUB IHTMLInputTextElement_put_maxLength_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_get_maxLength_Proxy(
    IHTMLInputTextElement* This,
    LONG *p);
void __RPC_STUB IHTMLInputTextElement_get_maxLength_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_select_Proxy(
    IHTMLInputTextElement* This);
void __RPC_STUB IHTMLInputTextElement_select_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_put_onchange_Proxy(
    IHTMLInputTextElement* This,
    VARIANT v);
void __RPC_STUB IHTMLInputTextElement_put_onchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_get_onchange_Proxy(
    IHTMLInputTextElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLInputTextElement_get_onchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_put_onselect_Proxy(
    IHTMLInputTextElement* This,
    VARIANT v);
void __RPC_STUB IHTMLInputTextElement_put_onselect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_get_onselect_Proxy(
    IHTMLInputTextElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLInputTextElement_get_onselect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_put_readOnly_Proxy(
    IHTMLInputTextElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLInputTextElement_put_readOnly_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_get_readOnly_Proxy(
    IHTMLInputTextElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLInputTextElement_get_readOnly_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLInputTextElement_createTextRange_Proxy(
    IHTMLInputTextElement* This,
    IHTMLTxtRange **range);
void __RPC_STUB IHTMLInputTextElement_createTextRange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLInputTextElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLInputElement dispinterface
 */
#ifndef __DispHTMLInputElement_DISPINTERFACE_DEFINED__
#define __DispHTMLInputElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLInputElement, 0x3050f57d, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLInputElement : public IDispatch
{
};
#else
typedef struct DispHTMLInputElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLInputElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLInputElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLInputElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLInputElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLInputElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLInputElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLInputElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLInputElementVtbl;
interface DispHTMLInputElement {
    CONST_VTBL DispHTMLInputElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLInputElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLInputElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLInputElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLInputElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLInputElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLInputElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLInputElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLInputElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLTextAreaElement interface
 */
#ifndef __IHTMLTextAreaElement_INTERFACE_DEFINED__
#define __IHTMLTextAreaElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLTextAreaElement, 0x3050f2aa, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLTextAreaElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_type(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_value(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_value(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_status(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_status(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_disabled(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_disabled(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_form(
        IHTMLFormElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_defaultValue(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_defaultValue(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE select(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onchange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onchange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onselect(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onselect(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_readOnly(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readOnly(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_rows(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rows(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_cols(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cols(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_wrap(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_wrap(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE createTextRange(
        IHTMLTxtRange **range) = 0;

};
#else
typedef struct IHTMLTextAreaElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLTextAreaElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLTextAreaElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLTextAreaElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLTextAreaElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLTextAreaElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLTextAreaElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLTextAreaElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLTextAreaElement methods ***/
    HRESULT (STDMETHODCALLTYPE *get_type)(
        IHTMLTextAreaElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_value)(
        IHTMLTextAreaElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_value)(
        IHTMLTextAreaElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLTextAreaElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLTextAreaElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_status)(
        IHTMLTextAreaElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_status)(
        IHTMLTextAreaElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_disabled)(
        IHTMLTextAreaElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_disabled)(
        IHTMLTextAreaElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_form)(
        IHTMLTextAreaElement* This,
        IHTMLFormElement **p);

    HRESULT (STDMETHODCALLTYPE *put_defaultValue)(
        IHTMLTextAreaElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_defaultValue)(
        IHTMLTextAreaElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *select)(
        IHTMLTextAreaElement* This);

    HRESULT (STDMETHODCALLTYPE *put_onchange)(
        IHTMLTextAreaElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onchange)(
        IHTMLTextAreaElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onselect)(
        IHTMLTextAreaElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onselect)(
        IHTMLTextAreaElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_readOnly)(
        IHTMLTextAreaElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_readOnly)(
        IHTMLTextAreaElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_rows)(
        IHTMLTextAreaElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_rows)(
        IHTMLTextAreaElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_cols)(
        IHTMLTextAreaElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_cols)(
        IHTMLTextAreaElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_wrap)(
        IHTMLTextAreaElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_wrap)(
        IHTMLTextAreaElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *createTextRange)(
        IHTMLTextAreaElement* This,
        IHTMLTxtRange **range);

    END_INTERFACE
} IHTMLTextAreaElementVtbl;
interface IHTMLTextAreaElement {
    CONST_VTBL IHTMLTextAreaElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLTextAreaElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLTextAreaElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLTextAreaElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLTextAreaElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLTextAreaElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLTextAreaElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLTextAreaElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLTextAreaElement methods ***/
#define IHTMLTextAreaElement_get_type(This,p) (This)->lpVtbl->get_type(This,p)
#define IHTMLTextAreaElement_put_value(This,v) (This)->lpVtbl->put_value(This,v)
#define IHTMLTextAreaElement_get_value(This,p) (This)->lpVtbl->get_value(This,p)
#define IHTMLTextAreaElement_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLTextAreaElement_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLTextAreaElement_put_status(This,v) (This)->lpVtbl->put_status(This,v)
#define IHTMLTextAreaElement_get_status(This,p) (This)->lpVtbl->get_status(This,p)
#define IHTMLTextAreaElement_put_disabled(This,v) (This)->lpVtbl->put_disabled(This,v)
#define IHTMLTextAreaElement_get_disabled(This,p) (This)->lpVtbl->get_disabled(This,p)
#define IHTMLTextAreaElement_get_form(This,p) (This)->lpVtbl->get_form(This,p)
#define IHTMLTextAreaElement_put_defaultValue(This,v) (This)->lpVtbl->put_defaultValue(This,v)
#define IHTMLTextAreaElement_get_defaultValue(This,p) (This)->lpVtbl->get_defaultValue(This,p)
#define IHTMLTextAreaElement_select(This) (This)->lpVtbl->select(This)
#define IHTMLTextAreaElement_put_onchange(This,v) (This)->lpVtbl->put_onchange(This,v)
#define IHTMLTextAreaElement_get_onchange(This,p) (This)->lpVtbl->get_onchange(This,p)
#define IHTMLTextAreaElement_put_onselect(This,v) (This)->lpVtbl->put_onselect(This,v)
#define IHTMLTextAreaElement_get_onselect(This,p) (This)->lpVtbl->get_onselect(This,p)
#define IHTMLTextAreaElement_put_readOnly(This,v) (This)->lpVtbl->put_readOnly(This,v)
#define IHTMLTextAreaElement_get_readOnly(This,p) (This)->lpVtbl->get_readOnly(This,p)
#define IHTMLTextAreaElement_put_rows(This,v) (This)->lpVtbl->put_rows(This,v)
#define IHTMLTextAreaElement_get_rows(This,p) (This)->lpVtbl->get_rows(This,p)
#define IHTMLTextAreaElement_put_cols(This,v) (This)->lpVtbl->put_cols(This,v)
#define IHTMLTextAreaElement_get_cols(This,p) (This)->lpVtbl->get_cols(This,p)
#define IHTMLTextAreaElement_put_wrap(This,v) (This)->lpVtbl->put_wrap(This,v)
#define IHTMLTextAreaElement_get_wrap(This,p) (This)->lpVtbl->get_wrap(This,p)
#define IHTMLTextAreaElement_createTextRange(This,range) (This)->lpVtbl->createTextRange(This,range)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_type_Proxy(
    IHTMLTextAreaElement* This,
    BSTR *p);
void __RPC_STUB IHTMLTextAreaElement_get_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_put_value_Proxy(
    IHTMLTextAreaElement* This,
    BSTR v);
void __RPC_STUB IHTMLTextAreaElement_put_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_value_Proxy(
    IHTMLTextAreaElement* This,
    BSTR *p);
void __RPC_STUB IHTMLTextAreaElement_get_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_put_name_Proxy(
    IHTMLTextAreaElement* This,
    BSTR v);
void __RPC_STUB IHTMLTextAreaElement_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_name_Proxy(
    IHTMLTextAreaElement* This,
    BSTR *p);
void __RPC_STUB IHTMLTextAreaElement_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_put_status_Proxy(
    IHTMLTextAreaElement* This,
    VARIANT v);
void __RPC_STUB IHTMLTextAreaElement_put_status_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_status_Proxy(
    IHTMLTextAreaElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLTextAreaElement_get_status_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_put_disabled_Proxy(
    IHTMLTextAreaElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLTextAreaElement_put_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_disabled_Proxy(
    IHTMLTextAreaElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLTextAreaElement_get_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_form_Proxy(
    IHTMLTextAreaElement* This,
    IHTMLFormElement **p);
void __RPC_STUB IHTMLTextAreaElement_get_form_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_put_defaultValue_Proxy(
    IHTMLTextAreaElement* This,
    BSTR v);
void __RPC_STUB IHTMLTextAreaElement_put_defaultValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_defaultValue_Proxy(
    IHTMLTextAreaElement* This,
    BSTR *p);
void __RPC_STUB IHTMLTextAreaElement_get_defaultValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_select_Proxy(
    IHTMLTextAreaElement* This);
void __RPC_STUB IHTMLTextAreaElement_select_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_put_onchange_Proxy(
    IHTMLTextAreaElement* This,
    VARIANT v);
void __RPC_STUB IHTMLTextAreaElement_put_onchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_onchange_Proxy(
    IHTMLTextAreaElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLTextAreaElement_get_onchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_put_onselect_Proxy(
    IHTMLTextAreaElement* This,
    VARIANT v);
void __RPC_STUB IHTMLTextAreaElement_put_onselect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_onselect_Proxy(
    IHTMLTextAreaElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLTextAreaElement_get_onselect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_put_readOnly_Proxy(
    IHTMLTextAreaElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLTextAreaElement_put_readOnly_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_readOnly_Proxy(
    IHTMLTextAreaElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLTextAreaElement_get_readOnly_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_put_rows_Proxy(
    IHTMLTextAreaElement* This,
    LONG v);
void __RPC_STUB IHTMLTextAreaElement_put_rows_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_rows_Proxy(
    IHTMLTextAreaElement* This,
    LONG *p);
void __RPC_STUB IHTMLTextAreaElement_get_rows_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_put_cols_Proxy(
    IHTMLTextAreaElement* This,
    LONG v);
void __RPC_STUB IHTMLTextAreaElement_put_cols_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_cols_Proxy(
    IHTMLTextAreaElement* This,
    LONG *p);
void __RPC_STUB IHTMLTextAreaElement_get_cols_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_put_wrap_Proxy(
    IHTMLTextAreaElement* This,
    BSTR v);
void __RPC_STUB IHTMLTextAreaElement_put_wrap_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_get_wrap_Proxy(
    IHTMLTextAreaElement* This,
    BSTR *p);
void __RPC_STUB IHTMLTextAreaElement_get_wrap_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTextAreaElement_createTextRange_Proxy(
    IHTMLTextAreaElement* This,
    IHTMLTxtRange **range);
void __RPC_STUB IHTMLTextAreaElement_createTextRange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLTextAreaElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLTextAreaElement dispinterface
 */
#ifndef __DispHTMLTextAreaElement_DISPINTERFACE_DEFINED__
#define __DispHTMLTextAreaElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLTextAreaElement, 0x3050f521, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLTextAreaElement : public IDispatch
{
};
#else
typedef struct DispHTMLTextAreaElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLTextAreaElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLTextAreaElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLTextAreaElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLTextAreaElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLTextAreaElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLTextAreaElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLTextAreaElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLTextAreaElementVtbl;
interface DispHTMLTextAreaElement {
    CONST_VTBL DispHTMLTextAreaElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLTextAreaElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLTextAreaElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLTextAreaElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLTextAreaElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLTextAreaElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLTextAreaElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLTextAreaElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLTextAreaElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLUnknownElement dispinterface
 */
#ifndef __DispHTMLUnknownElement_DISPINTERFACE_DEFINED__
#define __DispHTMLUnknownElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLUnknownElement, 0x3050f539, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLUnknownElement : public IDispatch
{
};
#else
typedef struct DispHTMLUnknownElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLUnknownElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLUnknownElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLUnknownElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLUnknownElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLUnknownElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLUnknownElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLUnknownElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLUnknownElementVtbl;
interface DispHTMLUnknownElement {
    CONST_VTBL DispHTMLUnknownElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLUnknownElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLUnknownElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLUnknownElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLUnknownElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLUnknownElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLUnknownElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLUnknownElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLUnknownElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IOmHistory interface
 */
#ifndef __IOmHistory_INTERFACE_DEFINED__
#define __IOmHistory_INTERFACE_DEFINED__

DEFINE_GUID(IID_IOmHistory, 0xfeceaaa2, 0x8405, 0x11cf, 0x8b,0xa1, 0x00,0xaa,0x00,0x47,0x6d,0xa6);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IOmHistory : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_length(
        short *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE back(
        VARIANT *pvargdistance) = 0;

    virtual HRESULT STDMETHODCALLTYPE forward(
        VARIANT *pvargdistance) = 0;

    virtual HRESULT STDMETHODCALLTYPE go(
        VARIANT *pvargdistance) = 0;

};
#else
typedef struct IOmHistoryVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IOmHistory* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IOmHistory* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IOmHistory* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IOmHistory* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IOmHistory* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IOmHistory* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IOmHistory* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IOmHistory methods ***/
    HRESULT (STDMETHODCALLTYPE *get_length)(
        IOmHistory* This,
        short *p);

    HRESULT (STDMETHODCALLTYPE *back)(
        IOmHistory* This,
        VARIANT *pvargdistance);

    HRESULT (STDMETHODCALLTYPE *forward)(
        IOmHistory* This,
        VARIANT *pvargdistance);

    HRESULT (STDMETHODCALLTYPE *go)(
        IOmHistory* This,
        VARIANT *pvargdistance);

    END_INTERFACE
} IOmHistoryVtbl;
interface IOmHistory {
    CONST_VTBL IOmHistoryVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IOmHistory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IOmHistory_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IOmHistory_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IOmHistory_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IOmHistory_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IOmHistory_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IOmHistory_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IOmHistory methods ***/
#define IOmHistory_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IOmHistory_back(This,pvargdistance) (This)->lpVtbl->back(This,pvargdistance)
#define IOmHistory_forward(This,pvargdistance) (This)->lpVtbl->forward(This,pvargdistance)
#define IOmHistory_go(This,pvargdistance) (This)->lpVtbl->go(This,pvargdistance)
#endif

#endif

HRESULT STDMETHODCALLTYPE IOmHistory_get_length_Proxy(
    IOmHistory* This,
    short *p);
void __RPC_STUB IOmHistory_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmHistory_back_Proxy(
    IOmHistory* This,
    VARIANT *pvargdistance);
void __RPC_STUB IOmHistory_back_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmHistory_forward_Proxy(
    IOmHistory* This,
    VARIANT *pvargdistance);
void __RPC_STUB IOmHistory_forward_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmHistory_go_Proxy(
    IOmHistory* This,
    VARIANT *pvargdistance);
void __RPC_STUB IOmHistory_go_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IOmHistory_INTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLHistory coclass
 */

DEFINE_GUID(CLSID_HTMLHistory, 0xfeceaaa3, 0x8405, 0x11cf, 0x8b,0xa1, 0x00,0xaa,0x00,0x47,0x6d,0xa6);

/*****************************************************************************
 * IHTMLMimeTypesCollection interface
 */
#ifndef __IHTMLMimeTypesCollection_INTERFACE_DEFINED__
#define __IHTMLMimeTypesCollection_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLMimeTypesCollection, 0x3050f3fc, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLMimeTypesCollection : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

};
#else
typedef struct IHTMLMimeTypesCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLMimeTypesCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLMimeTypesCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLMimeTypesCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLMimeTypesCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLMimeTypesCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLMimeTypesCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLMimeTypesCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLMimeTypesCollection methods ***/
    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLMimeTypesCollection* This,
        LONG *p);

    END_INTERFACE
} IHTMLMimeTypesCollectionVtbl;
interface IHTMLMimeTypesCollection {
    CONST_VTBL IHTMLMimeTypesCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLMimeTypesCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLMimeTypesCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLMimeTypesCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLMimeTypesCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLMimeTypesCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLMimeTypesCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLMimeTypesCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLMimeTypesCollection methods ***/
#define IHTMLMimeTypesCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLMimeTypesCollection_get_length_Proxy(
    IHTMLMimeTypesCollection* This,
    LONG *p);
void __RPC_STUB IHTMLMimeTypesCollection_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLMimeTypesCollection_INTERFACE_DEFINED__ */

/*****************************************************************************
 * CMimeTypes coclass
 */

DEFINE_GUID(CLSID_CMimeTypes, 0x3050f3fe, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLPluginsCollection interface
 */
#ifndef __IHTMLPluginsCollection_INTERFACE_DEFINED__
#define __IHTMLPluginsCollection_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLPluginsCollection, 0x3050f3fd, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLPluginsCollection : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE refresh(
        VARIANT_BOOL reload) = 0;

};
#else
typedef struct IHTMLPluginsCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLPluginsCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLPluginsCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLPluginsCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLPluginsCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLPluginsCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLPluginsCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLPluginsCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLPluginsCollection methods ***/
    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLPluginsCollection* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *refresh)(
        IHTMLPluginsCollection* This,
        VARIANT_BOOL reload);

    END_INTERFACE
} IHTMLPluginsCollectionVtbl;
interface IHTMLPluginsCollection {
    CONST_VTBL IHTMLPluginsCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLPluginsCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLPluginsCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLPluginsCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLPluginsCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLPluginsCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLPluginsCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLPluginsCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLPluginsCollection methods ***/
#define IHTMLPluginsCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLPluginsCollection_refresh(This,reload) (This)->lpVtbl->refresh(This,reload)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLPluginsCollection_get_length_Proxy(
    IHTMLPluginsCollection* This,
    LONG *p);
void __RPC_STUB IHTMLPluginsCollection_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLPluginsCollection_refresh_Proxy(
    IHTMLPluginsCollection* This,
    VARIANT_BOOL reload);
void __RPC_STUB IHTMLPluginsCollection_refresh_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLPluginsCollection_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispCPlugins dispinterface
 */
#ifndef __DispCPlugins_DISPINTERFACE_DEFINED__
#define __DispCPlugins_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispCPlugins, 0x3050f54a, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispCPlugins : public IDispatch
{
};
#else
typedef struct DispCPluginsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispCPlugins* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispCPlugins* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispCPlugins* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispCPlugins* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispCPlugins* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispCPlugins* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispCPlugins* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispCPluginsVtbl;
interface DispCPlugins {
    CONST_VTBL DispCPluginsVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispCPlugins_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispCPlugins_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispCPlugins_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispCPlugins_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispCPlugins_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispCPlugins_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispCPlugins_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispCPlugins_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * CPlugins coclass
 */

DEFINE_GUID(CLSID_CPlugins, 0x3050f3ff, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLOpsProfile interface
 */
#ifndef __IHTMLOpsProfile_INTERFACE_DEFINED__
#define __IHTMLOpsProfile_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLOpsProfile, 0x3050f401, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLOpsProfile : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE addRequest(
        BSTR name,
        VARIANT reserved,
        VARIANT_BOOL *success) = 0;

    virtual HRESULT STDMETHODCALLTYPE clearRequest(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE doRequest(
        VARIANT usage,
        VARIANT fname,
        VARIANT domain,
        VARIANT path,
        VARIANT expire,
        VARIANT reserved) = 0;

    virtual HRESULT STDMETHODCALLTYPE getAttribute(
        BSTR name,
        BSTR *value) = 0;

    virtual HRESULT STDMETHODCALLTYPE setAttribute(
        BSTR name,
        BSTR value,
        VARIANT prefs,
        VARIANT_BOOL *success) = 0;

    virtual HRESULT STDMETHODCALLTYPE commitChanges(
        VARIANT_BOOL *success) = 0;

    virtual HRESULT STDMETHODCALLTYPE addReadRequest(
        BSTR name,
        VARIANT reserved,
        VARIANT_BOOL *success) = 0;

    virtual HRESULT STDMETHODCALLTYPE doReadRequest(
        VARIANT usage,
        VARIANT fname,
        VARIANT domain,
        VARIANT path,
        VARIANT expire,
        VARIANT reserved) = 0;

    virtual HRESULT STDMETHODCALLTYPE doWriteRequest(
        VARIANT_BOOL *success) = 0;

};
#else
typedef struct IHTMLOpsProfileVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLOpsProfile* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLOpsProfile* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLOpsProfile* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLOpsProfile* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLOpsProfile* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLOpsProfile* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLOpsProfile* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLOpsProfile methods ***/
    HRESULT (STDMETHODCALLTYPE *addRequest)(
        IHTMLOpsProfile* This,
        BSTR name,
        VARIANT reserved,
        VARIANT_BOOL *success);

    HRESULT (STDMETHODCALLTYPE *clearRequest)(
        IHTMLOpsProfile* This);

    HRESULT (STDMETHODCALLTYPE *doRequest)(
        IHTMLOpsProfile* This,
        VARIANT usage,
        VARIANT fname,
        VARIANT domain,
        VARIANT path,
        VARIANT expire,
        VARIANT reserved);

    HRESULT (STDMETHODCALLTYPE *getAttribute)(
        IHTMLOpsProfile* This,
        BSTR name,
        BSTR *value);

    HRESULT (STDMETHODCALLTYPE *setAttribute)(
        IHTMLOpsProfile* This,
        BSTR name,
        BSTR value,
        VARIANT prefs,
        VARIANT_BOOL *success);

    HRESULT (STDMETHODCALLTYPE *commitChanges)(
        IHTMLOpsProfile* This,
        VARIANT_BOOL *success);

    HRESULT (STDMETHODCALLTYPE *addReadRequest)(
        IHTMLOpsProfile* This,
        BSTR name,
        VARIANT reserved,
        VARIANT_BOOL *success);

    HRESULT (STDMETHODCALLTYPE *doReadRequest)(
        IHTMLOpsProfile* This,
        VARIANT usage,
        VARIANT fname,
        VARIANT domain,
        VARIANT path,
        VARIANT expire,
        VARIANT reserved);

    HRESULT (STDMETHODCALLTYPE *doWriteRequest)(
        IHTMLOpsProfile* This,
        VARIANT_BOOL *success);

    END_INTERFACE
} IHTMLOpsProfileVtbl;
interface IHTMLOpsProfile {
    CONST_VTBL IHTMLOpsProfileVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLOpsProfile_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLOpsProfile_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLOpsProfile_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLOpsProfile_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLOpsProfile_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLOpsProfile_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLOpsProfile_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLOpsProfile methods ***/
#define IHTMLOpsProfile_addRequest(This,name,reserved,success) (This)->lpVtbl->addRequest(This,name,reserved,success)
#define IHTMLOpsProfile_clearRequest(This) (This)->lpVtbl->clearRequest(This)
#define IHTMLOpsProfile_doRequest(This,usage,fname,domain,path,expire,reserved) (This)->lpVtbl->doRequest(This,usage,fname,domain,path,expire,reserved)
#define IHTMLOpsProfile_getAttribute(This,name,value) (This)->lpVtbl->getAttribute(This,name,value)
#define IHTMLOpsProfile_setAttribute(This,name,value,prefs,success) (This)->lpVtbl->setAttribute(This,name,value,prefs,success)
#define IHTMLOpsProfile_commitChanges(This,success) (This)->lpVtbl->commitChanges(This,success)
#define IHTMLOpsProfile_addReadRequest(This,name,reserved,success) (This)->lpVtbl->addReadRequest(This,name,reserved,success)
#define IHTMLOpsProfile_doReadRequest(This,usage,fname,domain,path,expire,reserved) (This)->lpVtbl->doReadRequest(This,usage,fname,domain,path,expire,reserved)
#define IHTMLOpsProfile_doWriteRequest(This,success) (This)->lpVtbl->doWriteRequest(This,success)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLOpsProfile_addRequest_Proxy(
    IHTMLOpsProfile* This,
    BSTR name,
    VARIANT reserved,
    VARIANT_BOOL *success);
void __RPC_STUB IHTMLOpsProfile_addRequest_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOpsProfile_clearRequest_Proxy(
    IHTMLOpsProfile* This);
void __RPC_STUB IHTMLOpsProfile_clearRequest_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOpsProfile_doRequest_Proxy(
    IHTMLOpsProfile* This,
    VARIANT usage,
    VARIANT fname,
    VARIANT domain,
    VARIANT path,
    VARIANT expire,
    VARIANT reserved);
void __RPC_STUB IHTMLOpsProfile_doRequest_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOpsProfile_getAttribute_Proxy(
    IHTMLOpsProfile* This,
    BSTR name,
    BSTR *value);
void __RPC_STUB IHTMLOpsProfile_getAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOpsProfile_setAttribute_Proxy(
    IHTMLOpsProfile* This,
    BSTR name,
    BSTR value,
    VARIANT prefs,
    VARIANT_BOOL *success);
void __RPC_STUB IHTMLOpsProfile_setAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOpsProfile_commitChanges_Proxy(
    IHTMLOpsProfile* This,
    VARIANT_BOOL *success);
void __RPC_STUB IHTMLOpsProfile_commitChanges_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOpsProfile_addReadRequest_Proxy(
    IHTMLOpsProfile* This,
    BSTR name,
    VARIANT reserved,
    VARIANT_BOOL *success);
void __RPC_STUB IHTMLOpsProfile_addReadRequest_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOpsProfile_doReadRequest_Proxy(
    IHTMLOpsProfile* This,
    VARIANT usage,
    VARIANT fname,
    VARIANT domain,
    VARIANT path,
    VARIANT expire,
    VARIANT reserved);
void __RPC_STUB IHTMLOpsProfile_doReadRequest_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLOpsProfile_doWriteRequest_Proxy(
    IHTMLOpsProfile* This,
    VARIANT_BOOL *success);
void __RPC_STUB IHTMLOpsProfile_doWriteRequest_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLOpsProfile_INTERFACE_DEFINED__ */

/*****************************************************************************
 * COpsProfile coclass
 */

DEFINE_GUID(CLSID_COpsProfile, 0x3050f402, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IOmNavigator interface
 */
#ifndef __IOmNavigator_INTERFACE_DEFINED__
#define __IOmNavigator_INTERFACE_DEFINED__

DEFINE_GUID(IID_IOmNavigator, 0xfeceaaa5, 0x8405, 0x11cf, 0x8b,0xa1, 0x00,0xaa,0x00,0x47,0x6d,0xa6);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IOmNavigator : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_appCodeName(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_appName(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_appVersion(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_userAgent(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE javaEnabled(
        VARIANT_BOOL *enabled) = 0;

    virtual HRESULT STDMETHODCALLTYPE taintEnabled(
        VARIANT_BOOL *enabled) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_mimeTypes(
        IHTMLMimeTypesCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_plugins(
        IHTMLPluginsCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cookieEnabled(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_opsProfile(
        IHTMLOpsProfile **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE toString(
        BSTR *String) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cpuClass(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_systemLanguage(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_browserLanguage(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_userLanguage(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_platform(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_appMinorVersion(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_connectionSpeed(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onLine(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_userProfile(
        IHTMLOpsProfile **p) = 0;

};
#else
typedef struct IOmNavigatorVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IOmNavigator* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IOmNavigator* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IOmNavigator* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IOmNavigator* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IOmNavigator* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IOmNavigator* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IOmNavigator* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IOmNavigator methods ***/
    HRESULT (STDMETHODCALLTYPE *get_appCodeName)(
        IOmNavigator* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_appName)(
        IOmNavigator* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_appVersion)(
        IOmNavigator* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_userAgent)(
        IOmNavigator* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *javaEnabled)(
        IOmNavigator* This,
        VARIANT_BOOL *enabled);

    HRESULT (STDMETHODCALLTYPE *taintEnabled)(
        IOmNavigator* This,
        VARIANT_BOOL *enabled);

    HRESULT (STDMETHODCALLTYPE *get_mimeTypes)(
        IOmNavigator* This,
        IHTMLMimeTypesCollection **p);

    HRESULT (STDMETHODCALLTYPE *get_plugins)(
        IOmNavigator* This,
        IHTMLPluginsCollection **p);

    HRESULT (STDMETHODCALLTYPE *get_cookieEnabled)(
        IOmNavigator* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_opsProfile)(
        IOmNavigator* This,
        IHTMLOpsProfile **p);

    HRESULT (STDMETHODCALLTYPE *toString)(
        IOmNavigator* This,
        BSTR *String);

    HRESULT (STDMETHODCALLTYPE *get_cpuClass)(
        IOmNavigator* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_systemLanguage)(
        IOmNavigator* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_browserLanguage)(
        IOmNavigator* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_userLanguage)(
        IOmNavigator* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_platform)(
        IOmNavigator* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_appMinorVersion)(
        IOmNavigator* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_connectionSpeed)(
        IOmNavigator* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_onLine)(
        IOmNavigator* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_userProfile)(
        IOmNavigator* This,
        IHTMLOpsProfile **p);

    END_INTERFACE
} IOmNavigatorVtbl;
interface IOmNavigator {
    CONST_VTBL IOmNavigatorVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IOmNavigator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IOmNavigator_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IOmNavigator_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IOmNavigator_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IOmNavigator_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IOmNavigator_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IOmNavigator_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IOmNavigator methods ***/
#define IOmNavigator_get_appCodeName(This,p) (This)->lpVtbl->get_appCodeName(This,p)
#define IOmNavigator_get_appName(This,p) (This)->lpVtbl->get_appName(This,p)
#define IOmNavigator_get_appVersion(This,p) (This)->lpVtbl->get_appVersion(This,p)
#define IOmNavigator_get_userAgent(This,p) (This)->lpVtbl->get_userAgent(This,p)
#define IOmNavigator_javaEnabled(This,enabled) (This)->lpVtbl->javaEnabled(This,enabled)
#define IOmNavigator_taintEnabled(This,enabled) (This)->lpVtbl->taintEnabled(This,enabled)
#define IOmNavigator_get_mimeTypes(This,p) (This)->lpVtbl->get_mimeTypes(This,p)
#define IOmNavigator_get_plugins(This,p) (This)->lpVtbl->get_plugins(This,p)
#define IOmNavigator_get_cookieEnabled(This,p) (This)->lpVtbl->get_cookieEnabled(This,p)
#define IOmNavigator_get_opsProfile(This,p) (This)->lpVtbl->get_opsProfile(This,p)
#define IOmNavigator_toString(This,String) (This)->lpVtbl->toString(This,String)
#define IOmNavigator_get_cpuClass(This,p) (This)->lpVtbl->get_cpuClass(This,p)
#define IOmNavigator_get_systemLanguage(This,p) (This)->lpVtbl->get_systemLanguage(This,p)
#define IOmNavigator_get_browserLanguage(This,p) (This)->lpVtbl->get_browserLanguage(This,p)
#define IOmNavigator_get_userLanguage(This,p) (This)->lpVtbl->get_userLanguage(This,p)
#define IOmNavigator_get_platform(This,p) (This)->lpVtbl->get_platform(This,p)
#define IOmNavigator_get_appMinorVersion(This,p) (This)->lpVtbl->get_appMinorVersion(This,p)
#define IOmNavigator_get_connectionSpeed(This,p) (This)->lpVtbl->get_connectionSpeed(This,p)
#define IOmNavigator_get_onLine(This,p) (This)->lpVtbl->get_onLine(This,p)
#define IOmNavigator_get_userProfile(This,p) (This)->lpVtbl->get_userProfile(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IOmNavigator_get_appCodeName_Proxy(
    IOmNavigator* This,
    BSTR *p);
void __RPC_STUB IOmNavigator_get_appCodeName_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_appName_Proxy(
    IOmNavigator* This,
    BSTR *p);
void __RPC_STUB IOmNavigator_get_appName_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_appVersion_Proxy(
    IOmNavigator* This,
    BSTR *p);
void __RPC_STUB IOmNavigator_get_appVersion_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_userAgent_Proxy(
    IOmNavigator* This,
    BSTR *p);
void __RPC_STUB IOmNavigator_get_userAgent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_javaEnabled_Proxy(
    IOmNavigator* This,
    VARIANT_BOOL *enabled);
void __RPC_STUB IOmNavigator_javaEnabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_taintEnabled_Proxy(
    IOmNavigator* This,
    VARIANT_BOOL *enabled);
void __RPC_STUB IOmNavigator_taintEnabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_mimeTypes_Proxy(
    IOmNavigator* This,
    IHTMLMimeTypesCollection **p);
void __RPC_STUB IOmNavigator_get_mimeTypes_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_plugins_Proxy(
    IOmNavigator* This,
    IHTMLPluginsCollection **p);
void __RPC_STUB IOmNavigator_get_plugins_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_cookieEnabled_Proxy(
    IOmNavigator* This,
    VARIANT_BOOL *p);
void __RPC_STUB IOmNavigator_get_cookieEnabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_opsProfile_Proxy(
    IOmNavigator* This,
    IHTMLOpsProfile **p);
void __RPC_STUB IOmNavigator_get_opsProfile_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_toString_Proxy(
    IOmNavigator* This,
    BSTR *String);
void __RPC_STUB IOmNavigator_toString_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_cpuClass_Proxy(
    IOmNavigator* This,
    BSTR *p);
void __RPC_STUB IOmNavigator_get_cpuClass_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_systemLanguage_Proxy(
    IOmNavigator* This,
    BSTR *p);
void __RPC_STUB IOmNavigator_get_systemLanguage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_browserLanguage_Proxy(
    IOmNavigator* This,
    BSTR *p);
void __RPC_STUB IOmNavigator_get_browserLanguage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_userLanguage_Proxy(
    IOmNavigator* This,
    BSTR *p);
void __RPC_STUB IOmNavigator_get_userLanguage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_platform_Proxy(
    IOmNavigator* This,
    BSTR *p);
void __RPC_STUB IOmNavigator_get_platform_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_appMinorVersion_Proxy(
    IOmNavigator* This,
    BSTR *p);
void __RPC_STUB IOmNavigator_get_appMinorVersion_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_connectionSpeed_Proxy(
    IOmNavigator* This,
    LONG *p);
void __RPC_STUB IOmNavigator_get_connectionSpeed_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_onLine_Proxy(
    IOmNavigator* This,
    VARIANT_BOOL *p);
void __RPC_STUB IOmNavigator_get_onLine_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IOmNavigator_get_userProfile_Proxy(
    IOmNavigator* This,
    IHTMLOpsProfile **p);
void __RPC_STUB IOmNavigator_get_userProfile_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IOmNavigator_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLNavigator dispinterface
 */
#ifndef __DispHTMLNavigator_DISPINTERFACE_DEFINED__
#define __DispHTMLNavigator_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLNavigator, 0x3050f54c, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLNavigator : public IDispatch
{
};
#else
typedef struct DispHTMLNavigatorVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLNavigator* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLNavigator* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLNavigator* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLNavigator* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLNavigator* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLNavigator* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLNavigator* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLNavigatorVtbl;
interface DispHTMLNavigator {
    CONST_VTBL DispHTMLNavigatorVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLNavigator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLNavigator_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLNavigator_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLNavigator_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLNavigator_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLNavigator_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLNavigator_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLNavigator_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLNavigator coclass
 */

DEFINE_GUID(CLSID_HTMLNavigator, 0xfeceaaa6, 0x8405, 0x11cf, 0x8b,0xa1, 0x00,0xaa,0x00,0x47,0x6d,0xa6);

/*****************************************************************************
 * IHTMLLocation interface
 */
#ifndef __IHTMLLocation_INTERFACE_DEFINED__
#define __IHTMLLocation_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLLocation, 0x163bb1e0, 0x6e00, 0x11cf, 0x83,0x7a, 0x48,0xdc,0x04,0xc1,0x00,0x00);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLLocation : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_href(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_href(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_protocol(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_protocol(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_host(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_host(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_hostname(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hostname(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_port(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_port(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_pathname(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pathname(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_search(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_search(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_hash(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hash(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE reload(
        VARIANT_BOOL flag) = 0;

    virtual HRESULT STDMETHODCALLTYPE replace(
        BSTR bstr) = 0;

    virtual HRESULT STDMETHODCALLTYPE assign(
        BSTR bstr) = 0;

    virtual HRESULT STDMETHODCALLTYPE toString(
        BSTR *String) = 0;

};
#else
typedef struct IHTMLLocationVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLLocation* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLLocation* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLLocation* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLLocation* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLLocation* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLLocation* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLLocation* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLLocation methods ***/
    HRESULT (STDMETHODCALLTYPE *put_href)(
        IHTMLLocation* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_href)(
        IHTMLLocation* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_protocol)(
        IHTMLLocation* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_protocol)(
        IHTMLLocation* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_host)(
        IHTMLLocation* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_host)(
        IHTMLLocation* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_hostname)(
        IHTMLLocation* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_hostname)(
        IHTMLLocation* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_port)(
        IHTMLLocation* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_port)(
        IHTMLLocation* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_pathname)(
        IHTMLLocation* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_pathname)(
        IHTMLLocation* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_search)(
        IHTMLLocation* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_search)(
        IHTMLLocation* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_hash)(
        IHTMLLocation* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_hash)(
        IHTMLLocation* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *reload)(
        IHTMLLocation* This,
        VARIANT_BOOL flag);

    HRESULT (STDMETHODCALLTYPE *replace)(
        IHTMLLocation* This,
        BSTR bstr);

    HRESULT (STDMETHODCALLTYPE *assign)(
        IHTMLLocation* This,
        BSTR bstr);

    HRESULT (STDMETHODCALLTYPE *toString)(
        IHTMLLocation* This,
        BSTR *String);

    END_INTERFACE
} IHTMLLocationVtbl;
interface IHTMLLocation {
    CONST_VTBL IHTMLLocationVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLLocation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLLocation_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLLocation_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLLocation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLLocation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLLocation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLLocation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLLocation methods ***/
#define IHTMLLocation_put_href(This,v) (This)->lpVtbl->put_href(This,v)
#define IHTMLLocation_get_href(This,p) (This)->lpVtbl->get_href(This,p)
#define IHTMLLocation_put_protocol(This,v) (This)->lpVtbl->put_protocol(This,v)
#define IHTMLLocation_get_protocol(This,p) (This)->lpVtbl->get_protocol(This,p)
#define IHTMLLocation_put_host(This,v) (This)->lpVtbl->put_host(This,v)
#define IHTMLLocation_get_host(This,p) (This)->lpVtbl->get_host(This,p)
#define IHTMLLocation_put_hostname(This,v) (This)->lpVtbl->put_hostname(This,v)
#define IHTMLLocation_get_hostname(This,p) (This)->lpVtbl->get_hostname(This,p)
#define IHTMLLocation_put_port(This,v) (This)->lpVtbl->put_port(This,v)
#define IHTMLLocation_get_port(This,p) (This)->lpVtbl->get_port(This,p)
#define IHTMLLocation_put_pathname(This,v) (This)->lpVtbl->put_pathname(This,v)
#define IHTMLLocation_get_pathname(This,p) (This)->lpVtbl->get_pathname(This,p)
#define IHTMLLocation_put_search(This,v) (This)->lpVtbl->put_search(This,v)
#define IHTMLLocation_get_search(This,p) (This)->lpVtbl->get_search(This,p)
#define IHTMLLocation_put_hash(This,v) (This)->lpVtbl->put_hash(This,v)
#define IHTMLLocation_get_hash(This,p) (This)->lpVtbl->get_hash(This,p)
#define IHTMLLocation_reload(This,flag) (This)->lpVtbl->reload(This,flag)
#define IHTMLLocation_replace(This,bstr) (This)->lpVtbl->replace(This,bstr)
#define IHTMLLocation_assign(This,bstr) (This)->lpVtbl->assign(This,bstr)
#define IHTMLLocation_toString(This,String) (This)->lpVtbl->toString(This,String)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLLocation_put_href_Proxy(
    IHTMLLocation* This,
    BSTR v);
void __RPC_STUB IHTMLLocation_put_href_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_get_href_Proxy(
    IHTMLLocation* This,
    BSTR *p);
void __RPC_STUB IHTMLLocation_get_href_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_put_protocol_Proxy(
    IHTMLLocation* This,
    BSTR v);
void __RPC_STUB IHTMLLocation_put_protocol_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_get_protocol_Proxy(
    IHTMLLocation* This,
    BSTR *p);
void __RPC_STUB IHTMLLocation_get_protocol_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_put_host_Proxy(
    IHTMLLocation* This,
    BSTR v);
void __RPC_STUB IHTMLLocation_put_host_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_get_host_Proxy(
    IHTMLLocation* This,
    BSTR *p);
void __RPC_STUB IHTMLLocation_get_host_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_put_hostname_Proxy(
    IHTMLLocation* This,
    BSTR v);
void __RPC_STUB IHTMLLocation_put_hostname_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_get_hostname_Proxy(
    IHTMLLocation* This,
    BSTR *p);
void __RPC_STUB IHTMLLocation_get_hostname_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_put_port_Proxy(
    IHTMLLocation* This,
    BSTR v);
void __RPC_STUB IHTMLLocation_put_port_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_get_port_Proxy(
    IHTMLLocation* This,
    BSTR *p);
void __RPC_STUB IHTMLLocation_get_port_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_put_pathname_Proxy(
    IHTMLLocation* This,
    BSTR v);
void __RPC_STUB IHTMLLocation_put_pathname_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_get_pathname_Proxy(
    IHTMLLocation* This,
    BSTR *p);
void __RPC_STUB IHTMLLocation_get_pathname_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_put_search_Proxy(
    IHTMLLocation* This,
    BSTR v);
void __RPC_STUB IHTMLLocation_put_search_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_get_search_Proxy(
    IHTMLLocation* This,
    BSTR *p);
void __RPC_STUB IHTMLLocation_get_search_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_put_hash_Proxy(
    IHTMLLocation* This,
    BSTR v);
void __RPC_STUB IHTMLLocation_put_hash_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_get_hash_Proxy(
    IHTMLLocation* This,
    BSTR *p);
void __RPC_STUB IHTMLLocation_get_hash_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_reload_Proxy(
    IHTMLLocation* This,
    VARIANT_BOOL flag);
void __RPC_STUB IHTMLLocation_reload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_replace_Proxy(
    IHTMLLocation* This,
    BSTR bstr);
void __RPC_STUB IHTMLLocation_replace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_assign_Proxy(
    IHTMLLocation* This,
    BSTR bstr);
void __RPC_STUB IHTMLLocation_assign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLLocation_toString_Proxy(
    IHTMLLocation* This,
    BSTR *String);
void __RPC_STUB IHTMLLocation_toString_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLLocation_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLLocation dispinterface
 */
#ifndef __DispHTMLLocation_DISPINTERFACE_DEFINED__
#define __DispHTMLLocation_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLLocation, 0x3050f54e, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLLocation : public IDispatch
{
};
#else
typedef struct DispHTMLLocationVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLLocation* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLLocation* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLLocation* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLLocation* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLLocation* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLLocation* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLLocation* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLLocationVtbl;
interface DispHTMLLocation {
    CONST_VTBL DispHTMLLocationVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLLocation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLLocation_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLLocation_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLLocation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLLocation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLLocation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLLocation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLLocation_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLLocation coclass
 */

DEFINE_GUID(CLSID_HTMLLocation, 0x163bb1e1, 0x6e00, 0x11cf, 0x83,0x7a, 0x48,0xdc,0x04,0xc1,0x00,0x00);

/*****************************************************************************
 * IHTMLBookmarkCollection interface
 */
#ifndef __IHTMLBookmarkCollection_INTERFACE_DEFINED__
#define __IHTMLBookmarkCollection_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLBookmarkCollection, 0x3050f4ce, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLBookmarkCollection : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
        IUnknown **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE item(
        LONG index,
        VARIANT *pVarBookmark) = 0;

};
#else
typedef struct IHTMLBookmarkCollectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLBookmarkCollection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLBookmarkCollection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLBookmarkCollection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLBookmarkCollection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLBookmarkCollection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLBookmarkCollection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLBookmarkCollection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLBookmarkCollection methods ***/
    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLBookmarkCollection* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
        IHTMLBookmarkCollection* This,
        IUnknown **p);

    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLBookmarkCollection* This,
        LONG index,
        VARIANT *pVarBookmark);

    END_INTERFACE
} IHTMLBookmarkCollectionVtbl;
interface IHTMLBookmarkCollection {
    CONST_VTBL IHTMLBookmarkCollectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLBookmarkCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLBookmarkCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLBookmarkCollection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLBookmarkCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLBookmarkCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLBookmarkCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLBookmarkCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLBookmarkCollection methods ***/
#define IHTMLBookmarkCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLBookmarkCollection_get__newEnum(This,p) (This)->lpVtbl->get__newEnum(This,p)
#define IHTMLBookmarkCollection_item(This,index,pVarBookmark) (This)->lpVtbl->item(This,index,pVarBookmark)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLBookmarkCollection_get_length_Proxy(
    IHTMLBookmarkCollection* This,
    LONG *p);
void __RPC_STUB IHTMLBookmarkCollection_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBookmarkCollection_get__newEnum_Proxy(
    IHTMLBookmarkCollection* This,
    IUnknown **p);
void __RPC_STUB IHTMLBookmarkCollection_get__newEnum_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLBookmarkCollection_item_Proxy(
    IHTMLBookmarkCollection* This,
    LONG index,
    VARIANT *pVarBookmark);
void __RPC_STUB IHTMLBookmarkCollection_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLBookmarkCollection_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDataTransfer interface
 */
#ifndef __IHTMLDataTransfer_INTERFACE_DEFINED__
#define __IHTMLDataTransfer_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDataTransfer, 0x3050f4b3, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDataTransfer : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE setData(
        BSTR format,
        VARIANT *data,
        VARIANT_BOOL *pret) = 0;

    virtual HRESULT STDMETHODCALLTYPE getData(
        BSTR format,
        VARIANT *pvarRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE clearData(
        BSTR format,
        VARIANT_BOOL *pret) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_dropEffect(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_dropEffect(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_effectAllowed(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_effectAllowed(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLDataTransferVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDataTransfer* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDataTransfer* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDataTransfer* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDataTransfer* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDataTransfer* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDataTransfer* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDataTransfer* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDataTransfer methods ***/
    HRESULT (STDMETHODCALLTYPE *setData)(
        IHTMLDataTransfer* This,
        BSTR format,
        VARIANT *data,
        VARIANT_BOOL *pret);

    HRESULT (STDMETHODCALLTYPE *getData)(
        IHTMLDataTransfer* This,
        BSTR format,
        VARIANT *pvarRet);

    HRESULT (STDMETHODCALLTYPE *clearData)(
        IHTMLDataTransfer* This,
        BSTR format,
        VARIANT_BOOL *pret);

    HRESULT (STDMETHODCALLTYPE *put_dropEffect)(
        IHTMLDataTransfer* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_dropEffect)(
        IHTMLDataTransfer* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_effectAllowed)(
        IHTMLDataTransfer* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_effectAllowed)(
        IHTMLDataTransfer* This,
        BSTR *p);

    END_INTERFACE
} IHTMLDataTransferVtbl;
interface IHTMLDataTransfer {
    CONST_VTBL IHTMLDataTransferVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDataTransfer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDataTransfer_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDataTransfer_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDataTransfer_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDataTransfer_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDataTransfer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDataTransfer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDataTransfer methods ***/
#define IHTMLDataTransfer_setData(This,format,data,pret) (This)->lpVtbl->setData(This,format,data,pret)
#define IHTMLDataTransfer_getData(This,format,pvarRet) (This)->lpVtbl->getData(This,format,pvarRet)
#define IHTMLDataTransfer_clearData(This,format,pret) (This)->lpVtbl->clearData(This,format,pret)
#define IHTMLDataTransfer_put_dropEffect(This,v) (This)->lpVtbl->put_dropEffect(This,v)
#define IHTMLDataTransfer_get_dropEffect(This,p) (This)->lpVtbl->get_dropEffect(This,p)
#define IHTMLDataTransfer_put_effectAllowed(This,v) (This)->lpVtbl->put_effectAllowed(This,v)
#define IHTMLDataTransfer_get_effectAllowed(This,p) (This)->lpVtbl->get_effectAllowed(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDataTransfer_setData_Proxy(
    IHTMLDataTransfer* This,
    BSTR format,
    VARIANT *data,
    VARIANT_BOOL *pret);
void __RPC_STUB IHTMLDataTransfer_setData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDataTransfer_getData_Proxy(
    IHTMLDataTransfer* This,
    BSTR format,
    VARIANT *pvarRet);
void __RPC_STUB IHTMLDataTransfer_getData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDataTransfer_clearData_Proxy(
    IHTMLDataTransfer* This,
    BSTR format,
    VARIANT_BOOL *pret);
void __RPC_STUB IHTMLDataTransfer_clearData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDataTransfer_put_dropEffect_Proxy(
    IHTMLDataTransfer* This,
    BSTR v);
void __RPC_STUB IHTMLDataTransfer_put_dropEffect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDataTransfer_get_dropEffect_Proxy(
    IHTMLDataTransfer* This,
    BSTR *p);
void __RPC_STUB IHTMLDataTransfer_get_dropEffect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDataTransfer_put_effectAllowed_Proxy(
    IHTMLDataTransfer* This,
    BSTR v);
void __RPC_STUB IHTMLDataTransfer_put_effectAllowed_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDataTransfer_get_effectAllowed_Proxy(
    IHTMLDataTransfer* This,
    BSTR *p);
void __RPC_STUB IHTMLDataTransfer_get_effectAllowed_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDataTransfer_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLEventObj interface
 */
#ifndef __IHTMLEventObj_INTERFACE_DEFINED__
#define __IHTMLEventObj_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLEventObj, 0x3050f32d, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLEventObj : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_srcElement(
        IHTMLElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_altKey(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ctrlKey(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_shiftKey(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_returnValue(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_returnValue(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_cancelBubble(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cancelBubble(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fromElement(
        IHTMLElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_toElement(
        IHTMLElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_keyCode(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_keyCode(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_button(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_type(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_qualifier(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_reason(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_x(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_y(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clientX(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clientY(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_offsetX(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_offsetY(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_screenX(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_screenY(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_srcFilter(
        IDispatch **p) = 0;

};
#else
typedef struct IHTMLEventObjVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLEventObj* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLEventObj* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLEventObj* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLEventObj* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLEventObj* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLEventObj* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLEventObj* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLEventObj methods ***/
    HRESULT (STDMETHODCALLTYPE *get_srcElement)(
        IHTMLEventObj* This,
        IHTMLElement **p);

    HRESULT (STDMETHODCALLTYPE *get_altKey)(
        IHTMLEventObj* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_ctrlKey)(
        IHTMLEventObj* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_shiftKey)(
        IHTMLEventObj* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_returnValue)(
        IHTMLEventObj* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_returnValue)(
        IHTMLEventObj* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_cancelBubble)(
        IHTMLEventObj* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_cancelBubble)(
        IHTMLEventObj* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_fromElement)(
        IHTMLEventObj* This,
        IHTMLElement **p);

    HRESULT (STDMETHODCALLTYPE *get_toElement)(
        IHTMLEventObj* This,
        IHTMLElement **p);

    HRESULT (STDMETHODCALLTYPE *put_keyCode)(
        IHTMLEventObj* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_keyCode)(
        IHTMLEventObj* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_button)(
        IHTMLEventObj* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_type)(
        IHTMLEventObj* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_qualifier)(
        IHTMLEventObj* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_reason)(
        IHTMLEventObj* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_x)(
        IHTMLEventObj* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_y)(
        IHTMLEventObj* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_clientX)(
        IHTMLEventObj* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_clientY)(
        IHTMLEventObj* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_offsetX)(
        IHTMLEventObj* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_offsetY)(
        IHTMLEventObj* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_screenX)(
        IHTMLEventObj* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_screenY)(
        IHTMLEventObj* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_srcFilter)(
        IHTMLEventObj* This,
        IDispatch **p);

    END_INTERFACE
} IHTMLEventObjVtbl;
interface IHTMLEventObj {
    CONST_VTBL IHTMLEventObjVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLEventObj_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLEventObj_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLEventObj_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLEventObj_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLEventObj_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLEventObj_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLEventObj_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLEventObj methods ***/
#define IHTMLEventObj_get_srcElement(This,p) (This)->lpVtbl->get_srcElement(This,p)
#define IHTMLEventObj_get_altKey(This,p) (This)->lpVtbl->get_altKey(This,p)
#define IHTMLEventObj_get_ctrlKey(This,p) (This)->lpVtbl->get_ctrlKey(This,p)
#define IHTMLEventObj_get_shiftKey(This,p) (This)->lpVtbl->get_shiftKey(This,p)
#define IHTMLEventObj_put_returnValue(This,v) (This)->lpVtbl->put_returnValue(This,v)
#define IHTMLEventObj_get_returnValue(This,p) (This)->lpVtbl->get_returnValue(This,p)
#define IHTMLEventObj_put_cancelBubble(This,v) (This)->lpVtbl->put_cancelBubble(This,v)
#define IHTMLEventObj_get_cancelBubble(This,p) (This)->lpVtbl->get_cancelBubble(This,p)
#define IHTMLEventObj_get_fromElement(This,p) (This)->lpVtbl->get_fromElement(This,p)
#define IHTMLEventObj_get_toElement(This,p) (This)->lpVtbl->get_toElement(This,p)
#define IHTMLEventObj_put_keyCode(This,v) (This)->lpVtbl->put_keyCode(This,v)
#define IHTMLEventObj_get_keyCode(This,p) (This)->lpVtbl->get_keyCode(This,p)
#define IHTMLEventObj_get_button(This,p) (This)->lpVtbl->get_button(This,p)
#define IHTMLEventObj_get_type(This,p) (This)->lpVtbl->get_type(This,p)
#define IHTMLEventObj_get_qualifier(This,p) (This)->lpVtbl->get_qualifier(This,p)
#define IHTMLEventObj_get_reason(This,p) (This)->lpVtbl->get_reason(This,p)
#define IHTMLEventObj_get_x(This,p) (This)->lpVtbl->get_x(This,p)
#define IHTMLEventObj_get_y(This,p) (This)->lpVtbl->get_y(This,p)
#define IHTMLEventObj_get_clientX(This,p) (This)->lpVtbl->get_clientX(This,p)
#define IHTMLEventObj_get_clientY(This,p) (This)->lpVtbl->get_clientY(This,p)
#define IHTMLEventObj_get_offsetX(This,p) (This)->lpVtbl->get_offsetX(This,p)
#define IHTMLEventObj_get_offsetY(This,p) (This)->lpVtbl->get_offsetY(This,p)
#define IHTMLEventObj_get_screenX(This,p) (This)->lpVtbl->get_screenX(This,p)
#define IHTMLEventObj_get_screenY(This,p) (This)->lpVtbl->get_screenY(This,p)
#define IHTMLEventObj_get_srcFilter(This,p) (This)->lpVtbl->get_srcFilter(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_srcElement_Proxy(
    IHTMLEventObj* This,
    IHTMLElement **p);
void __RPC_STUB IHTMLEventObj_get_srcElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_altKey_Proxy(
    IHTMLEventObj* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLEventObj_get_altKey_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_ctrlKey_Proxy(
    IHTMLEventObj* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLEventObj_get_ctrlKey_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_shiftKey_Proxy(
    IHTMLEventObj* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLEventObj_get_shiftKey_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_put_returnValue_Proxy(
    IHTMLEventObj* This,
    VARIANT v);
void __RPC_STUB IHTMLEventObj_put_returnValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_returnValue_Proxy(
    IHTMLEventObj* This,
    VARIANT *p);
void __RPC_STUB IHTMLEventObj_get_returnValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_put_cancelBubble_Proxy(
    IHTMLEventObj* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLEventObj_put_cancelBubble_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_cancelBubble_Proxy(
    IHTMLEventObj* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLEventObj_get_cancelBubble_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_fromElement_Proxy(
    IHTMLEventObj* This,
    IHTMLElement **p);
void __RPC_STUB IHTMLEventObj_get_fromElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_toElement_Proxy(
    IHTMLEventObj* This,
    IHTMLElement **p);
void __RPC_STUB IHTMLEventObj_get_toElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_put_keyCode_Proxy(
    IHTMLEventObj* This,
    LONG v);
void __RPC_STUB IHTMLEventObj_put_keyCode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_keyCode_Proxy(
    IHTMLEventObj* This,
    LONG *p);
void __RPC_STUB IHTMLEventObj_get_keyCode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_button_Proxy(
    IHTMLEventObj* This,
    LONG *p);
void __RPC_STUB IHTMLEventObj_get_button_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_type_Proxy(
    IHTMLEventObj* This,
    BSTR *p);
void __RPC_STUB IHTMLEventObj_get_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_qualifier_Proxy(
    IHTMLEventObj* This,
    BSTR *p);
void __RPC_STUB IHTMLEventObj_get_qualifier_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_reason_Proxy(
    IHTMLEventObj* This,
    LONG *p);
void __RPC_STUB IHTMLEventObj_get_reason_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_x_Proxy(
    IHTMLEventObj* This,
    LONG *p);
void __RPC_STUB IHTMLEventObj_get_x_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_y_Proxy(
    IHTMLEventObj* This,
    LONG *p);
void __RPC_STUB IHTMLEventObj_get_y_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_clientX_Proxy(
    IHTMLEventObj* This,
    LONG *p);
void __RPC_STUB IHTMLEventObj_get_clientX_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_clientY_Proxy(
    IHTMLEventObj* This,
    LONG *p);
void __RPC_STUB IHTMLEventObj_get_clientY_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_offsetX_Proxy(
    IHTMLEventObj* This,
    LONG *p);
void __RPC_STUB IHTMLEventObj_get_offsetX_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_offsetY_Proxy(
    IHTMLEventObj* This,
    LONG *p);
void __RPC_STUB IHTMLEventObj_get_offsetY_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_screenX_Proxy(
    IHTMLEventObj* This,
    LONG *p);
void __RPC_STUB IHTMLEventObj_get_screenX_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_screenY_Proxy(
    IHTMLEventObj* This,
    LONG *p);
void __RPC_STUB IHTMLEventObj_get_screenY_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEventObj_get_srcFilter_Proxy(
    IHTMLEventObj* This,
    IDispatch **p);
void __RPC_STUB IHTMLEventObj_get_srcFilter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLEventObj_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispCEventObj dispinterface
 */
#ifndef __DispCEventObj_DISPINTERFACE_DEFINED__
#define __DispCEventObj_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispCEventObj, 0x3050f558, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispCEventObj : public IDispatch
{
};
#else
typedef struct DispCEventObjVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispCEventObj* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispCEventObj* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispCEventObj* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispCEventObj* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispCEventObj* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispCEventObj* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispCEventObj* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispCEventObjVtbl;
interface DispCEventObj {
    CONST_VTBL DispCEventObjVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispCEventObj_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispCEventObj_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispCEventObj_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispCEventObj_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispCEventObj_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispCEventObj_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispCEventObj_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispCEventObj_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLFramesCollection2 interface
 */
#ifndef __IHTMLFramesCollection2_INTERFACE_DEFINED__
#define __IHTMLFramesCollection2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLFramesCollection2, 0x332c4426, 0x26cb, 0x11d0, 0xb4,0x83, 0x00,0xc0,0x4f,0xd9,0x01,0x19);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLFramesCollection2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE item(
        VARIANT *pvarIndex,
        VARIANT *pvarResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

};
#else
typedef struct IHTMLFramesCollection2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLFramesCollection2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLFramesCollection2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLFramesCollection2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLFramesCollection2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLFramesCollection2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLFramesCollection2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLFramesCollection2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLFramesCollection2 methods ***/
    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLFramesCollection2* This,
        VARIANT *pvarIndex,
        VARIANT *pvarResult);

    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLFramesCollection2* This,
        LONG *p);

    END_INTERFACE
} IHTMLFramesCollection2Vtbl;
interface IHTMLFramesCollection2 {
    CONST_VTBL IHTMLFramesCollection2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLFramesCollection2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLFramesCollection2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLFramesCollection2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLFramesCollection2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLFramesCollection2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLFramesCollection2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLFramesCollection2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLFramesCollection2 methods ***/
#define IHTMLFramesCollection2_item(This,pvarIndex,pvarResult) (This)->lpVtbl->item(This,pvarIndex,pvarResult)
#define IHTMLFramesCollection2_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLFramesCollection2_item_Proxy(
    IHTMLFramesCollection2* This,
    VARIANT *pvarIndex,
    VARIANT *pvarResult);
void __RPC_STUB IHTMLFramesCollection2_item_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFramesCollection2_get_length_Proxy(
    IHTMLFramesCollection2* This,
    LONG *p);
void __RPC_STUB IHTMLFramesCollection2_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLFramesCollection2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLScreen interface
 */
#ifndef __IHTMLScreen_INTERFACE_DEFINED__
#define __IHTMLScreen_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLScreen, 0x3050f35c, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLScreen : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_colorDepth(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_bufferDepth(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_bufferDepth(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_width(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_height(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_updateInterval(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_updateInterval(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_availHeight(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_availWidth(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontSmoothingEnabled(
        VARIANT_BOOL *p) = 0;

};
#else
typedef struct IHTMLScreenVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLScreen* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLScreen* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLScreen* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLScreen* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLScreen* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLScreen* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLScreen* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLScreen methods ***/
    HRESULT (STDMETHODCALLTYPE *get_colorDepth)(
        IHTMLScreen* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_bufferDepth)(
        IHTMLScreen* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_bufferDepth)(
        IHTMLScreen* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_width)(
        IHTMLScreen* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_height)(
        IHTMLScreen* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_updateInterval)(
        IHTMLScreen* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_updateInterval)(
        IHTMLScreen* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_availHeight)(
        IHTMLScreen* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_availWidth)(
        IHTMLScreen* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_fontSmoothingEnabled)(
        IHTMLScreen* This,
        VARIANT_BOOL *p);

    END_INTERFACE
} IHTMLScreenVtbl;
interface IHTMLScreen {
    CONST_VTBL IHTMLScreenVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLScreen_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLScreen_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLScreen_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLScreen_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLScreen_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLScreen_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLScreen_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLScreen methods ***/
#define IHTMLScreen_get_colorDepth(This,p) (This)->lpVtbl->get_colorDepth(This,p)
#define IHTMLScreen_put_bufferDepth(This,v) (This)->lpVtbl->put_bufferDepth(This,v)
#define IHTMLScreen_get_bufferDepth(This,p) (This)->lpVtbl->get_bufferDepth(This,p)
#define IHTMLScreen_get_width(This,p) (This)->lpVtbl->get_width(This,p)
#define IHTMLScreen_get_height(This,p) (This)->lpVtbl->get_height(This,p)
#define IHTMLScreen_put_updateInterval(This,v) (This)->lpVtbl->put_updateInterval(This,v)
#define IHTMLScreen_get_updateInterval(This,p) (This)->lpVtbl->get_updateInterval(This,p)
#define IHTMLScreen_get_availHeight(This,p) (This)->lpVtbl->get_availHeight(This,p)
#define IHTMLScreen_get_availWidth(This,p) (This)->lpVtbl->get_availWidth(This,p)
#define IHTMLScreen_get_fontSmoothingEnabled(This,p) (This)->lpVtbl->get_fontSmoothingEnabled(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLScreen_get_colorDepth_Proxy(
    IHTMLScreen* This,
    LONG *p);
void __RPC_STUB IHTMLScreen_get_colorDepth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScreen_put_bufferDepth_Proxy(
    IHTMLScreen* This,
    LONG v);
void __RPC_STUB IHTMLScreen_put_bufferDepth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScreen_get_bufferDepth_Proxy(
    IHTMLScreen* This,
    LONG *p);
void __RPC_STUB IHTMLScreen_get_bufferDepth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScreen_get_width_Proxy(
    IHTMLScreen* This,
    LONG *p);
void __RPC_STUB IHTMLScreen_get_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScreen_get_height_Proxy(
    IHTMLScreen* This,
    LONG *p);
void __RPC_STUB IHTMLScreen_get_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScreen_put_updateInterval_Proxy(
    IHTMLScreen* This,
    LONG v);
void __RPC_STUB IHTMLScreen_put_updateInterval_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScreen_get_updateInterval_Proxy(
    IHTMLScreen* This,
    LONG *p);
void __RPC_STUB IHTMLScreen_get_updateInterval_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScreen_get_availHeight_Proxy(
    IHTMLScreen* This,
    LONG *p);
void __RPC_STUB IHTMLScreen_get_availHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScreen_get_availWidth_Proxy(
    IHTMLScreen* This,
    LONG *p);
void __RPC_STUB IHTMLScreen_get_availWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScreen_get_fontSmoothingEnabled_Proxy(
    IHTMLScreen* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLScreen_get_fontSmoothingEnabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLScreen_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLWindow2 interface
 */
#ifndef __IHTMLWindow2_INTERFACE_DEFINED__
#define __IHTMLWindow2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLWindow2, 0x332c4427, 0x26cb, 0x11d0, 0xb4,0x83, 0x00,0xc0,0x4f,0xd9,0x01,0x19);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLWindow2 : public IHTMLFramesCollection2
{
    virtual HRESULT STDMETHODCALLTYPE get_frames(
        IHTMLFramesCollection2 **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_defaultStatus(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_defaultStatus(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_status(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_status(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE setTimeout(
        BSTR expression,
        LONG msec,
        VARIANT *language,
        LONG *timerID) = 0;

    virtual HRESULT STDMETHODCALLTYPE clearTimeout(
        LONG timerID) = 0;

    virtual HRESULT STDMETHODCALLTYPE alert(
        BSTR message) = 0;

    virtual HRESULT STDMETHODCALLTYPE confirm(
        BSTR message,
        VARIANT_BOOL *confirmed) = 0;

    virtual HRESULT STDMETHODCALLTYPE prompt(
        BSTR message,
        BSTR defstr,
        VARIANT *textdata) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_Image(
        IHTMLImageElementFactory **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_location(
        IHTMLLocation **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_history(
        IOmHistory **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE close(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_opener(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_opener(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_navigator(
        IOmNavigator **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_parent(
        IHTMLWindow2 **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE open(
        BSTR url,
        BSTR name,
        BSTR features,
        VARIANT_BOOL replace,
        IHTMLWindow2 **pomWindowResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_self(
        IHTMLWindow2 **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_top(
        IHTMLWindow2 **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_window(
        IHTMLWindow2 **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE navigate(
        BSTR url) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onfocus(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onfocus(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onblur(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onblur(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onload(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onload(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforeunload(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforeunload(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onunload(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onunload(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onhelp(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onhelp(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onerror(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onerror(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onresize(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onresize(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onscroll(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onscroll(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_document(
        IHTMLDocument2 **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_event(
        IHTMLEventObj **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
        IUnknown **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE showModalDialog(
        BSTR dialog,
        VARIANT *varArgIn,
        VARIANT *varOptions,
        VARIANT *varArgOut) = 0;

    virtual HRESULT STDMETHODCALLTYPE showHelp(
        BSTR helpURL,
        VARIANT helpArg,
        BSTR features) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_screen(
        IHTMLScreen **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_Option(
        IHTMLOptionElementFactory **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE focus(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_closed(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE blur(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE scroll(
        LONG x,
        LONG y) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clientInformation(
        IOmNavigator **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE setInterval(
        BSTR expression,
        LONG msec,
        VARIANT *language,
        LONG *timerID) = 0;

    virtual HRESULT STDMETHODCALLTYPE clearInterval(
        LONG timerID) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_offscreenBuffering(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_offscreenBuffering(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE execScript(
        BSTR scode,
        BSTR language,
        VARIANT *pvarRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE toString(
        BSTR *String) = 0;

    virtual HRESULT STDMETHODCALLTYPE scrollBy(
        LONG x,
        LONG y) = 0;

    virtual HRESULT STDMETHODCALLTYPE scrollTo(
        LONG x,
        LONG y) = 0;

    virtual HRESULT STDMETHODCALLTYPE moveTo(
        LONG x,
        LONG y) = 0;

    virtual HRESULT STDMETHODCALLTYPE moveBy(
        LONG x,
        LONG y) = 0;

    virtual HRESULT STDMETHODCALLTYPE resizeTo(
        LONG x,
        LONG y) = 0;

    virtual HRESULT STDMETHODCALLTYPE resizeBy(
        LONG x,
        LONG y) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_external(
        IDispatch **p) = 0;

};
#else
typedef struct IHTMLWindow2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLWindow2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLWindow2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLWindow2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLWindow2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLWindow2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLWindow2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLWindow2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLFramesCollection2 methods ***/
    HRESULT (STDMETHODCALLTYPE *item)(
        IHTMLWindow2* This,
        VARIANT *pvarIndex,
        VARIANT *pvarResult);

    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLWindow2* This,
        LONG *p);

    /*** IHTMLWindow2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_frames)(
        IHTMLWindow2* This,
        IHTMLFramesCollection2 **p);

    HRESULT (STDMETHODCALLTYPE *put_defaultStatus)(
        IHTMLWindow2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_defaultStatus)(
        IHTMLWindow2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_status)(
        IHTMLWindow2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_status)(
        IHTMLWindow2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *setTimeout)(
        IHTMLWindow2* This,
        BSTR expression,
        LONG msec,
        VARIANT *language,
        LONG *timerID);

    HRESULT (STDMETHODCALLTYPE *clearTimeout)(
        IHTMLWindow2* This,
        LONG timerID);

    HRESULT (STDMETHODCALLTYPE *alert)(
        IHTMLWindow2* This,
        BSTR message);

    HRESULT (STDMETHODCALLTYPE *confirm)(
        IHTMLWindow2* This,
        BSTR message,
        VARIANT_BOOL *confirmed);

    HRESULT (STDMETHODCALLTYPE *prompt)(
        IHTMLWindow2* This,
        BSTR message,
        BSTR defstr,
        VARIANT *textdata);

    HRESULT (STDMETHODCALLTYPE *get_Image)(
        IHTMLWindow2* This,
        IHTMLImageElementFactory **p);

    HRESULT (STDMETHODCALLTYPE *get_location)(
        IHTMLWindow2* This,
        IHTMLLocation **p);

    HRESULT (STDMETHODCALLTYPE *get_history)(
        IHTMLWindow2* This,
        IOmHistory **p);

    HRESULT (STDMETHODCALLTYPE *close)(
        IHTMLWindow2* This);

    HRESULT (STDMETHODCALLTYPE *put_opener)(
        IHTMLWindow2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_opener)(
        IHTMLWindow2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_navigator)(
        IHTMLWindow2* This,
        IOmNavigator **p);

    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLWindow2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLWindow2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_parent)(
        IHTMLWindow2* This,
        IHTMLWindow2 **p);

    HRESULT (STDMETHODCALLTYPE *open)(
        IHTMLWindow2* This,
        BSTR url,
        BSTR name,
        BSTR features,
        VARIANT_BOOL replace,
        IHTMLWindow2 **pomWindowResult);

    HRESULT (STDMETHODCALLTYPE *get_self)(
        IHTMLWindow2* This,
        IHTMLWindow2 **p);

    HRESULT (STDMETHODCALLTYPE *get_top)(
        IHTMLWindow2* This,
        IHTMLWindow2 **p);

    HRESULT (STDMETHODCALLTYPE *get_window)(
        IHTMLWindow2* This,
        IHTMLWindow2 **p);

    HRESULT (STDMETHODCALLTYPE *navigate)(
        IHTMLWindow2* This,
        BSTR url);

    HRESULT (STDMETHODCALLTYPE *put_onfocus)(
        IHTMLWindow2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onfocus)(
        IHTMLWindow2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onblur)(
        IHTMLWindow2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onblur)(
        IHTMLWindow2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onload)(
        IHTMLWindow2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onload)(
        IHTMLWindow2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onbeforeunload)(
        IHTMLWindow2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforeunload)(
        IHTMLWindow2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onunload)(
        IHTMLWindow2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onunload)(
        IHTMLWindow2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onhelp)(
        IHTMLWindow2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onhelp)(
        IHTMLWindow2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onerror)(
        IHTMLWindow2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onerror)(
        IHTMLWindow2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onresize)(
        IHTMLWindow2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onresize)(
        IHTMLWindow2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onscroll)(
        IHTMLWindow2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onscroll)(
        IHTMLWindow2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_document)(
        IHTMLWindow2* This,
        IHTMLDocument2 **p);

    HRESULT (STDMETHODCALLTYPE *get_event)(
        IHTMLWindow2* This,
        IHTMLEventObj **p);

    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
        IHTMLWindow2* This,
        IUnknown **p);

    HRESULT (STDMETHODCALLTYPE *showModalDialog)(
        IHTMLWindow2* This,
        BSTR dialog,
        VARIANT *varArgIn,
        VARIANT *varOptions,
        VARIANT *varArgOut);

    HRESULT (STDMETHODCALLTYPE *showHelp)(
        IHTMLWindow2* This,
        BSTR helpURL,
        VARIANT helpArg,
        BSTR features);

    HRESULT (STDMETHODCALLTYPE *get_screen)(
        IHTMLWindow2* This,
        IHTMLScreen **p);

    HRESULT (STDMETHODCALLTYPE *get_Option)(
        IHTMLWindow2* This,
        IHTMLOptionElementFactory **p);

    HRESULT (STDMETHODCALLTYPE *focus)(
        IHTMLWindow2* This);

    HRESULT (STDMETHODCALLTYPE *get_closed)(
        IHTMLWindow2* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *blur)(
        IHTMLWindow2* This);

    HRESULT (STDMETHODCALLTYPE *scroll)(
        IHTMLWindow2* This,
        LONG x,
        LONG y);

    HRESULT (STDMETHODCALLTYPE *get_clientInformation)(
        IHTMLWindow2* This,
        IOmNavigator **p);

    HRESULT (STDMETHODCALLTYPE *setInterval)(
        IHTMLWindow2* This,
        BSTR expression,
        LONG msec,
        VARIANT *language,
        LONG *timerID);

    HRESULT (STDMETHODCALLTYPE *clearInterval)(
        IHTMLWindow2* This,
        LONG timerID);

    HRESULT (STDMETHODCALLTYPE *put_offscreenBuffering)(
        IHTMLWindow2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_offscreenBuffering)(
        IHTMLWindow2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *execScript)(
        IHTMLWindow2* This,
        BSTR scode,
        BSTR language,
        VARIANT *pvarRet);

    HRESULT (STDMETHODCALLTYPE *toString)(
        IHTMLWindow2* This,
        BSTR *String);

    HRESULT (STDMETHODCALLTYPE *scrollBy)(
        IHTMLWindow2* This,
        LONG x,
        LONG y);

    HRESULT (STDMETHODCALLTYPE *scrollTo)(
        IHTMLWindow2* This,
        LONG x,
        LONG y);

    HRESULT (STDMETHODCALLTYPE *moveTo)(
        IHTMLWindow2* This,
        LONG x,
        LONG y);

    HRESULT (STDMETHODCALLTYPE *moveBy)(
        IHTMLWindow2* This,
        LONG x,
        LONG y);

    HRESULT (STDMETHODCALLTYPE *resizeTo)(
        IHTMLWindow2* This,
        LONG x,
        LONG y);

    HRESULT (STDMETHODCALLTYPE *resizeBy)(
        IHTMLWindow2* This,
        LONG x,
        LONG y);

    HRESULT (STDMETHODCALLTYPE *get_external)(
        IHTMLWindow2* This,
        IDispatch **p);

    END_INTERFACE
} IHTMLWindow2Vtbl;
interface IHTMLWindow2 {
    CONST_VTBL IHTMLWindow2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLWindow2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLWindow2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLWindow2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLWindow2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLWindow2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLWindow2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLWindow2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLFramesCollection2 methods ***/
#define IHTMLWindow2_item(This,pvarIndex,pvarResult) (This)->lpVtbl->item(This,pvarIndex,pvarResult)
#define IHTMLWindow2_get_length(This,p) (This)->lpVtbl->get_length(This,p)
/*** IHTMLWindow2 methods ***/
#define IHTMLWindow2_get_frames(This,p) (This)->lpVtbl->get_frames(This,p)
#define IHTMLWindow2_put_defaultStatus(This,v) (This)->lpVtbl->put_defaultStatus(This,v)
#define IHTMLWindow2_get_defaultStatus(This,p) (This)->lpVtbl->get_defaultStatus(This,p)
#define IHTMLWindow2_put_status(This,v) (This)->lpVtbl->put_status(This,v)
#define IHTMLWindow2_get_status(This,p) (This)->lpVtbl->get_status(This,p)
#define IHTMLWindow2_setTimeout(This,expression,msec,language,timerID) (This)->lpVtbl->setTimeout(This,expression,msec,language,timerID)
#define IHTMLWindow2_clearTimeout(This,timerID) (This)->lpVtbl->clearTimeout(This,timerID)
#define IHTMLWindow2_alert(This,message) (This)->lpVtbl->alert(This,message)
#define IHTMLWindow2_confirm(This,message,confirmed) (This)->lpVtbl->confirm(This,message,confirmed)
#define IHTMLWindow2_prompt(This,message,defstr,textdata) (This)->lpVtbl->prompt(This,message,defstr,textdata)
#define IHTMLWindow2_get_Image(This,p) (This)->lpVtbl->get_Image(This,p)
#define IHTMLWindow2_get_location(This,p) (This)->lpVtbl->get_location(This,p)
#define IHTMLWindow2_get_history(This,p) (This)->lpVtbl->get_history(This,p)
#define IHTMLWindow2_close(This) (This)->lpVtbl->close(This)
#define IHTMLWindow2_put_opener(This,v) (This)->lpVtbl->put_opener(This,v)
#define IHTMLWindow2_get_opener(This,p) (This)->lpVtbl->get_opener(This,p)
#define IHTMLWindow2_get_navigator(This,p) (This)->lpVtbl->get_navigator(This,p)
#define IHTMLWindow2_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLWindow2_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLWindow2_get_parent(This,p) (This)->lpVtbl->get_parent(This,p)
#define IHTMLWindow2_open(This,url,name,features,replace,pomWindowResult) (This)->lpVtbl->open(This,url,name,features,replace,pomWindowResult)
#define IHTMLWindow2_get_self(This,p) (This)->lpVtbl->get_self(This,p)
#define IHTMLWindow2_get_top(This,p) (This)->lpVtbl->get_top(This,p)
#define IHTMLWindow2_get_window(This,p) (This)->lpVtbl->get_window(This,p)
#define IHTMLWindow2_navigate(This,url) (This)->lpVtbl->navigate(This,url)
#define IHTMLWindow2_put_onfocus(This,v) (This)->lpVtbl->put_onfocus(This,v)
#define IHTMLWindow2_get_onfocus(This,p) (This)->lpVtbl->get_onfocus(This,p)
#define IHTMLWindow2_put_onblur(This,v) (This)->lpVtbl->put_onblur(This,v)
#define IHTMLWindow2_get_onblur(This,p) (This)->lpVtbl->get_onblur(This,p)
#define IHTMLWindow2_put_onload(This,v) (This)->lpVtbl->put_onload(This,v)
#define IHTMLWindow2_get_onload(This,p) (This)->lpVtbl->get_onload(This,p)
#define IHTMLWindow2_put_onbeforeunload(This,v) (This)->lpVtbl->put_onbeforeunload(This,v)
#define IHTMLWindow2_get_onbeforeunload(This,p) (This)->lpVtbl->get_onbeforeunload(This,p)
#define IHTMLWindow2_put_onunload(This,v) (This)->lpVtbl->put_onunload(This,v)
#define IHTMLWindow2_get_onunload(This,p) (This)->lpVtbl->get_onunload(This,p)
#define IHTMLWindow2_put_onhelp(This,v) (This)->lpVtbl->put_onhelp(This,v)
#define IHTMLWindow2_get_onhelp(This,p) (This)->lpVtbl->get_onhelp(This,p)
#define IHTMLWindow2_put_onerror(This,v) (This)->lpVtbl->put_onerror(This,v)
#define IHTMLWindow2_get_onerror(This,p) (This)->lpVtbl->get_onerror(This,p)
#define IHTMLWindow2_put_onresize(This,v) (This)->lpVtbl->put_onresize(This,v)
#define IHTMLWindow2_get_onresize(This,p) (This)->lpVtbl->get_onresize(This,p)
#define IHTMLWindow2_put_onscroll(This,v) (This)->lpVtbl->put_onscroll(This,v)
#define IHTMLWindow2_get_onscroll(This,p) (This)->lpVtbl->get_onscroll(This,p)
#define IHTMLWindow2_get_document(This,p) (This)->lpVtbl->get_document(This,p)
#define IHTMLWindow2_get_event(This,p) (This)->lpVtbl->get_event(This,p)
#define IHTMLWindow2_get__newEnum(This,p) (This)->lpVtbl->get__newEnum(This,p)
#define IHTMLWindow2_showModalDialog(This,dialog,varArgIn,varOptions,varArgOut) (This)->lpVtbl->showModalDialog(This,dialog,varArgIn,varOptions,varArgOut)
#define IHTMLWindow2_showHelp(This,helpURL,helpArg,features) (This)->lpVtbl->showHelp(This,helpURL,helpArg,features)
#define IHTMLWindow2_get_screen(This,p) (This)->lpVtbl->get_screen(This,p)
#define IHTMLWindow2_get_Option(This,p) (This)->lpVtbl->get_Option(This,p)
#define IHTMLWindow2_focus(This) (This)->lpVtbl->focus(This)
#define IHTMLWindow2_get_closed(This,p) (This)->lpVtbl->get_closed(This,p)
#define IHTMLWindow2_blur(This) (This)->lpVtbl->blur(This)
#define IHTMLWindow2_scroll(This,x,y) (This)->lpVtbl->scroll(This,x,y)
#define IHTMLWindow2_get_clientInformation(This,p) (This)->lpVtbl->get_clientInformation(This,p)
#define IHTMLWindow2_setInterval(This,expression,msec,language,timerID) (This)->lpVtbl->setInterval(This,expression,msec,language,timerID)
#define IHTMLWindow2_clearInterval(This,timerID) (This)->lpVtbl->clearInterval(This,timerID)
#define IHTMLWindow2_put_offscreenBuffering(This,v) (This)->lpVtbl->put_offscreenBuffering(This,v)
#define IHTMLWindow2_get_offscreenBuffering(This,p) (This)->lpVtbl->get_offscreenBuffering(This,p)
#define IHTMLWindow2_execScript(This,scode,language,pvarRet) (This)->lpVtbl->execScript(This,scode,language,pvarRet)
#define IHTMLWindow2_toString(This,String) (This)->lpVtbl->toString(This,String)
#define IHTMLWindow2_scrollBy(This,x,y) (This)->lpVtbl->scrollBy(This,x,y)
#define IHTMLWindow2_scrollTo(This,x,y) (This)->lpVtbl->scrollTo(This,x,y)
#define IHTMLWindow2_moveTo(This,x,y) (This)->lpVtbl->moveTo(This,x,y)
#define IHTMLWindow2_moveBy(This,x,y) (This)->lpVtbl->moveBy(This,x,y)
#define IHTMLWindow2_resizeTo(This,x,y) (This)->lpVtbl->resizeTo(This,x,y)
#define IHTMLWindow2_resizeBy(This,x,y) (This)->lpVtbl->resizeBy(This,x,y)
#define IHTMLWindow2_get_external(This,p) (This)->lpVtbl->get_external(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_frames_Proxy(
    IHTMLWindow2* This,
    IHTMLFramesCollection2 **p);
void __RPC_STUB IHTMLWindow2_get_frames_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_defaultStatus_Proxy(
    IHTMLWindow2* This,
    BSTR v);
void __RPC_STUB IHTMLWindow2_put_defaultStatus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_defaultStatus_Proxy(
    IHTMLWindow2* This,
    BSTR *p);
void __RPC_STUB IHTMLWindow2_get_defaultStatus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_status_Proxy(
    IHTMLWindow2* This,
    BSTR v);
void __RPC_STUB IHTMLWindow2_put_status_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_status_Proxy(
    IHTMLWindow2* This,
    BSTR *p);
void __RPC_STUB IHTMLWindow2_get_status_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_setTimeout_Proxy(
    IHTMLWindow2* This,
    BSTR expression,
    LONG msec,
    VARIANT *language,
    LONG *timerID);
void __RPC_STUB IHTMLWindow2_setTimeout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_clearTimeout_Proxy(
    IHTMLWindow2* This,
    LONG timerID);
void __RPC_STUB IHTMLWindow2_clearTimeout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_alert_Proxy(
    IHTMLWindow2* This,
    BSTR message);
void __RPC_STUB IHTMLWindow2_alert_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_confirm_Proxy(
    IHTMLWindow2* This,
    BSTR message,
    VARIANT_BOOL *confirmed);
void __RPC_STUB IHTMLWindow2_confirm_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_prompt_Proxy(
    IHTMLWindow2* This,
    BSTR message,
    BSTR defstr,
    VARIANT *textdata);
void __RPC_STUB IHTMLWindow2_prompt_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_Image_Proxy(
    IHTMLWindow2* This,
    IHTMLImageElementFactory **p);
void __RPC_STUB IHTMLWindow2_get_Image_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_location_Proxy(
    IHTMLWindow2* This,
    IHTMLLocation **p);
void __RPC_STUB IHTMLWindow2_get_location_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_history_Proxy(
    IHTMLWindow2* This,
    IOmHistory **p);
void __RPC_STUB IHTMLWindow2_get_history_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_close_Proxy(
    IHTMLWindow2* This);
void __RPC_STUB IHTMLWindow2_close_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_opener_Proxy(
    IHTMLWindow2* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow2_put_opener_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_opener_Proxy(
    IHTMLWindow2* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow2_get_opener_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_navigator_Proxy(
    IHTMLWindow2* This,
    IOmNavigator **p);
void __RPC_STUB IHTMLWindow2_get_navigator_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_name_Proxy(
    IHTMLWindow2* This,
    BSTR v);
void __RPC_STUB IHTMLWindow2_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_name_Proxy(
    IHTMLWindow2* This,
    BSTR *p);
void __RPC_STUB IHTMLWindow2_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_parent_Proxy(
    IHTMLWindow2* This,
    IHTMLWindow2 **p);
void __RPC_STUB IHTMLWindow2_get_parent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_open_Proxy(
    IHTMLWindow2* This,
    BSTR url,
    BSTR name,
    BSTR features,
    VARIANT_BOOL replace,
    IHTMLWindow2 **pomWindowResult);
void __RPC_STUB IHTMLWindow2_open_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_self_Proxy(
    IHTMLWindow2* This,
    IHTMLWindow2 **p);
void __RPC_STUB IHTMLWindow2_get_self_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_top_Proxy(
    IHTMLWindow2* This,
    IHTMLWindow2 **p);
void __RPC_STUB IHTMLWindow2_get_top_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_window_Proxy(
    IHTMLWindow2* This,
    IHTMLWindow2 **p);
void __RPC_STUB IHTMLWindow2_get_window_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_navigate_Proxy(
    IHTMLWindow2* This,
    BSTR url);
void __RPC_STUB IHTMLWindow2_navigate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_onfocus_Proxy(
    IHTMLWindow2* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow2_put_onfocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_onfocus_Proxy(
    IHTMLWindow2* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow2_get_onfocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_onblur_Proxy(
    IHTMLWindow2* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow2_put_onblur_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_onblur_Proxy(
    IHTMLWindow2* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow2_get_onblur_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_onload_Proxy(
    IHTMLWindow2* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow2_put_onload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_onload_Proxy(
    IHTMLWindow2* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow2_get_onload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_onbeforeunload_Proxy(
    IHTMLWindow2* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow2_put_onbeforeunload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_onbeforeunload_Proxy(
    IHTMLWindow2* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow2_get_onbeforeunload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_onunload_Proxy(
    IHTMLWindow2* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow2_put_onunload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_onunload_Proxy(
    IHTMLWindow2* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow2_get_onunload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_onhelp_Proxy(
    IHTMLWindow2* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow2_put_onhelp_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_onhelp_Proxy(
    IHTMLWindow2* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow2_get_onhelp_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_onerror_Proxy(
    IHTMLWindow2* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow2_put_onerror_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_onerror_Proxy(
    IHTMLWindow2* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow2_get_onerror_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_onresize_Proxy(
    IHTMLWindow2* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow2_put_onresize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_onresize_Proxy(
    IHTMLWindow2* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow2_get_onresize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_onscroll_Proxy(
    IHTMLWindow2* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow2_put_onscroll_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_onscroll_Proxy(
    IHTMLWindow2* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow2_get_onscroll_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_document_Proxy(
    IHTMLWindow2* This,
    IHTMLDocument2 **p);
void __RPC_STUB IHTMLWindow2_get_document_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_event_Proxy(
    IHTMLWindow2* This,
    IHTMLEventObj **p);
void __RPC_STUB IHTMLWindow2_get_event_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get__newEnum_Proxy(
    IHTMLWindow2* This,
    IUnknown **p);
void __RPC_STUB IHTMLWindow2_get__newEnum_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_showModalDialog_Proxy(
    IHTMLWindow2* This,
    BSTR dialog,
    VARIANT *varArgIn,
    VARIANT *varOptions,
    VARIANT *varArgOut);
void __RPC_STUB IHTMLWindow2_showModalDialog_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_showHelp_Proxy(
    IHTMLWindow2* This,
    BSTR helpURL,
    VARIANT helpArg,
    BSTR features);
void __RPC_STUB IHTMLWindow2_showHelp_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_screen_Proxy(
    IHTMLWindow2* This,
    IHTMLScreen **p);
void __RPC_STUB IHTMLWindow2_get_screen_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_Option_Proxy(
    IHTMLWindow2* This,
    IHTMLOptionElementFactory **p);
void __RPC_STUB IHTMLWindow2_get_Option_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_focus_Proxy(
    IHTMLWindow2* This);
void __RPC_STUB IHTMLWindow2_focus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_closed_Proxy(
    IHTMLWindow2* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLWindow2_get_closed_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_blur_Proxy(
    IHTMLWindow2* This);
void __RPC_STUB IHTMLWindow2_blur_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_scroll_Proxy(
    IHTMLWindow2* This,
    LONG x,
    LONG y);
void __RPC_STUB IHTMLWindow2_scroll_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_clientInformation_Proxy(
    IHTMLWindow2* This,
    IOmNavigator **p);
void __RPC_STUB IHTMLWindow2_get_clientInformation_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_setInterval_Proxy(
    IHTMLWindow2* This,
    BSTR expression,
    LONG msec,
    VARIANT *language,
    LONG *timerID);
void __RPC_STUB IHTMLWindow2_setInterval_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_clearInterval_Proxy(
    IHTMLWindow2* This,
    LONG timerID);
void __RPC_STUB IHTMLWindow2_clearInterval_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_put_offscreenBuffering_Proxy(
    IHTMLWindow2* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow2_put_offscreenBuffering_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_offscreenBuffering_Proxy(
    IHTMLWindow2* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow2_get_offscreenBuffering_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_execScript_Proxy(
    IHTMLWindow2* This,
    BSTR scode,
    BSTR language,
    VARIANT *pvarRet);
void __RPC_STUB IHTMLWindow2_execScript_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_toString_Proxy(
    IHTMLWindow2* This,
    BSTR *String);
void __RPC_STUB IHTMLWindow2_toString_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_scrollBy_Proxy(
    IHTMLWindow2* This,
    LONG x,
    LONG y);
void __RPC_STUB IHTMLWindow2_scrollBy_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_scrollTo_Proxy(
    IHTMLWindow2* This,
    LONG x,
    LONG y);
void __RPC_STUB IHTMLWindow2_scrollTo_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_moveTo_Proxy(
    IHTMLWindow2* This,
    LONG x,
    LONG y);
void __RPC_STUB IHTMLWindow2_moveTo_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_moveBy_Proxy(
    IHTMLWindow2* This,
    LONG x,
    LONG y);
void __RPC_STUB IHTMLWindow2_moveBy_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_resizeTo_Proxy(
    IHTMLWindow2* This,
    LONG x,
    LONG y);
void __RPC_STUB IHTMLWindow2_resizeTo_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_resizeBy_Proxy(
    IHTMLWindow2* This,
    LONG x,
    LONG y);
void __RPC_STUB IHTMLWindow2_resizeBy_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow2_get_external_Proxy(
    IHTMLWindow2* This,
    IDispatch **p);
void __RPC_STUB IHTMLWindow2_get_external_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLWindow2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLWindow3 interface
 */
#ifndef __IHTMLWindow3_INTERFACE_DEFINED__
#define __IHTMLWindow3_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLWindow3, 0x3050f4ae, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLWindow3 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_screenLeft(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_screenTop(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE attachEvent(
        BSTR event,
        IDispatch *pDisp,
        VARIANT_BOOL *pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE detachEvent(
        BSTR event,
        IDispatch *pDisp) = 0;

    virtual HRESULT STDMETHODCALLTYPE setTimeout(
        VARIANT *expression,
        LONG msec,
        VARIANT *language,
        LONG *timerID) = 0;

    virtual HRESULT STDMETHODCALLTYPE setInterval(
        VARIANT *expression,
        LONG msec,
        VARIANT *language,
        LONG *timerID) = 0;

    virtual HRESULT STDMETHODCALLTYPE print(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforeprint(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforeprint(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onafterprint(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onafterprint(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_clipboardData(
        IHTMLDataTransfer **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE showModelessDialog(
        BSTR url,
        VARIANT *varArgIn,
        VARIANT *options,
        IHTMLWindow2 **pDialog) = 0;

};
#else
typedef struct IHTMLWindow3Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLWindow3* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLWindow3* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLWindow3* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLWindow3* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLWindow3* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLWindow3* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLWindow3* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLWindow3 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_screenLeft)(
        IHTMLWindow3* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_screenTop)(
        IHTMLWindow3* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *attachEvent)(
        IHTMLWindow3* This,
        BSTR event,
        IDispatch *pDisp,
        VARIANT_BOOL *pfResult);

    HRESULT (STDMETHODCALLTYPE *detachEvent)(
        IHTMLWindow3* This,
        BSTR event,
        IDispatch *pDisp);

    HRESULT (STDMETHODCALLTYPE *setTimeout)(
        IHTMLWindow3* This,
        VARIANT *expression,
        LONG msec,
        VARIANT *language,
        LONG *timerID);

    HRESULT (STDMETHODCALLTYPE *setInterval)(
        IHTMLWindow3* This,
        VARIANT *expression,
        LONG msec,
        VARIANT *language,
        LONG *timerID);

    HRESULT (STDMETHODCALLTYPE *print)(
        IHTMLWindow3* This);

    HRESULT (STDMETHODCALLTYPE *put_onbeforeprint)(
        IHTMLWindow3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforeprint)(
        IHTMLWindow3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onafterprint)(
        IHTMLWindow3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onafterprint)(
        IHTMLWindow3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_clipboardData)(
        IHTMLWindow3* This,
        IHTMLDataTransfer **p);

    HRESULT (STDMETHODCALLTYPE *showModelessDialog)(
        IHTMLWindow3* This,
        BSTR url,
        VARIANT *varArgIn,
        VARIANT *options,
        IHTMLWindow2 **pDialog);

    END_INTERFACE
} IHTMLWindow3Vtbl;
interface IHTMLWindow3 {
    CONST_VTBL IHTMLWindow3Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLWindow3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLWindow3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLWindow3_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLWindow3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLWindow3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLWindow3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLWindow3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLWindow3 methods ***/
#define IHTMLWindow3_get_screenLeft(This,p) (This)->lpVtbl->get_screenLeft(This,p)
#define IHTMLWindow3_get_screenTop(This,p) (This)->lpVtbl->get_screenTop(This,p)
#define IHTMLWindow3_attachEvent(This,event,pDisp,pfResult) (This)->lpVtbl->attachEvent(This,event,pDisp,pfResult)
#define IHTMLWindow3_detachEvent(This,event,pDisp) (This)->lpVtbl->detachEvent(This,event,pDisp)
#define IHTMLWindow3_setTimeout(This,expression,msec,language,timerID) (This)->lpVtbl->setTimeout(This,expression,msec,language,timerID)
#define IHTMLWindow3_setInterval(This,expression,msec,language,timerID) (This)->lpVtbl->setInterval(This,expression,msec,language,timerID)
#define IHTMLWindow3_print(This) (This)->lpVtbl->print(This)
#define IHTMLWindow3_put_onbeforeprint(This,v) (This)->lpVtbl->put_onbeforeprint(This,v)
#define IHTMLWindow3_get_onbeforeprint(This,p) (This)->lpVtbl->get_onbeforeprint(This,p)
#define IHTMLWindow3_put_onafterprint(This,v) (This)->lpVtbl->put_onafterprint(This,v)
#define IHTMLWindow3_get_onafterprint(This,p) (This)->lpVtbl->get_onafterprint(This,p)
#define IHTMLWindow3_get_clipboardData(This,p) (This)->lpVtbl->get_clipboardData(This,p)
#define IHTMLWindow3_showModelessDialog(This,url,varArgIn,options,pDialog) (This)->lpVtbl->showModelessDialog(This,url,varArgIn,options,pDialog)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLWindow3_get_screenLeft_Proxy(
    IHTMLWindow3* This,
    LONG *p);
void __RPC_STUB IHTMLWindow3_get_screenLeft_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow3_get_screenTop_Proxy(
    IHTMLWindow3* This,
    LONG *p);
void __RPC_STUB IHTMLWindow3_get_screenTop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow3_attachEvent_Proxy(
    IHTMLWindow3* This,
    BSTR event,
    IDispatch *pDisp,
    VARIANT_BOOL *pfResult);
void __RPC_STUB IHTMLWindow3_attachEvent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow3_detachEvent_Proxy(
    IHTMLWindow3* This,
    BSTR event,
    IDispatch *pDisp);
void __RPC_STUB IHTMLWindow3_detachEvent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow3_setTimeout_Proxy(
    IHTMLWindow3* This,
    VARIANT *expression,
    LONG msec,
    VARIANT *language,
    LONG *timerID);
void __RPC_STUB IHTMLWindow3_setTimeout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow3_setInterval_Proxy(
    IHTMLWindow3* This,
    VARIANT *expression,
    LONG msec,
    VARIANT *language,
    LONG *timerID);
void __RPC_STUB IHTMLWindow3_setInterval_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow3_print_Proxy(
    IHTMLWindow3* This);
void __RPC_STUB IHTMLWindow3_print_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow3_put_onbeforeprint_Proxy(
    IHTMLWindow3* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow3_put_onbeforeprint_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow3_get_onbeforeprint_Proxy(
    IHTMLWindow3* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow3_get_onbeforeprint_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow3_put_onafterprint_Proxy(
    IHTMLWindow3* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow3_put_onafterprint_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow3_get_onafterprint_Proxy(
    IHTMLWindow3* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow3_get_onafterprint_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow3_get_clipboardData_Proxy(
    IHTMLWindow3* This,
    IHTMLDataTransfer **p);
void __RPC_STUB IHTMLWindow3_get_clipboardData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow3_showModelessDialog_Proxy(
    IHTMLWindow3* This,
    BSTR url,
    VARIANT *varArgIn,
    VARIANT *options,
    IHTMLWindow2 **pDialog);
void __RPC_STUB IHTMLWindow3_showModelessDialog_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLWindow3_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLWindow4 interface
 */
#ifndef __IHTMLWindow4_INTERFACE_DEFINED__
#define __IHTMLWindow4_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLWindow4, 0x3050f6cf, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLWindow4 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE createPopup(
        VARIANT *varArgIn,
        IDispatch **ppPopup) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_frameElement(
        IHTMLFrameBase **p) = 0;

};
#else
typedef struct IHTMLWindow4Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLWindow4* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLWindow4* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLWindow4* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLWindow4* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLWindow4* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLWindow4* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLWindow4* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLWindow4 methods ***/
    HRESULT (STDMETHODCALLTYPE *createPopup)(
        IHTMLWindow4* This,
        VARIANT *varArgIn,
        IDispatch **ppPopup);

    HRESULT (STDMETHODCALLTYPE *get_frameElement)(
        IHTMLWindow4* This,
        IHTMLFrameBase **p);

    END_INTERFACE
} IHTMLWindow4Vtbl;
interface IHTMLWindow4 {
    CONST_VTBL IHTMLWindow4Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLWindow4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLWindow4_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLWindow4_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLWindow4_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLWindow4_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLWindow4_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLWindow4_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLWindow4 methods ***/
#define IHTMLWindow4_createPopup(This,varArgIn,ppPopup) (This)->lpVtbl->createPopup(This,varArgIn,ppPopup)
#define IHTMLWindow4_get_frameElement(This,p) (This)->lpVtbl->get_frameElement(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLWindow4_createPopup_Proxy(
    IHTMLWindow4* This,
    VARIANT *varArgIn,
    IDispatch **ppPopup);
void __RPC_STUB IHTMLWindow4_createPopup_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow4_get_frameElement_Proxy(
    IHTMLWindow4* This,
    IHTMLFrameBase **p);
void __RPC_STUB IHTMLWindow4_get_frameElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLWindow4_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLWindow5 interface
 */
#ifndef __IHTMLWindow5_INTERFACE_DEFINED__
#define __IHTMLWindow5_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLWindow5, 0x3051040e, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLWindow5 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_XMLHttpRequest(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_XMLHttpRequest(
        VARIANT *p) = 0;

};
#else
typedef struct IHTMLWindow5Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLWindow5* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLWindow5* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLWindow5* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLWindow5* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLWindow5* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLWindow5* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLWindow5* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLWindow5 methods ***/
    HRESULT (STDMETHODCALLTYPE *put_XMLHttpRequest)(
        IHTMLWindow5* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_XMLHttpRequest)(
        IHTMLWindow5* This,
        VARIANT *p);

    END_INTERFACE
} IHTMLWindow5Vtbl;
interface IHTMLWindow5 {
    CONST_VTBL IHTMLWindow5Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLWindow5_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLWindow5_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLWindow5_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLWindow5_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLWindow5_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLWindow5_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLWindow5_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLWindow5 methods ***/
#define IHTMLWindow5_put_XMLHttpRequest(This,v) (This)->lpVtbl->put_XMLHttpRequest(This,v)
#define IHTMLWindow5_get_XMLHttpRequest(This,p) (This)->lpVtbl->get_XMLHttpRequest(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLWindow5_put_XMLHttpRequest_Proxy(
    IHTMLWindow5* This,
    VARIANT v);
void __RPC_STUB IHTMLWindow5_put_XMLHttpRequest_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLWindow5_get_XMLHttpRequest_Proxy(
    IHTMLWindow5* This,
    VARIANT *p);
void __RPC_STUB IHTMLWindow5_get_XMLHttpRequest_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLWindow5_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLScreen dispinterface
 */
#ifndef __DispHTMLScreen_DISPINTERFACE_DEFINED__
#define __DispHTMLScreen_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLScreen, 0x3050f591, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLScreen : public IDispatch
{
};
#else
typedef struct DispHTMLScreenVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLScreen* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLScreen* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLScreen* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLScreen* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLScreen* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLScreen* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLScreen* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLScreenVtbl;
interface DispHTMLScreen {
    CONST_VTBL DispHTMLScreenVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLScreen_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLScreen_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLScreen_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLScreen_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLScreen_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLScreen_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLScreen_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLScreen_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLWindow2 dispinterface
 */
#ifndef __DispHTMLWindow2_DISPINTERFACE_DEFINED__
#define __DispHTMLWindow2_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLWindow2, 0x3050f55d, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLWindow2 : public IDispatch
{
};
#else
typedef struct DispHTMLWindow2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLWindow2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLWindow2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLWindow2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLWindow2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLWindow2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLWindow2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLWindow2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLWindow2Vtbl;
interface DispHTMLWindow2 {
    CONST_VTBL DispHTMLWindow2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLWindow2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLWindow2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLWindow2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLWindow2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLWindow2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLWindow2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLWindow2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLWindow2_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLWindowProxy dispinterface
 */
#ifndef __DispHTMLWindowProxy_DISPINTERFACE_DEFINED__
#define __DispHTMLWindowProxy_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLWindowProxy, 0x3050f55e, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLWindowProxy : public IDispatch
{
};
#else
typedef struct DispHTMLWindowProxyVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLWindowProxy* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLWindowProxy* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLWindowProxy* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLWindowProxy* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLWindowProxy* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLWindowProxy* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLWindowProxy* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLWindowProxyVtbl;
interface DispHTMLWindowProxy {
    CONST_VTBL DispHTMLWindowProxyVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLWindowProxy_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLWindowProxy_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLWindowProxy_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLWindowProxy_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLWindowProxy_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLWindowProxy_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLWindowProxy_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLWindowProxy_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLWindowEvents dispinterface
 */
#ifndef __HTMLWindowEvents_DISPINTERFACE_DEFINED__
#define __HTMLWindowEvents_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_HTMLWindowEvents, 0x96a0a4e0, 0xd062, 0x11cf, 0x94,0xb6, 0x00,0xaa,0x00,0x60,0x27,0x5c);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface HTMLWindowEvents : public IDispatch
{
};
#else
typedef struct HTMLWindowEventsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        HTMLWindowEvents* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        HTMLWindowEvents* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        HTMLWindowEvents* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        HTMLWindowEvents* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        HTMLWindowEvents* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        HTMLWindowEvents* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        HTMLWindowEvents* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} HTMLWindowEventsVtbl;
interface HTMLWindowEvents {
    CONST_VTBL HTMLWindowEventsVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define HTMLWindowEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define HTMLWindowEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
#define HTMLWindowEvents_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define HTMLWindowEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define HTMLWindowEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define HTMLWindowEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define HTMLWindowEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __HTMLWindowEvents_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLWindowEvents2 dispinterface
 */
#ifndef __HTMLWindowEvents2_DISPINTERFACE_DEFINED__
#define __HTMLWindowEvents2_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_HTMLWindowEvents2, 0x3050f625, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface HTMLWindowEvents2 : public IDispatch
{
};
#else
typedef struct HTMLWindowEvents2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        HTMLWindowEvents2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        HTMLWindowEvents2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        HTMLWindowEvents2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        HTMLWindowEvents2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        HTMLWindowEvents2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        HTMLWindowEvents2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        HTMLWindowEvents2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} HTMLWindowEvents2Vtbl;
interface HTMLWindowEvents2 {
    CONST_VTBL HTMLWindowEvents2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define HTMLWindowEvents2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define HTMLWindowEvents2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define HTMLWindowEvents2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define HTMLWindowEvents2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define HTMLWindowEvents2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define HTMLWindowEvents2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define HTMLWindowEvents2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __HTMLWindowEvents2_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLWindowProxy coclass
 */

DEFINE_GUID(CLSID_HTMLWindowProxy, 0x3050f391, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * HTMLDocumentEvents2 dispinterface
 */
#ifndef __HTMLDocumentEvents2_DISPINTERFACE_DEFINED__
#define __HTMLDocumentEvents2_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_HTMLDocumentEvents2, 0x3050f613, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface HTMLDocumentEvents2 : public IDispatch
{
};
#else
typedef struct HTMLDocumentEvents2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        HTMLDocumentEvents2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        HTMLDocumentEvents2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        HTMLDocumentEvents2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        HTMLDocumentEvents2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        HTMLDocumentEvents2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        HTMLDocumentEvents2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        HTMLDocumentEvents2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} HTMLDocumentEvents2Vtbl;
interface HTMLDocumentEvents2 {
    CONST_VTBL HTMLDocumentEvents2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define HTMLDocumentEvents2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define HTMLDocumentEvents2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define HTMLDocumentEvents2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define HTMLDocumentEvents2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define HTMLDocumentEvents2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define HTMLDocumentEvents2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define HTMLDocumentEvents2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __HTMLDocumentEvents2_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLDocumentEvents dispinterface
 */
#ifndef __HTMLDocumentEvents_DISPINTERFACE_DEFINED__
#define __HTMLDocumentEvents_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_HTMLDocumentEvents, 0x3050f260, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface HTMLDocumentEvents : public IDispatch
{
};
#else
typedef struct HTMLDocumentEventsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        HTMLDocumentEvents* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        HTMLDocumentEvents* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        HTMLDocumentEvents* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        HTMLDocumentEvents* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        HTMLDocumentEvents* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        HTMLDocumentEvents* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        HTMLDocumentEvents* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} HTMLDocumentEventsVtbl;
interface HTMLDocumentEvents {
    CONST_VTBL HTMLDocumentEventsVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define HTMLDocumentEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define HTMLDocumentEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
#define HTMLDocumentEvents_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define HTMLDocumentEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define HTMLDocumentEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define HTMLDocumentEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define HTMLDocumentEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __HTMLDocumentEvents_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLTextContainerEvents dispinterface
 */
#ifndef __HTMLTextContainerEvents_DISPINTERFACE_DEFINED__
#define __HTMLTextContainerEvents_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_HTMLTextContainerEvents, 0x1ff6aa72, 0x5842, 0x11cf, 0xa7,0x07, 0x00,0xaa,0x00,0xc0,0x09,0x8d);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface HTMLTextContainerEvents : public IDispatch
{
};
#else
typedef struct HTMLTextContainerEventsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        HTMLTextContainerEvents* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        HTMLTextContainerEvents* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        HTMLTextContainerEvents* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        HTMLTextContainerEvents* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        HTMLTextContainerEvents* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        HTMLTextContainerEvents* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        HTMLTextContainerEvents* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} HTMLTextContainerEventsVtbl;
interface HTMLTextContainerEvents {
    CONST_VTBL HTMLTextContainerEventsVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define HTMLTextContainerEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define HTMLTextContainerEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
#define HTMLTextContainerEvents_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define HTMLTextContainerEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define HTMLTextContainerEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define HTMLTextContainerEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define HTMLTextContainerEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __HTMLTextContainerEvents_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLTextContainerEvents2 dispinterface
 */
#ifndef __HTMLTextContainerEvents2_DISPINTERFACE_DEFINED__
#define __HTMLTextContainerEvents2_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_HTMLTextContainerEvents2, 0x3050f624, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface HTMLTextContainerEvents2 : public IDispatch
{
};
#else
typedef struct HTMLTextContainerEvents2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        HTMLTextContainerEvents2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        HTMLTextContainerEvents2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        HTMLTextContainerEvents2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        HTMLTextContainerEvents2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        HTMLTextContainerEvents2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        HTMLTextContainerEvents2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        HTMLTextContainerEvents2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} HTMLTextContainerEvents2Vtbl;
interface HTMLTextContainerEvents2 {
    CONST_VTBL HTMLTextContainerEvents2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define HTMLTextContainerEvents2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define HTMLTextContainerEvents2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define HTMLTextContainerEvents2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define HTMLTextContainerEvents2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define HTMLTextContainerEvents2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define HTMLTextContainerEvents2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define HTMLTextContainerEvents2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __HTMLTextContainerEvents2_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDocument interface
 */
#ifndef __IHTMLDocument_INTERFACE_DEFINED__
#define __IHTMLDocument_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDocument, 0x626fc520, 0xa41e, 0x11cf, 0xa7,0x31, 0x00,0xa0,0xc9,0x08,0x26,0x37);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDocument : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_Script(
        IDispatch **p) = 0;

};
#else
typedef struct IHTMLDocumentVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDocument* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDocument* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDocument* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDocument* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDocument* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDocument* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDocument* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDocument methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Script)(
        IHTMLDocument* This,
        IDispatch **p);

    END_INTERFACE
} IHTMLDocumentVtbl;
interface IHTMLDocument {
    CONST_VTBL IHTMLDocumentVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDocument_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDocument_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDocument_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDocument_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDocument_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDocument_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDocument_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDocument methods ***/
#define IHTMLDocument_get_Script(This,p) (This)->lpVtbl->get_Script(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDocument_get_Script_Proxy(
    IHTMLDocument* This,
    IDispatch **p);
void __RPC_STUB IHTMLDocument_get_Script_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDocument_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDocument2 interface
 */
#ifndef __IHTMLDocument2_INTERFACE_DEFINED__
#define __IHTMLDocument2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDocument2, 0x332c4425, 0x26cb, 0x11d0, 0xb4,0x83, 0x00,0xc0,0x4f,0xd9,0x01,0x19);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDocument2 : public IHTMLDocument
{
    virtual HRESULT STDMETHODCALLTYPE get_all(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_body(
        IHTMLElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_activeElement(
        IHTMLElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_images(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_applets(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_links(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_forms(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_anchors(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_title(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_title(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scripts(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_designMode(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_designMode(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_selection(
        IHTMLSelectionObject **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readyState(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_frames(
        IHTMLFramesCollection2 **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_embeds(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_plugins(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_alinkColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_alinkColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_bgColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_bgColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_fgColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fgColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_linkColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_linkColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_vlinkColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_vlinkColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_referrer(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_location(
        IHTMLLocation **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_lastModified(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_URL(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_URL(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_domain(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_domain(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_cookie(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cookie(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_expando(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_expando(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_charset(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_charset(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_defaultCharset(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_defaultCharset(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_mimeType(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fileSize(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fileCreatedDate(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fileModifiedDate(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fileUpdatedDate(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_security(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_protocol(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_nameProp(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE write(
        SAFEARRAY *psarray) = 0;

    virtual HRESULT STDMETHODCALLTYPE writeln(
        SAFEARRAY *psarray) = 0;

    virtual HRESULT STDMETHODCALLTYPE open(
        BSTR url,
        VARIANT name,
        VARIANT features,
        VARIANT replace,
        IDispatch **pomWindowResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE close(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE clear(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE queryCommandSupported(
        BSTR cmdID,
        VARIANT_BOOL *pfRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE queryCommandEnabled(
        BSTR cmdID,
        VARIANT_BOOL *pfRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE queryCommandState(
        BSTR cmdID,
        VARIANT_BOOL *pfRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE queryCommandIndeterm(
        BSTR cmdID,
        VARIANT_BOOL *pfRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE queryCommandText(
        BSTR cmdID,
        BSTR *pcmdText) = 0;

    virtual HRESULT STDMETHODCALLTYPE queryCommandValue(
        BSTR cmdID,
        VARIANT *pcmdValue) = 0;

    virtual HRESULT STDMETHODCALLTYPE execCommand(
        BSTR cmdID,
        VARIANT_BOOL showUI,
        VARIANT value,
        VARIANT_BOOL *pfRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE execCommandShowHelp(
        BSTR cmdID,
        VARIANT_BOOL *pfRet) = 0;

    virtual HRESULT STDMETHODCALLTYPE createElement(
        BSTR eTag,
        IHTMLElement **newElem) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onhelp(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onhelp(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onclick(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onclick(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondblclick(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondblclick(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onkeyup(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onkeyup(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onkeydown(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onkeydown(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onkeypress(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onkeypress(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmouseup(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmouseup(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmousedown(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmousedown(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmousemove(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmousemove(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmouseout(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmouseout(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onmouseover(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmouseover(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onreadystatechange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onreadystatechange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onafterupdate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onafterupdate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onrowexit(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onrowexit(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onrowenter(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onrowenter(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondragstart(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondragstart(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onselectstart(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onselectstart(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE elementFromPoint(
        LONG x,
        LONG y,
        IHTMLElement **elementHit) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_parentWindow(
        IHTMLWindow2 **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_styleSheets(
        IHTMLStyleSheetsCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforeupdate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforeupdate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onerrorupdate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onerrorupdate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE toString(
        BSTR *String) = 0;

    virtual HRESULT STDMETHODCALLTYPE createStyleSheet(
        BSTR bstrHref,
        LONG lIndex,
        IHTMLStyleSheet **ppnewStyleSheet) = 0;

};
#else
typedef struct IHTMLDocument2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDocument2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDocument2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDocument2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDocument2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDocument2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDocument2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDocument2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDocument methods ***/
    HRESULT (STDMETHODCALLTYPE *get_Script)(
        IHTMLDocument2* This,
        IDispatch **p);

    /*** IHTMLDocument2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_all)(
        IHTMLDocument2* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *get_body)(
        IHTMLDocument2* This,
        IHTMLElement **p);

    HRESULT (STDMETHODCALLTYPE *get_activeElement)(
        IHTMLDocument2* This,
        IHTMLElement **p);

    HRESULT (STDMETHODCALLTYPE *get_images)(
        IHTMLDocument2* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *get_applets)(
        IHTMLDocument2* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *get_links)(
        IHTMLDocument2* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *get_forms)(
        IHTMLDocument2* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *get_anchors)(
        IHTMLDocument2* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *put_title)(
        IHTMLDocument2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_title)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_scripts)(
        IHTMLDocument2* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *put_designMode)(
        IHTMLDocument2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_designMode)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_selection)(
        IHTMLDocument2* This,
        IHTMLSelectionObject **p);

    HRESULT (STDMETHODCALLTYPE *get_readyState)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_frames)(
        IHTMLDocument2* This,
        IHTMLFramesCollection2 **p);

    HRESULT (STDMETHODCALLTYPE *get_embeds)(
        IHTMLDocument2* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *get_plugins)(
        IHTMLDocument2* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *put_alinkColor)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_alinkColor)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_bgColor)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_bgColor)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_fgColor)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_fgColor)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_linkColor)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_linkColor)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_vlinkColor)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_vlinkColor)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_referrer)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_location)(
        IHTMLDocument2* This,
        IHTMLLocation **p);

    HRESULT (STDMETHODCALLTYPE *get_lastModified)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_URL)(
        IHTMLDocument2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_URL)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_domain)(
        IHTMLDocument2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_domain)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_cookie)(
        IHTMLDocument2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_cookie)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_expando)(
        IHTMLDocument2* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_expando)(
        IHTMLDocument2* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_charset)(
        IHTMLDocument2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_charset)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_defaultCharset)(
        IHTMLDocument2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_defaultCharset)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_mimeType)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_fileSize)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_fileCreatedDate)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_fileModifiedDate)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_fileUpdatedDate)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_security)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_protocol)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_nameProp)(
        IHTMLDocument2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *write)(
        IHTMLDocument2* This,
        SAFEARRAY *psarray);

    HRESULT (STDMETHODCALLTYPE *writeln)(
        IHTMLDocument2* This,
        SAFEARRAY *psarray);

    HRESULT (STDMETHODCALLTYPE *open)(
        IHTMLDocument2* This,
        BSTR url,
        VARIANT name,
        VARIANT features,
        VARIANT replace,
        IDispatch **pomWindowResult);

    HRESULT (STDMETHODCALLTYPE *close)(
        IHTMLDocument2* This);

    HRESULT (STDMETHODCALLTYPE *clear)(
        IHTMLDocument2* This);

    HRESULT (STDMETHODCALLTYPE *queryCommandSupported)(
        IHTMLDocument2* This,
        BSTR cmdID,
        VARIANT_BOOL *pfRet);

    HRESULT (STDMETHODCALLTYPE *queryCommandEnabled)(
        IHTMLDocument2* This,
        BSTR cmdID,
        VARIANT_BOOL *pfRet);

    HRESULT (STDMETHODCALLTYPE *queryCommandState)(
        IHTMLDocument2* This,
        BSTR cmdID,
        VARIANT_BOOL *pfRet);

    HRESULT (STDMETHODCALLTYPE *queryCommandIndeterm)(
        IHTMLDocument2* This,
        BSTR cmdID,
        VARIANT_BOOL *pfRet);

    HRESULT (STDMETHODCALLTYPE *queryCommandText)(
        IHTMLDocument2* This,
        BSTR cmdID,
        BSTR *pcmdText);

    HRESULT (STDMETHODCALLTYPE *queryCommandValue)(
        IHTMLDocument2* This,
        BSTR cmdID,
        VARIANT *pcmdValue);

    HRESULT (STDMETHODCALLTYPE *execCommand)(
        IHTMLDocument2* This,
        BSTR cmdID,
        VARIANT_BOOL showUI,
        VARIANT value,
        VARIANT_BOOL *pfRet);

    HRESULT (STDMETHODCALLTYPE *execCommandShowHelp)(
        IHTMLDocument2* This,
        BSTR cmdID,
        VARIANT_BOOL *pfRet);

    HRESULT (STDMETHODCALLTYPE *createElement)(
        IHTMLDocument2* This,
        BSTR eTag,
        IHTMLElement **newElem);

    HRESULT (STDMETHODCALLTYPE *put_onhelp)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onhelp)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onclick)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onclick)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondblclick)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondblclick)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onkeyup)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onkeyup)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onkeydown)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onkeydown)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onkeypress)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onkeypress)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmouseup)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmouseup)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmousedown)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmousedown)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmousemove)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmousemove)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmouseout)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmouseout)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onmouseover)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmouseover)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onreadystatechange)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onafterupdate)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onafterupdate)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onrowexit)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onrowexit)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onrowenter)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onrowenter)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondragstart)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondragstart)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onselectstart)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onselectstart)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *elementFromPoint)(
        IHTMLDocument2* This,
        LONG x,
        LONG y,
        IHTMLElement **elementHit);

    HRESULT (STDMETHODCALLTYPE *get_parentWindow)(
        IHTMLDocument2* This,
        IHTMLWindow2 **p);

    HRESULT (STDMETHODCALLTYPE *get_styleSheets)(
        IHTMLDocument2* This,
        IHTMLStyleSheetsCollection **p);

    HRESULT (STDMETHODCALLTYPE *put_onbeforeupdate)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforeupdate)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onerrorupdate)(
        IHTMLDocument2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onerrorupdate)(
        IHTMLDocument2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *toString)(
        IHTMLDocument2* This,
        BSTR *String);

    HRESULT (STDMETHODCALLTYPE *createStyleSheet)(
        IHTMLDocument2* This,
        BSTR bstrHref,
        LONG lIndex,
        IHTMLStyleSheet **ppnewStyleSheet);

    END_INTERFACE
} IHTMLDocument2Vtbl;
interface IHTMLDocument2 {
    CONST_VTBL IHTMLDocument2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDocument2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDocument2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDocument2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDocument2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDocument2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDocument2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDocument2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDocument methods ***/
#define IHTMLDocument2_get_Script(This,p) (This)->lpVtbl->get_Script(This,p)
/*** IHTMLDocument2 methods ***/
#define IHTMLDocument2_get_all(This,p) (This)->lpVtbl->get_all(This,p)
#define IHTMLDocument2_get_body(This,p) (This)->lpVtbl->get_body(This,p)
#define IHTMLDocument2_get_activeElement(This,p) (This)->lpVtbl->get_activeElement(This,p)
#define IHTMLDocument2_get_images(This,p) (This)->lpVtbl->get_images(This,p)
#define IHTMLDocument2_get_applets(This,p) (This)->lpVtbl->get_applets(This,p)
#define IHTMLDocument2_get_links(This,p) (This)->lpVtbl->get_links(This,p)
#define IHTMLDocument2_get_forms(This,p) (This)->lpVtbl->get_forms(This,p)
#define IHTMLDocument2_get_anchors(This,p) (This)->lpVtbl->get_anchors(This,p)
#define IHTMLDocument2_put_title(This,v) (This)->lpVtbl->put_title(This,v)
#define IHTMLDocument2_get_title(This,p) (This)->lpVtbl->get_title(This,p)
#define IHTMLDocument2_get_scripts(This,p) (This)->lpVtbl->get_scripts(This,p)
#define IHTMLDocument2_put_designMode(This,v) (This)->lpVtbl->put_designMode(This,v)
#define IHTMLDocument2_get_designMode(This,p) (This)->lpVtbl->get_designMode(This,p)
#define IHTMLDocument2_get_selection(This,p) (This)->lpVtbl->get_selection(This,p)
#define IHTMLDocument2_get_readyState(This,p) (This)->lpVtbl->get_readyState(This,p)
#define IHTMLDocument2_get_frames(This,p) (This)->lpVtbl->get_frames(This,p)
#define IHTMLDocument2_get_embeds(This,p) (This)->lpVtbl->get_embeds(This,p)
#define IHTMLDocument2_get_plugins(This,p) (This)->lpVtbl->get_plugins(This,p)
#define IHTMLDocument2_put_alinkColor(This,v) (This)->lpVtbl->put_alinkColor(This,v)
#define IHTMLDocument2_get_alinkColor(This,p) (This)->lpVtbl->get_alinkColor(This,p)
#define IHTMLDocument2_put_bgColor(This,v) (This)->lpVtbl->put_bgColor(This,v)
#define IHTMLDocument2_get_bgColor(This,p) (This)->lpVtbl->get_bgColor(This,p)
#define IHTMLDocument2_put_fgColor(This,v) (This)->lpVtbl->put_fgColor(This,v)
#define IHTMLDocument2_get_fgColor(This,p) (This)->lpVtbl->get_fgColor(This,p)
#define IHTMLDocument2_put_linkColor(This,v) (This)->lpVtbl->put_linkColor(This,v)
#define IHTMLDocument2_get_linkColor(This,p) (This)->lpVtbl->get_linkColor(This,p)
#define IHTMLDocument2_put_vlinkColor(This,v) (This)->lpVtbl->put_vlinkColor(This,v)
#define IHTMLDocument2_get_vlinkColor(This,p) (This)->lpVtbl->get_vlinkColor(This,p)
#define IHTMLDocument2_get_referrer(This,p) (This)->lpVtbl->get_referrer(This,p)
#define IHTMLDocument2_get_location(This,p) (This)->lpVtbl->get_location(This,p)
#define IHTMLDocument2_get_lastModified(This,p) (This)->lpVtbl->get_lastModified(This,p)
#define IHTMLDocument2_put_URL(This,v) (This)->lpVtbl->put_URL(This,v)
#define IHTMLDocument2_get_URL(This,p) (This)->lpVtbl->get_URL(This,p)
#define IHTMLDocument2_put_domain(This,v) (This)->lpVtbl->put_domain(This,v)
#define IHTMLDocument2_get_domain(This,p) (This)->lpVtbl->get_domain(This,p)
#define IHTMLDocument2_put_cookie(This,v) (This)->lpVtbl->put_cookie(This,v)
#define IHTMLDocument2_get_cookie(This,p) (This)->lpVtbl->get_cookie(This,p)
#define IHTMLDocument2_put_expando(This,v) (This)->lpVtbl->put_expando(This,v)
#define IHTMLDocument2_get_expando(This,p) (This)->lpVtbl->get_expando(This,p)
#define IHTMLDocument2_put_charset(This,v) (This)->lpVtbl->put_charset(This,v)
#define IHTMLDocument2_get_charset(This,p) (This)->lpVtbl->get_charset(This,p)
#define IHTMLDocument2_put_defaultCharset(This,v) (This)->lpVtbl->put_defaultCharset(This,v)
#define IHTMLDocument2_get_defaultCharset(This,p) (This)->lpVtbl->get_defaultCharset(This,p)
#define IHTMLDocument2_get_mimeType(This,p) (This)->lpVtbl->get_mimeType(This,p)
#define IHTMLDocument2_get_fileSize(This,p) (This)->lpVtbl->get_fileSize(This,p)
#define IHTMLDocument2_get_fileCreatedDate(This,p) (This)->lpVtbl->get_fileCreatedDate(This,p)
#define IHTMLDocument2_get_fileModifiedDate(This,p) (This)->lpVtbl->get_fileModifiedDate(This,p)
#define IHTMLDocument2_get_fileUpdatedDate(This,p) (This)->lpVtbl->get_fileUpdatedDate(This,p)
#define IHTMLDocument2_get_security(This,p) (This)->lpVtbl->get_security(This,p)
#define IHTMLDocument2_get_protocol(This,p) (This)->lpVtbl->get_protocol(This,p)
#define IHTMLDocument2_get_nameProp(This,p) (This)->lpVtbl->get_nameProp(This,p)
#define IHTMLDocument2_write(This,psarray) (This)->lpVtbl->write(This,psarray)
#define IHTMLDocument2_writeln(This,psarray) (This)->lpVtbl->writeln(This,psarray)
#define IHTMLDocument2_open(This,url,name,features,replace,pomWindowResult) (This)->lpVtbl->open(This,url,name,features,replace,pomWindowResult)
#define IHTMLDocument2_close(This) (This)->lpVtbl->close(This)
#define IHTMLDocument2_clear(This) (This)->lpVtbl->clear(This)
#define IHTMLDocument2_queryCommandSupported(This,cmdID,pfRet) (This)->lpVtbl->queryCommandSupported(This,cmdID,pfRet)
#define IHTMLDocument2_queryCommandEnabled(This,cmdID,pfRet) (This)->lpVtbl->queryCommandEnabled(This,cmdID,pfRet)
#define IHTMLDocument2_queryCommandState(This,cmdID,pfRet) (This)->lpVtbl->queryCommandState(This,cmdID,pfRet)
#define IHTMLDocument2_queryCommandIndeterm(This,cmdID,pfRet) (This)->lpVtbl->queryCommandIndeterm(This,cmdID,pfRet)
#define IHTMLDocument2_queryCommandText(This,cmdID,pcmdText) (This)->lpVtbl->queryCommandText(This,cmdID,pcmdText)
#define IHTMLDocument2_queryCommandValue(This,cmdID,pcmdValue) (This)->lpVtbl->queryCommandValue(This,cmdID,pcmdValue)
#define IHTMLDocument2_execCommand(This,cmdID,showUI,value,pfRet) (This)->lpVtbl->execCommand(This,cmdID,showUI,value,pfRet)
#define IHTMLDocument2_execCommandShowHelp(This,cmdID,pfRet) (This)->lpVtbl->execCommandShowHelp(This,cmdID,pfRet)
#define IHTMLDocument2_createElement(This,eTag,newElem) (This)->lpVtbl->createElement(This,eTag,newElem)
#define IHTMLDocument2_put_onhelp(This,v) (This)->lpVtbl->put_onhelp(This,v)
#define IHTMLDocument2_get_onhelp(This,p) (This)->lpVtbl->get_onhelp(This,p)
#define IHTMLDocument2_put_onclick(This,v) (This)->lpVtbl->put_onclick(This,v)
#define IHTMLDocument2_get_onclick(This,p) (This)->lpVtbl->get_onclick(This,p)
#define IHTMLDocument2_put_ondblclick(This,v) (This)->lpVtbl->put_ondblclick(This,v)
#define IHTMLDocument2_get_ondblclick(This,p) (This)->lpVtbl->get_ondblclick(This,p)
#define IHTMLDocument2_put_onkeyup(This,v) (This)->lpVtbl->put_onkeyup(This,v)
#define IHTMLDocument2_get_onkeyup(This,p) (This)->lpVtbl->get_onkeyup(This,p)
#define IHTMLDocument2_put_onkeydown(This,v) (This)->lpVtbl->put_onkeydown(This,v)
#define IHTMLDocument2_get_onkeydown(This,p) (This)->lpVtbl->get_onkeydown(This,p)
#define IHTMLDocument2_put_onkeypress(This,v) (This)->lpVtbl->put_onkeypress(This,v)
#define IHTMLDocument2_get_onkeypress(This,p) (This)->lpVtbl->get_onkeypress(This,p)
#define IHTMLDocument2_put_onmouseup(This,v) (This)->lpVtbl->put_onmouseup(This,v)
#define IHTMLDocument2_get_onmouseup(This,p) (This)->lpVtbl->get_onmouseup(This,p)
#define IHTMLDocument2_put_onmousedown(This,v) (This)->lpVtbl->put_onmousedown(This,v)
#define IHTMLDocument2_get_onmousedown(This,p) (This)->lpVtbl->get_onmousedown(This,p)
#define IHTMLDocument2_put_onmousemove(This,v) (This)->lpVtbl->put_onmousemove(This,v)
#define IHTMLDocument2_get_onmousemove(This,p) (This)->lpVtbl->get_onmousemove(This,p)
#define IHTMLDocument2_put_onmouseout(This,v) (This)->lpVtbl->put_onmouseout(This,v)
#define IHTMLDocument2_get_onmouseout(This,p) (This)->lpVtbl->get_onmouseout(This,p)
#define IHTMLDocument2_put_onmouseover(This,v) (This)->lpVtbl->put_onmouseover(This,v)
#define IHTMLDocument2_get_onmouseover(This,p) (This)->lpVtbl->get_onmouseover(This,p)
#define IHTMLDocument2_put_onreadystatechange(This,v) (This)->lpVtbl->put_onreadystatechange(This,v)
#define IHTMLDocument2_get_onreadystatechange(This,p) (This)->lpVtbl->get_onreadystatechange(This,p)
#define IHTMLDocument2_put_onafterupdate(This,v) (This)->lpVtbl->put_onafterupdate(This,v)
#define IHTMLDocument2_get_onafterupdate(This,p) (This)->lpVtbl->get_onafterupdate(This,p)
#define IHTMLDocument2_put_onrowexit(This,v) (This)->lpVtbl->put_onrowexit(This,v)
#define IHTMLDocument2_get_onrowexit(This,p) (This)->lpVtbl->get_onrowexit(This,p)
#define IHTMLDocument2_put_onrowenter(This,v) (This)->lpVtbl->put_onrowenter(This,v)
#define IHTMLDocument2_get_onrowenter(This,p) (This)->lpVtbl->get_onrowenter(This,p)
#define IHTMLDocument2_put_ondragstart(This,v) (This)->lpVtbl->put_ondragstart(This,v)
#define IHTMLDocument2_get_ondragstart(This,p) (This)->lpVtbl->get_ondragstart(This,p)
#define IHTMLDocument2_put_onselectstart(This,v) (This)->lpVtbl->put_onselectstart(This,v)
#define IHTMLDocument2_get_onselectstart(This,p) (This)->lpVtbl->get_onselectstart(This,p)
#define IHTMLDocument2_elementFromPoint(This,x,y,elementHit) (This)->lpVtbl->elementFromPoint(This,x,y,elementHit)
#define IHTMLDocument2_get_parentWindow(This,p) (This)->lpVtbl->get_parentWindow(This,p)
#define IHTMLDocument2_get_styleSheets(This,p) (This)->lpVtbl->get_styleSheets(This,p)
#define IHTMLDocument2_put_onbeforeupdate(This,v) (This)->lpVtbl->put_onbeforeupdate(This,v)
#define IHTMLDocument2_get_onbeforeupdate(This,p) (This)->lpVtbl->get_onbeforeupdate(This,p)
#define IHTMLDocument2_put_onerrorupdate(This,v) (This)->lpVtbl->put_onerrorupdate(This,v)
#define IHTMLDocument2_get_onerrorupdate(This,p) (This)->lpVtbl->get_onerrorupdate(This,p)
#define IHTMLDocument2_toString(This,String) (This)->lpVtbl->toString(This,String)
#define IHTMLDocument2_createStyleSheet(This,bstrHref,lIndex,ppnewStyleSheet) (This)->lpVtbl->createStyleSheet(This,bstrHref,lIndex,ppnewStyleSheet)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_all_Proxy(
    IHTMLDocument2* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLDocument2_get_all_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_body_Proxy(
    IHTMLDocument2* This,
    IHTMLElement **p);
void __RPC_STUB IHTMLDocument2_get_body_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_activeElement_Proxy(
    IHTMLDocument2* This,
    IHTMLElement **p);
void __RPC_STUB IHTMLDocument2_get_activeElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_images_Proxy(
    IHTMLDocument2* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLDocument2_get_images_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_applets_Proxy(
    IHTMLDocument2* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLDocument2_get_applets_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_links_Proxy(
    IHTMLDocument2* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLDocument2_get_links_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_forms_Proxy(
    IHTMLDocument2* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLDocument2_get_forms_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_anchors_Proxy(
    IHTMLDocument2* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLDocument2_get_anchors_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_title_Proxy(
    IHTMLDocument2* This,
    BSTR v);
void __RPC_STUB IHTMLDocument2_put_title_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_title_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_title_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_scripts_Proxy(
    IHTMLDocument2* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLDocument2_get_scripts_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_designMode_Proxy(
    IHTMLDocument2* This,
    BSTR v);
void __RPC_STUB IHTMLDocument2_put_designMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_designMode_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_designMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_selection_Proxy(
    IHTMLDocument2* This,
    IHTMLSelectionObject **p);
void __RPC_STUB IHTMLDocument2_get_selection_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_readyState_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_readyState_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_frames_Proxy(
    IHTMLDocument2* This,
    IHTMLFramesCollection2 **p);
void __RPC_STUB IHTMLDocument2_get_frames_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_embeds_Proxy(
    IHTMLDocument2* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLDocument2_get_embeds_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_plugins_Proxy(
    IHTMLDocument2* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLDocument2_get_plugins_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_alinkColor_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_alinkColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_alinkColor_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_alinkColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_bgColor_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_bgColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_bgColor_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_bgColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_fgColor_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_fgColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_fgColor_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_fgColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_linkColor_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_linkColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_linkColor_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_linkColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_vlinkColor_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_vlinkColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_vlinkColor_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_vlinkColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_referrer_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_referrer_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_location_Proxy(
    IHTMLDocument2* This,
    IHTMLLocation **p);
void __RPC_STUB IHTMLDocument2_get_location_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_lastModified_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_lastModified_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_URL_Proxy(
    IHTMLDocument2* This,
    BSTR v);
void __RPC_STUB IHTMLDocument2_put_URL_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_URL_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_URL_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_domain_Proxy(
    IHTMLDocument2* This,
    BSTR v);
void __RPC_STUB IHTMLDocument2_put_domain_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_domain_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_domain_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_cookie_Proxy(
    IHTMLDocument2* This,
    BSTR v);
void __RPC_STUB IHTMLDocument2_put_cookie_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_cookie_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_cookie_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_expando_Proxy(
    IHTMLDocument2* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLDocument2_put_expando_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_expando_Proxy(
    IHTMLDocument2* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLDocument2_get_expando_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_charset_Proxy(
    IHTMLDocument2* This,
    BSTR v);
void __RPC_STUB IHTMLDocument2_put_charset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_charset_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_charset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_defaultCharset_Proxy(
    IHTMLDocument2* This,
    BSTR v);
void __RPC_STUB IHTMLDocument2_put_defaultCharset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_defaultCharset_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_defaultCharset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_mimeType_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_mimeType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_fileSize_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_fileSize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_fileCreatedDate_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_fileCreatedDate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_fileModifiedDate_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_fileModifiedDate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_fileUpdatedDate_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_fileUpdatedDate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_security_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_security_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_protocol_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_protocol_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_nameProp_Proxy(
    IHTMLDocument2* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument2_get_nameProp_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_write_Proxy(
    IHTMLDocument2* This,
    SAFEARRAY *psarray);
void __RPC_STUB IHTMLDocument2_write_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_writeln_Proxy(
    IHTMLDocument2* This,
    SAFEARRAY *psarray);
void __RPC_STUB IHTMLDocument2_writeln_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_open_Proxy(
    IHTMLDocument2* This,
    BSTR url,
    VARIANT name,
    VARIANT features,
    VARIANT replace,
    IDispatch **pomWindowResult);
void __RPC_STUB IHTMLDocument2_open_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_close_Proxy(
    IHTMLDocument2* This);
void __RPC_STUB IHTMLDocument2_close_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_clear_Proxy(
    IHTMLDocument2* This);
void __RPC_STUB IHTMLDocument2_clear_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_queryCommandSupported_Proxy(
    IHTMLDocument2* This,
    BSTR cmdID,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLDocument2_queryCommandSupported_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_queryCommandEnabled_Proxy(
    IHTMLDocument2* This,
    BSTR cmdID,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLDocument2_queryCommandEnabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_queryCommandState_Proxy(
    IHTMLDocument2* This,
    BSTR cmdID,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLDocument2_queryCommandState_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_queryCommandIndeterm_Proxy(
    IHTMLDocument2* This,
    BSTR cmdID,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLDocument2_queryCommandIndeterm_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_queryCommandText_Proxy(
    IHTMLDocument2* This,
    BSTR cmdID,
    BSTR *pcmdText);
void __RPC_STUB IHTMLDocument2_queryCommandText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_queryCommandValue_Proxy(
    IHTMLDocument2* This,
    BSTR cmdID,
    VARIANT *pcmdValue);
void __RPC_STUB IHTMLDocument2_queryCommandValue_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_execCommand_Proxy(
    IHTMLDocument2* This,
    BSTR cmdID,
    VARIANT_BOOL showUI,
    VARIANT value,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLDocument2_execCommand_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_execCommandShowHelp_Proxy(
    IHTMLDocument2* This,
    BSTR cmdID,
    VARIANT_BOOL *pfRet);
void __RPC_STUB IHTMLDocument2_execCommandShowHelp_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_createElement_Proxy(
    IHTMLDocument2* This,
    BSTR eTag,
    IHTMLElement **newElem);
void __RPC_STUB IHTMLDocument2_createElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onhelp_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onhelp_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onhelp_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onhelp_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onclick_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onclick_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onclick_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onclick_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_ondblclick_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_ondblclick_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_ondblclick_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_ondblclick_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onkeyup_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onkeyup_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onkeyup_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onkeyup_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onkeydown_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onkeydown_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onkeydown_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onkeydown_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onkeypress_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onkeypress_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onkeypress_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onkeypress_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onmouseup_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onmouseup_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onmouseup_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onmouseup_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onmousedown_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onmousedown_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onmousedown_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onmousedown_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onmousemove_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onmousemove_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onmousemove_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onmousemove_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onmouseout_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onmouseout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onmouseout_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onmouseout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onmouseover_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onmouseover_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onmouseover_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onmouseover_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onreadystatechange_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onreadystatechange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onreadystatechange_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onreadystatechange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onafterupdate_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onafterupdate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onafterupdate_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onafterupdate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onrowexit_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onrowexit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onrowexit_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onrowexit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onrowenter_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onrowenter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onrowenter_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onrowenter_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_ondragstart_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_ondragstart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_ondragstart_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_ondragstart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onselectstart_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onselectstart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onselectstart_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onselectstart_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_elementFromPoint_Proxy(
    IHTMLDocument2* This,
    LONG x,
    LONG y,
    IHTMLElement **elementHit);
void __RPC_STUB IHTMLDocument2_elementFromPoint_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_parentWindow_Proxy(
    IHTMLDocument2* This,
    IHTMLWindow2 **p);
void __RPC_STUB IHTMLDocument2_get_parentWindow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_styleSheets_Proxy(
    IHTMLDocument2* This,
    IHTMLStyleSheetsCollection **p);
void __RPC_STUB IHTMLDocument2_get_styleSheets_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onbeforeupdate_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onbeforeupdate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onbeforeupdate_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onbeforeupdate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_put_onerrorupdate_Proxy(
    IHTMLDocument2* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument2_put_onerrorupdate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_get_onerrorupdate_Proxy(
    IHTMLDocument2* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument2_get_onerrorupdate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_toString_Proxy(
    IHTMLDocument2* This,
    BSTR *String);
void __RPC_STUB IHTMLDocument2_toString_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument2_createStyleSheet_Proxy(
    IHTMLDocument2* This,
    BSTR bstrHref,
    LONG lIndex,
    IHTMLStyleSheet **ppnewStyleSheet);
void __RPC_STUB IHTMLDocument2_createStyleSheet_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDocument2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDocument3 interface
 */
#ifndef __IHTMLDocument3_INTERFACE_DEFINED__
#define __IHTMLDocument3_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDocument3, 0x3050f485, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDocument3 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE releaseCapture(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE recalc(
        VARIANT_BOOL fForce) = 0;

    virtual HRESULT STDMETHODCALLTYPE createTextNode(
        BSTR text,
        IHTMLDOMNode **newTextNode) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_documentElement(
        IHTMLElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_uniqueID(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE attachEvent(
        BSTR event,
        IDispatch *pDisp,
        VARIANT_BOOL *pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE detachEvent(
        BSTR event,
        IDispatch *pDisp) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onrowsdelete(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onrowsdelete(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onrowsinserted(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onrowsinserted(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_oncellchange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_oncellchange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondatasetchanged(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondatasetchanged(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondataavailable(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondataavailable(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondatasetcomplete(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondatasetcomplete(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onpropertychange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onpropertychange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_dir(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_dir(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_oncontextmenu(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_oncontextmenu(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onstop(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onstop(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE createDocumentFragment(
        IHTMLDocument2 **pNewDoc) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_parentDocument(
        IHTMLDocument2 **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_enableDownload(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_enableDownload(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_baseUrl(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_baseUrl(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_childNodes(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_inheritStyleSheets(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_inheritStyleSheets(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforeeditfocus(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforeeditfocus(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE getElementsByName(
        BSTR v,
        IHTMLElementCollection **pelColl) = 0;

    virtual HRESULT STDMETHODCALLTYPE getElementById(
        BSTR v,
        IHTMLElement **pel) = 0;

    virtual HRESULT STDMETHODCALLTYPE getElementsByTagName(
        BSTR v,
        IHTMLElementCollection **pelColl) = 0;

};
#else
typedef struct IHTMLDocument3Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDocument3* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDocument3* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDocument3* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDocument3* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDocument3* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDocument3* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDocument3* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDocument3 methods ***/
    HRESULT (STDMETHODCALLTYPE *releaseCapture)(
        IHTMLDocument3* This);

    HRESULT (STDMETHODCALLTYPE *recalc)(
        IHTMLDocument3* This,
        VARIANT_BOOL fForce);

    HRESULT (STDMETHODCALLTYPE *createTextNode)(
        IHTMLDocument3* This,
        BSTR text,
        IHTMLDOMNode **newTextNode);

    HRESULT (STDMETHODCALLTYPE *get_documentElement)(
        IHTMLDocument3* This,
        IHTMLElement **p);

    HRESULT (STDMETHODCALLTYPE *get_uniqueID)(
        IHTMLDocument3* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *attachEvent)(
        IHTMLDocument3* This,
        BSTR event,
        IDispatch *pDisp,
        VARIANT_BOOL *pfResult);

    HRESULT (STDMETHODCALLTYPE *detachEvent)(
        IHTMLDocument3* This,
        BSTR event,
        IDispatch *pDisp);

    HRESULT (STDMETHODCALLTYPE *put_onrowsdelete)(
        IHTMLDocument3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onrowsdelete)(
        IHTMLDocument3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onrowsinserted)(
        IHTMLDocument3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onrowsinserted)(
        IHTMLDocument3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_oncellchange)(
        IHTMLDocument3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_oncellchange)(
        IHTMLDocument3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondatasetchanged)(
        IHTMLDocument3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondatasetchanged)(
        IHTMLDocument3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondataavailable)(
        IHTMLDocument3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondataavailable)(
        IHTMLDocument3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondatasetcomplete)(
        IHTMLDocument3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondatasetcomplete)(
        IHTMLDocument3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onpropertychange)(
        IHTMLDocument3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onpropertychange)(
        IHTMLDocument3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_dir)(
        IHTMLDocument3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_dir)(
        IHTMLDocument3* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_oncontextmenu)(
        IHTMLDocument3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_oncontextmenu)(
        IHTMLDocument3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onstop)(
        IHTMLDocument3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onstop)(
        IHTMLDocument3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *createDocumentFragment)(
        IHTMLDocument3* This,
        IHTMLDocument2 **pNewDoc);

    HRESULT (STDMETHODCALLTYPE *get_parentDocument)(
        IHTMLDocument3* This,
        IHTMLDocument2 **p);

    HRESULT (STDMETHODCALLTYPE *put_enableDownload)(
        IHTMLDocument3* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_enableDownload)(
        IHTMLDocument3* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_baseUrl)(
        IHTMLDocument3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_baseUrl)(
        IHTMLDocument3* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
        IHTMLDocument3* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *put_inheritStyleSheets)(
        IHTMLDocument3* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_inheritStyleSheets)(
        IHTMLDocument3* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_onbeforeeditfocus)(
        IHTMLDocument3* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforeeditfocus)(
        IHTMLDocument3* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *getElementsByName)(
        IHTMLDocument3* This,
        BSTR v,
        IHTMLElementCollection **pelColl);

    HRESULT (STDMETHODCALLTYPE *getElementById)(
        IHTMLDocument3* This,
        BSTR v,
        IHTMLElement **pel);

    HRESULT (STDMETHODCALLTYPE *getElementsByTagName)(
        IHTMLDocument3* This,
        BSTR v,
        IHTMLElementCollection **pelColl);

    END_INTERFACE
} IHTMLDocument3Vtbl;
interface IHTMLDocument3 {
    CONST_VTBL IHTMLDocument3Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDocument3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDocument3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDocument3_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDocument3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDocument3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDocument3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDocument3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDocument3 methods ***/
#define IHTMLDocument3_releaseCapture(This) (This)->lpVtbl->releaseCapture(This)
#define IHTMLDocument3_recalc(This,fForce) (This)->lpVtbl->recalc(This,fForce)
#define IHTMLDocument3_createTextNode(This,text,newTextNode) (This)->lpVtbl->createTextNode(This,text,newTextNode)
#define IHTMLDocument3_get_documentElement(This,p) (This)->lpVtbl->get_documentElement(This,p)
#define IHTMLDocument3_get_uniqueID(This,p) (This)->lpVtbl->get_uniqueID(This,p)
#define IHTMLDocument3_attachEvent(This,event,pDisp,pfResult) (This)->lpVtbl->attachEvent(This,event,pDisp,pfResult)
#define IHTMLDocument3_detachEvent(This,event,pDisp) (This)->lpVtbl->detachEvent(This,event,pDisp)
#define IHTMLDocument3_put_onrowsdelete(This,v) (This)->lpVtbl->put_onrowsdelete(This,v)
#define IHTMLDocument3_get_onrowsdelete(This,p) (This)->lpVtbl->get_onrowsdelete(This,p)
#define IHTMLDocument3_put_onrowsinserted(This,v) (This)->lpVtbl->put_onrowsinserted(This,v)
#define IHTMLDocument3_get_onrowsinserted(This,p) (This)->lpVtbl->get_onrowsinserted(This,p)
#define IHTMLDocument3_put_oncellchange(This,v) (This)->lpVtbl->put_oncellchange(This,v)
#define IHTMLDocument3_get_oncellchange(This,p) (This)->lpVtbl->get_oncellchange(This,p)
#define IHTMLDocument3_put_ondatasetchanged(This,v) (This)->lpVtbl->put_ondatasetchanged(This,v)
#define IHTMLDocument3_get_ondatasetchanged(This,p) (This)->lpVtbl->get_ondatasetchanged(This,p)
#define IHTMLDocument3_put_ondataavailable(This,v) (This)->lpVtbl->put_ondataavailable(This,v)
#define IHTMLDocument3_get_ondataavailable(This,p) (This)->lpVtbl->get_ondataavailable(This,p)
#define IHTMLDocument3_put_ondatasetcomplete(This,v) (This)->lpVtbl->put_ondatasetcomplete(This,v)
#define IHTMLDocument3_get_ondatasetcomplete(This,p) (This)->lpVtbl->get_ondatasetcomplete(This,p)
#define IHTMLDocument3_put_onpropertychange(This,v) (This)->lpVtbl->put_onpropertychange(This,v)
#define IHTMLDocument3_get_onpropertychange(This,p) (This)->lpVtbl->get_onpropertychange(This,p)
#define IHTMLDocument3_put_dir(This,v) (This)->lpVtbl->put_dir(This,v)
#define IHTMLDocument3_get_dir(This,p) (This)->lpVtbl->get_dir(This,p)
#define IHTMLDocument3_put_oncontextmenu(This,v) (This)->lpVtbl->put_oncontextmenu(This,v)
#define IHTMLDocument3_get_oncontextmenu(This,p) (This)->lpVtbl->get_oncontextmenu(This,p)
#define IHTMLDocument3_put_onstop(This,v) (This)->lpVtbl->put_onstop(This,v)
#define IHTMLDocument3_get_onstop(This,p) (This)->lpVtbl->get_onstop(This,p)
#define IHTMLDocument3_createDocumentFragment(This,pNewDoc) (This)->lpVtbl->createDocumentFragment(This,pNewDoc)
#define IHTMLDocument3_get_parentDocument(This,p) (This)->lpVtbl->get_parentDocument(This,p)
#define IHTMLDocument3_put_enableDownload(This,v) (This)->lpVtbl->put_enableDownload(This,v)
#define IHTMLDocument3_get_enableDownload(This,p) (This)->lpVtbl->get_enableDownload(This,p)
#define IHTMLDocument3_put_baseUrl(This,v) (This)->lpVtbl->put_baseUrl(This,v)
#define IHTMLDocument3_get_baseUrl(This,p) (This)->lpVtbl->get_baseUrl(This,p)
#define IHTMLDocument3_get_childNodes(This,p) (This)->lpVtbl->get_childNodes(This,p)
#define IHTMLDocument3_put_inheritStyleSheets(This,v) (This)->lpVtbl->put_inheritStyleSheets(This,v)
#define IHTMLDocument3_get_inheritStyleSheets(This,p) (This)->lpVtbl->get_inheritStyleSheets(This,p)
#define IHTMLDocument3_put_onbeforeeditfocus(This,v) (This)->lpVtbl->put_onbeforeeditfocus(This,v)
#define IHTMLDocument3_get_onbeforeeditfocus(This,p) (This)->lpVtbl->get_onbeforeeditfocus(This,p)
#define IHTMLDocument3_getElementsByName(This,v,pelColl) (This)->lpVtbl->getElementsByName(This,v,pelColl)
#define IHTMLDocument3_getElementById(This,v,pel) (This)->lpVtbl->getElementById(This,v,pel)
#define IHTMLDocument3_getElementsByTagName(This,v,pelColl) (This)->lpVtbl->getElementsByTagName(This,v,pelColl)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDocument3_releaseCapture_Proxy(
    IHTMLDocument3* This);
void __RPC_STUB IHTMLDocument3_releaseCapture_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_recalc_Proxy(
    IHTMLDocument3* This,
    VARIANT_BOOL fForce);
void __RPC_STUB IHTMLDocument3_recalc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_createTextNode_Proxy(
    IHTMLDocument3* This,
    BSTR text,
    IHTMLDOMNode **newTextNode);
void __RPC_STUB IHTMLDocument3_createTextNode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_documentElement_Proxy(
    IHTMLDocument3* This,
    IHTMLElement **p);
void __RPC_STUB IHTMLDocument3_get_documentElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_uniqueID_Proxy(
    IHTMLDocument3* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument3_get_uniqueID_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_attachEvent_Proxy(
    IHTMLDocument3* This,
    BSTR event,
    IDispatch *pDisp,
    VARIANT_BOOL *pfResult);
void __RPC_STUB IHTMLDocument3_attachEvent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_detachEvent_Proxy(
    IHTMLDocument3* This,
    BSTR event,
    IDispatch *pDisp);
void __RPC_STUB IHTMLDocument3_detachEvent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_onrowsdelete_Proxy(
    IHTMLDocument3* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument3_put_onrowsdelete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_onrowsdelete_Proxy(
    IHTMLDocument3* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument3_get_onrowsdelete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_onrowsinserted_Proxy(
    IHTMLDocument3* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument3_put_onrowsinserted_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_onrowsinserted_Proxy(
    IHTMLDocument3* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument3_get_onrowsinserted_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_oncellchange_Proxy(
    IHTMLDocument3* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument3_put_oncellchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_oncellchange_Proxy(
    IHTMLDocument3* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument3_get_oncellchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_ondatasetchanged_Proxy(
    IHTMLDocument3* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument3_put_ondatasetchanged_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_ondatasetchanged_Proxy(
    IHTMLDocument3* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument3_get_ondatasetchanged_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_ondataavailable_Proxy(
    IHTMLDocument3* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument3_put_ondataavailable_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_ondataavailable_Proxy(
    IHTMLDocument3* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument3_get_ondataavailable_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_ondatasetcomplete_Proxy(
    IHTMLDocument3* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument3_put_ondatasetcomplete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_ondatasetcomplete_Proxy(
    IHTMLDocument3* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument3_get_ondatasetcomplete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_onpropertychange_Proxy(
    IHTMLDocument3* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument3_put_onpropertychange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_onpropertychange_Proxy(
    IHTMLDocument3* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument3_get_onpropertychange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_dir_Proxy(
    IHTMLDocument3* This,
    BSTR v);
void __RPC_STUB IHTMLDocument3_put_dir_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_dir_Proxy(
    IHTMLDocument3* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument3_get_dir_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_oncontextmenu_Proxy(
    IHTMLDocument3* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument3_put_oncontextmenu_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_oncontextmenu_Proxy(
    IHTMLDocument3* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument3_get_oncontextmenu_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_onstop_Proxy(
    IHTMLDocument3* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument3_put_onstop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_onstop_Proxy(
    IHTMLDocument3* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument3_get_onstop_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_createDocumentFragment_Proxy(
    IHTMLDocument3* This,
    IHTMLDocument2 **pNewDoc);
void __RPC_STUB IHTMLDocument3_createDocumentFragment_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_parentDocument_Proxy(
    IHTMLDocument3* This,
    IHTMLDocument2 **p);
void __RPC_STUB IHTMLDocument3_get_parentDocument_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_enableDownload_Proxy(
    IHTMLDocument3* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLDocument3_put_enableDownload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_enableDownload_Proxy(
    IHTMLDocument3* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLDocument3_get_enableDownload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_baseUrl_Proxy(
    IHTMLDocument3* This,
    BSTR v);
void __RPC_STUB IHTMLDocument3_put_baseUrl_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_baseUrl_Proxy(
    IHTMLDocument3* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument3_get_baseUrl_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_childNodes_Proxy(
    IHTMLDocument3* This,
    IDispatch **p);
void __RPC_STUB IHTMLDocument3_get_childNodes_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_inheritStyleSheets_Proxy(
    IHTMLDocument3* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLDocument3_put_inheritStyleSheets_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_inheritStyleSheets_Proxy(
    IHTMLDocument3* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLDocument3_get_inheritStyleSheets_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_put_onbeforeeditfocus_Proxy(
    IHTMLDocument3* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument3_put_onbeforeeditfocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_get_onbeforeeditfocus_Proxy(
    IHTMLDocument3* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument3_get_onbeforeeditfocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_getElementsByName_Proxy(
    IHTMLDocument3* This,
    BSTR v,
    IHTMLElementCollection **pelColl);
void __RPC_STUB IHTMLDocument3_getElementsByName_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_getElementById_Proxy(
    IHTMLDocument3* This,
    BSTR v,
    IHTMLElement **pel);
void __RPC_STUB IHTMLDocument3_getElementById_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument3_getElementsByTagName_Proxy(
    IHTMLDocument3* This,
    BSTR v,
    IHTMLElementCollection **pelColl);
void __RPC_STUB IHTMLDocument3_getElementsByTagName_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDocument3_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDocument4 interface
 */
#ifndef __IHTMLDocument4_INTERFACE_DEFINED__
#define __IHTMLDocument4_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDocument4, 0x3050f69a, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDocument4 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE focus(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE hasFocus(
        VARIANT_BOOL *pfFocus) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onselectionchange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onselectionchange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_namespaces(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE createDocumentFromUrl(
        BSTR bstrUrl,
        BSTR bstrOptions,
        IHTMLDocument2 **newDoc) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_media(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_media(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE createEventObject(
        VARIANT *pvarEventObject,
        IHTMLEventObj **ppEventObj) = 0;

    virtual HRESULT STDMETHODCALLTYPE fireEvent(
        BSTR bstrEventName,
        VARIANT *pvarEventObject,
        VARIANT_BOOL *pfCancelled) = 0;

    virtual HRESULT STDMETHODCALLTYPE createRenderStyle(
        BSTR v,
        IHTMLRenderStyle **ppIHTMLRenderStyle) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_oncontrolselect(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_oncontrolselect(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_URLUnencoded(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLDocument4Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDocument4* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDocument4* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDocument4* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDocument4* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDocument4* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDocument4* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDocument4* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDocument4 methods ***/
    HRESULT (STDMETHODCALLTYPE *focus)(
        IHTMLDocument4* This);

    HRESULT (STDMETHODCALLTYPE *hasFocus)(
        IHTMLDocument4* This,
        VARIANT_BOOL *pfFocus);

    HRESULT (STDMETHODCALLTYPE *put_onselectionchange)(
        IHTMLDocument4* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onselectionchange)(
        IHTMLDocument4* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_namespaces)(
        IHTMLDocument4* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *createDocumentFromUrl)(
        IHTMLDocument4* This,
        BSTR bstrUrl,
        BSTR bstrOptions,
        IHTMLDocument2 **newDoc);

    HRESULT (STDMETHODCALLTYPE *put_media)(
        IHTMLDocument4* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_media)(
        IHTMLDocument4* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *createEventObject)(
        IHTMLDocument4* This,
        VARIANT *pvarEventObject,
        IHTMLEventObj **ppEventObj);

    HRESULT (STDMETHODCALLTYPE *fireEvent)(
        IHTMLDocument4* This,
        BSTR bstrEventName,
        VARIANT *pvarEventObject,
        VARIANT_BOOL *pfCancelled);

    HRESULT (STDMETHODCALLTYPE *createRenderStyle)(
        IHTMLDocument4* This,
        BSTR v,
        IHTMLRenderStyle **ppIHTMLRenderStyle);

    HRESULT (STDMETHODCALLTYPE *put_oncontrolselect)(
        IHTMLDocument4* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_oncontrolselect)(
        IHTMLDocument4* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_URLUnencoded)(
        IHTMLDocument4* This,
        BSTR *p);

    END_INTERFACE
} IHTMLDocument4Vtbl;
interface IHTMLDocument4 {
    CONST_VTBL IHTMLDocument4Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDocument4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDocument4_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDocument4_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDocument4_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDocument4_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDocument4_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDocument4_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDocument4 methods ***/
#define IHTMLDocument4_focus(This) (This)->lpVtbl->focus(This)
#define IHTMLDocument4_hasFocus(This,pfFocus) (This)->lpVtbl->hasFocus(This,pfFocus)
#define IHTMLDocument4_put_onselectionchange(This,v) (This)->lpVtbl->put_onselectionchange(This,v)
#define IHTMLDocument4_get_onselectionchange(This,p) (This)->lpVtbl->get_onselectionchange(This,p)
#define IHTMLDocument4_get_namespaces(This,p) (This)->lpVtbl->get_namespaces(This,p)
#define IHTMLDocument4_createDocumentFromUrl(This,bstrUrl,bstrOptions,newDoc) (This)->lpVtbl->createDocumentFromUrl(This,bstrUrl,bstrOptions,newDoc)
#define IHTMLDocument4_put_media(This,v) (This)->lpVtbl->put_media(This,v)
#define IHTMLDocument4_get_media(This,p) (This)->lpVtbl->get_media(This,p)
#define IHTMLDocument4_createEventObject(This,pvarEventObject,ppEventObj) (This)->lpVtbl->createEventObject(This,pvarEventObject,ppEventObj)
#define IHTMLDocument4_fireEvent(This,bstrEventName,pvarEventObject,pfCancelled) (This)->lpVtbl->fireEvent(This,bstrEventName,pvarEventObject,pfCancelled)
#define IHTMLDocument4_createRenderStyle(This,v,ppIHTMLRenderStyle) (This)->lpVtbl->createRenderStyle(This,v,ppIHTMLRenderStyle)
#define IHTMLDocument4_put_oncontrolselect(This,v) (This)->lpVtbl->put_oncontrolselect(This,v)
#define IHTMLDocument4_get_oncontrolselect(This,p) (This)->lpVtbl->get_oncontrolselect(This,p)
#define IHTMLDocument4_get_URLUnencoded(This,p) (This)->lpVtbl->get_URLUnencoded(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDocument4_focus_Proxy(
    IHTMLDocument4* This);
void __RPC_STUB IHTMLDocument4_focus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_hasFocus_Proxy(
    IHTMLDocument4* This,
    VARIANT_BOOL *pfFocus);
void __RPC_STUB IHTMLDocument4_hasFocus_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_put_onselectionchange_Proxy(
    IHTMLDocument4* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument4_put_onselectionchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_get_onselectionchange_Proxy(
    IHTMLDocument4* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument4_get_onselectionchange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_get_namespaces_Proxy(
    IHTMLDocument4* This,
    IDispatch **p);
void __RPC_STUB IHTMLDocument4_get_namespaces_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_createDocumentFromUrl_Proxy(
    IHTMLDocument4* This,
    BSTR bstrUrl,
    BSTR bstrOptions,
    IHTMLDocument2 **newDoc);
void __RPC_STUB IHTMLDocument4_createDocumentFromUrl_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_put_media_Proxy(
    IHTMLDocument4* This,
    BSTR v);
void __RPC_STUB IHTMLDocument4_put_media_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_get_media_Proxy(
    IHTMLDocument4* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument4_get_media_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_createEventObject_Proxy(
    IHTMLDocument4* This,
    VARIANT *pvarEventObject,
    IHTMLEventObj **ppEventObj);
void __RPC_STUB IHTMLDocument4_createEventObject_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_fireEvent_Proxy(
    IHTMLDocument4* This,
    BSTR bstrEventName,
    VARIANT *pvarEventObject,
    VARIANT_BOOL *pfCancelled);
void __RPC_STUB IHTMLDocument4_fireEvent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_createRenderStyle_Proxy(
    IHTMLDocument4* This,
    BSTR v,
    IHTMLRenderStyle **ppIHTMLRenderStyle);
void __RPC_STUB IHTMLDocument4_createRenderStyle_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_put_oncontrolselect_Proxy(
    IHTMLDocument4* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument4_put_oncontrolselect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_get_oncontrolselect_Proxy(
    IHTMLDocument4* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument4_get_oncontrolselect_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument4_get_URLUnencoded_Proxy(
    IHTMLDocument4* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument4_get_URLUnencoded_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDocument4_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDocument5 interface
 */
#ifndef __IHTMLDocument5_INTERFACE_DEFINED__
#define __IHTMLDocument5_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDocument5, 0x3050f80c, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDocument5 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_onmousewheel(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onmousewheel(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_doctype(
        IHTMLDOMNode **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_implementation(
        IHTMLDOMImplementation **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE createAttribute(
        BSTR bstrattrName,
        IHTMLDOMAttribute **ppattribute) = 0;

    virtual HRESULT STDMETHODCALLTYPE createComment(
        BSTR bstrdata,
        IHTMLDOMNode **ppRetNode) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onfocusin(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onfocusin(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onfocusout(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onfocusout(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onactivate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onactivate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_ondeactivate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_ondeactivate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforeactivate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforeactivate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onbeforedeactivate(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onbeforedeactivate(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_compatMode(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLDocument5Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDocument5* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDocument5* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDocument5* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDocument5* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDocument5* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDocument5* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDocument5* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDocument5 methods ***/
    HRESULT (STDMETHODCALLTYPE *put_onmousewheel)(
        IHTMLDocument5* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onmousewheel)(
        IHTMLDocument5* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_doctype)(
        IHTMLDocument5* This,
        IHTMLDOMNode **p);

    HRESULT (STDMETHODCALLTYPE *get_implementation)(
        IHTMLDocument5* This,
        IHTMLDOMImplementation **p);

    HRESULT (STDMETHODCALLTYPE *createAttribute)(
        IHTMLDocument5* This,
        BSTR bstrattrName,
        IHTMLDOMAttribute **ppattribute);

    HRESULT (STDMETHODCALLTYPE *createComment)(
        IHTMLDocument5* This,
        BSTR bstrdata,
        IHTMLDOMNode **ppRetNode);

    HRESULT (STDMETHODCALLTYPE *put_onfocusin)(
        IHTMLDocument5* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onfocusin)(
        IHTMLDocument5* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onfocusout)(
        IHTMLDocument5* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onfocusout)(
        IHTMLDocument5* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onactivate)(
        IHTMLDocument5* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onactivate)(
        IHTMLDocument5* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_ondeactivate)(
        IHTMLDocument5* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_ondeactivate)(
        IHTMLDocument5* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onbeforeactivate)(
        IHTMLDocument5* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforeactivate)(
        IHTMLDocument5* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onbeforedeactivate)(
        IHTMLDocument5* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onbeforedeactivate)(
        IHTMLDocument5* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_compatMode)(
        IHTMLDocument5* This,
        BSTR *p);

    END_INTERFACE
} IHTMLDocument5Vtbl;
interface IHTMLDocument5 {
    CONST_VTBL IHTMLDocument5Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDocument5_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDocument5_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDocument5_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDocument5_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDocument5_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDocument5_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDocument5_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDocument5 methods ***/
#define IHTMLDocument5_put_onmousewheel(This,v) (This)->lpVtbl->put_onmousewheel(This,v)
#define IHTMLDocument5_get_onmousewheel(This,p) (This)->lpVtbl->get_onmousewheel(This,p)
#define IHTMLDocument5_get_doctype(This,p) (This)->lpVtbl->get_doctype(This,p)
#define IHTMLDocument5_get_implementation(This,p) (This)->lpVtbl->get_implementation(This,p)
#define IHTMLDocument5_createAttribute(This,bstrattrName,ppattribute) (This)->lpVtbl->createAttribute(This,bstrattrName,ppattribute)
#define IHTMLDocument5_createComment(This,bstrdata,ppRetNode) (This)->lpVtbl->createComment(This,bstrdata,ppRetNode)
#define IHTMLDocument5_put_onfocusin(This,v) (This)->lpVtbl->put_onfocusin(This,v)
#define IHTMLDocument5_get_onfocusin(This,p) (This)->lpVtbl->get_onfocusin(This,p)
#define IHTMLDocument5_put_onfocusout(This,v) (This)->lpVtbl->put_onfocusout(This,v)
#define IHTMLDocument5_get_onfocusout(This,p) (This)->lpVtbl->get_onfocusout(This,p)
#define IHTMLDocument5_put_onactivate(This,v) (This)->lpVtbl->put_onactivate(This,v)
#define IHTMLDocument5_get_onactivate(This,p) (This)->lpVtbl->get_onactivate(This,p)
#define IHTMLDocument5_put_ondeactivate(This,v) (This)->lpVtbl->put_ondeactivate(This,v)
#define IHTMLDocument5_get_ondeactivate(This,p) (This)->lpVtbl->get_ondeactivate(This,p)
#define IHTMLDocument5_put_onbeforeactivate(This,v) (This)->lpVtbl->put_onbeforeactivate(This,v)
#define IHTMLDocument5_get_onbeforeactivate(This,p) (This)->lpVtbl->get_onbeforeactivate(This,p)
#define IHTMLDocument5_put_onbeforedeactivate(This,v) (This)->lpVtbl->put_onbeforedeactivate(This,v)
#define IHTMLDocument5_get_onbeforedeactivate(This,p) (This)->lpVtbl->get_onbeforedeactivate(This,p)
#define IHTMLDocument5_get_compatMode(This,p) (This)->lpVtbl->get_compatMode(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDocument5_put_onmousewheel_Proxy(
    IHTMLDocument5* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument5_put_onmousewheel_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_get_onmousewheel_Proxy(
    IHTMLDocument5* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument5_get_onmousewheel_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_get_doctype_Proxy(
    IHTMLDocument5* This,
    IHTMLDOMNode **p);
void __RPC_STUB IHTMLDocument5_get_doctype_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_get_implementation_Proxy(
    IHTMLDocument5* This,
    IHTMLDOMImplementation **p);
void __RPC_STUB IHTMLDocument5_get_implementation_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_createAttribute_Proxy(
    IHTMLDocument5* This,
    BSTR bstrattrName,
    IHTMLDOMAttribute **ppattribute);
void __RPC_STUB IHTMLDocument5_createAttribute_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_createComment_Proxy(
    IHTMLDocument5* This,
    BSTR bstrdata,
    IHTMLDOMNode **ppRetNode);
void __RPC_STUB IHTMLDocument5_createComment_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_put_onfocusin_Proxy(
    IHTMLDocument5* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument5_put_onfocusin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_get_onfocusin_Proxy(
    IHTMLDocument5* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument5_get_onfocusin_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_put_onfocusout_Proxy(
    IHTMLDocument5* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument5_put_onfocusout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_get_onfocusout_Proxy(
    IHTMLDocument5* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument5_get_onfocusout_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_put_onactivate_Proxy(
    IHTMLDocument5* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument5_put_onactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_get_onactivate_Proxy(
    IHTMLDocument5* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument5_get_onactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_put_ondeactivate_Proxy(
    IHTMLDocument5* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument5_put_ondeactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_get_ondeactivate_Proxy(
    IHTMLDocument5* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument5_get_ondeactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_put_onbeforeactivate_Proxy(
    IHTMLDocument5* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument5_put_onbeforeactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_get_onbeforeactivate_Proxy(
    IHTMLDocument5* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument5_get_onbeforeactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_put_onbeforedeactivate_Proxy(
    IHTMLDocument5* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument5_put_onbeforedeactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_get_onbeforedeactivate_Proxy(
    IHTMLDocument5* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument5_get_onbeforedeactivate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument5_get_compatMode_Proxy(
    IHTMLDocument5* This,
    BSTR *p);
void __RPC_STUB IHTMLDocument5_get_compatMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDocument5_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLDocument6 interface
 */
#ifndef __IHTMLDocument6_INTERFACE_DEFINED__
#define __IHTMLDocument6_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLDocument6, 0x30510417, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLDocument6 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_compatible(
        IHTMLDocumentCompatibleInfoCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_documentMode(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onstorage(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onstorage(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onstoragecommit(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onstoragecommit(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE getElementById(
        BSTR bstrId,
        IHTMLElement2 **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE updateSettings(
        ) = 0;

};
#else
typedef struct IHTMLDocument6Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLDocument6* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLDocument6* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLDocument6* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLDocument6* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLDocument6* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLDocument6* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLDocument6* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLDocument6 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_compatible)(
        IHTMLDocument6* This,
        IHTMLDocumentCompatibleInfoCollection **p);

    HRESULT (STDMETHODCALLTYPE *get_documentMode)(
        IHTMLDocument6* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onstorage)(
        IHTMLDocument6* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onstorage)(
        IHTMLDocument6* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onstoragecommit)(
        IHTMLDocument6* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onstoragecommit)(
        IHTMLDocument6* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *getElementById)(
        IHTMLDocument6* This,
        BSTR bstrId,
        IHTMLElement2 **p);

    HRESULT (STDMETHODCALLTYPE *updateSettings)(
        IHTMLDocument6* This);

    END_INTERFACE
} IHTMLDocument6Vtbl;
interface IHTMLDocument6 {
    CONST_VTBL IHTMLDocument6Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLDocument6_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLDocument6_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLDocument6_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLDocument6_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLDocument6_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLDocument6_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLDocument6_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLDocument6 methods ***/
#define IHTMLDocument6_get_compatible(This,p) (This)->lpVtbl->get_compatible(This,p)
#define IHTMLDocument6_get_documentMode(This,p) (This)->lpVtbl->get_documentMode(This,p)
#define IHTMLDocument6_put_onstorage(This,v) (This)->lpVtbl->put_onstorage(This,v)
#define IHTMLDocument6_get_onstorage(This,p) (This)->lpVtbl->get_onstorage(This,p)
#define IHTMLDocument6_put_onstoragecommit(This,v) (This)->lpVtbl->put_onstoragecommit(This,v)
#define IHTMLDocument6_get_onstoragecommit(This,p) (This)->lpVtbl->get_onstoragecommit(This,p)
#define IHTMLDocument6_getElementById(This,bstrId,p) (This)->lpVtbl->getElementById(This,bstrId,p)
#define IHTMLDocument6_updateSettings(This) (This)->lpVtbl->updateSettings(This)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLDocument6_get_compatible_Proxy(
    IHTMLDocument6* This,
    IHTMLDocumentCompatibleInfoCollection **p);
void __RPC_STUB IHTMLDocument6_get_compatible_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument6_get_documentMode_Proxy(
    IHTMLDocument6* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument6_get_documentMode_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument6_put_onstorage_Proxy(
    IHTMLDocument6* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument6_put_onstorage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument6_get_onstorage_Proxy(
    IHTMLDocument6* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument6_get_onstorage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument6_put_onstoragecommit_Proxy(
    IHTMLDocument6* This,
    VARIANT v);
void __RPC_STUB IHTMLDocument6_put_onstoragecommit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument6_get_onstoragecommit_Proxy(
    IHTMLDocument6* This,
    VARIANT *p);
void __RPC_STUB IHTMLDocument6_get_onstoragecommit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument6_getElementById_Proxy(
    IHTMLDocument6* This,
    BSTR bstrId,
    IHTMLElement2 **p);
void __RPC_STUB IHTMLDocument6_getElementById_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLDocument6_updateSettings_Proxy(
    IHTMLDocument6* This);
void __RPC_STUB IHTMLDocument6_updateSettings_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLDocument6_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLDocument dispinterface
 */
#ifndef __DispHTMLDocument_DISPINTERFACE_DEFINED__
#define __DispHTMLDocument_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLDocument, 0x3050f55f, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLDocument : public IDispatch
{
};
#else
typedef struct DispHTMLDocumentVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLDocument* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLDocument* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLDocument* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLDocument* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLDocument* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLDocument* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLDocument* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLDocumentVtbl;
interface DispHTMLDocument {
    CONST_VTBL DispHTMLDocumentVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLDocument_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLDocument_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLDocument_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLDocument_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLDocument_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLDocument_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLDocument_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLDocument_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLDocument coclass
 */

DEFINE_GUID(CLSID_HTMLDocument, 0x25336920, 0x03f9, 0x11cf, 0x8f,0xd0, 0x00,0xaa,0x00,0x68,0x6f,0x13);

/*****************************************************************************
 * DWebBridgeEvents dispinterface
 */
#ifndef __DWebBridgeEvents_DISPINTERFACE_DEFINED__
#define __DWebBridgeEvents_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DWebBridgeEvents, 0xa6d897ff, 0x0a95, 0x11d1, 0xb0,0xba, 0x00,0x60,0x08,0x16,0x6e,0x11);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DWebBridgeEvents : public IDispatch
{
};
#else
typedef struct DWebBridgeEventsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DWebBridgeEvents* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DWebBridgeEvents* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DWebBridgeEvents* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DWebBridgeEvents* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DWebBridgeEvents* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DWebBridgeEvents* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DWebBridgeEvents* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DWebBridgeEventsVtbl;
interface DWebBridgeEvents {
    CONST_VTBL DWebBridgeEventsVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DWebBridgeEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DWebBridgeEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DWebBridgeEvents_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DWebBridgeEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DWebBridgeEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DWebBridgeEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DWebBridgeEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DWebBridgeEvents_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IWebBridge interface
 */
#ifndef __IWebBridge_INTERFACE_DEFINED__
#define __IWebBridge_INTERFACE_DEFINED__

DEFINE_GUID(IID_IWebBridge, 0xae24fdad, 0x03c6, 0x11d1, 0x8b,0x76, 0x00,0x80,0xc7,0x44,0xf3,0x89);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IWebBridge : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_URL(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_URL(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_Scrollbar(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_Scrollbar(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_embed(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_embed(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_event(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readyState(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE AboutBox(
        ) = 0;

};
#else
typedef struct IWebBridgeVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IWebBridge* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IWebBridge* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IWebBridge* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IWebBridge* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IWebBridge* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IWebBridge* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IWebBridge* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IWebBridge methods ***/
    HRESULT (STDMETHODCALLTYPE *put_URL)(
        IWebBridge* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_URL)(
        IWebBridge* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_Scrollbar)(
        IWebBridge* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_Scrollbar)(
        IWebBridge* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_embed)(
        IWebBridge* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_embed)(
        IWebBridge* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_event)(
        IWebBridge* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *get_readyState)(
        IWebBridge* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *AboutBox)(
        IWebBridge* This);

    END_INTERFACE
} IWebBridgeVtbl;
interface IWebBridge {
    CONST_VTBL IWebBridgeVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IWebBridge_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IWebBridge_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IWebBridge_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IWebBridge_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IWebBridge_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IWebBridge_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IWebBridge_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IWebBridge methods ***/
#define IWebBridge_put_URL(This,v) (This)->lpVtbl->put_URL(This,v)
#define IWebBridge_get_URL(This,p) (This)->lpVtbl->get_URL(This,p)
#define IWebBridge_put_Scrollbar(This,v) (This)->lpVtbl->put_Scrollbar(This,v)
#define IWebBridge_get_Scrollbar(This,p) (This)->lpVtbl->get_Scrollbar(This,p)
#define IWebBridge_put_embed(This,v) (This)->lpVtbl->put_embed(This,v)
#define IWebBridge_get_embed(This,p) (This)->lpVtbl->get_embed(This,p)
#define IWebBridge_get_event(This,p) (This)->lpVtbl->get_event(This,p)
#define IWebBridge_get_readyState(This,p) (This)->lpVtbl->get_readyState(This,p)
#define IWebBridge_AboutBox(This) (This)->lpVtbl->AboutBox(This)
#endif

#endif

HRESULT STDMETHODCALLTYPE IWebBridge_put_URL_Proxy(
    IWebBridge* This,
    BSTR v);
void __RPC_STUB IWebBridge_put_URL_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IWebBridge_get_URL_Proxy(
    IWebBridge* This,
    BSTR *p);
void __RPC_STUB IWebBridge_get_URL_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IWebBridge_put_Scrollbar_Proxy(
    IWebBridge* This,
    VARIANT_BOOL v);
void __RPC_STUB IWebBridge_put_Scrollbar_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IWebBridge_get_Scrollbar_Proxy(
    IWebBridge* This,
    VARIANT_BOOL *p);
void __RPC_STUB IWebBridge_get_Scrollbar_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IWebBridge_put_embed_Proxy(
    IWebBridge* This,
    VARIANT_BOOL v);
void __RPC_STUB IWebBridge_put_embed_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IWebBridge_get_embed_Proxy(
    IWebBridge* This,
    VARIANT_BOOL *p);
void __RPC_STUB IWebBridge_get_embed_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IWebBridge_get_event_Proxy(
    IWebBridge* This,
    IDispatch **p);
void __RPC_STUB IWebBridge_get_event_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IWebBridge_get_readyState_Proxy(
    IWebBridge* This,
    LONG *p);
void __RPC_STUB IWebBridge_get_readyState_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IWebBridge_AboutBox_Proxy(
    IWebBridge* This);
void __RPC_STUB IWebBridge_AboutBox_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IWebBridge_INTERFACE_DEFINED__ */

/*****************************************************************************
 * Scriptlet coclass
 */

DEFINE_GUID(CLSID_Scriptlet, 0xae24fdae, 0x03c6, 0x11d1, 0x8b,0x76, 0x00,0x80,0xc7,0x44,0xf3,0x89);

/*****************************************************************************
 * IHTMLEmbedElement interface
 */
#ifndef __IHTMLEmbedElement_INTERFACE_DEFINED__
#define __IHTMLEmbedElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLEmbedElement, 0x3050f25f, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLEmbedElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_hidden(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hidden(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_palette(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_pluginspage(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_src(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_src(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_units(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_units(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_width(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_width(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_height(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_height(
        VARIANT *p) = 0;

};
#else
typedef struct IHTMLEmbedElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLEmbedElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLEmbedElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLEmbedElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLEmbedElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLEmbedElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLEmbedElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLEmbedElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLEmbedElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_hidden)(
        IHTMLEmbedElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_hidden)(
        IHTMLEmbedElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_palette)(
        IHTMLEmbedElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_pluginspage)(
        IHTMLEmbedElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_src)(
        IHTMLEmbedElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_src)(
        IHTMLEmbedElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_units)(
        IHTMLEmbedElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_units)(
        IHTMLEmbedElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLEmbedElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLEmbedElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_width)(
        IHTMLEmbedElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_width)(
        IHTMLEmbedElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_height)(
        IHTMLEmbedElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_height)(
        IHTMLEmbedElement* This,
        VARIANT *p);

    END_INTERFACE
} IHTMLEmbedElementVtbl;
interface IHTMLEmbedElement {
    CONST_VTBL IHTMLEmbedElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLEmbedElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLEmbedElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLEmbedElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLEmbedElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLEmbedElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLEmbedElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLEmbedElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLEmbedElement methods ***/
#define IHTMLEmbedElement_put_hidden(This,v) (This)->lpVtbl->put_hidden(This,v)
#define IHTMLEmbedElement_get_hidden(This,p) (This)->lpVtbl->get_hidden(This,p)
#define IHTMLEmbedElement_get_palette(This,p) (This)->lpVtbl->get_palette(This,p)
#define IHTMLEmbedElement_get_pluginspage(This,p) (This)->lpVtbl->get_pluginspage(This,p)
#define IHTMLEmbedElement_put_src(This,v) (This)->lpVtbl->put_src(This,v)
#define IHTMLEmbedElement_get_src(This,p) (This)->lpVtbl->get_src(This,p)
#define IHTMLEmbedElement_put_units(This,v) (This)->lpVtbl->put_units(This,v)
#define IHTMLEmbedElement_get_units(This,p) (This)->lpVtbl->get_units(This,p)
#define IHTMLEmbedElement_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLEmbedElement_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLEmbedElement_put_width(This,v) (This)->lpVtbl->put_width(This,v)
#define IHTMLEmbedElement_get_width(This,p) (This)->lpVtbl->get_width(This,p)
#define IHTMLEmbedElement_put_height(This,v) (This)->lpVtbl->put_height(This,v)
#define IHTMLEmbedElement_get_height(This,p) (This)->lpVtbl->get_height(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_put_hidden_Proxy(
    IHTMLEmbedElement* This,
    BSTR v);
void __RPC_STUB IHTMLEmbedElement_put_hidden_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_get_hidden_Proxy(
    IHTMLEmbedElement* This,
    BSTR *p);
void __RPC_STUB IHTMLEmbedElement_get_hidden_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_get_palette_Proxy(
    IHTMLEmbedElement* This,
    BSTR *p);
void __RPC_STUB IHTMLEmbedElement_get_palette_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_get_pluginspage_Proxy(
    IHTMLEmbedElement* This,
    BSTR *p);
void __RPC_STUB IHTMLEmbedElement_get_pluginspage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_put_src_Proxy(
    IHTMLEmbedElement* This,
    BSTR v);
void __RPC_STUB IHTMLEmbedElement_put_src_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_get_src_Proxy(
    IHTMLEmbedElement* This,
    BSTR *p);
void __RPC_STUB IHTMLEmbedElement_get_src_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_put_units_Proxy(
    IHTMLEmbedElement* This,
    BSTR v);
void __RPC_STUB IHTMLEmbedElement_put_units_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_get_units_Proxy(
    IHTMLEmbedElement* This,
    BSTR *p);
void __RPC_STUB IHTMLEmbedElement_get_units_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_put_name_Proxy(
    IHTMLEmbedElement* This,
    BSTR v);
void __RPC_STUB IHTMLEmbedElement_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_get_name_Proxy(
    IHTMLEmbedElement* This,
    BSTR *p);
void __RPC_STUB IHTMLEmbedElement_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_put_width_Proxy(
    IHTMLEmbedElement* This,
    VARIANT v);
void __RPC_STUB IHTMLEmbedElement_put_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_get_width_Proxy(
    IHTMLEmbedElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLEmbedElement_get_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_put_height_Proxy(
    IHTMLEmbedElement* This,
    VARIANT v);
void __RPC_STUB IHTMLEmbedElement_put_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEmbedElement_get_height_Proxy(
    IHTMLEmbedElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLEmbedElement_get_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLEmbedElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLEmbed dispinterface
 */
#ifndef __DispHTMLEmbed_DISPINTERFACE_DEFINED__
#define __DispHTMLEmbed_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLEmbed, 0x3050f52e, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLEmbed : public IDispatch
{
};
#else
typedef struct DispHTMLEmbedVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLEmbed* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLEmbed* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLEmbed* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLEmbed* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLEmbed* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLEmbed* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLEmbed* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLEmbedVtbl;
interface DispHTMLEmbed {
    CONST_VTBL DispHTMLEmbedVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLEmbed_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLEmbed_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLEmbed_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLEmbed_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLEmbed_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLEmbed_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLEmbed_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLEmbed_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLCommentElement interface
 */
#ifndef __IHTMLCommentElement_INTERFACE_DEFINED__
#define __IHTMLCommentElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLCommentElement, 0x3050f20c, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLCommentElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_text(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_text(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_atomic(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_atomic(
        LONG *p) = 0;

};
#else
typedef struct IHTMLCommentElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLCommentElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLCommentElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLCommentElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLCommentElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLCommentElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLCommentElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLCommentElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLCommentElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_text)(
        IHTMLCommentElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_text)(
        IHTMLCommentElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_atomic)(
        IHTMLCommentElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_atomic)(
        IHTMLCommentElement* This,
        LONG *p);

    END_INTERFACE
} IHTMLCommentElementVtbl;
interface IHTMLCommentElement {
    CONST_VTBL IHTMLCommentElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLCommentElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLCommentElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLCommentElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLCommentElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLCommentElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLCommentElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLCommentElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLCommentElement methods ***/
#define IHTMLCommentElement_put_text(This,v) (This)->lpVtbl->put_text(This,v)
#define IHTMLCommentElement_get_text(This,p) (This)->lpVtbl->get_text(This,p)
#define IHTMLCommentElement_put_atomic(This,v) (This)->lpVtbl->put_atomic(This,v)
#define IHTMLCommentElement_get_atomic(This,p) (This)->lpVtbl->get_atomic(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLCommentElement_put_text_Proxy(
    IHTMLCommentElement* This,
    BSTR v);
void __RPC_STUB IHTMLCommentElement_put_text_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCommentElement_get_text_Proxy(
    IHTMLCommentElement* This,
    BSTR *p);
void __RPC_STUB IHTMLCommentElement_get_text_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCommentElement_put_atomic_Proxy(
    IHTMLCommentElement* This,
    LONG v);
void __RPC_STUB IHTMLCommentElement_put_atomic_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCommentElement_get_atomic_Proxy(
    IHTMLCommentElement* This,
    LONG *p);
void __RPC_STUB IHTMLCommentElement_get_atomic_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLCommentElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLCommentElement2 interface
 */
#ifndef __IHTMLCommentElement2_INTERFACE_DEFINED__
#define __IHTMLCommentElement2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLCommentElement2, 0x3050f813, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLCommentElement2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_data(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_data(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_length(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE substringData(
        LONG offset,
        LONG Count,
        BSTR *pbstrsubString) = 0;

    virtual HRESULT STDMETHODCALLTYPE appendData(
        BSTR bstrstring) = 0;

    virtual HRESULT STDMETHODCALLTYPE insertData(
        LONG offset,
        BSTR bstrstring) = 0;

    virtual HRESULT STDMETHODCALLTYPE deleteData(
        LONG offset,
        LONG Count) = 0;

    virtual HRESULT STDMETHODCALLTYPE replaceData(
        LONG offset,
        LONG Count,
        BSTR bstrstring) = 0;

};
#else
typedef struct IHTMLCommentElement2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLCommentElement2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLCommentElement2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLCommentElement2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLCommentElement2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLCommentElement2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLCommentElement2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLCommentElement2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLCommentElement2 methods ***/
    HRESULT (STDMETHODCALLTYPE *put_data)(
        IHTMLCommentElement2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_data)(
        IHTMLCommentElement2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_length)(
        IHTMLCommentElement2* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *substringData)(
        IHTMLCommentElement2* This,
        LONG offset,
        LONG Count,
        BSTR *pbstrsubString);

    HRESULT (STDMETHODCALLTYPE *appendData)(
        IHTMLCommentElement2* This,
        BSTR bstrstring);

    HRESULT (STDMETHODCALLTYPE *insertData)(
        IHTMLCommentElement2* This,
        LONG offset,
        BSTR bstrstring);

    HRESULT (STDMETHODCALLTYPE *deleteData)(
        IHTMLCommentElement2* This,
        LONG offset,
        LONG Count);

    HRESULT (STDMETHODCALLTYPE *replaceData)(
        IHTMLCommentElement2* This,
        LONG offset,
        LONG Count,
        BSTR bstrstring);

    END_INTERFACE
} IHTMLCommentElement2Vtbl;
interface IHTMLCommentElement2 {
    CONST_VTBL IHTMLCommentElement2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLCommentElement2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLCommentElement2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLCommentElement2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLCommentElement2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLCommentElement2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLCommentElement2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLCommentElement2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLCommentElement2 methods ***/
#define IHTMLCommentElement2_put_data(This,v) (This)->lpVtbl->put_data(This,v)
#define IHTMLCommentElement2_get_data(This,p) (This)->lpVtbl->get_data(This,p)
#define IHTMLCommentElement2_get_length(This,p) (This)->lpVtbl->get_length(This,p)
#define IHTMLCommentElement2_substringData(This,offset,Count,pbstrsubString) (This)->lpVtbl->substringData(This,offset,Count,pbstrsubString)
#define IHTMLCommentElement2_appendData(This,bstrstring) (This)->lpVtbl->appendData(This,bstrstring)
#define IHTMLCommentElement2_insertData(This,offset,bstrstring) (This)->lpVtbl->insertData(This,offset,bstrstring)
#define IHTMLCommentElement2_deleteData(This,offset,Count) (This)->lpVtbl->deleteData(This,offset,Count)
#define IHTMLCommentElement2_replaceData(This,offset,Count,bstrstring) (This)->lpVtbl->replaceData(This,offset,Count,bstrstring)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLCommentElement2_put_data_Proxy(
    IHTMLCommentElement2* This,
    BSTR v);
void __RPC_STUB IHTMLCommentElement2_put_data_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCommentElement2_get_data_Proxy(
    IHTMLCommentElement2* This,
    BSTR *p);
void __RPC_STUB IHTMLCommentElement2_get_data_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCommentElement2_get_length_Proxy(
    IHTMLCommentElement2* This,
    LONG *p);
void __RPC_STUB IHTMLCommentElement2_get_length_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCommentElement2_substringData_Proxy(
    IHTMLCommentElement2* This,
    LONG offset,
    LONG Count,
    BSTR *pbstrsubString);
void __RPC_STUB IHTMLCommentElement2_substringData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCommentElement2_appendData_Proxy(
    IHTMLCommentElement2* This,
    BSTR bstrstring);
void __RPC_STUB IHTMLCommentElement2_appendData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCommentElement2_insertData_Proxy(
    IHTMLCommentElement2* This,
    LONG offset,
    BSTR bstrstring);
void __RPC_STUB IHTMLCommentElement2_insertData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCommentElement2_deleteData_Proxy(
    IHTMLCommentElement2* This,
    LONG offset,
    LONG Count);
void __RPC_STUB IHTMLCommentElement2_deleteData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLCommentElement2_replaceData_Proxy(
    IHTMLCommentElement2* This,
    LONG offset,
    LONG Count,
    BSTR bstrstring);
void __RPC_STUB IHTMLCommentElement2_replaceData_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLCommentElement2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLCommentElement dispinterface
 */
#ifndef __DispHTMLCommentElement_DISPINTERFACE_DEFINED__
#define __DispHTMLCommentElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLCommentElement, 0x3050f50a, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLCommentElement : public IDispatch
{
};
#else
typedef struct DispHTMLCommentElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLCommentElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLCommentElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLCommentElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLCommentElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLCommentElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLCommentElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLCommentElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLCommentElementVtbl;
interface DispHTMLCommentElement {
    CONST_VTBL DispHTMLCommentElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLCommentElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLCommentElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLCommentElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLCommentElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLCommentElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLCommentElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLCommentElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLCommentElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLElementEvents2 dispinterface
 */
#ifndef __HTMLElementEvents2_DISPINTERFACE_DEFINED__
#define __HTMLElementEvents2_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_HTMLElementEvents2, 0x3050f60f, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface HTMLElementEvents2 : public IDispatch
{
};
#else
typedef struct HTMLElementEvents2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        HTMLElementEvents2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        HTMLElementEvents2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        HTMLElementEvents2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        HTMLElementEvents2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        HTMLElementEvents2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        HTMLElementEvents2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        HTMLElementEvents2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} HTMLElementEvents2Vtbl;
interface HTMLElementEvents2 {
    CONST_VTBL HTMLElementEvents2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define HTMLElementEvents2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define HTMLElementEvents2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define HTMLElementEvents2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define HTMLElementEvents2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define HTMLElementEvents2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define HTMLElementEvents2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define HTMLElementEvents2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __HTMLElementEvents2_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLElementEvents dispinterface
 */
#ifndef __HTMLElementEvents_DISPINTERFACE_DEFINED__
#define __HTMLElementEvents_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_HTMLElementEvents, 0x3050f33c, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface HTMLElementEvents : public IDispatch
{
};
#else
typedef struct HTMLElementEventsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        HTMLElementEvents* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        HTMLElementEvents* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        HTMLElementEvents* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        HTMLElementEvents* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        HTMLElementEvents* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        HTMLElementEvents* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        HTMLElementEvents* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} HTMLElementEventsVtbl;
interface HTMLElementEvents {
    CONST_VTBL HTMLElementEventsVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define HTMLElementEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define HTMLElementEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
#define HTMLElementEvents_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define HTMLElementEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define HTMLElementEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define HTMLElementEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define HTMLElementEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __HTMLElementEvents_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLCommentElement coclass
 */

DEFINE_GUID(CLSID_HTMLCommentElement, 0x3050f317, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * HTMLTableEvents dispinterface
 */
#ifndef __HTMLTableEvents_DISPINTERFACE_DEFINED__
#define __HTMLTableEvents_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_HTMLTableEvents, 0x3050f407, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface HTMLTableEvents : public IDispatch
{
};
#else
typedef struct HTMLTableEventsVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        HTMLTableEvents* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        HTMLTableEvents* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        HTMLTableEvents* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        HTMLTableEvents* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        HTMLTableEvents* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        HTMLTableEvents* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        HTMLTableEvents* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} HTMLTableEventsVtbl;
interface HTMLTableEvents {
    CONST_VTBL HTMLTableEventsVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define HTMLTableEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define HTMLTableEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
#define HTMLTableEvents_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define HTMLTableEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define HTMLTableEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define HTMLTableEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define HTMLTableEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __HTMLTableEvents_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLTableEvents2 dispinterface
 */
#ifndef __HTMLTableEvents2_DISPINTERFACE_DEFINED__
#define __HTMLTableEvents2_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_HTMLTableEvents2, 0x3050f623, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface HTMLTableEvents2 : public IDispatch
{
};
#else
typedef struct HTMLTableEvents2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        HTMLTableEvents2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        HTMLTableEvents2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        HTMLTableEvents2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        HTMLTableEvents2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        HTMLTableEvents2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        HTMLTableEvents2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        HTMLTableEvents2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} HTMLTableEvents2Vtbl;
interface HTMLTableEvents2 {
    CONST_VTBL HTMLTableEvents2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define HTMLTableEvents2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define HTMLTableEvents2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define HTMLTableEvents2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define HTMLTableEvents2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define HTMLTableEvents2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define HTMLTableEvents2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define HTMLTableEvents2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __HTMLTableEvents2_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLTableCaption interface
 */
#ifndef __IHTMLTableCaption_INTERFACE_DEFINED__
#define __IHTMLTableCaption_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLTableCaption, 0x3050f2eb, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLTableCaption : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_align(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_align(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_vAlign(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_vAlign(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLTableCaptionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLTableCaption* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLTableCaption* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLTableCaption* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLTableCaption* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLTableCaption* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLTableCaption* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLTableCaption* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLTableCaption methods ***/
    HRESULT (STDMETHODCALLTYPE *put_align)(
        IHTMLTableCaption* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_align)(
        IHTMLTableCaption* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_vAlign)(
        IHTMLTableCaption* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_vAlign)(
        IHTMLTableCaption* This,
        BSTR *p);

    END_INTERFACE
} IHTMLTableCaptionVtbl;
interface IHTMLTableCaption {
    CONST_VTBL IHTMLTableCaptionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLTableCaption_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLTableCaption_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLTableCaption_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLTableCaption_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLTableCaption_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLTableCaption_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLTableCaption_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLTableCaption methods ***/
#define IHTMLTableCaption_put_align(This,v) (This)->lpVtbl->put_align(This,v)
#define IHTMLTableCaption_get_align(This,p) (This)->lpVtbl->get_align(This,p)
#define IHTMLTableCaption_put_vAlign(This,v) (This)->lpVtbl->put_vAlign(This,v)
#define IHTMLTableCaption_get_vAlign(This,p) (This)->lpVtbl->get_vAlign(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLTableCaption_put_align_Proxy(
    IHTMLTableCaption* This,
    BSTR v);
void __RPC_STUB IHTMLTableCaption_put_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableCaption_get_align_Proxy(
    IHTMLTableCaption* This,
    BSTR *p);
void __RPC_STUB IHTMLTableCaption_get_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableCaption_put_vAlign_Proxy(
    IHTMLTableCaption* This,
    BSTR v);
void __RPC_STUB IHTMLTableCaption_put_vAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableCaption_get_vAlign_Proxy(
    IHTMLTableCaption* This,
    BSTR *p);
void __RPC_STUB IHTMLTableCaption_get_vAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLTableCaption_INTERFACE_DEFINED__ */

#ifndef __IHTMLTableSection_FWD_DEFINED__
#define __IHTMLTableSection_FWD_DEFINED__
typedef interface IHTMLTableSection IHTMLTableSection;
#endif

/*****************************************************************************
 * IHTMLTable interface
 */
#ifndef __IHTMLTable_INTERFACE_DEFINED__
#define __IHTMLTable_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLTable, 0x3050f21e, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLTable : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_cols(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cols(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_border(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_border(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_frame(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_frame(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_rules(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rules(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_cellSpacing(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cellSpacing(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_cellPadding(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cellPadding(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_background(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_background(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_bgColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_bgColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderColorLight(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderColorLight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderColorDark(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderColorDark(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_align(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_align(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE refresh(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rows(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_width(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_width(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_height(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_height(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_dataPageSize(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_dataPageSize(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE nextPage(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE previousPage(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_tHead(
        IHTMLTableSection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_tFoot(
        IHTMLTableSection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_tBodies(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_caption(
        IHTMLTableCaption **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE createTHead(
        IDispatch **head) = 0;

    virtual HRESULT STDMETHODCALLTYPE deleteTHead(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE createTFoot(
        IDispatch **foot) = 0;

    virtual HRESULT STDMETHODCALLTYPE deleteTFoot(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE createCaption(
        IHTMLTableCaption **caption) = 0;

    virtual HRESULT STDMETHODCALLTYPE deleteCaption(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE insertRow(
        LONG index,
        IDispatch **row) = 0;

    virtual HRESULT STDMETHODCALLTYPE deleteRow(
        LONG index) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readyState(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onreadystatechange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onreadystatechange(
        VARIANT *p) = 0;

};
#else
typedef struct IHTMLTableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLTable* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLTable* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLTable* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLTable* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLTable* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLTable* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLTable* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLTable methods ***/
    HRESULT (STDMETHODCALLTYPE *put_cols)(
        IHTMLTable* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_cols)(
        IHTMLTable* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_border)(
        IHTMLTable* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_border)(
        IHTMLTable* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_frame)(
        IHTMLTable* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_frame)(
        IHTMLTable* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_rules)(
        IHTMLTable* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_rules)(
        IHTMLTable* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_cellSpacing)(
        IHTMLTable* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_cellSpacing)(
        IHTMLTable* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_cellPadding)(
        IHTMLTable* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_cellPadding)(
        IHTMLTable* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_background)(
        IHTMLTable* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_background)(
        IHTMLTable* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_bgColor)(
        IHTMLTable* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_bgColor)(
        IHTMLTable* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderColor)(
        IHTMLTable* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderColor)(
        IHTMLTable* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderColorLight)(
        IHTMLTable* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderColorLight)(
        IHTMLTable* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderColorDark)(
        IHTMLTable* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderColorDark)(
        IHTMLTable* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_align)(
        IHTMLTable* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_align)(
        IHTMLTable* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *refresh)(
        IHTMLTable* This);

    HRESULT (STDMETHODCALLTYPE *get_rows)(
        IHTMLTable* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *put_width)(
        IHTMLTable* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_width)(
        IHTMLTable* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_height)(
        IHTMLTable* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_height)(
        IHTMLTable* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_dataPageSize)(
        IHTMLTable* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_dataPageSize)(
        IHTMLTable* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *nextPage)(
        IHTMLTable* This);

    HRESULT (STDMETHODCALLTYPE *previousPage)(
        IHTMLTable* This);

    HRESULT (STDMETHODCALLTYPE *get_tHead)(
        IHTMLTable* This,
        IHTMLTableSection **p);

    HRESULT (STDMETHODCALLTYPE *get_tFoot)(
        IHTMLTable* This,
        IHTMLTableSection **p);

    HRESULT (STDMETHODCALLTYPE *get_tBodies)(
        IHTMLTable* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *get_caption)(
        IHTMLTable* This,
        IHTMLTableCaption **p);

    HRESULT (STDMETHODCALLTYPE *createTHead)(
        IHTMLTable* This,
        IDispatch **head);

    HRESULT (STDMETHODCALLTYPE *deleteTHead)(
        IHTMLTable* This);

    HRESULT (STDMETHODCALLTYPE *createTFoot)(
        IHTMLTable* This,
        IDispatch **foot);

    HRESULT (STDMETHODCALLTYPE *deleteTFoot)(
        IHTMLTable* This);

    HRESULT (STDMETHODCALLTYPE *createCaption)(
        IHTMLTable* This,
        IHTMLTableCaption **caption);

    HRESULT (STDMETHODCALLTYPE *deleteCaption)(
        IHTMLTable* This);

    HRESULT (STDMETHODCALLTYPE *insertRow)(
        IHTMLTable* This,
        LONG index,
        IDispatch **row);

    HRESULT (STDMETHODCALLTYPE *deleteRow)(
        IHTMLTable* This,
        LONG index);

    HRESULT (STDMETHODCALLTYPE *get_readyState)(
        IHTMLTable* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
        IHTMLTable* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onreadystatechange)(
        IHTMLTable* This,
        VARIANT *p);

    END_INTERFACE
} IHTMLTableVtbl;
interface IHTMLTable {
    CONST_VTBL IHTMLTableVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLTable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLTable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLTable_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLTable_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLTable_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLTable_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLTable_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLTable methods ***/
#define IHTMLTable_put_cols(This,v) (This)->lpVtbl->put_cols(This,v)
#define IHTMLTable_get_cols(This,p) (This)->lpVtbl->get_cols(This,p)
#define IHTMLTable_put_border(This,v) (This)->lpVtbl->put_border(This,v)
#define IHTMLTable_get_border(This,p) (This)->lpVtbl->get_border(This,p)
#define IHTMLTable_put_frame(This,v) (This)->lpVtbl->put_frame(This,v)
#define IHTMLTable_get_frame(This,p) (This)->lpVtbl->get_frame(This,p)
#define IHTMLTable_put_rules(This,v) (This)->lpVtbl->put_rules(This,v)
#define IHTMLTable_get_rules(This,p) (This)->lpVtbl->get_rules(This,p)
#define IHTMLTable_put_cellSpacing(This,v) (This)->lpVtbl->put_cellSpacing(This,v)
#define IHTMLTable_get_cellSpacing(This,p) (This)->lpVtbl->get_cellSpacing(This,p)
#define IHTMLTable_put_cellPadding(This,v) (This)->lpVtbl->put_cellPadding(This,v)
#define IHTMLTable_get_cellPadding(This,p) (This)->lpVtbl->get_cellPadding(This,p)
#define IHTMLTable_put_background(This,v) (This)->lpVtbl->put_background(This,v)
#define IHTMLTable_get_background(This,p) (This)->lpVtbl->get_background(This,p)
#define IHTMLTable_put_bgColor(This,v) (This)->lpVtbl->put_bgColor(This,v)
#define IHTMLTable_get_bgColor(This,p) (This)->lpVtbl->get_bgColor(This,p)
#define IHTMLTable_put_borderColor(This,v) (This)->lpVtbl->put_borderColor(This,v)
#define IHTMLTable_get_borderColor(This,p) (This)->lpVtbl->get_borderColor(This,p)
#define IHTMLTable_put_borderColorLight(This,v) (This)->lpVtbl->put_borderColorLight(This,v)
#define IHTMLTable_get_borderColorLight(This,p) (This)->lpVtbl->get_borderColorLight(This,p)
#define IHTMLTable_put_borderColorDark(This,v) (This)->lpVtbl->put_borderColorDark(This,v)
#define IHTMLTable_get_borderColorDark(This,p) (This)->lpVtbl->get_borderColorDark(This,p)
#define IHTMLTable_put_align(This,v) (This)->lpVtbl->put_align(This,v)
#define IHTMLTable_get_align(This,p) (This)->lpVtbl->get_align(This,p)
#define IHTMLTable_refresh(This) (This)->lpVtbl->refresh(This)
#define IHTMLTable_get_rows(This,p) (This)->lpVtbl->get_rows(This,p)
#define IHTMLTable_put_width(This,v) (This)->lpVtbl->put_width(This,v)
#define IHTMLTable_get_width(This,p) (This)->lpVtbl->get_width(This,p)
#define IHTMLTable_put_height(This,v) (This)->lpVtbl->put_height(This,v)
#define IHTMLTable_get_height(This,p) (This)->lpVtbl->get_height(This,p)
#define IHTMLTable_put_dataPageSize(This,v) (This)->lpVtbl->put_dataPageSize(This,v)
#define IHTMLTable_get_dataPageSize(This,p) (This)->lpVtbl->get_dataPageSize(This,p)
#define IHTMLTable_nextPage(This) (This)->lpVtbl->nextPage(This)
#define IHTMLTable_previousPage(This) (This)->lpVtbl->previousPage(This)
#define IHTMLTable_get_tHead(This,p) (This)->lpVtbl->get_tHead(This,p)
#define IHTMLTable_get_tFoot(This,p) (This)->lpVtbl->get_tFoot(This,p)
#define IHTMLTable_get_tBodies(This,p) (This)->lpVtbl->get_tBodies(This,p)
#define IHTMLTable_get_caption(This,p) (This)->lpVtbl->get_caption(This,p)
#define IHTMLTable_createTHead(This,head) (This)->lpVtbl->createTHead(This,head)
#define IHTMLTable_deleteTHead(This) (This)->lpVtbl->deleteTHead(This)
#define IHTMLTable_createTFoot(This,foot) (This)->lpVtbl->createTFoot(This,foot)
#define IHTMLTable_deleteTFoot(This) (This)->lpVtbl->deleteTFoot(This)
#define IHTMLTable_createCaption(This,caption) (This)->lpVtbl->createCaption(This,caption)
#define IHTMLTable_deleteCaption(This) (This)->lpVtbl->deleteCaption(This)
#define IHTMLTable_insertRow(This,index,row) (This)->lpVtbl->insertRow(This,index,row)
#define IHTMLTable_deleteRow(This,index) (This)->lpVtbl->deleteRow(This,index)
#define IHTMLTable_get_readyState(This,p) (This)->lpVtbl->get_readyState(This,p)
#define IHTMLTable_put_onreadystatechange(This,v) (This)->lpVtbl->put_onreadystatechange(This,v)
#define IHTMLTable_get_onreadystatechange(This,p) (This)->lpVtbl->get_onreadystatechange(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLTable_put_cols_Proxy(
    IHTMLTable* This,
    LONG v);
void __RPC_STUB IHTMLTable_put_cols_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_cols_Proxy(
    IHTMLTable* This,
    LONG *p);
void __RPC_STUB IHTMLTable_get_cols_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_border_Proxy(
    IHTMLTable* This,
    VARIANT v);
void __RPC_STUB IHTMLTable_put_border_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_border_Proxy(
    IHTMLTable* This,
    VARIANT *p);
void __RPC_STUB IHTMLTable_get_border_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_frame_Proxy(
    IHTMLTable* This,
    BSTR v);
void __RPC_STUB IHTMLTable_put_frame_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_frame_Proxy(
    IHTMLTable* This,
    BSTR *p);
void __RPC_STUB IHTMLTable_get_frame_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_rules_Proxy(
    IHTMLTable* This,
    BSTR v);
void __RPC_STUB IHTMLTable_put_rules_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_rules_Proxy(
    IHTMLTable* This,
    BSTR *p);
void __RPC_STUB IHTMLTable_get_rules_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_cellSpacing_Proxy(
    IHTMLTable* This,
    VARIANT v);
void __RPC_STUB IHTMLTable_put_cellSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_cellSpacing_Proxy(
    IHTMLTable* This,
    VARIANT *p);
void __RPC_STUB IHTMLTable_get_cellSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_cellPadding_Proxy(
    IHTMLTable* This,
    VARIANT v);
void __RPC_STUB IHTMLTable_put_cellPadding_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_cellPadding_Proxy(
    IHTMLTable* This,
    VARIANT *p);
void __RPC_STUB IHTMLTable_get_cellPadding_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_background_Proxy(
    IHTMLTable* This,
    BSTR v);
void __RPC_STUB IHTMLTable_put_background_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_background_Proxy(
    IHTMLTable* This,
    BSTR *p);
void __RPC_STUB IHTMLTable_get_background_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_bgColor_Proxy(
    IHTMLTable* This,
    VARIANT v);
void __RPC_STUB IHTMLTable_put_bgColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_bgColor_Proxy(
    IHTMLTable* This,
    VARIANT *p);
void __RPC_STUB IHTMLTable_get_bgColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_borderColor_Proxy(
    IHTMLTable* This,
    VARIANT v);
void __RPC_STUB IHTMLTable_put_borderColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_borderColor_Proxy(
    IHTMLTable* This,
    VARIANT *p);
void __RPC_STUB IHTMLTable_get_borderColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_borderColorLight_Proxy(
    IHTMLTable* This,
    VARIANT v);
void __RPC_STUB IHTMLTable_put_borderColorLight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_borderColorLight_Proxy(
    IHTMLTable* This,
    VARIANT *p);
void __RPC_STUB IHTMLTable_get_borderColorLight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_borderColorDark_Proxy(
    IHTMLTable* This,
    VARIANT v);
void __RPC_STUB IHTMLTable_put_borderColorDark_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_borderColorDark_Proxy(
    IHTMLTable* This,
    VARIANT *p);
void __RPC_STUB IHTMLTable_get_borderColorDark_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_align_Proxy(
    IHTMLTable* This,
    BSTR v);
void __RPC_STUB IHTMLTable_put_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_align_Proxy(
    IHTMLTable* This,
    BSTR *p);
void __RPC_STUB IHTMLTable_get_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_refresh_Proxy(
    IHTMLTable* This);
void __RPC_STUB IHTMLTable_refresh_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_rows_Proxy(
    IHTMLTable* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLTable_get_rows_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_width_Proxy(
    IHTMLTable* This,
    VARIANT v);
void __RPC_STUB IHTMLTable_put_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_width_Proxy(
    IHTMLTable* This,
    VARIANT *p);
void __RPC_STUB IHTMLTable_get_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_height_Proxy(
    IHTMLTable* This,
    VARIANT v);
void __RPC_STUB IHTMLTable_put_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_height_Proxy(
    IHTMLTable* This,
    VARIANT *p);
void __RPC_STUB IHTMLTable_get_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_dataPageSize_Proxy(
    IHTMLTable* This,
    LONG v);
void __RPC_STUB IHTMLTable_put_dataPageSize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_dataPageSize_Proxy(
    IHTMLTable* This,
    LONG *p);
void __RPC_STUB IHTMLTable_get_dataPageSize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_nextPage_Proxy(
    IHTMLTable* This);
void __RPC_STUB IHTMLTable_nextPage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_previousPage_Proxy(
    IHTMLTable* This);
void __RPC_STUB IHTMLTable_previousPage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_tHead_Proxy(
    IHTMLTable* This,
    IHTMLTableSection **p);
void __RPC_STUB IHTMLTable_get_tHead_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_tFoot_Proxy(
    IHTMLTable* This,
    IHTMLTableSection **p);
void __RPC_STUB IHTMLTable_get_tFoot_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_tBodies_Proxy(
    IHTMLTable* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLTable_get_tBodies_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_caption_Proxy(
    IHTMLTable* This,
    IHTMLTableCaption **p);
void __RPC_STUB IHTMLTable_get_caption_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_createTHead_Proxy(
    IHTMLTable* This,
    IDispatch **head);
void __RPC_STUB IHTMLTable_createTHead_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_deleteTHead_Proxy(
    IHTMLTable* This);
void __RPC_STUB IHTMLTable_deleteTHead_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_createTFoot_Proxy(
    IHTMLTable* This,
    IDispatch **foot);
void __RPC_STUB IHTMLTable_createTFoot_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_deleteTFoot_Proxy(
    IHTMLTable* This);
void __RPC_STUB IHTMLTable_deleteTFoot_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_createCaption_Proxy(
    IHTMLTable* This,
    IHTMLTableCaption **caption);
void __RPC_STUB IHTMLTable_createCaption_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_deleteCaption_Proxy(
    IHTMLTable* This);
void __RPC_STUB IHTMLTable_deleteCaption_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_insertRow_Proxy(
    IHTMLTable* This,
    LONG index,
    IDispatch **row);
void __RPC_STUB IHTMLTable_insertRow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_deleteRow_Proxy(
    IHTMLTable* This,
    LONG index);
void __RPC_STUB IHTMLTable_deleteRow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_readyState_Proxy(
    IHTMLTable* This,
    BSTR *p);
void __RPC_STUB IHTMLTable_get_readyState_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_put_onreadystatechange_Proxy(
    IHTMLTable* This,
    VARIANT v);
void __RPC_STUB IHTMLTable_put_onreadystatechange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable_get_onreadystatechange_Proxy(
    IHTMLTable* This,
    VARIANT *p);
void __RPC_STUB IHTMLTable_get_onreadystatechange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLTable_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLTable2 interface
 */
#ifndef __IHTMLTable2_INTERFACE_DEFINED__
#define __IHTMLTable2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLTable2, 0x3050f4ad, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLTable2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE firstPage(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE lastPage(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cells(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE moveRow(
        LONG indexFrom,
        LONG indexTo,
        IDispatch **row) = 0;

};
#else
typedef struct IHTMLTable2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLTable2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLTable2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLTable2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLTable2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLTable2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLTable2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLTable2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLTable2 methods ***/
    HRESULT (STDMETHODCALLTYPE *firstPage)(
        IHTMLTable2* This);

    HRESULT (STDMETHODCALLTYPE *lastPage)(
        IHTMLTable2* This);

    HRESULT (STDMETHODCALLTYPE *get_cells)(
        IHTMLTable2* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *moveRow)(
        IHTMLTable2* This,
        LONG indexFrom,
        LONG indexTo,
        IDispatch **row);

    END_INTERFACE
} IHTMLTable2Vtbl;
interface IHTMLTable2 {
    CONST_VTBL IHTMLTable2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLTable2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLTable2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLTable2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLTable2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLTable2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLTable2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLTable2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLTable2 methods ***/
#define IHTMLTable2_firstPage(This) (This)->lpVtbl->firstPage(This)
#define IHTMLTable2_lastPage(This) (This)->lpVtbl->lastPage(This)
#define IHTMLTable2_get_cells(This,p) (This)->lpVtbl->get_cells(This,p)
#define IHTMLTable2_moveRow(This,indexFrom,indexTo,row) (This)->lpVtbl->moveRow(This,indexFrom,indexTo,row)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLTable2_firstPage_Proxy(
    IHTMLTable2* This);
void __RPC_STUB IHTMLTable2_firstPage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable2_lastPage_Proxy(
    IHTMLTable2* This);
void __RPC_STUB IHTMLTable2_lastPage_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable2_get_cells_Proxy(
    IHTMLTable2* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLTable2_get_cells_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable2_moveRow_Proxy(
    IHTMLTable2* This,
    LONG indexFrom,
    LONG indexTo,
    IDispatch **row);
void __RPC_STUB IHTMLTable2_moveRow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLTable2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLTable3 interface
 */
#ifndef __IHTMLTable3_INTERFACE_DEFINED__
#define __IHTMLTable3_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLTable3, 0x3050f829, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLTable3 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_summary(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_summary(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLTable3Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLTable3* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLTable3* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLTable3* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLTable3* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLTable3* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLTable3* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLTable3* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLTable3 methods ***/
    HRESULT (STDMETHODCALLTYPE *put_summary)(
        IHTMLTable3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_summary)(
        IHTMLTable3* This,
        BSTR *p);

    END_INTERFACE
} IHTMLTable3Vtbl;
interface IHTMLTable3 {
    CONST_VTBL IHTMLTable3Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLTable3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLTable3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLTable3_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLTable3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLTable3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLTable3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLTable3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLTable3 methods ***/
#define IHTMLTable3_put_summary(This,v) (This)->lpVtbl->put_summary(This,v)
#define IHTMLTable3_get_summary(This,p) (This)->lpVtbl->get_summary(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLTable3_put_summary_Proxy(
    IHTMLTable3* This,
    BSTR v);
void __RPC_STUB IHTMLTable3_put_summary_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTable3_get_summary_Proxy(
    IHTMLTable3* This,
    BSTR *p);
void __RPC_STUB IHTMLTable3_get_summary_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLTable3_INTERFACE_DEFINED__ */

/*****************************************************************************
 * HTMLTable coclass
 */

DEFINE_GUID(CLSID_HTMLTable, 0x3050f26b, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);

/*****************************************************************************
 * IHTMLTableSection interface
 */
#ifndef __IHTMLTableSection_INTERFACE_DEFINED__
#define __IHTMLTableSection_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLTableSection, 0x3050f23b, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLTableSection : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_align(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_align(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_vAlign(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_vAlign(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_bgColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_bgColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rows(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE insertRow(
        LONG index,
        IDispatch **row) = 0;

    virtual HRESULT STDMETHODCALLTYPE deleteRow(
        LONG index) = 0;

};
#else
typedef struct IHTMLTableSectionVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLTableSection* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLTableSection* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLTableSection* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLTableSection* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLTableSection* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLTableSection* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLTableSection* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLTableSection methods ***/
    HRESULT (STDMETHODCALLTYPE *put_align)(
        IHTMLTableSection* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_align)(
        IHTMLTableSection* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_vAlign)(
        IHTMLTableSection* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_vAlign)(
        IHTMLTableSection* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_bgColor)(
        IHTMLTableSection* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_bgColor)(
        IHTMLTableSection* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_rows)(
        IHTMLTableSection* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *insertRow)(
        IHTMLTableSection* This,
        LONG index,
        IDispatch **row);

    HRESULT (STDMETHODCALLTYPE *deleteRow)(
        IHTMLTableSection* This,
        LONG index);

    END_INTERFACE
} IHTMLTableSectionVtbl;
interface IHTMLTableSection {
    CONST_VTBL IHTMLTableSectionVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLTableSection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLTableSection_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLTableSection_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLTableSection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLTableSection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLTableSection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLTableSection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLTableSection methods ***/
#define IHTMLTableSection_put_align(This,v) (This)->lpVtbl->put_align(This,v)
#define IHTMLTableSection_get_align(This,p) (This)->lpVtbl->get_align(This,p)
#define IHTMLTableSection_put_vAlign(This,v) (This)->lpVtbl->put_vAlign(This,v)
#define IHTMLTableSection_get_vAlign(This,p) (This)->lpVtbl->get_vAlign(This,p)
#define IHTMLTableSection_put_bgColor(This,v) (This)->lpVtbl->put_bgColor(This,v)
#define IHTMLTableSection_get_bgColor(This,p) (This)->lpVtbl->get_bgColor(This,p)
#define IHTMLTableSection_get_rows(This,p) (This)->lpVtbl->get_rows(This,p)
#define IHTMLTableSection_insertRow(This,index,row) (This)->lpVtbl->insertRow(This,index,row)
#define IHTMLTableSection_deleteRow(This,index) (This)->lpVtbl->deleteRow(This,index)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLTableSection_put_align_Proxy(
    IHTMLTableSection* This,
    BSTR v);
void __RPC_STUB IHTMLTableSection_put_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableSection_get_align_Proxy(
    IHTMLTableSection* This,
    BSTR *p);
void __RPC_STUB IHTMLTableSection_get_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableSection_put_vAlign_Proxy(
    IHTMLTableSection* This,
    BSTR v);
void __RPC_STUB IHTMLTableSection_put_vAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableSection_get_vAlign_Proxy(
    IHTMLTableSection* This,
    BSTR *p);
void __RPC_STUB IHTMLTableSection_get_vAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableSection_put_bgColor_Proxy(
    IHTMLTableSection* This,
    VARIANT v);
void __RPC_STUB IHTMLTableSection_put_bgColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableSection_get_bgColor_Proxy(
    IHTMLTableSection* This,
    VARIANT *p);
void __RPC_STUB IHTMLTableSection_get_bgColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableSection_get_rows_Proxy(
    IHTMLTableSection* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLTableSection_get_rows_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableSection_insertRow_Proxy(
    IHTMLTableSection* This,
    LONG index,
    IDispatch **row);
void __RPC_STUB IHTMLTableSection_insertRow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableSection_deleteRow_Proxy(
    IHTMLTableSection* This,
    LONG index);
void __RPC_STUB IHTMLTableSection_deleteRow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLTableSection_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLTableRow interface
 */
#ifndef __IHTMLTableRow_INTERFACE_DEFINED__
#define __IHTMLTableRow_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLTableRow, 0x3050f23c, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLTableRow : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_align(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_align(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_vAlign(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_vAlign(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_bgColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_bgColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderColor(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderColor(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderColorLight(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderColorLight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_borderColorDark(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_borderColorDark(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_rowIndex(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_sectionRowIndex(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_cells(
        IHTMLElementCollection **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE insertCell(
        LONG index,
        IDispatch **row) = 0;

    virtual HRESULT STDMETHODCALLTYPE deleteCell(
        LONG index) = 0;

};
#else
typedef struct IHTMLTableRowVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLTableRow* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLTableRow* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLTableRow* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLTableRow* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLTableRow* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLTableRow* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLTableRow* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLTableRow methods ***/
    HRESULT (STDMETHODCALLTYPE *put_align)(
        IHTMLTableRow* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_align)(
        IHTMLTableRow* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_vAlign)(
        IHTMLTableRow* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_vAlign)(
        IHTMLTableRow* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_bgColor)(
        IHTMLTableRow* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_bgColor)(
        IHTMLTableRow* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderColor)(
        IHTMLTableRow* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderColor)(
        IHTMLTableRow* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderColorLight)(
        IHTMLTableRow* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderColorLight)(
        IHTMLTableRow* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_borderColorDark)(
        IHTMLTableRow* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_borderColorDark)(
        IHTMLTableRow* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_rowIndex)(
        IHTMLTableRow* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_sectionRowIndex)(
        IHTMLTableRow* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *get_cells)(
        IHTMLTableRow* This,
        IHTMLElementCollection **p);

    HRESULT (STDMETHODCALLTYPE *insertCell)(
        IHTMLTableRow* This,
        LONG index,
        IDispatch **row);

    HRESULT (STDMETHODCALLTYPE *deleteCell)(
        IHTMLTableRow* This,
        LONG index);

    END_INTERFACE
} IHTMLTableRowVtbl;
interface IHTMLTableRow {
    CONST_VTBL IHTMLTableRowVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLTableRow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLTableRow_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLTableRow_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLTableRow_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLTableRow_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLTableRow_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLTableRow_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLTableRow methods ***/
#define IHTMLTableRow_put_align(This,v) (This)->lpVtbl->put_align(This,v)
#define IHTMLTableRow_get_align(This,p) (This)->lpVtbl->get_align(This,p)
#define IHTMLTableRow_put_vAlign(This,v) (This)->lpVtbl->put_vAlign(This,v)
#define IHTMLTableRow_get_vAlign(This,p) (This)->lpVtbl->get_vAlign(This,p)
#define IHTMLTableRow_put_bgColor(This,v) (This)->lpVtbl->put_bgColor(This,v)
#define IHTMLTableRow_get_bgColor(This,p) (This)->lpVtbl->get_bgColor(This,p)
#define IHTMLTableRow_put_borderColor(This,v) (This)->lpVtbl->put_borderColor(This,v)
#define IHTMLTableRow_get_borderColor(This,p) (This)->lpVtbl->get_borderColor(This,p)
#define IHTMLTableRow_put_borderColorLight(This,v) (This)->lpVtbl->put_borderColorLight(This,v)
#define IHTMLTableRow_get_borderColorLight(This,p) (This)->lpVtbl->get_borderColorLight(This,p)
#define IHTMLTableRow_put_borderColorDark(This,v) (This)->lpVtbl->put_borderColorDark(This,v)
#define IHTMLTableRow_get_borderColorDark(This,p) (This)->lpVtbl->get_borderColorDark(This,p)
#define IHTMLTableRow_get_rowIndex(This,p) (This)->lpVtbl->get_rowIndex(This,p)
#define IHTMLTableRow_get_sectionRowIndex(This,p) (This)->lpVtbl->get_sectionRowIndex(This,p)
#define IHTMLTableRow_get_cells(This,p) (This)->lpVtbl->get_cells(This,p)
#define IHTMLTableRow_insertCell(This,index,row) (This)->lpVtbl->insertCell(This,index,row)
#define IHTMLTableRow_deleteCell(This,index) (This)->lpVtbl->deleteCell(This,index)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLTableRow_put_align_Proxy(
    IHTMLTableRow* This,
    BSTR v);
void __RPC_STUB IHTMLTableRow_put_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_get_align_Proxy(
    IHTMLTableRow* This,
    BSTR *p);
void __RPC_STUB IHTMLTableRow_get_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_put_vAlign_Proxy(
    IHTMLTableRow* This,
    BSTR v);
void __RPC_STUB IHTMLTableRow_put_vAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_get_vAlign_Proxy(
    IHTMLTableRow* This,
    BSTR *p);
void __RPC_STUB IHTMLTableRow_get_vAlign_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_put_bgColor_Proxy(
    IHTMLTableRow* This,
    VARIANT v);
void __RPC_STUB IHTMLTableRow_put_bgColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_get_bgColor_Proxy(
    IHTMLTableRow* This,
    VARIANT *p);
void __RPC_STUB IHTMLTableRow_get_bgColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_put_borderColor_Proxy(
    IHTMLTableRow* This,
    VARIANT v);
void __RPC_STUB IHTMLTableRow_put_borderColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_get_borderColor_Proxy(
    IHTMLTableRow* This,
    VARIANT *p);
void __RPC_STUB IHTMLTableRow_get_borderColor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_put_borderColorLight_Proxy(
    IHTMLTableRow* This,
    VARIANT v);
void __RPC_STUB IHTMLTableRow_put_borderColorLight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_get_borderColorLight_Proxy(
    IHTMLTableRow* This,
    VARIANT *p);
void __RPC_STUB IHTMLTableRow_get_borderColorLight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_put_borderColorDark_Proxy(
    IHTMLTableRow* This,
    VARIANT v);
void __RPC_STUB IHTMLTableRow_put_borderColorDark_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_get_borderColorDark_Proxy(
    IHTMLTableRow* This,
    VARIANT *p);
void __RPC_STUB IHTMLTableRow_get_borderColorDark_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_get_rowIndex_Proxy(
    IHTMLTableRow* This,
    LONG *p);
void __RPC_STUB IHTMLTableRow_get_rowIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_get_sectionRowIndex_Proxy(
    IHTMLTableRow* This,
    LONG *p);
void __RPC_STUB IHTMLTableRow_get_sectionRowIndex_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_get_cells_Proxy(
    IHTMLTableRow* This,
    IHTMLElementCollection **p);
void __RPC_STUB IHTMLTableRow_get_cells_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_insertCell_Proxy(
    IHTMLTableRow* This,
    LONG index,
    IDispatch **row);
void __RPC_STUB IHTMLTableRow_insertCell_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLTableRow_deleteCell_Proxy(
    IHTMLTableRow* This,
    LONG index);
void __RPC_STUB IHTMLTableRow_deleteCell_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLTableRow_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLTable dispinterface
 */
#ifndef __DispHTMLTable_DISPINTERFACE_DEFINED__
#define __DispHTMLTable_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLTable, 0x3050f532, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLTable : public IDispatch
{
};
#else
typedef struct DispHTMLTableVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLTable* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLTable* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLTable* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLTable* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLTable* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLTable* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLTable* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLTableVtbl;
interface DispHTMLTable {
    CONST_VTBL DispHTMLTableVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLTable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLTable_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLTable_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLTable_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLTable_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLTable_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLTable_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLTable_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLTableRow dispinterface
 */
#ifndef __DispHTMLTableRow_DISPINTERFACE_DEFINED__
#define __DispHTMLTableRow_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLTableRow, 0x3050f535, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLTableRow : public IDispatch
{
};
#else
typedef struct DispHTMLTableRowVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLTableRow* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLTableRow* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLTableRow* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLTableRow* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLTableRow* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLTableRow* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLTableRow* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLTableRowVtbl;
interface DispHTMLTableRow {
    CONST_VTBL DispHTMLTableRowVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLTableRow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLTableRow_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLTableRow_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLTableRow_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLTableRow_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLTableRow_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLTableRow_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLTableRow_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLScriptElement interface
 */
#ifndef __IHTMLScriptElement_INTERFACE_DEFINED__
#define __IHTMLScriptElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLScriptElement, 0x3050f28b, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLScriptElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_src(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_src(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_htmlFor(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_htmlFor(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_event(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_event(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_text(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_text(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_defer(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_defer(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readyState(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onerror(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onerror(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_type(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_type(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLScriptElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLScriptElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLScriptElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLScriptElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLScriptElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLScriptElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLScriptElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLScriptElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLScriptElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_src)(
        IHTMLScriptElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_src)(
        IHTMLScriptElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_htmlFor)(
        IHTMLScriptElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_htmlFor)(
        IHTMLScriptElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_event)(
        IHTMLScriptElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_event)(
        IHTMLScriptElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_text)(
        IHTMLScriptElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_text)(
        IHTMLScriptElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_defer)(
        IHTMLScriptElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_defer)(
        IHTMLScriptElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *get_readyState)(
        IHTMLScriptElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_onerror)(
        IHTMLScriptElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onerror)(
        IHTMLScriptElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_type)(
        IHTMLScriptElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_type)(
        IHTMLScriptElement* This,
        BSTR *p);

    END_INTERFACE
} IHTMLScriptElementVtbl;
interface IHTMLScriptElement {
    CONST_VTBL IHTMLScriptElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLScriptElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLScriptElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLScriptElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLScriptElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLScriptElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLScriptElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLScriptElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLScriptElement methods ***/
#define IHTMLScriptElement_put_src(This,v) (This)->lpVtbl->put_src(This,v)
#define IHTMLScriptElement_get_src(This,p) (This)->lpVtbl->get_src(This,p)
#define IHTMLScriptElement_put_htmlFor(This,v) (This)->lpVtbl->put_htmlFor(This,v)
#define IHTMLScriptElement_get_htmlFor(This,p) (This)->lpVtbl->get_htmlFor(This,p)
#define IHTMLScriptElement_put_event(This,v) (This)->lpVtbl->put_event(This,v)
#define IHTMLScriptElement_get_event(This,p) (This)->lpVtbl->get_event(This,p)
#define IHTMLScriptElement_put_text(This,v) (This)->lpVtbl->put_text(This,v)
#define IHTMLScriptElement_get_text(This,p) (This)->lpVtbl->get_text(This,p)
#define IHTMLScriptElement_put_defer(This,v) (This)->lpVtbl->put_defer(This,v)
#define IHTMLScriptElement_get_defer(This,p) (This)->lpVtbl->get_defer(This,p)
#define IHTMLScriptElement_get_readyState(This,p) (This)->lpVtbl->get_readyState(This,p)
#define IHTMLScriptElement_put_onerror(This,v) (This)->lpVtbl->put_onerror(This,v)
#define IHTMLScriptElement_get_onerror(This,p) (This)->lpVtbl->get_onerror(This,p)
#define IHTMLScriptElement_put_type(This,v) (This)->lpVtbl->put_type(This,v)
#define IHTMLScriptElement_get_type(This,p) (This)->lpVtbl->get_type(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLScriptElement_put_src_Proxy(
    IHTMLScriptElement* This,
    BSTR v);
void __RPC_STUB IHTMLScriptElement_put_src_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_get_src_Proxy(
    IHTMLScriptElement* This,
    BSTR *p);
void __RPC_STUB IHTMLScriptElement_get_src_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_put_htmlFor_Proxy(
    IHTMLScriptElement* This,
    BSTR v);
void __RPC_STUB IHTMLScriptElement_put_htmlFor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_get_htmlFor_Proxy(
    IHTMLScriptElement* This,
    BSTR *p);
void __RPC_STUB IHTMLScriptElement_get_htmlFor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_put_event_Proxy(
    IHTMLScriptElement* This,
    BSTR v);
void __RPC_STUB IHTMLScriptElement_put_event_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_get_event_Proxy(
    IHTMLScriptElement* This,
    BSTR *p);
void __RPC_STUB IHTMLScriptElement_get_event_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_put_text_Proxy(
    IHTMLScriptElement* This,
    BSTR v);
void __RPC_STUB IHTMLScriptElement_put_text_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_get_text_Proxy(
    IHTMLScriptElement* This,
    BSTR *p);
void __RPC_STUB IHTMLScriptElement_get_text_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_put_defer_Proxy(
    IHTMLScriptElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLScriptElement_put_defer_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_get_defer_Proxy(
    IHTMLScriptElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLScriptElement_get_defer_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_get_readyState_Proxy(
    IHTMLScriptElement* This,
    BSTR *p);
void __RPC_STUB IHTMLScriptElement_get_readyState_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_put_onerror_Proxy(
    IHTMLScriptElement* This,
    VARIANT v);
void __RPC_STUB IHTMLScriptElement_put_onerror_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_get_onerror_Proxy(
    IHTMLScriptElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLScriptElement_get_onerror_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_put_type_Proxy(
    IHTMLScriptElement* This,
    BSTR v);
void __RPC_STUB IHTMLScriptElement_put_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement_get_type_Proxy(
    IHTMLScriptElement* This,
    BSTR *p);
void __RPC_STUB IHTMLScriptElement_get_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLScriptElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLScriptElement2 interface
 */
#ifndef __IHTMLScriptElement2_INTERFACE_DEFINED__
#define __IHTMLScriptElement2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLScriptElement2, 0x3050f828, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLScriptElement2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_charset(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_charset(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLScriptElement2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLScriptElement2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLScriptElement2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLScriptElement2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLScriptElement2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLScriptElement2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLScriptElement2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLScriptElement2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLScriptElement2 methods ***/
    HRESULT (STDMETHODCALLTYPE *put_charset)(
        IHTMLScriptElement2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_charset)(
        IHTMLScriptElement2* This,
        BSTR *p);

    END_INTERFACE
} IHTMLScriptElement2Vtbl;
interface IHTMLScriptElement2 {
    CONST_VTBL IHTMLScriptElement2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLScriptElement2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLScriptElement2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLScriptElement2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLScriptElement2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLScriptElement2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLScriptElement2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLScriptElement2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLScriptElement2 methods ***/
#define IHTMLScriptElement2_put_charset(This,v) (This)->lpVtbl->put_charset(This,v)
#define IHTMLScriptElement2_get_charset(This,p) (This)->lpVtbl->get_charset(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLScriptElement2_put_charset_Proxy(
    IHTMLScriptElement2* This,
    BSTR v);
void __RPC_STUB IHTMLScriptElement2_put_charset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLScriptElement2_get_charset_Proxy(
    IHTMLScriptElement2* This,
    BSTR *p);
void __RPC_STUB IHTMLScriptElement2_get_charset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLScriptElement2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLScriptElement dispinterface
 */
#ifndef __DispHTMLScriptElement_DISPINTERFACE_DEFINED__
#define __DispHTMLScriptElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLScriptElement, 0x3050f530, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLScriptElement : public IDispatch
{
};
#else
typedef struct DispHTMLScriptElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLScriptElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLScriptElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLScriptElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLScriptElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLScriptElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLScriptElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLScriptElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLScriptElementVtbl;
interface DispHTMLScriptElement {
    CONST_VTBL DispHTMLScriptElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLScriptElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLScriptElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLScriptElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLScriptElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLScriptElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLScriptElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLScriptElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLScriptElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLObjectElement interface
 */
#ifndef __IHTMLObjectElement_INTERFACE_DEFINED__
#define __IHTMLObjectElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLObjectElement, 0x3050f24f, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLObjectElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_object(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_classid(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_data(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE putref_recordset(
        IDispatch *v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_recordset(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_align(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_align(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_codeBase(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_codeBase(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_codeType(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_codeType(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_code(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_code(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_BaseHref(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_type(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_type(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_form(
        IHTMLFormElement **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_width(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_width(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_height(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_height(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readyState(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onreadystatechange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onreadystatechange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onerror(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onerror(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_altHtml(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_altHtml(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_vspace(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_vspace(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_hspace(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hspace(
        LONG *p) = 0;

};
#else
typedef struct IHTMLObjectElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLObjectElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLObjectElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLObjectElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLObjectElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLObjectElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLObjectElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLObjectElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLObjectElement methods ***/
    HRESULT (STDMETHODCALLTYPE *get_object)(
        IHTMLObjectElement* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *get_classid)(
        IHTMLObjectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_data)(
        IHTMLObjectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *putref_recordset)(
        IHTMLObjectElement* This,
        IDispatch *v);

    HRESULT (STDMETHODCALLTYPE *get_recordset)(
        IHTMLObjectElement* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *put_align)(
        IHTMLObjectElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_align)(
        IHTMLObjectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLObjectElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLObjectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_codeBase)(
        IHTMLObjectElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_codeBase)(
        IHTMLObjectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_codeType)(
        IHTMLObjectElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_codeType)(
        IHTMLObjectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_code)(
        IHTMLObjectElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_code)(
        IHTMLObjectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_BaseHref)(
        IHTMLObjectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_type)(
        IHTMLObjectElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_type)(
        IHTMLObjectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_form)(
        IHTMLObjectElement* This,
        IHTMLFormElement **p);

    HRESULT (STDMETHODCALLTYPE *put_width)(
        IHTMLObjectElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_width)(
        IHTMLObjectElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_height)(
        IHTMLObjectElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_height)(
        IHTMLObjectElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_readyState)(
        IHTMLObjectElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
        IHTMLObjectElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onreadystatechange)(
        IHTMLObjectElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onerror)(
        IHTMLObjectElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onerror)(
        IHTMLObjectElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_altHtml)(
        IHTMLObjectElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_altHtml)(
        IHTMLObjectElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_vspace)(
        IHTMLObjectElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_vspace)(
        IHTMLObjectElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_hspace)(
        IHTMLObjectElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_hspace)(
        IHTMLObjectElement* This,
        LONG *p);

    END_INTERFACE
} IHTMLObjectElementVtbl;
interface IHTMLObjectElement {
    CONST_VTBL IHTMLObjectElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLObjectElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLObjectElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLObjectElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLObjectElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLObjectElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLObjectElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLObjectElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLObjectElement methods ***/
#define IHTMLObjectElement_get_object(This,p) (This)->lpVtbl->get_object(This,p)
#define IHTMLObjectElement_get_classid(This,p) (This)->lpVtbl->get_classid(This,p)
#define IHTMLObjectElement_get_data(This,p) (This)->lpVtbl->get_data(This,p)
#define IHTMLObjectElement_putref_recordset(This,v) (This)->lpVtbl->putref_recordset(This,v)
#define IHTMLObjectElement_get_recordset(This,p) (This)->lpVtbl->get_recordset(This,p)
#define IHTMLObjectElement_put_align(This,v) (This)->lpVtbl->put_align(This,v)
#define IHTMLObjectElement_get_align(This,p) (This)->lpVtbl->get_align(This,p)
#define IHTMLObjectElement_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLObjectElement_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLObjectElement_put_codeBase(This,v) (This)->lpVtbl->put_codeBase(This,v)
#define IHTMLObjectElement_get_codeBase(This,p) (This)->lpVtbl->get_codeBase(This,p)
#define IHTMLObjectElement_put_codeType(This,v) (This)->lpVtbl->put_codeType(This,v)
#define IHTMLObjectElement_get_codeType(This,p) (This)->lpVtbl->get_codeType(This,p)
#define IHTMLObjectElement_put_code(This,v) (This)->lpVtbl->put_code(This,v)
#define IHTMLObjectElement_get_code(This,p) (This)->lpVtbl->get_code(This,p)
#define IHTMLObjectElement_get_BaseHref(This,p) (This)->lpVtbl->get_BaseHref(This,p)
#define IHTMLObjectElement_put_type(This,v) (This)->lpVtbl->put_type(This,v)
#define IHTMLObjectElement_get_type(This,p) (This)->lpVtbl->get_type(This,p)
#define IHTMLObjectElement_get_form(This,p) (This)->lpVtbl->get_form(This,p)
#define IHTMLObjectElement_put_width(This,v) (This)->lpVtbl->put_width(This,v)
#define IHTMLObjectElement_get_width(This,p) (This)->lpVtbl->get_width(This,p)
#define IHTMLObjectElement_put_height(This,v) (This)->lpVtbl->put_height(This,v)
#define IHTMLObjectElement_get_height(This,p) (This)->lpVtbl->get_height(This,p)
#define IHTMLObjectElement_get_readyState(This,p) (This)->lpVtbl->get_readyState(This,p)
#define IHTMLObjectElement_put_onreadystatechange(This,v) (This)->lpVtbl->put_onreadystatechange(This,v)
#define IHTMLObjectElement_get_onreadystatechange(This,p) (This)->lpVtbl->get_onreadystatechange(This,p)
#define IHTMLObjectElement_put_onerror(This,v) (This)->lpVtbl->put_onerror(This,v)
#define IHTMLObjectElement_get_onerror(This,p) (This)->lpVtbl->get_onerror(This,p)
#define IHTMLObjectElement_put_altHtml(This,v) (This)->lpVtbl->put_altHtml(This,v)
#define IHTMLObjectElement_get_altHtml(This,p) (This)->lpVtbl->get_altHtml(This,p)
#define IHTMLObjectElement_put_vspace(This,v) (This)->lpVtbl->put_vspace(This,v)
#define IHTMLObjectElement_get_vspace(This,p) (This)->lpVtbl->get_vspace(This,p)
#define IHTMLObjectElement_put_hspace(This,v) (This)->lpVtbl->put_hspace(This,v)
#define IHTMLObjectElement_get_hspace(This,p) (This)->lpVtbl->get_hspace(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_object_Proxy(
    IHTMLObjectElement* This,
    IDispatch **p);
void __RPC_STUB IHTMLObjectElement_get_object_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_classid_Proxy(
    IHTMLObjectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLObjectElement_get_classid_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_data_Proxy(
    IHTMLObjectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLObjectElement_get_data_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_putref_recordset_Proxy(
    IHTMLObjectElement* This,
    IDispatch *v);
void __RPC_STUB IHTMLObjectElement_putref_recordset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_recordset_Proxy(
    IHTMLObjectElement* This,
    IDispatch **p);
void __RPC_STUB IHTMLObjectElement_get_recordset_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_align_Proxy(
    IHTMLObjectElement* This,
    BSTR v);
void __RPC_STUB IHTMLObjectElement_put_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_align_Proxy(
    IHTMLObjectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLObjectElement_get_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_name_Proxy(
    IHTMLObjectElement* This,
    BSTR v);
void __RPC_STUB IHTMLObjectElement_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_name_Proxy(
    IHTMLObjectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLObjectElement_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_codeBase_Proxy(
    IHTMLObjectElement* This,
    BSTR v);
void __RPC_STUB IHTMLObjectElement_put_codeBase_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_codeBase_Proxy(
    IHTMLObjectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLObjectElement_get_codeBase_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_codeType_Proxy(
    IHTMLObjectElement* This,
    BSTR v);
void __RPC_STUB IHTMLObjectElement_put_codeType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_codeType_Proxy(
    IHTMLObjectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLObjectElement_get_codeType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_code_Proxy(
    IHTMLObjectElement* This,
    BSTR v);
void __RPC_STUB IHTMLObjectElement_put_code_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_code_Proxy(
    IHTMLObjectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLObjectElement_get_code_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_BaseHref_Proxy(
    IHTMLObjectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLObjectElement_get_BaseHref_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_type_Proxy(
    IHTMLObjectElement* This,
    BSTR v);
void __RPC_STUB IHTMLObjectElement_put_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_type_Proxy(
    IHTMLObjectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLObjectElement_get_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_form_Proxy(
    IHTMLObjectElement* This,
    IHTMLFormElement **p);
void __RPC_STUB IHTMLObjectElement_get_form_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_width_Proxy(
    IHTMLObjectElement* This,
    VARIANT v);
void __RPC_STUB IHTMLObjectElement_put_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_width_Proxy(
    IHTMLObjectElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLObjectElement_get_width_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_height_Proxy(
    IHTMLObjectElement* This,
    VARIANT v);
void __RPC_STUB IHTMLObjectElement_put_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_height_Proxy(
    IHTMLObjectElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLObjectElement_get_height_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_readyState_Proxy(
    IHTMLObjectElement* This,
    LONG *p);
void __RPC_STUB IHTMLObjectElement_get_readyState_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_onreadystatechange_Proxy(
    IHTMLObjectElement* This,
    VARIANT v);
void __RPC_STUB IHTMLObjectElement_put_onreadystatechange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_onreadystatechange_Proxy(
    IHTMLObjectElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLObjectElement_get_onreadystatechange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_onerror_Proxy(
    IHTMLObjectElement* This,
    VARIANT v);
void __RPC_STUB IHTMLObjectElement_put_onerror_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_onerror_Proxy(
    IHTMLObjectElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLObjectElement_get_onerror_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_altHtml_Proxy(
    IHTMLObjectElement* This,
    BSTR v);
void __RPC_STUB IHTMLObjectElement_put_altHtml_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_altHtml_Proxy(
    IHTMLObjectElement* This,
    BSTR *p);
void __RPC_STUB IHTMLObjectElement_get_altHtml_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_vspace_Proxy(
    IHTMLObjectElement* This,
    LONG v);
void __RPC_STUB IHTMLObjectElement_put_vspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_vspace_Proxy(
    IHTMLObjectElement* This,
    LONG *p);
void __RPC_STUB IHTMLObjectElement_get_vspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_put_hspace_Proxy(
    IHTMLObjectElement* This,
    LONG v);
void __RPC_STUB IHTMLObjectElement_put_hspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLObjectElement_get_hspace_Proxy(
    IHTMLObjectElement* This,
    LONG *p);
void __RPC_STUB IHTMLObjectElement_get_hspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLObjectElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLParamElement interface
 */
#ifndef __IHTMLParamElement_INTERFACE_DEFINED__
#define __IHTMLParamElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLParamElement, 0x3050f83d, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLParamElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_value(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_value(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_type(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_type(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_valueType(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_valueType(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLParamElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLParamElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLParamElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLParamElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLParamElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLParamElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLParamElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLParamElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLParamElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLParamElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLParamElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_value)(
        IHTMLParamElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_value)(
        IHTMLParamElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_type)(
        IHTMLParamElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_type)(
        IHTMLParamElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_valueType)(
        IHTMLParamElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_valueType)(
        IHTMLParamElement* This,
        BSTR *p);

    END_INTERFACE
} IHTMLParamElementVtbl;
interface IHTMLParamElement {
    CONST_VTBL IHTMLParamElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLParamElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLParamElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLParamElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLParamElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLParamElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLParamElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLParamElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLParamElement methods ***/
#define IHTMLParamElement_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLParamElement_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLParamElement_put_value(This,v) (This)->lpVtbl->put_value(This,v)
#define IHTMLParamElement_get_value(This,p) (This)->lpVtbl->get_value(This,p)
#define IHTMLParamElement_put_type(This,v) (This)->lpVtbl->put_type(This,v)
#define IHTMLParamElement_get_type(This,p) (This)->lpVtbl->get_type(This,p)
#define IHTMLParamElement_put_valueType(This,v) (This)->lpVtbl->put_valueType(This,v)
#define IHTMLParamElement_get_valueType(This,p) (This)->lpVtbl->get_valueType(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLParamElement_put_name_Proxy(
    IHTMLParamElement* This,
    BSTR v);
void __RPC_STUB IHTMLParamElement_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement_get_name_Proxy(
    IHTMLParamElement* This,
    BSTR *p);
void __RPC_STUB IHTMLParamElement_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement_put_value_Proxy(
    IHTMLParamElement* This,
    BSTR v);
void __RPC_STUB IHTMLParamElement_put_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement_get_value_Proxy(
    IHTMLParamElement* This,
    BSTR *p);
void __RPC_STUB IHTMLParamElement_get_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement_put_type_Proxy(
    IHTMLParamElement* This,
    BSTR v);
void __RPC_STUB IHTMLParamElement_put_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement_get_type_Proxy(
    IHTMLParamElement* This,
    BSTR *p);
void __RPC_STUB IHTMLParamElement_get_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement_put_valueType_Proxy(
    IHTMLParamElement* This,
    BSTR v);
void __RPC_STUB IHTMLParamElement_put_valueType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement_get_valueType_Proxy(
    IHTMLParamElement* This,
    BSTR *p);
void __RPC_STUB IHTMLParamElement_get_valueType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLParamElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLParamElement2 interface
 */
#ifndef __IHTMLParamElement2_INTERFACE_DEFINED__
#define __IHTMLParamElement2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLParamElement2, 0x30510444, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLParamElement2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_type(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_type(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_value(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_value(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_valueType(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_valueType(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLParamElement2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLParamElement2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLParamElement2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLParamElement2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLParamElement2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLParamElement2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLParamElement2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLParamElement2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLParamElement2 methods ***/
    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLParamElement2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLParamElement2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_type)(
        IHTMLParamElement2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_type)(
        IHTMLParamElement2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_value)(
        IHTMLParamElement2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_value)(
        IHTMLParamElement2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_valueType)(
        IHTMLParamElement2* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_valueType)(
        IHTMLParamElement2* This,
        BSTR *p);

    END_INTERFACE
} IHTMLParamElement2Vtbl;
interface IHTMLParamElement2 {
    CONST_VTBL IHTMLParamElement2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLParamElement2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLParamElement2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLParamElement2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLParamElement2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLParamElement2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLParamElement2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLParamElement2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLParamElement2 methods ***/
#define IHTMLParamElement2_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLParamElement2_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLParamElement2_put_type(This,v) (This)->lpVtbl->put_type(This,v)
#define IHTMLParamElement2_get_type(This,p) (This)->lpVtbl->get_type(This,p)
#define IHTMLParamElement2_put_value(This,v) (This)->lpVtbl->put_value(This,v)
#define IHTMLParamElement2_get_value(This,p) (This)->lpVtbl->get_value(This,p)
#define IHTMLParamElement2_put_valueType(This,v) (This)->lpVtbl->put_valueType(This,v)
#define IHTMLParamElement2_get_valueType(This,p) (This)->lpVtbl->get_valueType(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLParamElement2_put_name_Proxy(
    IHTMLParamElement2* This,
    BSTR v);
void __RPC_STUB IHTMLParamElement2_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement2_get_name_Proxy(
    IHTMLParamElement2* This,
    BSTR *p);
void __RPC_STUB IHTMLParamElement2_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement2_put_type_Proxy(
    IHTMLParamElement2* This,
    BSTR v);
void __RPC_STUB IHTMLParamElement2_put_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement2_get_type_Proxy(
    IHTMLParamElement2* This,
    BSTR *p);
void __RPC_STUB IHTMLParamElement2_get_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement2_put_value_Proxy(
    IHTMLParamElement2* This,
    BSTR v);
void __RPC_STUB IHTMLParamElement2_put_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement2_get_value_Proxy(
    IHTMLParamElement2* This,
    BSTR *p);
void __RPC_STUB IHTMLParamElement2_get_value_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement2_put_valueType_Proxy(
    IHTMLParamElement2* This,
    BSTR v);
void __RPC_STUB IHTMLParamElement2_put_valueType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLParamElement2_get_valueType_Proxy(
    IHTMLParamElement2* This,
    BSTR *p);
void __RPC_STUB IHTMLParamElement2_get_valueType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLParamElement2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLObjectElement dispinterface
 */
#ifndef __DispHTMLObjectElement_DISPINTERFACE_DEFINED__
#define __DispHTMLObjectElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLObjectElement, 0x3050f529, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLObjectElement : public IDispatch
{
};
#else
typedef struct DispHTMLObjectElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLObjectElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLObjectElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLObjectElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLObjectElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLObjectElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLObjectElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLObjectElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLObjectElementVtbl;
interface DispHTMLObjectElement {
    CONST_VTBL DispHTMLObjectElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLObjectElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLObjectElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLObjectElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLObjectElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLObjectElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLObjectElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLObjectElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLObjectElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLParamElement dispinterface
 */
#ifndef __DispHTMLParamElement_DISPINTERFACE_DEFINED__
#define __DispHTMLParamElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLParamElement, 0x3050f590, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLParamElement : public IDispatch
{
};
#else
typedef struct DispHTMLParamElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLParamElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLParamElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLParamElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLParamElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLParamElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLParamElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLParamElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLParamElementVtbl;
interface DispHTMLParamElement {
    CONST_VTBL DispHTMLParamElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLParamElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLParamElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLParamElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLParamElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLParamElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLParamElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLParamElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLParamElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLFrameBase interface
 */
#ifndef __IHTMLFrameBase_INTERFACE_DEFINED__
#define __IHTMLFrameBase_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLFrameBase, 0x3050f311, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLFrameBase : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_src(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_src(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_name(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_name(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_border(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_border(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_frameBorder(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_frameBorder(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_frameSpacing(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_frameSpacing(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_marginWidth(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginWidth(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_marginHeight(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_marginHeight(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_noResize(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_noResize(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_scrolling(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_scrolling(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLFrameBaseVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLFrameBase* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLFrameBase* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLFrameBase* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLFrameBase* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLFrameBase* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLFrameBase* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLFrameBase* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLFrameBase methods ***/
    HRESULT (STDMETHODCALLTYPE *put_src)(
        IHTMLFrameBase* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_src)(
        IHTMLFrameBase* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_name)(
        IHTMLFrameBase* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_name)(
        IHTMLFrameBase* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_border)(
        IHTMLFrameBase* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_border)(
        IHTMLFrameBase* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_frameBorder)(
        IHTMLFrameBase* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_frameBorder)(
        IHTMLFrameBase* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_frameSpacing)(
        IHTMLFrameBase* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_frameSpacing)(
        IHTMLFrameBase* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_marginWidth)(
        IHTMLFrameBase* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_marginWidth)(
        IHTMLFrameBase* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_marginHeight)(
        IHTMLFrameBase* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_marginHeight)(
        IHTMLFrameBase* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_noResize)(
        IHTMLFrameBase* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_noResize)(
        IHTMLFrameBase* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_scrolling)(
        IHTMLFrameBase* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_scrolling)(
        IHTMLFrameBase* This,
        BSTR *p);

    END_INTERFACE
} IHTMLFrameBaseVtbl;
interface IHTMLFrameBase {
    CONST_VTBL IHTMLFrameBaseVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLFrameBase_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLFrameBase_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLFrameBase_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLFrameBase_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLFrameBase_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLFrameBase_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLFrameBase_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLFrameBase methods ***/
#define IHTMLFrameBase_put_src(This,v) (This)->lpVtbl->put_src(This,v)
#define IHTMLFrameBase_get_src(This,p) (This)->lpVtbl->get_src(This,p)
#define IHTMLFrameBase_put_name(This,v) (This)->lpVtbl->put_name(This,v)
#define IHTMLFrameBase_get_name(This,p) (This)->lpVtbl->get_name(This,p)
#define IHTMLFrameBase_put_border(This,v) (This)->lpVtbl->put_border(This,v)
#define IHTMLFrameBase_get_border(This,p) (This)->lpVtbl->get_border(This,p)
#define IHTMLFrameBase_put_frameBorder(This,v) (This)->lpVtbl->put_frameBorder(This,v)
#define IHTMLFrameBase_get_frameBorder(This,p) (This)->lpVtbl->get_frameBorder(This,p)
#define IHTMLFrameBase_put_frameSpacing(This,v) (This)->lpVtbl->put_frameSpacing(This,v)
#define IHTMLFrameBase_get_frameSpacing(This,p) (This)->lpVtbl->get_frameSpacing(This,p)
#define IHTMLFrameBase_put_marginWidth(This,v) (This)->lpVtbl->put_marginWidth(This,v)
#define IHTMLFrameBase_get_marginWidth(This,p) (This)->lpVtbl->get_marginWidth(This,p)
#define IHTMLFrameBase_put_marginHeight(This,v) (This)->lpVtbl->put_marginHeight(This,v)
#define IHTMLFrameBase_get_marginHeight(This,p) (This)->lpVtbl->get_marginHeight(This,p)
#define IHTMLFrameBase_put_noResize(This,v) (This)->lpVtbl->put_noResize(This,v)
#define IHTMLFrameBase_get_noResize(This,p) (This)->lpVtbl->get_noResize(This,p)
#define IHTMLFrameBase_put_scrolling(This,v) (This)->lpVtbl->put_scrolling(This,v)
#define IHTMLFrameBase_get_scrolling(This,p) (This)->lpVtbl->get_scrolling(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLFrameBase_put_src_Proxy(
    IHTMLFrameBase* This,
    BSTR v);
void __RPC_STUB IHTMLFrameBase_put_src_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_get_src_Proxy(
    IHTMLFrameBase* This,
    BSTR *p);
void __RPC_STUB IHTMLFrameBase_get_src_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_put_name_Proxy(
    IHTMLFrameBase* This,
    BSTR v);
void __RPC_STUB IHTMLFrameBase_put_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_get_name_Proxy(
    IHTMLFrameBase* This,
    BSTR *p);
void __RPC_STUB IHTMLFrameBase_get_name_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_put_border_Proxy(
    IHTMLFrameBase* This,
    VARIANT v);
void __RPC_STUB IHTMLFrameBase_put_border_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_get_border_Proxy(
    IHTMLFrameBase* This,
    VARIANT *p);
void __RPC_STUB IHTMLFrameBase_get_border_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_put_frameBorder_Proxy(
    IHTMLFrameBase* This,
    BSTR v);
void __RPC_STUB IHTMLFrameBase_put_frameBorder_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_get_frameBorder_Proxy(
    IHTMLFrameBase* This,
    BSTR *p);
void __RPC_STUB IHTMLFrameBase_get_frameBorder_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_put_frameSpacing_Proxy(
    IHTMLFrameBase* This,
    VARIANT v);
void __RPC_STUB IHTMLFrameBase_put_frameSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_get_frameSpacing_Proxy(
    IHTMLFrameBase* This,
    VARIANT *p);
void __RPC_STUB IHTMLFrameBase_get_frameSpacing_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_put_marginWidth_Proxy(
    IHTMLFrameBase* This,
    VARIANT v);
void __RPC_STUB IHTMLFrameBase_put_marginWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_get_marginWidth_Proxy(
    IHTMLFrameBase* This,
    VARIANT *p);
void __RPC_STUB IHTMLFrameBase_get_marginWidth_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_put_marginHeight_Proxy(
    IHTMLFrameBase* This,
    VARIANT v);
void __RPC_STUB IHTMLFrameBase_put_marginHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_get_marginHeight_Proxy(
    IHTMLFrameBase* This,
    VARIANT *p);
void __RPC_STUB IHTMLFrameBase_get_marginHeight_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_put_noResize_Proxy(
    IHTMLFrameBase* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLFrameBase_put_noResize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_get_noResize_Proxy(
    IHTMLFrameBase* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLFrameBase_get_noResize_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_put_scrolling_Proxy(
    IHTMLFrameBase* This,
    BSTR v);
void __RPC_STUB IHTMLFrameBase_put_scrolling_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase_get_scrolling_Proxy(
    IHTMLFrameBase* This,
    BSTR *p);
void __RPC_STUB IHTMLFrameBase_get_scrolling_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLFrameBase_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLFrameBase2 interface
 */
#ifndef __IHTMLFrameBase2_INTERFACE_DEFINED__
#define __IHTMLFrameBase2_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLFrameBase2, 0x3050f6db, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLFrameBase2 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_contentWindow(
        IHTMLWindow2 **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onload(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onload(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onreadystatechange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onreadystatechange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readyState(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_allowTransparency(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_allowTransparency(
        VARIANT_BOOL *p) = 0;

};
#else
typedef struct IHTMLFrameBase2Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLFrameBase2* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLFrameBase2* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLFrameBase2* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLFrameBase2* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLFrameBase2* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLFrameBase2* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLFrameBase2* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLFrameBase2 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_contentWindow)(
        IHTMLFrameBase2* This,
        IHTMLWindow2 **p);

    HRESULT (STDMETHODCALLTYPE *put_onload)(
        IHTMLFrameBase2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onload)(
        IHTMLFrameBase2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
        IHTMLFrameBase2* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onreadystatechange)(
        IHTMLFrameBase2* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_readyState)(
        IHTMLFrameBase2* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_allowTransparency)(
        IHTMLFrameBase2* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_allowTransparency)(
        IHTMLFrameBase2* This,
        VARIANT_BOOL *p);

    END_INTERFACE
} IHTMLFrameBase2Vtbl;
interface IHTMLFrameBase2 {
    CONST_VTBL IHTMLFrameBase2Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLFrameBase2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLFrameBase2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLFrameBase2_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLFrameBase2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLFrameBase2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLFrameBase2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLFrameBase2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLFrameBase2 methods ***/
#define IHTMLFrameBase2_get_contentWindow(This,p) (This)->lpVtbl->get_contentWindow(This,p)
#define IHTMLFrameBase2_put_onload(This,v) (This)->lpVtbl->put_onload(This,v)
#define IHTMLFrameBase2_get_onload(This,p) (This)->lpVtbl->get_onload(This,p)
#define IHTMLFrameBase2_put_onreadystatechange(This,v) (This)->lpVtbl->put_onreadystatechange(This,v)
#define IHTMLFrameBase2_get_onreadystatechange(This,p) (This)->lpVtbl->get_onreadystatechange(This,p)
#define IHTMLFrameBase2_get_readyState(This,p) (This)->lpVtbl->get_readyState(This,p)
#define IHTMLFrameBase2_put_allowTransparency(This,v) (This)->lpVtbl->put_allowTransparency(This,v)
#define IHTMLFrameBase2_get_allowTransparency(This,p) (This)->lpVtbl->get_allowTransparency(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLFrameBase2_get_contentWindow_Proxy(
    IHTMLFrameBase2* This,
    IHTMLWindow2 **p);
void __RPC_STUB IHTMLFrameBase2_get_contentWindow_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase2_put_onload_Proxy(
    IHTMLFrameBase2* This,
    VARIANT v);
void __RPC_STUB IHTMLFrameBase2_put_onload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase2_get_onload_Proxy(
    IHTMLFrameBase2* This,
    VARIANT *p);
void __RPC_STUB IHTMLFrameBase2_get_onload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase2_put_onreadystatechange_Proxy(
    IHTMLFrameBase2* This,
    VARIANT v);
void __RPC_STUB IHTMLFrameBase2_put_onreadystatechange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase2_get_onreadystatechange_Proxy(
    IHTMLFrameBase2* This,
    VARIANT *p);
void __RPC_STUB IHTMLFrameBase2_get_onreadystatechange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase2_get_readyState_Proxy(
    IHTMLFrameBase2* This,
    BSTR *p);
void __RPC_STUB IHTMLFrameBase2_get_readyState_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase2_put_allowTransparency_Proxy(
    IHTMLFrameBase2* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLFrameBase2_put_allowTransparency_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameBase2_get_allowTransparency_Proxy(
    IHTMLFrameBase2* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLFrameBase2_get_allowTransparency_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLFrameBase2_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLFrameElement3 interface
 */
#ifndef __IHTMLFrameElement3_INTERFACE_DEFINED__
#define __IHTMLFrameElement3_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLFrameElement3, 0x3051042d, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLFrameElement3 : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE get_contentDocument(
        IDispatch **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_src(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_src(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_longDesc(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_longDesc(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_frameBorder(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_frameBorder(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLFrameElement3Vtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLFrameElement3* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLFrameElement3* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLFrameElement3* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLFrameElement3* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLFrameElement3* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLFrameElement3* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLFrameElement3* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLFrameElement3 methods ***/
    HRESULT (STDMETHODCALLTYPE *get_contentDocument)(
        IHTMLFrameElement3* This,
        IDispatch **p);

    HRESULT (STDMETHODCALLTYPE *put_src)(
        IHTMLFrameElement3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_src)(
        IHTMLFrameElement3* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_longDesc)(
        IHTMLFrameElement3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_longDesc)(
        IHTMLFrameElement3* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_frameBorder)(
        IHTMLFrameElement3* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_frameBorder)(
        IHTMLFrameElement3* This,
        BSTR *p);

    END_INTERFACE
} IHTMLFrameElement3Vtbl;
interface IHTMLFrameElement3 {
    CONST_VTBL IHTMLFrameElement3Vtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLFrameElement3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLFrameElement3_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLFrameElement3_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLFrameElement3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLFrameElement3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLFrameElement3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLFrameElement3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLFrameElement3 methods ***/
#define IHTMLFrameElement3_get_contentDocument(This,p) (This)->lpVtbl->get_contentDocument(This,p)
#define IHTMLFrameElement3_put_src(This,v) (This)->lpVtbl->put_src(This,v)
#define IHTMLFrameElement3_get_src(This,p) (This)->lpVtbl->get_src(This,p)
#define IHTMLFrameElement3_put_longDesc(This,v) (This)->lpVtbl->put_longDesc(This,v)
#define IHTMLFrameElement3_get_longDesc(This,p) (This)->lpVtbl->get_longDesc(This,p)
#define IHTMLFrameElement3_put_frameBorder(This,v) (This)->lpVtbl->put_frameBorder(This,v)
#define IHTMLFrameElement3_get_frameBorder(This,p) (This)->lpVtbl->get_frameBorder(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLFrameElement3_get_contentDocument_Proxy(
    IHTMLFrameElement3* This,
    IDispatch **p);
void __RPC_STUB IHTMLFrameElement3_get_contentDocument_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameElement3_put_src_Proxy(
    IHTMLFrameElement3* This,
    BSTR v);
void __RPC_STUB IHTMLFrameElement3_put_src_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameElement3_get_src_Proxy(
    IHTMLFrameElement3* This,
    BSTR *p);
void __RPC_STUB IHTMLFrameElement3_get_src_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameElement3_put_longDesc_Proxy(
    IHTMLFrameElement3* This,
    BSTR v);
void __RPC_STUB IHTMLFrameElement3_put_longDesc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameElement3_get_longDesc_Proxy(
    IHTMLFrameElement3* This,
    BSTR *p);
void __RPC_STUB IHTMLFrameElement3_get_longDesc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameElement3_put_frameBorder_Proxy(
    IHTMLFrameElement3* This,
    BSTR v);
void __RPC_STUB IHTMLFrameElement3_put_frameBorder_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLFrameElement3_get_frameBorder_Proxy(
    IHTMLFrameElement3* This,
    BSTR *p);
void __RPC_STUB IHTMLFrameElement3_get_frameBorder_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLFrameElement3_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLFrameElement dispinterface
 */
#ifndef __DispHTMLFrameElement_DISPINTERFACE_DEFINED__
#define __DispHTMLFrameElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLFrameElement, 0x3050f513, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLFrameElement : public IDispatch
{
};
#else
typedef struct DispHTMLFrameElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLFrameElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLFrameElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLFrameElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLFrameElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLFrameElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLFrameElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLFrameElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLFrameElementVtbl;
interface DispHTMLFrameElement {
    CONST_VTBL DispHTMLFrameElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLFrameElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLFrameElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLFrameElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLFrameElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLFrameElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLFrameElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLFrameElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLFrameElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLIFrameElement interface
 */
#ifndef __IHTMLIFrameElement_INTERFACE_DEFINED__
#define __IHTMLIFrameElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLIFrameElement, 0x3050f315, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLIFrameElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_vspace(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_vspace(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_hspace(
        LONG v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hspace(
        LONG *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_align(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_align(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLIFrameElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLIFrameElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLIFrameElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLIFrameElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLIFrameElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLIFrameElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLIFrameElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLIFrameElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLIFrameElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_vspace)(
        IHTMLIFrameElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_vspace)(
        IHTMLIFrameElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_hspace)(
        IHTMLIFrameElement* This,
        LONG v);

    HRESULT (STDMETHODCALLTYPE *get_hspace)(
        IHTMLIFrameElement* This,
        LONG *p);

    HRESULT (STDMETHODCALLTYPE *put_align)(
        IHTMLIFrameElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_align)(
        IHTMLIFrameElement* This,
        BSTR *p);

    END_INTERFACE
} IHTMLIFrameElementVtbl;
interface IHTMLIFrameElement {
    CONST_VTBL IHTMLIFrameElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLIFrameElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLIFrameElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLIFrameElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLIFrameElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLIFrameElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLIFrameElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLIFrameElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLIFrameElement methods ***/
#define IHTMLIFrameElement_put_vspace(This,v) (This)->lpVtbl->put_vspace(This,v)
#define IHTMLIFrameElement_get_vspace(This,p) (This)->lpVtbl->get_vspace(This,p)
#define IHTMLIFrameElement_put_hspace(This,v) (This)->lpVtbl->put_hspace(This,v)
#define IHTMLIFrameElement_get_hspace(This,p) (This)->lpVtbl->get_hspace(This,p)
#define IHTMLIFrameElement_put_align(This,v) (This)->lpVtbl->put_align(This,v)
#define IHTMLIFrameElement_get_align(This,p) (This)->lpVtbl->get_align(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLIFrameElement_put_vspace_Proxy(
    IHTMLIFrameElement* This,
    LONG v);
void __RPC_STUB IHTMLIFrameElement_put_vspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLIFrameElement_get_vspace_Proxy(
    IHTMLIFrameElement* This,
    LONG *p);
void __RPC_STUB IHTMLIFrameElement_get_vspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLIFrameElement_put_hspace_Proxy(
    IHTMLIFrameElement* This,
    LONG v);
void __RPC_STUB IHTMLIFrameElement_put_hspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLIFrameElement_get_hspace_Proxy(
    IHTMLIFrameElement* This,
    LONG *p);
void __RPC_STUB IHTMLIFrameElement_get_hspace_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLIFrameElement_put_align_Proxy(
    IHTMLIFrameElement* This,
    BSTR v);
void __RPC_STUB IHTMLIFrameElement_put_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLIFrameElement_get_align_Proxy(
    IHTMLIFrameElement* This,
    BSTR *p);
void __RPC_STUB IHTMLIFrameElement_get_align_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLIFrameElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLIFrame dispinterface
 */
#ifndef __DispHTMLIFrame_DISPINTERFACE_DEFINED__
#define __DispHTMLIFrame_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLIFrame, 0x3050f51b, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLIFrame : public IDispatch
{
};
#else
typedef struct DispHTMLIFrameVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLIFrame* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLIFrame* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLIFrame* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLIFrame* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLIFrame* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLIFrame* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLIFrame* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLIFrameVtbl;
interface DispHTMLIFrame {
    CONST_VTBL DispHTMLIFrameVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLIFrame_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLIFrame_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLIFrame_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLIFrame_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLIFrame_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLIFrame_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLIFrame_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLIFrame_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLStyleElement interface
 */
#ifndef __IHTMLStyleElement_INTERFACE_DEFINED__
#define __IHTMLStyleElement_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLStyleElement, 0x3050f375, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLStyleElement : public IDispatch
{
    virtual HRESULT STDMETHODCALLTYPE put_type(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_type(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_readyState(
        BSTR *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onreadystatechange(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onreadystatechange(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onload(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onload(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_onerror(
        VARIANT v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_onerror(
        VARIANT *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_styleSheet(
        IHTMLStyleSheet **p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_disabled(
        VARIANT_BOOL v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_disabled(
        VARIANT_BOOL *p) = 0;

    virtual HRESULT STDMETHODCALLTYPE put_media(
        BSTR v) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_media(
        BSTR *p) = 0;

};
#else
typedef struct IHTMLStyleElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLStyleElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLStyleElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLStyleElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        IHTMLStyleElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        IHTMLStyleElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        IHTMLStyleElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        IHTMLStyleElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    /*** IHTMLStyleElement methods ***/
    HRESULT (STDMETHODCALLTYPE *put_type)(
        IHTMLStyleElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_type)(
        IHTMLStyleElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *get_readyState)(
        IHTMLStyleElement* This,
        BSTR *p);

    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
        IHTMLStyleElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onreadystatechange)(
        IHTMLStyleElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onload)(
        IHTMLStyleElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onload)(
        IHTMLStyleElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *put_onerror)(
        IHTMLStyleElement* This,
        VARIANT v);

    HRESULT (STDMETHODCALLTYPE *get_onerror)(
        IHTMLStyleElement* This,
        VARIANT *p);

    HRESULT (STDMETHODCALLTYPE *get_styleSheet)(
        IHTMLStyleElement* This,
        IHTMLStyleSheet **p);

    HRESULT (STDMETHODCALLTYPE *put_disabled)(
        IHTMLStyleElement* This,
        VARIANT_BOOL v);

    HRESULT (STDMETHODCALLTYPE *get_disabled)(
        IHTMLStyleElement* This,
        VARIANT_BOOL *p);

    HRESULT (STDMETHODCALLTYPE *put_media)(
        IHTMLStyleElement* This,
        BSTR v);

    HRESULT (STDMETHODCALLTYPE *get_media)(
        IHTMLStyleElement* This,
        BSTR *p);

    END_INTERFACE
} IHTMLStyleElementVtbl;
interface IHTMLStyleElement {
    CONST_VTBL IHTMLStyleElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLStyleElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLStyleElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLStyleElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define IHTMLStyleElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IHTMLStyleElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IHTMLStyleElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IHTMLStyleElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
/*** IHTMLStyleElement methods ***/
#define IHTMLStyleElement_put_type(This,v) (This)->lpVtbl->put_type(This,v)
#define IHTMLStyleElement_get_type(This,p) (This)->lpVtbl->get_type(This,p)
#define IHTMLStyleElement_get_readyState(This,p) (This)->lpVtbl->get_readyState(This,p)
#define IHTMLStyleElement_put_onreadystatechange(This,v) (This)->lpVtbl->put_onreadystatechange(This,v)
#define IHTMLStyleElement_get_onreadystatechange(This,p) (This)->lpVtbl->get_onreadystatechange(This,p)
#define IHTMLStyleElement_put_onload(This,v) (This)->lpVtbl->put_onload(This,v)
#define IHTMLStyleElement_get_onload(This,p) (This)->lpVtbl->get_onload(This,p)
#define IHTMLStyleElement_put_onerror(This,v) (This)->lpVtbl->put_onerror(This,v)
#define IHTMLStyleElement_get_onerror(This,p) (This)->lpVtbl->get_onerror(This,p)
#define IHTMLStyleElement_get_styleSheet(This,p) (This)->lpVtbl->get_styleSheet(This,p)
#define IHTMLStyleElement_put_disabled(This,v) (This)->lpVtbl->put_disabled(This,v)
#define IHTMLStyleElement_get_disabled(This,p) (This)->lpVtbl->get_disabled(This,p)
#define IHTMLStyleElement_put_media(This,v) (This)->lpVtbl->put_media(This,v)
#define IHTMLStyleElement_get_media(This,p) (This)->lpVtbl->get_media(This,p)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLStyleElement_put_type_Proxy(
    IHTMLStyleElement* This,
    BSTR v);
void __RPC_STUB IHTMLStyleElement_put_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_get_type_Proxy(
    IHTMLStyleElement* This,
    BSTR *p);
void __RPC_STUB IHTMLStyleElement_get_type_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_get_readyState_Proxy(
    IHTMLStyleElement* This,
    BSTR *p);
void __RPC_STUB IHTMLStyleElement_get_readyState_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_put_onreadystatechange_Proxy(
    IHTMLStyleElement* This,
    VARIANT v);
void __RPC_STUB IHTMLStyleElement_put_onreadystatechange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_get_onreadystatechange_Proxy(
    IHTMLStyleElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyleElement_get_onreadystatechange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_put_onload_Proxy(
    IHTMLStyleElement* This,
    VARIANT v);
void __RPC_STUB IHTMLStyleElement_put_onload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_get_onload_Proxy(
    IHTMLStyleElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyleElement_get_onload_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_put_onerror_Proxy(
    IHTMLStyleElement* This,
    VARIANT v);
void __RPC_STUB IHTMLStyleElement_put_onerror_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_get_onerror_Proxy(
    IHTMLStyleElement* This,
    VARIANT *p);
void __RPC_STUB IHTMLStyleElement_get_onerror_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_get_styleSheet_Proxy(
    IHTMLStyleElement* This,
    IHTMLStyleSheet **p);
void __RPC_STUB IHTMLStyleElement_get_styleSheet_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_put_disabled_Proxy(
    IHTMLStyleElement* This,
    VARIANT_BOOL v);
void __RPC_STUB IHTMLStyleElement_put_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_get_disabled_Proxy(
    IHTMLStyleElement* This,
    VARIANT_BOOL *p);
void __RPC_STUB IHTMLStyleElement_get_disabled_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_put_media_Proxy(
    IHTMLStyleElement* This,
    BSTR v);
void __RPC_STUB IHTMLStyleElement_put_media_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLStyleElement_get_media_Proxy(
    IHTMLStyleElement* This,
    BSTR *p);
void __RPC_STUB IHTMLStyleElement_get_media_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLStyleElement_INTERFACE_DEFINED__ */

/*****************************************************************************
 * DispHTMLStyleElement dispinterface
 */
#ifndef __DispHTMLStyleElement_DISPINTERFACE_DEFINED__
#define __DispHTMLStyleElement_DISPINTERFACE_DEFINED__

DEFINE_GUID(DIID_DispHTMLStyleElement, 0x3050f511, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface DispHTMLStyleElement : public IDispatch
{
};
#else
typedef struct DispHTMLStyleElementVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        DispHTMLStyleElement* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        DispHTMLStyleElement* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        DispHTMLStyleElement* This);

    /*** IDispatch methods ***/
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
        DispHTMLStyleElement* This,
        UINT *pctinfo);

    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
        DispHTMLStyleElement* This,
        UINT iTInfo,
        LCID lcid,
        ITypeInfo **ppTInfo);

    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
        DispHTMLStyleElement* This,
        REFIID riid,
        LPOLESTR *rgszNames,
        UINT cNames,
        LCID lcid,
        DISPID *rgDispId);

    HRESULT (STDMETHODCALLTYPE *Invoke)(
        DispHTMLStyleElement* This,
        DISPID dispIdMember,
        REFIID riid,
        LCID lcid,
        WORD wFlags,
        DISPPARAMS *pDispParams,
        VARIANT *pVarResult,
        EXCEPINFO *pExcepInfo,
        UINT *puArgErr);

    END_INTERFACE
} DispHTMLStyleElementVtbl;
interface DispHTMLStyleElement {
    CONST_VTBL DispHTMLStyleElementVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define DispHTMLStyleElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DispHTMLStyleElement_AddRef(This) (This)->lpVtbl->AddRef(This)
#define DispHTMLStyleElement_Release(This) (This)->lpVtbl->Release(This)
/*** IDispatch methods ***/
#define DispHTMLStyleElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DispHTMLStyleElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DispHTMLStyleElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DispHTMLStyleElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif

#endif

#endif  /* __DispHTMLStyleElement_DISPINTERFACE_DEFINED__ */

/*****************************************************************************
 * IMarkupContainer interface
 */
#ifndef __IMarkupContainer_INTERFACE_DEFINED__
#define __IMarkupContainer_INTERFACE_DEFINED__

DEFINE_GUID(IID_IMarkupContainer, 0x3050f5f9, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IMarkupContainer : public IUnknown
{
    virtual HRESULT STDMETHODCALLTYPE OwningDoc(
        IHTMLDocument2 **ppDoc) = 0;

};
#else
typedef struct IMarkupContainerVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IMarkupContainer* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IMarkupContainer* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IMarkupContainer* This);

    /*** IMarkupContainer methods ***/
    HRESULT (STDMETHODCALLTYPE *OwningDoc)(
        IMarkupContainer* This,
        IHTMLDocument2 **ppDoc);

    END_INTERFACE
} IMarkupContainerVtbl;
interface IMarkupContainer {
    CONST_VTBL IMarkupContainerVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IMarkupContainer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IMarkupContainer_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IMarkupContainer_Release(This) (This)->lpVtbl->Release(This)
/*** IMarkupContainer methods ***/
#define IMarkupContainer_OwningDoc(This,ppDoc) (This)->lpVtbl->OwningDoc(This,ppDoc)
#endif

#endif

HRESULT STDMETHODCALLTYPE IMarkupContainer_OwningDoc_Proxy(
    IMarkupContainer* This,
    IHTMLDocument2 **ppDoc);
void __RPC_STUB IMarkupContainer_OwningDoc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IMarkupContainer_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IMarkupPointer interface
 */
#ifndef __IMarkupPointer_INTERFACE_DEFINED__
#define __IMarkupPointer_INTERFACE_DEFINED__

DEFINE_GUID(IID_IMarkupPointer, 0x3050f49f, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IMarkupPointer : public IUnknown
{
    virtual HRESULT STDMETHODCALLTYPE OwningDoc(
        IHTMLDocument2 **ppDoc) = 0;

    virtual HRESULT STDMETHODCALLTYPE Gravity(
        POINTER_GRAVITY *pGravity) = 0;

    virtual HRESULT STDMETHODCALLTYPE SetGravity(
        POINTER_GRAVITY Gravity) = 0;

    virtual HRESULT STDMETHODCALLTYPE Cling(
        BOOL *pfCling) = 0;

    virtual HRESULT STDMETHODCALLTYPE SetCling(
        BOOL fCLing) = 0;

    virtual HRESULT STDMETHODCALLTYPE UnPosition(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsPositioned(
        BOOL *pfPositioned) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetContainer(
        IMarkupContainer **ppContainer) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveAdjacentToElement(
        IHTMLElement *pElement,
        ELEMENT_ADJACENCY eAdj) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToPointer(
        IMarkupPointer *pPointer) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToContainer(
        IMarkupContainer *pContainer,
        BOOL fAtStart) = 0;

    virtual HRESULT STDMETHODCALLTYPE Left(
        BOOL fMove,
        MARKUP_CONTEXT_TYPE *pContext,
        IHTMLElement **ppElement,
        LONG *pcch,
        OLECHAR *pchText) = 0;

    virtual HRESULT STDMETHODCALLTYPE Right(
        BOOL fMove,
        MARKUP_CONTEXT_TYPE *pContext,
        IHTMLElement **ppElement,
        LONG *pcch,
        OLECHAR *pchText) = 0;

    virtual HRESULT STDMETHODCALLTYPE CurrentScope(
        IHTMLElement **ppElemCurrent) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsLeftOf(
        IMarkupPointer *pPointerThat,
        BOOL *pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsLeftOfOrEqualTo(
        IMarkupPointer *pPointerThat,
        BOOL *pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsRightOf(
        IMarkupPointer *pPointerThat,
        BOOL *pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsRightOfOrEqualTo(
        IMarkupPointer *pPointerThat,
        BOOL *pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsEqualTo(
        IMarkupPointer *pPointerThat,
        BOOL *pfAreEqual) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveUnit(
        MOVEUNIT_ACTION muAction) = 0;

    virtual HRESULT STDMETHODCALLTYPE FindText(
        OLECHAR *pchFindText,
        DWORD dwFlags,
        IMarkupPointer *pIEndMatch,
        IMarkupPointer *pIEndSearch) = 0;

};
#else
typedef struct IMarkupPointerVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IMarkupPointer* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IMarkupPointer* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IMarkupPointer* This);

    /*** IMarkupPointer methods ***/
    HRESULT (STDMETHODCALLTYPE *OwningDoc)(
        IMarkupPointer* This,
        IHTMLDocument2 **ppDoc);

    HRESULT (STDMETHODCALLTYPE *Gravity)(
        IMarkupPointer* This,
        POINTER_GRAVITY *pGravity);

    HRESULT (STDMETHODCALLTYPE *SetGravity)(
        IMarkupPointer* This,
        POINTER_GRAVITY Gravity);

    HRESULT (STDMETHODCALLTYPE *Cling)(
        IMarkupPointer* This,
        BOOL *pfCling);

    HRESULT (STDMETHODCALLTYPE *SetCling)(
        IMarkupPointer* This,
        BOOL fCLing);

    HRESULT (STDMETHODCALLTYPE *UnPosition)(
        IMarkupPointer* This);

    HRESULT (STDMETHODCALLTYPE *IsPositioned)(
        IMarkupPointer* This,
        BOOL *pfPositioned);

    HRESULT (STDMETHODCALLTYPE *GetContainer)(
        IMarkupPointer* This,
        IMarkupContainer **ppContainer);

    HRESULT (STDMETHODCALLTYPE *MoveAdjacentToElement)(
        IMarkupPointer* This,
        IHTMLElement *pElement,
        ELEMENT_ADJACENCY eAdj);

    HRESULT (STDMETHODCALLTYPE *MoveToPointer)(
        IMarkupPointer* This,
        IMarkupPointer *pPointer);

    HRESULT (STDMETHODCALLTYPE *MoveToContainer)(
        IMarkupPointer* This,
        IMarkupContainer *pContainer,
        BOOL fAtStart);

    HRESULT (STDMETHODCALLTYPE *Left)(
        IMarkupPointer* This,
        BOOL fMove,
        MARKUP_CONTEXT_TYPE *pContext,
        IHTMLElement **ppElement,
        LONG *pcch,
        OLECHAR *pchText);

    HRESULT (STDMETHODCALLTYPE *Right)(
        IMarkupPointer* This,
        BOOL fMove,
        MARKUP_CONTEXT_TYPE *pContext,
        IHTMLElement **ppElement,
        LONG *pcch,
        OLECHAR *pchText);

    HRESULT (STDMETHODCALLTYPE *CurrentScope)(
        IMarkupPointer* This,
        IHTMLElement **ppElemCurrent);

    HRESULT (STDMETHODCALLTYPE *IsLeftOf)(
        IMarkupPointer* This,
        IMarkupPointer *pPointerThat,
        BOOL *pfResult);

    HRESULT (STDMETHODCALLTYPE *IsLeftOfOrEqualTo)(
        IMarkupPointer* This,
        IMarkupPointer *pPointerThat,
        BOOL *pfResult);

    HRESULT (STDMETHODCALLTYPE *IsRightOf)(
        IMarkupPointer* This,
        IMarkupPointer *pPointerThat,
        BOOL *pfResult);

    HRESULT (STDMETHODCALLTYPE *IsRightOfOrEqualTo)(
        IMarkupPointer* This,
        IMarkupPointer *pPointerThat,
        BOOL *pfResult);

    HRESULT (STDMETHODCALLTYPE *IsEqualTo)(
        IMarkupPointer* This,
        IMarkupPointer *pPointerThat,
        BOOL *pfAreEqual);

    HRESULT (STDMETHODCALLTYPE *MoveUnit)(
        IMarkupPointer* This,
        MOVEUNIT_ACTION muAction);

    HRESULT (STDMETHODCALLTYPE *FindText)(
        IMarkupPointer* This,
        OLECHAR *pchFindText,
        DWORD dwFlags,
        IMarkupPointer *pIEndMatch,
        IMarkupPointer *pIEndSearch);

    END_INTERFACE
} IMarkupPointerVtbl;
interface IMarkupPointer {
    CONST_VTBL IMarkupPointerVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IMarkupPointer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IMarkupPointer_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IMarkupPointer_Release(This) (This)->lpVtbl->Release(This)
/*** IMarkupPointer methods ***/
#define IMarkupPointer_OwningDoc(This,ppDoc) (This)->lpVtbl->OwningDoc(This,ppDoc)
#define IMarkupPointer_Gravity(This,pGravity) (This)->lpVtbl->Gravity(This,pGravity)
#define IMarkupPointer_SetGravity(This,Gravity) (This)->lpVtbl->SetGravity(This,Gravity)
#define IMarkupPointer_Cling(This,pfCling) (This)->lpVtbl->Cling(This,pfCling)
#define IMarkupPointer_SetCling(This,fCLing) (This)->lpVtbl->SetCling(This,fCLing)
#define IMarkupPointer_UnPosition(This) (This)->lpVtbl->UnPosition(This)
#define IMarkupPointer_IsPositioned(This,pfPositioned) (This)->lpVtbl->IsPositioned(This,pfPositioned)
#define IMarkupPointer_GetContainer(This,ppContainer) (This)->lpVtbl->GetContainer(This,ppContainer)
#define IMarkupPointer_MoveAdjacentToElement(This,pElement,eAdj) (This)->lpVtbl->MoveAdjacentToElement(This,pElement,eAdj)
#define IMarkupPointer_MoveToPointer(This,pPointer) (This)->lpVtbl->MoveToPointer(This,pPointer)
#define IMarkupPointer_MoveToContainer(This,pContainer,fAtStart) (This)->lpVtbl->MoveToContainer(This,pContainer,fAtStart)
#define IMarkupPointer_Left(This,fMove,pContext,ppElement,pcch,pchText) (This)->lpVtbl->Left(This,fMove,pContext,ppElement,pcch,pchText)
#define IMarkupPointer_Right(This,fMove,pContext,ppElement,pcch,pchText) (This)->lpVtbl->Right(This,fMove,pContext,ppElement,pcch,pchText)
#define IMarkupPointer_CurrentScope(This,ppElemCurrent) (This)->lpVtbl->CurrentScope(This,ppElemCurrent)
#define IMarkupPointer_IsLeftOf(This,pPointerThat,pfResult) (This)->lpVtbl->IsLeftOf(This,pPointerThat,pfResult)
#define IMarkupPointer_IsLeftOfOrEqualTo(This,pPointerThat,pfResult) (This)->lpVtbl->IsLeftOfOrEqualTo(This,pPointerThat,pfResult)
#define IMarkupPointer_IsRightOf(This,pPointerThat,pfResult) (This)->lpVtbl->IsRightOf(This,pPointerThat,pfResult)
#define IMarkupPointer_IsRightOfOrEqualTo(This,pPointerThat,pfResult) (This)->lpVtbl->IsRightOfOrEqualTo(This,pPointerThat,pfResult)
#define IMarkupPointer_IsEqualTo(This,pPointerThat,pfAreEqual) (This)->lpVtbl->IsEqualTo(This,pPointerThat,pfAreEqual)
#define IMarkupPointer_MoveUnit(This,muAction) (This)->lpVtbl->MoveUnit(This,muAction)
#define IMarkupPointer_FindText(This,pchFindText,dwFlags,pIEndMatch,pIEndSearch) (This)->lpVtbl->FindText(This,pchFindText,dwFlags,pIEndMatch,pIEndSearch)
#endif

#endif

HRESULT STDMETHODCALLTYPE IMarkupPointer_OwningDoc_Proxy(
    IMarkupPointer* This,
    IHTMLDocument2 **ppDoc);
void __RPC_STUB IMarkupPointer_OwningDoc_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_Gravity_Proxy(
    IMarkupPointer* This,
    POINTER_GRAVITY *pGravity);
void __RPC_STUB IMarkupPointer_Gravity_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_SetGravity_Proxy(
    IMarkupPointer* This,
    POINTER_GRAVITY Gravity);
void __RPC_STUB IMarkupPointer_SetGravity_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_Cling_Proxy(
    IMarkupPointer* This,
    BOOL *pfCling);
void __RPC_STUB IMarkupPointer_Cling_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_SetCling_Proxy(
    IMarkupPointer* This,
    BOOL fCLing);
void __RPC_STUB IMarkupPointer_SetCling_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_UnPosition_Proxy(
    IMarkupPointer* This);
void __RPC_STUB IMarkupPointer_UnPosition_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_IsPositioned_Proxy(
    IMarkupPointer* This,
    BOOL *pfPositioned);
void __RPC_STUB IMarkupPointer_IsPositioned_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_GetContainer_Proxy(
    IMarkupPointer* This,
    IMarkupContainer **ppContainer);
void __RPC_STUB IMarkupPointer_GetContainer_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_MoveAdjacentToElement_Proxy(
    IMarkupPointer* This,
    IHTMLElement *pElement,
    ELEMENT_ADJACENCY eAdj);
void __RPC_STUB IMarkupPointer_MoveAdjacentToElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_MoveToPointer_Proxy(
    IMarkupPointer* This,
    IMarkupPointer *pPointer);
void __RPC_STUB IMarkupPointer_MoveToPointer_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_MoveToContainer_Proxy(
    IMarkupPointer* This,
    IMarkupContainer *pContainer,
    BOOL fAtStart);
void __RPC_STUB IMarkupPointer_MoveToContainer_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_Left_Proxy(
    IMarkupPointer* This,
    BOOL fMove,
    MARKUP_CONTEXT_TYPE *pContext,
    IHTMLElement **ppElement,
    LONG *pcch,
    OLECHAR *pchText);
void __RPC_STUB IMarkupPointer_Left_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_Right_Proxy(
    IMarkupPointer* This,
    BOOL fMove,
    MARKUP_CONTEXT_TYPE *pContext,
    IHTMLElement **ppElement,
    LONG *pcch,
    OLECHAR *pchText);
void __RPC_STUB IMarkupPointer_Right_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_CurrentScope_Proxy(
    IMarkupPointer* This,
    IHTMLElement **ppElemCurrent);
void __RPC_STUB IMarkupPointer_CurrentScope_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_IsLeftOf_Proxy(
    IMarkupPointer* This,
    IMarkupPointer *pPointerThat,
    BOOL *pfResult);
void __RPC_STUB IMarkupPointer_IsLeftOf_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_IsLeftOfOrEqualTo_Proxy(
    IMarkupPointer* This,
    IMarkupPointer *pPointerThat,
    BOOL *pfResult);
void __RPC_STUB IMarkupPointer_IsLeftOfOrEqualTo_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_IsRightOf_Proxy(
    IMarkupPointer* This,
    IMarkupPointer *pPointerThat,
    BOOL *pfResult);
void __RPC_STUB IMarkupPointer_IsRightOf_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_IsRightOfOrEqualTo_Proxy(
    IMarkupPointer* This,
    IMarkupPointer *pPointerThat,
    BOOL *pfResult);
void __RPC_STUB IMarkupPointer_IsRightOfOrEqualTo_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_IsEqualTo_Proxy(
    IMarkupPointer* This,
    IMarkupPointer *pPointerThat,
    BOOL *pfAreEqual);
void __RPC_STUB IMarkupPointer_IsEqualTo_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_MoveUnit_Proxy(
    IMarkupPointer* This,
    MOVEUNIT_ACTION muAction);
void __RPC_STUB IMarkupPointer_MoveUnit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMarkupPointer_FindText_Proxy(
    IMarkupPointer* This,
    OLECHAR *pchFindText,
    DWORD dwFlags,
    IMarkupPointer *pIEndMatch,
    IMarkupPointer *pIEndSearch);
void __RPC_STUB IMarkupPointer_FindText_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IMarkupPointer_INTERFACE_DEFINED__ */

/*****************************************************************************
 * ISegment interface
 */
#ifndef __ISegment_INTERFACE_DEFINED__
#define __ISegment_INTERFACE_DEFINED__

DEFINE_GUID(IID_ISegment, 0x3050f683, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface ISegment : public IUnknown
{
    virtual HRESULT STDMETHODCALLTYPE GetPointers(
        IMarkupPointer *pIStart,
        IMarkupPointer *pIEnd) = 0;

};
#else
typedef struct ISegmentVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        ISegment* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        ISegment* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        ISegment* This);

    /*** ISegment methods ***/
    HRESULT (STDMETHODCALLTYPE *GetPointers)(
        ISegment* This,
        IMarkupPointer *pIStart,
        IMarkupPointer *pIEnd);

    END_INTERFACE
} ISegmentVtbl;
interface ISegment {
    CONST_VTBL ISegmentVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define ISegment_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define ISegment_AddRef(This) (This)->lpVtbl->AddRef(This)
#define ISegment_Release(This) (This)->lpVtbl->Release(This)
/*** ISegment methods ***/
#define ISegment_GetPointers(This,pIStart,pIEnd) (This)->lpVtbl->GetPointers(This,pIStart,pIEnd)
#endif

#endif

HRESULT STDMETHODCALLTYPE ISegment_GetPointers_Proxy(
    ISegment* This,
    IMarkupPointer *pIStart,
    IMarkupPointer *pIEnd);
void __RPC_STUB ISegment_GetPointers_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __ISegment_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IElementSegment interface
 */
#ifndef __IElementSegment_INTERFACE_DEFINED__
#define __IElementSegment_INTERFACE_DEFINED__

DEFINE_GUID(IID_IElementSegment, 0x3050f68f, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IElementSegment : public ISegment
{
    virtual HRESULT STDMETHODCALLTYPE GetElement(
        IHTMLElement **ppIElement) = 0;

    virtual HRESULT STDMETHODCALLTYPE SetPrimary(
        BOOL fPrimary) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsPrimary(
        BOOL *pfPrimary) = 0;

};
#else
typedef struct IElementSegmentVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IElementSegment* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IElementSegment* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IElementSegment* This);

    /*** ISegment methods ***/
    HRESULT (STDMETHODCALLTYPE *GetPointers)(
        IElementSegment* This,
        IMarkupPointer *pIStart,
        IMarkupPointer *pIEnd);

    /*** IElementSegment methods ***/
    HRESULT (STDMETHODCALLTYPE *GetElement)(
        IElementSegment* This,
        IHTMLElement **ppIElement);

    HRESULT (STDMETHODCALLTYPE *SetPrimary)(
        IElementSegment* This,
        BOOL fPrimary);

    HRESULT (STDMETHODCALLTYPE *IsPrimary)(
        IElementSegment* This,
        BOOL *pfPrimary);

    END_INTERFACE
} IElementSegmentVtbl;
interface IElementSegment {
    CONST_VTBL IElementSegmentVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IElementSegment_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IElementSegment_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IElementSegment_Release(This) (This)->lpVtbl->Release(This)
/*** ISegment methods ***/
#define IElementSegment_GetPointers(This,pIStart,pIEnd) (This)->lpVtbl->GetPointers(This,pIStart,pIEnd)
/*** IElementSegment methods ***/
#define IElementSegment_GetElement(This,ppIElement) (This)->lpVtbl->GetElement(This,ppIElement)
#define IElementSegment_SetPrimary(This,fPrimary) (This)->lpVtbl->SetPrimary(This,fPrimary)
#define IElementSegment_IsPrimary(This,pfPrimary) (This)->lpVtbl->IsPrimary(This,pfPrimary)
#endif

#endif

HRESULT STDMETHODCALLTYPE IElementSegment_GetElement_Proxy(
    IElementSegment* This,
    IHTMLElement **ppIElement);
void __RPC_STUB IElementSegment_GetElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IElementSegment_SetPrimary_Proxy(
    IElementSegment* This,
    BOOL fPrimary);
void __RPC_STUB IElementSegment_SetPrimary_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IElementSegment_IsPrimary_Proxy(
    IElementSegment* This,
    BOOL *pfPrimary);
void __RPC_STUB IElementSegment_IsPrimary_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IElementSegment_INTERFACE_DEFINED__ */

/*****************************************************************************
 * ISelectionServicesListener interface
 */
#ifndef __ISelectionServicesListener_INTERFACE_DEFINED__
#define __ISelectionServicesListener_INTERFACE_DEFINED__

DEFINE_GUID(IID_ISelectionServicesListener, 0x3050f699, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface ISelectionServicesListener : public IUnknown
{
    virtual HRESULT STDMETHODCALLTYPE BeginSelectionUndo(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE EndSelectionUndo(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE OnSelectedElementExit(
        IMarkupPointer *pIElementStart,
        IMarkupPointer *pIElementEnd,
        IMarkupPointer *pIElementContentStart,
        IMarkupPointer *pIElementContentEnd) = 0;

    virtual HRESULT STDMETHODCALLTYPE OnChangeType(
        SELECTION_TYPE eType,
        ISelectionServicesListener *pIListener) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetTypeDetail(
        BSTR *pTypeDetail) = 0;

};
#else
typedef struct ISelectionServicesListenerVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        ISelectionServicesListener* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        ISelectionServicesListener* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        ISelectionServicesListener* This);

    /*** ISelectionServicesListener methods ***/
    HRESULT (STDMETHODCALLTYPE *BeginSelectionUndo)(
        ISelectionServicesListener* This);

    HRESULT (STDMETHODCALLTYPE *EndSelectionUndo)(
        ISelectionServicesListener* This);

    HRESULT (STDMETHODCALLTYPE *OnSelectedElementExit)(
        ISelectionServicesListener* This,
        IMarkupPointer *pIElementStart,
        IMarkupPointer *pIElementEnd,
        IMarkupPointer *pIElementContentStart,
        IMarkupPointer *pIElementContentEnd);

    HRESULT (STDMETHODCALLTYPE *OnChangeType)(
        ISelectionServicesListener* This,
        SELECTION_TYPE eType,
        ISelectionServicesListener *pIListener);

    HRESULT (STDMETHODCALLTYPE *GetTypeDetail)(
        ISelectionServicesListener* This,
        BSTR *pTypeDetail);

    END_INTERFACE
} ISelectionServicesListenerVtbl;
interface ISelectionServicesListener {
    CONST_VTBL ISelectionServicesListenerVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define ISelectionServicesListener_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define ISelectionServicesListener_AddRef(This) (This)->lpVtbl->AddRef(This)
#define ISelectionServicesListener_Release(This) (This)->lpVtbl->Release(This)
/*** ISelectionServicesListener methods ***/
#define ISelectionServicesListener_BeginSelectionUndo(This) (This)->lpVtbl->BeginSelectionUndo(This)
#define ISelectionServicesListener_EndSelectionUndo(This) (This)->lpVtbl->EndSelectionUndo(This)
#define ISelectionServicesListener_OnSelectedElementExit(This,pIElementStart,pIElementEnd,pIElementContentStart,pIElementContentEnd) (This)->lpVtbl->OnSelectedElementExit(This,pIElementStart,pIElementEnd,pIElementContentStart,pIElementContentEnd)
#define ISelectionServicesListener_OnChangeType(This,eType,pIListener) (This)->lpVtbl->OnChangeType(This,eType,pIListener)
#define ISelectionServicesListener_GetTypeDetail(This,pTypeDetail) (This)->lpVtbl->GetTypeDetail(This,pTypeDetail)
#endif

#endif

HRESULT STDMETHODCALLTYPE ISelectionServicesListener_BeginSelectionUndo_Proxy(
    ISelectionServicesListener* This);
void __RPC_STUB ISelectionServicesListener_BeginSelectionUndo_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE ISelectionServicesListener_EndSelectionUndo_Proxy(
    ISelectionServicesListener* This);
void __RPC_STUB ISelectionServicesListener_EndSelectionUndo_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE ISelectionServicesListener_OnSelectedElementExit_Proxy(
    ISelectionServicesListener* This,
    IMarkupPointer *pIElementStart,
    IMarkupPointer *pIElementEnd,
    IMarkupPointer *pIElementContentStart,
    IMarkupPointer *pIElementContentEnd);
void __RPC_STUB ISelectionServicesListener_OnSelectedElementExit_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE ISelectionServicesListener_OnChangeType_Proxy(
    ISelectionServicesListener* This,
    SELECTION_TYPE eType,
    ISelectionServicesListener *pIListener);
void __RPC_STUB ISelectionServicesListener_OnChangeType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE ISelectionServicesListener_GetTypeDetail_Proxy(
    ISelectionServicesListener* This,
    BSTR *pTypeDetail);
void __RPC_STUB ISelectionServicesListener_GetTypeDetail_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __ISelectionServicesListener_INTERFACE_DEFINED__ */

/*****************************************************************************
 * ISelectionServices interface
 */
#ifndef __ISelectionServices_INTERFACE_DEFINED__
#define __ISelectionServices_INTERFACE_DEFINED__

DEFINE_GUID(IID_ISelectionServices, 0x3050f684, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface ISelectionServices : public IUnknown
{
    virtual HRESULT STDMETHODCALLTYPE SetSelectionType(
        SELECTION_TYPE eType,
        ISelectionServicesListener *pIListener) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetMarkupContainer(
        IMarkupContainer **ppIContainer) = 0;

    virtual HRESULT STDMETHODCALLTYPE AddSegment(
        IMarkupPointer *pIStart,
        IMarkupPointer *pIEnd,
        ISegment **ppISegmentAdded) = 0;

    virtual HRESULT STDMETHODCALLTYPE AddElementSegment(
        IHTMLElement *pIElement,
        IElementSegment **ppISegmentAdded) = 0;

    virtual HRESULT STDMETHODCALLTYPE RemoveSegment(
        ISegment *pISegment) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetSelectionServicesListener(
        ISelectionServicesListener **ppISelectionServicesListener) = 0;

};
#else
typedef struct ISelectionServicesVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        ISelectionServices* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        ISelectionServices* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        ISelectionServices* This);

    /*** ISelectionServices methods ***/
    HRESULT (STDMETHODCALLTYPE *SetSelectionType)(
        ISelectionServices* This,
        SELECTION_TYPE eType,
        ISelectionServicesListener *pIListener);

    HRESULT (STDMETHODCALLTYPE *GetMarkupContainer)(
        ISelectionServices* This,
        IMarkupContainer **ppIContainer);

    HRESULT (STDMETHODCALLTYPE *AddSegment)(
        ISelectionServices* This,
        IMarkupPointer *pIStart,
        IMarkupPointer *pIEnd,
        ISegment **ppISegmentAdded);

    HRESULT (STDMETHODCALLTYPE *AddElementSegment)(
        ISelectionServices* This,
        IHTMLElement *pIElement,
        IElementSegment **ppISegmentAdded);

    HRESULT (STDMETHODCALLTYPE *RemoveSegment)(
        ISelectionServices* This,
        ISegment *pISegment);

    HRESULT (STDMETHODCALLTYPE *GetSelectionServicesListener)(
        ISelectionServices* This,
        ISelectionServicesListener **ppISelectionServicesListener);

    END_INTERFACE
} ISelectionServicesVtbl;
interface ISelectionServices {
    CONST_VTBL ISelectionServicesVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define ISelectionServices_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define ISelectionServices_AddRef(This) (This)->lpVtbl->AddRef(This)
#define ISelectionServices_Release(This) (This)->lpVtbl->Release(This)
/*** ISelectionServices methods ***/
#define ISelectionServices_SetSelectionType(This,eType,pIListener) (This)->lpVtbl->SetSelectionType(This,eType,pIListener)
#define ISelectionServices_GetMarkupContainer(This,ppIContainer) (This)->lpVtbl->GetMarkupContainer(This,ppIContainer)
#define ISelectionServices_AddSegment(This,pIStart,pIEnd,ppISegmentAdded) (This)->lpVtbl->AddSegment(This,pIStart,pIEnd,ppISegmentAdded)
#define ISelectionServices_AddElementSegment(This,pIElement,ppISegmentAdded) (This)->lpVtbl->AddElementSegment(This,pIElement,ppISegmentAdded)
#define ISelectionServices_RemoveSegment(This,pISegment) (This)->lpVtbl->RemoveSegment(This,pISegment)
#define ISelectionServices_GetSelectionServicesListener(This,ppISelectionServicesListener) (This)->lpVtbl->GetSelectionServicesListener(This,ppISelectionServicesListener)
#endif

#endif

HRESULT STDMETHODCALLTYPE ISelectionServices_SetSelectionType_Proxy(
    ISelectionServices* This,
    SELECTION_TYPE eType,
    ISelectionServicesListener *pIListener);
void __RPC_STUB ISelectionServices_SetSelectionType_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE ISelectionServices_GetMarkupContainer_Proxy(
    ISelectionServices* This,
    IMarkupContainer **ppIContainer);
void __RPC_STUB ISelectionServices_GetMarkupContainer_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE ISelectionServices_AddSegment_Proxy(
    ISelectionServices* This,
    IMarkupPointer *pIStart,
    IMarkupPointer *pIEnd,
    ISegment **ppISegmentAdded);
void __RPC_STUB ISelectionServices_AddSegment_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE ISelectionServices_AddElementSegment_Proxy(
    ISelectionServices* This,
    IHTMLElement *pIElement,
    IElementSegment **ppISegmentAdded);
void __RPC_STUB ISelectionServices_AddElementSegment_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE ISelectionServices_RemoveSegment_Proxy(
    ISelectionServices* This,
    ISegment *pISegment);
void __RPC_STUB ISelectionServices_RemoveSegment_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE ISelectionServices_GetSelectionServicesListener_Proxy(
    ISelectionServices* This,
    ISelectionServicesListener **ppISelectionServicesListener);
void __RPC_STUB ISelectionServices_GetSelectionServicesListener_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __ISelectionServices_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLEditDesigner interface
 */
#ifndef __IHTMLEditDesigner_INTERFACE_DEFINED__
#define __IHTMLEditDesigner_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLEditDesigner, 0x3050f662, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLEditDesigner : public IUnknown
{
    virtual HRESULT STDMETHODCALLTYPE PreHandleEvent(
        DISPID inEvtDispId,
        IHTMLEventObj *pIEventObj) = 0;

    virtual HRESULT STDMETHODCALLTYPE PostHandleEvent(
        DISPID inEvtDispId,
        IHTMLEventObj *pIEventObj) = 0;

    virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator(
        DISPID inEvtDispId,
        IHTMLEventObj *pIEventObj) = 0;

    virtual HRESULT STDMETHODCALLTYPE PostEditorEventNotify(
        DISPID inEvtDispId,
        IHTMLEventObj *pIEventObj) = 0;

};
#else
typedef struct IHTMLEditDesignerVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLEditDesigner* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLEditDesigner* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLEditDesigner* This);

    /*** IHTMLEditDesigner methods ***/
    HRESULT (STDMETHODCALLTYPE *PreHandleEvent)(
        IHTMLEditDesigner* This,
        DISPID inEvtDispId,
        IHTMLEventObj *pIEventObj);

    HRESULT (STDMETHODCALLTYPE *PostHandleEvent)(
        IHTMLEditDesigner* This,
        DISPID inEvtDispId,
        IHTMLEventObj *pIEventObj);

    HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)(
        IHTMLEditDesigner* This,
        DISPID inEvtDispId,
        IHTMLEventObj *pIEventObj);

    HRESULT (STDMETHODCALLTYPE *PostEditorEventNotify)(
        IHTMLEditDesigner* This,
        DISPID inEvtDispId,
        IHTMLEventObj *pIEventObj);

    END_INTERFACE
} IHTMLEditDesignerVtbl;
interface IHTMLEditDesigner {
    CONST_VTBL IHTMLEditDesignerVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLEditDesigner_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLEditDesigner_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLEditDesigner_Release(This) (This)->lpVtbl->Release(This)
/*** IHTMLEditDesigner methods ***/
#define IHTMLEditDesigner_PreHandleEvent(This,inEvtDispId,pIEventObj) (This)->lpVtbl->PreHandleEvent(This,inEvtDispId,pIEventObj)
#define IHTMLEditDesigner_PostHandleEvent(This,inEvtDispId,pIEventObj) (This)->lpVtbl->PostHandleEvent(This,inEvtDispId,pIEventObj)
#define IHTMLEditDesigner_TranslateAccelerator(This,inEvtDispId,pIEventObj) (This)->lpVtbl->TranslateAccelerator(This,inEvtDispId,pIEventObj)
#define IHTMLEditDesigner_PostEditorEventNotify(This,inEvtDispId,pIEventObj) (This)->lpVtbl->PostEditorEventNotify(This,inEvtDispId,pIEventObj)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLEditDesigner_PreHandleEvent_Proxy(
    IHTMLEditDesigner* This,
    DISPID inEvtDispId,
    IHTMLEventObj *pIEventObj);
void __RPC_STUB IHTMLEditDesigner_PreHandleEvent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEditDesigner_PostHandleEvent_Proxy(
    IHTMLEditDesigner* This,
    DISPID inEvtDispId,
    IHTMLEventObj *pIEventObj);
void __RPC_STUB IHTMLEditDesigner_PostHandleEvent_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEditDesigner_TranslateAccelerator_Proxy(
    IHTMLEditDesigner* This,
    DISPID inEvtDispId,
    IHTMLEventObj *pIEventObj);
void __RPC_STUB IHTMLEditDesigner_TranslateAccelerator_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEditDesigner_PostEditorEventNotify_Proxy(
    IHTMLEditDesigner* This,
    DISPID inEvtDispId,
    IHTMLEventObj *pIEventObj);
void __RPC_STUB IHTMLEditDesigner_PostEditorEventNotify_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLEditDesigner_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IHTMLEditServices interface
 */
#ifndef __IHTMLEditServices_INTERFACE_DEFINED__
#define __IHTMLEditServices_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLEditServices, 0x3050f663, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLEditServices : public IUnknown
{
    virtual HRESULT STDMETHODCALLTYPE AddDesigner(
        IHTMLEditDesigner *pIDesigner) = 0;

    virtual HRESULT STDMETHODCALLTYPE RemoveDesigner(
        IHTMLEditDesigner *pIDesigner) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetSelectionServices(
        IMarkupContainer *pIContainer,
        ISelectionServices **ppSelSvc) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToSelectionAnchor(
        IMarkupPointer *pIStartAnchor) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToSelectionEnd(
        IMarkupPointer *pIEndAnchor) = 0;

    virtual HRESULT STDMETHODCALLTYPE SelectRange(
        IMarkupPointer *pStart,
        IMarkupPointer *pEnd,
        SELECTION_TYPE eType) = 0;

};
#else
typedef struct IHTMLEditServicesVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLEditServices* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLEditServices* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLEditServices* This);

    /*** IHTMLEditServices methods ***/
    HRESULT (STDMETHODCALLTYPE *AddDesigner)(
        IHTMLEditServices* This,
        IHTMLEditDesigner *pIDesigner);

    HRESULT (STDMETHODCALLTYPE *RemoveDesigner)(
        IHTMLEditServices* This,
        IHTMLEditDesigner *pIDesigner);

    HRESULT (STDMETHODCALLTYPE *GetSelectionServices)(
        IHTMLEditServices* This,
        IMarkupContainer *pIContainer,
        ISelectionServices **ppSelSvc);

    HRESULT (STDMETHODCALLTYPE *MoveToSelectionAnchor)(
        IHTMLEditServices* This,
        IMarkupPointer *pIStartAnchor);

    HRESULT (STDMETHODCALLTYPE *MoveToSelectionEnd)(
        IHTMLEditServices* This,
        IMarkupPointer *pIEndAnchor);

    HRESULT (STDMETHODCALLTYPE *SelectRange)(
        IHTMLEditServices* This,
        IMarkupPointer *pStart,
        IMarkupPointer *pEnd,
        SELECTION_TYPE eType);

    END_INTERFACE
} IHTMLEditServicesVtbl;
interface IHTMLEditServices {
    CONST_VTBL IHTMLEditServicesVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLEditServices_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLEditServices_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLEditServices_Release(This) (This)->lpVtbl->Release(This)
/*** IHTMLEditServices methods ***/
#define IHTMLEditServices_AddDesigner(This,pIDesigner) (This)->lpVtbl->AddDesigner(This,pIDesigner)
#define IHTMLEditServices_RemoveDesigner(This,pIDesigner) (This)->lpVtbl->RemoveDesigner(This,pIDesigner)
#define IHTMLEditServices_GetSelectionServices(This,pIContainer,ppSelSvc) (This)->lpVtbl->GetSelectionServices(This,pIContainer,ppSelSvc)
#define IHTMLEditServices_MoveToSelectionAnchor(This,pIStartAnchor) (This)->lpVtbl->MoveToSelectionAnchor(This,pIStartAnchor)
#define IHTMLEditServices_MoveToSelectionEnd(This,pIEndAnchor) (This)->lpVtbl->MoveToSelectionEnd(This,pIEndAnchor)
#define IHTMLEditServices_SelectRange(This,pStart,pEnd,eType) (This)->lpVtbl->SelectRange(This,pStart,pEnd,eType)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLEditServices_AddDesigner_Proxy(
    IHTMLEditServices* This,
    IHTMLEditDesigner *pIDesigner);
void __RPC_STUB IHTMLEditServices_AddDesigner_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEditServices_RemoveDesigner_Proxy(
    IHTMLEditServices* This,
    IHTMLEditDesigner *pIDesigner);
void __RPC_STUB IHTMLEditServices_RemoveDesigner_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEditServices_GetSelectionServices_Proxy(
    IHTMLEditServices* This,
    IMarkupContainer *pIContainer,
    ISelectionServices **ppSelSvc);
void __RPC_STUB IHTMLEditServices_GetSelectionServices_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEditServices_MoveToSelectionAnchor_Proxy(
    IHTMLEditServices* This,
    IMarkupPointer *pIStartAnchor);
void __RPC_STUB IHTMLEditServices_MoveToSelectionAnchor_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEditServices_MoveToSelectionEnd_Proxy(
    IHTMLEditServices* This,
    IMarkupPointer *pIEndAnchor);
void __RPC_STUB IHTMLEditServices_MoveToSelectionEnd_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLEditServices_SelectRange_Proxy(
    IHTMLEditServices* This,
    IMarkupPointer *pStart,
    IMarkupPointer *pEnd,
    SELECTION_TYPE eType);
void __RPC_STUB IHTMLEditServices_SelectRange_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLEditServices_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IElementBehaviorSite interface
 */
#ifndef __IElementBehaviorSite_INTERFACE_DEFINED__
#define __IElementBehaviorSite_INTERFACE_DEFINED__

DEFINE_GUID(IID_IElementBehaviorSite, 0x3050f427, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IElementBehaviorSite : public IUnknown
{
    virtual HRESULT STDMETHODCALLTYPE GetElement(
        IHTMLElement **ppElement) = 0;

    virtual HRESULT STDMETHODCALLTYPE RegisterNotification(
        LONG lEvent) = 0;

};
#else
typedef struct IElementBehaviorSiteVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IElementBehaviorSite* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IElementBehaviorSite* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IElementBehaviorSite* This);

    /*** IElementBehaviorSite methods ***/
    HRESULT (STDMETHODCALLTYPE *GetElement)(
        IElementBehaviorSite* This,
        IHTMLElement **ppElement);

    HRESULT (STDMETHODCALLTYPE *RegisterNotification)(
        IElementBehaviorSite* This,
        LONG lEvent);

    END_INTERFACE
} IElementBehaviorSiteVtbl;
interface IElementBehaviorSite {
    CONST_VTBL IElementBehaviorSiteVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IElementBehaviorSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IElementBehaviorSite_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IElementBehaviorSite_Release(This) (This)->lpVtbl->Release(This)
/*** IElementBehaviorSite methods ***/
#define IElementBehaviorSite_GetElement(This,ppElement) (This)->lpVtbl->GetElement(This,ppElement)
#define IElementBehaviorSite_RegisterNotification(This,lEvent) (This)->lpVtbl->RegisterNotification(This,lEvent)
#endif

#endif

HRESULT STDMETHODCALLTYPE IElementBehaviorSite_GetElement_Proxy(
    IElementBehaviorSite* This,
    IHTMLElement **ppElement);
void __RPC_STUB IElementBehaviorSite_GetElement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IElementBehaviorSite_RegisterNotification_Proxy(
    IElementBehaviorSite* This,
    LONG lEvent);
void __RPC_STUB IElementBehaviorSite_RegisterNotification_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IElementBehaviorSite_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IElementBehavior interface
 */
#ifndef __IElementBehavior_INTERFACE_DEFINED__
#define __IElementBehavior_INTERFACE_DEFINED__

DEFINE_GUID(IID_IElementBehavior, 0x3050f425, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IElementBehavior : public IUnknown
{
    virtual HRESULT STDMETHODCALLTYPE Init(
        IElementBehaviorSite *pBehaviorSite) = 0;

    virtual HRESULT STDMETHODCALLTYPE Notify(
        LONG lEvent,
        VARIANT *pVar) = 0;

    virtual HRESULT STDMETHODCALLTYPE Detach(
        ) = 0;

};
#else
typedef struct IElementBehaviorVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IElementBehavior* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IElementBehavior* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IElementBehavior* This);

    /*** IElementBehavior methods ***/
    HRESULT (STDMETHODCALLTYPE *Init)(
        IElementBehavior* This,
        IElementBehaviorSite *pBehaviorSite);

    HRESULT (STDMETHODCALLTYPE *Notify)(
        IElementBehavior* This,
        LONG lEvent,
        VARIANT *pVar);

    HRESULT (STDMETHODCALLTYPE *Detach)(
        IElementBehavior* This);

    END_INTERFACE
} IElementBehaviorVtbl;
interface IElementBehavior {
    CONST_VTBL IElementBehaviorVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IElementBehavior_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IElementBehavior_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IElementBehavior_Release(This) (This)->lpVtbl->Release(This)
/*** IElementBehavior methods ***/
#define IElementBehavior_Init(This,pBehaviorSite) (This)->lpVtbl->Init(This,pBehaviorSite)
#define IElementBehavior_Notify(This,lEvent,pVar) (This)->lpVtbl->Notify(This,lEvent,pVar)
#define IElementBehavior_Detach(This) (This)->lpVtbl->Detach(This)
#endif

#endif

HRESULT STDMETHODCALLTYPE IElementBehavior_Init_Proxy(
    IElementBehavior* This,
    IElementBehaviorSite *pBehaviorSite);
void __RPC_STUB IElementBehavior_Init_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IElementBehavior_Notify_Proxy(
    IElementBehavior* This,
    LONG lEvent,
    VARIANT *pVar);
void __RPC_STUB IElementBehavior_Notify_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IElementBehavior_Detach_Proxy(
    IElementBehavior* This);
void __RPC_STUB IElementBehavior_Detach_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IElementBehavior_INTERFACE_DEFINED__ */

/*****************************************************************************
 * IElementBehaviorFactory interface
 */
#ifndef __IElementBehaviorFactory_INTERFACE_DEFINED__
#define __IElementBehaviorFactory_INTERFACE_DEFINED__

DEFINE_GUID(IID_IElementBehaviorFactory, 0x3050f429, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IElementBehaviorFactory : public IUnknown
{
    virtual HRESULT STDMETHODCALLTYPE FindBehavior(
        BSTR bstrBehavior,
        BSTR bstrBehaviorUrl,
        IElementBehaviorSite *pSite,
        IElementBehavior **ppBehavior) = 0;

};
#else
typedef struct IElementBehaviorFactoryVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IElementBehaviorFactory* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IElementBehaviorFactory* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IElementBehaviorFactory* This);

    /*** IElementBehaviorFactory methods ***/
    HRESULT (STDMETHODCALLTYPE *FindBehavior)(
        IElementBehaviorFactory* This,
        BSTR bstrBehavior,
        BSTR bstrBehaviorUrl,
        IElementBehaviorSite *pSite,
        IElementBehavior **ppBehavior);

    END_INTERFACE
} IElementBehaviorFactoryVtbl;
interface IElementBehaviorFactory {
    CONST_VTBL IElementBehaviorFactoryVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IElementBehaviorFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IElementBehaviorFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IElementBehaviorFactory_Release(This) (This)->lpVtbl->Release(This)
/*** IElementBehaviorFactory methods ***/
#define IElementBehaviorFactory_FindBehavior(This,bstrBehavior,bstrBehaviorUrl,pSite,ppBehavior) (This)->lpVtbl->FindBehavior(This,bstrBehavior,bstrBehaviorUrl,pSite,ppBehavior)
#endif

#endif

HRESULT STDMETHODCALLTYPE IElementBehaviorFactory_FindBehavior_Proxy(
    IElementBehaviorFactory* This,
    BSTR bstrBehavior,
    BSTR bstrBehaviorUrl,
    IElementBehaviorSite *pSite,
    IElementBehavior **ppBehavior);
void __RPC_STUB IElementBehaviorFactory_FindBehavior_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IElementBehaviorFactory_INTERFACE_DEFINED__ */

#ifndef __IOleCommandTarget_FWD_DEFINED__
#define __IOleCommandTarget_FWD_DEFINED__
typedef interface IOleCommandTarget IOleCommandTarget;
#endif

/*****************************************************************************
 * IHTMLPrivateWindow interface
 */
#ifndef __IHTMLPrivateWindow_INTERFACE_DEFINED__
#define __IHTMLPrivateWindow_INTERFACE_DEFINED__

DEFINE_GUID(IID_IHTMLPrivateWindow, 0x3050f6dc, 0x98b5, 0x11cf, 0xbb,0x82, 0x00,0xaa,0x00,0xbd,0xce,0x0b);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IHTMLPrivateWindow : public IUnknown
{
    virtual HRESULT STDMETHODCALLTYPE SuperNavigate(
        BSTR url,
        BSTR arg2,
        BSTR arg3,
        BSTR arg4,
        VARIANT *post_data,
        VARIANT *headers,
        ULONG flags) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetPendingUrl(
        BSTR *url) = 0;

    virtual HRESULT STDMETHODCALLTYPE SetPICSTarget(
        IOleCommandTarget *cmdtrg) = 0;

    virtual HRESULT STDMETHODCALLTYPE PICSComplete(
        int arg) = 0;

    virtual HRESULT STDMETHODCALLTYPE FindWindowByName(
        LPCWSTR name,
        IHTMLWindow2 **ret) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetAddressBarUrl(
        BSTR *url) = 0;

};
#else
typedef struct IHTMLPrivateWindowVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IHTMLPrivateWindow* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IHTMLPrivateWindow* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IHTMLPrivateWindow* This);

    /*** IHTMLPrivateWindow methods ***/
    HRESULT (STDMETHODCALLTYPE *SuperNavigate)(
        IHTMLPrivateWindow* This,
        BSTR url,
        BSTR arg2,
        BSTR arg3,
        BSTR arg4,
        VARIANT *post_data,
        VARIANT *headers,
        ULONG flags);

    HRESULT (STDMETHODCALLTYPE *GetPendingUrl)(
        IHTMLPrivateWindow* This,
        BSTR *url);

    HRESULT (STDMETHODCALLTYPE *SetPICSTarget)(
        IHTMLPrivateWindow* This,
        IOleCommandTarget *cmdtrg);

    HRESULT (STDMETHODCALLTYPE *PICSComplete)(
        IHTMLPrivateWindow* This,
        int arg);

    HRESULT (STDMETHODCALLTYPE *FindWindowByName)(
        IHTMLPrivateWindow* This,
        LPCWSTR name,
        IHTMLWindow2 **ret);

    HRESULT (STDMETHODCALLTYPE *GetAddressBarUrl)(
        IHTMLPrivateWindow* This,
        BSTR *url);

    END_INTERFACE
} IHTMLPrivateWindowVtbl;
interface IHTMLPrivateWindow {
    CONST_VTBL IHTMLPrivateWindowVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IHTMLPrivateWindow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IHTMLPrivateWindow_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IHTMLPrivateWindow_Release(This) (This)->lpVtbl->Release(This)
/*** IHTMLPrivateWindow methods ***/
#define IHTMLPrivateWindow_SuperNavigate(This,url,arg2,arg3,arg4,post_data,headers,flags) (This)->lpVtbl->SuperNavigate(This,url,arg2,arg3,arg4,post_data,headers,flags)
#define IHTMLPrivateWindow_GetPendingUrl(This,url) (This)->lpVtbl->GetPendingUrl(This,url)
#define IHTMLPrivateWindow_SetPICSTarget(This,cmdtrg) (This)->lpVtbl->SetPICSTarget(This,cmdtrg)
#define IHTMLPrivateWindow_PICSComplete(This,arg) (This)->lpVtbl->PICSComplete(This,arg)
#define IHTMLPrivateWindow_FindWindowByName(This,name,ret) (This)->lpVtbl->FindWindowByName(This,name,ret)
#define IHTMLPrivateWindow_GetAddressBarUrl(This,url) (This)->lpVtbl->GetAddressBarUrl(This,url)
#endif

#endif

HRESULT STDMETHODCALLTYPE IHTMLPrivateWindow_SuperNavigate_Proxy(
    IHTMLPrivateWindow* This,
    BSTR url,
    BSTR arg2,
    BSTR arg3,
    BSTR arg4,
    VARIANT *post_data,
    VARIANT *headers,
    ULONG flags);
void __RPC_STUB IHTMLPrivateWindow_SuperNavigate_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLPrivateWindow_GetPendingUrl_Proxy(
    IHTMLPrivateWindow* This,
    BSTR *url);
void __RPC_STUB IHTMLPrivateWindow_GetPendingUrl_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLPrivateWindow_SetPICSTarget_Proxy(
    IHTMLPrivateWindow* This,
    IOleCommandTarget *cmdtrg);
void __RPC_STUB IHTMLPrivateWindow_SetPICSTarget_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLPrivateWindow_PICSComplete_Proxy(
    IHTMLPrivateWindow* This,
    int arg);
void __RPC_STUB IHTMLPrivateWindow_PICSComplete_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLPrivateWindow_FindWindowByName_Proxy(
    IHTMLPrivateWindow* This,
    LPCWSTR name,
    IHTMLWindow2 **ret);
void __RPC_STUB IHTMLPrivateWindow_FindWindowByName_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IHTMLPrivateWindow_GetAddressBarUrl_Proxy(
    IHTMLPrivateWindow* This,
    BSTR *url);
void __RPC_STUB IHTMLPrivateWindow_GetAddressBarUrl_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IHTMLPrivateWindow_INTERFACE_DEFINED__ */

/* Begin additional prototypes for all interfaces */

ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);

/* End additional prototypes */

#ifdef __cplusplus
}
#endif

#endif /* __WIDL_MSHTML_H */
