mshtml.idl: Moved IHTMLElement3 dispinterface declaration to macro.
diff --git a/include/mshtml.idl b/include/mshtml.idl
index 51166dc..c8b1068 100644
--- a/include/mshtml.idl
+++ b/include/mshtml.idl
@@ -5331,7 +5331,44 @@
 
     [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
     HRESULT onfocusout([retval, out] VARIANT * p);
-};
+}
+
+#define WINE_IHTMLELEMENT4_DISPINTERFACE_DECL                           \
+    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable] \
+    void onmousewheel(VARIANT v);                                       \
+                                                                        \
+    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable] \
+    VARIANT onmousewheel();                                             \
+                                                                        \
+    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]                                \
+    void normalize();                                                   \
+                                                                        \
+    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]                         \
+    IHTMLDOMAttribute* getAttributeNode([in] BSTR bstrname);            \
+                                                                        \
+    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]                         \
+    IHTMLDOMAttribute* setAttributeNode([in] IHTMLDOMAttribute* pattr); \
+                                                                        \
+    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]                      \
+    IHTMLDOMAttribute* removeAttributeNode([in] IHTMLDOMAttribute* pattr); \
+                                                                        \
+    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable] \
+    void onbeforeactivate(VARIANT v);                                   \
+                                                                        \
+    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable] \
+    VARIANT onbeforeactivate();                                         \
+                                                                        \
+    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]\
+    void onfocusin(VARIANT v);                                          \
+                                                                        \
+    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]\
+    VARIANT onfocusin();                                                \
+                                                                        \
+    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable] \
+    void onfocusout(VARIANT v);                                         \
+                                                                        \
+    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable] \
+    VARIANT onfocusout()
 
 /*****************************************************************************
  *    IHTMLGenericElement interface
@@ -5368,42 +5405,7 @@
     WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    void onmousewheel(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    VARIANT onmousewheel();
-
-    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]
-    void normalize();
-
-    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]
-    IHTMLDOMAttribute *getAttributeNode([in] BSTR bstrname);
-
-    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]
-    IHTMLDOMAttribute *setAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]
-    IHTMLDOMAttribute *removeAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    void onbeforeactivate(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    VARIANT onbeforeactivate();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    void onfocusin(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    VARIANT onfocusin();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    void onfocusout(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    VARIANT onfocusout();
+    WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
 
     [propget, id(DISPID_IHTMLUNIQUENAME_UNIQUENUMBER), hidden]
     LONG uniqueNumber();
@@ -6381,42 +6383,7 @@
     WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    void onmousewheel(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    VARIANT onmousewheel();
-
-    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]
-    void normalize();
-
-    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]
-    IHTMLDOMAttribute *getAttributeNode([in] BSTR bstrname);
-
-    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]
-    IHTMLDOMAttribute *setAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]
-    IHTMLDOMAttribute *removeAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    void onbeforeactivate(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    VARIANT onbeforeactivate();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    void onfocusin(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    VARIANT onfocusin();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    void onfocusout(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    VARIANT onfocusout();
+    WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
 
     [propget, id(DISPID_IHTMLUNIQUENAME_UNIQUENUMBER), hidden]
     LONG uniqueNumber();
@@ -6920,42 +6887,7 @@
     WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    void onmousewheel(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    VARIANT onmousewheel();
-
-    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]
-    void normalize();
-
-    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]
-     IHTMLDOMAttribute* getAttributeNode([in] BSTR bstrname);
-
-    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]
-    IHTMLDOMAttribute* setAttributeNode([in] IHTMLDOMAttribute* pattr);
-
-    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]
-    IHTMLDOMAttribute* removeAttributeNode([in] IHTMLDOMAttribute* pattr);
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    void onbeforeactivate(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    VARIANT onbeforeactivate();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    void onfocusin(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    VARIANT onfocusin();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    void onfocusout(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    VARIANT onfocusout();
+    WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
 
     [propget, id(DISPID_IHTMLUNIQUENAME_UNIQUENUMBER), hidden]
     LONG uniqueNumber();
@@ -7318,42 +7250,7 @@
     WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    void onmousewheel(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    VARIANT onmousewheel();
-
-    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]
-    void normalize();
-
-    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]
-     IHTMLDOMAttribute* getAttributeNode([in] BSTR bstrname);
-
-    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]
-    IHTMLDOMAttribute* setAttributeNode([in] IHTMLDOMAttribute* pattr);
-
-    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]
-    IHTMLDOMAttribute* removeAttributeNode([in] IHTMLDOMAttribute* pattr);
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    void onbeforeactivate(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    VARIANT onbeforeactivate();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    void onfocusin(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    VARIANT onfocusin();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    void onfocusout(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    VARIANT onfocusout();
+    WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
 
     [propget, id(DISPID_IHTMLUNIQUENAME_UNIQUENUMBER), hidden]
     LONG uniqueNumber();
@@ -7971,42 +7868,7 @@
     WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    void onmousewheel(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    VARIANT onmousewheel();
-
-    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]
-    void normalize();
-
-    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]
-    IHTMLDOMAttribute *getAttributeNode([in] BSTR bstrname);
-
-    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]
-    IHTMLDOMAttribute *setAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]
-    IHTMLDOMAttribute *removeAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    void onbeforeactivate(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    VARIANT onbeforeactivate();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    void onfocusin(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    VARIANT onfocusin();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    void onfocusout(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    VARIANT onfocusout();
+    WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
 
     [propget, id(DISPID_IHTMLUNIQUENAME_UNIQUENUMBER), hidden]
     LONG uniqueNumber();
@@ -8294,42 +8156,7 @@
     WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    void onmousewheel(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    VARIANT onmousewheel();
-
-    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]
-    void normalize();
-
-    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]
-    IHTMLDOMAttribute *getAttributeNode([in] BSTR bstrname);
-
-    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]
-    IHTMLDOMAttribute *setAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]
-    IHTMLDOMAttribute *removeAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    void onbeforeactivate(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    VARIANT onbeforeactivate();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    void onfocusin(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    VARIANT onfocusin();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    void onfocusout(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    VARIANT onfocusout();
+    WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
 
     [propget, id(DISPID_IHTMLUNIQUENAME_UNIQUENUMBER), hidden]
     LONG uniqueNumber();
@@ -8785,42 +8612,7 @@
     WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    void onmousewheel(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    VARIANT onmousewheel();
-
-    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]
-    void normalize();
-
-    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]
-    IHTMLDOMAttribute *getAttributeNode([in] BSTR bstrname);
-
-    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]
-    IHTMLDOMAttribute *setAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]
-    IHTMLDOMAttribute *removeAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    void onbeforeactivate(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    VARIANT onbeforeactivate();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    void onfocusin(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    VARIANT onfocusin();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    void onfocusout(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    VARIANT onfocusout();
+    WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
 
     [propget, id(DISPID_IHTMLUNIQUENAME_UNIQUENUMBER), hidden]
     LONG uniqueNumber();
@@ -9216,42 +9008,7 @@
     WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    void onmousewheel(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    VARIANT onmousewheel();
-
-    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]
-    void normalize();
-
-    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]
-    IHTMLDOMAttribute *getAttributeNode([in] BSTR bstrname);
-
-    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]
-    IHTMLDOMAttribute *setAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]
-    IHTMLDOMAttribute *removeAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    void onbeforeactivate(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    VARIANT onbeforeactivate();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    void onfocusin(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    VARIANT onfocusin();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    void onfocusout(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    VARIANT onfocusout();
+    WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
 
     [propget, id(DISPID_IHTMLUNIQUENAME_UNIQUENUMBER), hidden]
     LONG uniqueNumber();
@@ -13375,42 +13132,7 @@
     WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    void onmousewheel(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    VARIANT onmousewheel();
-
-    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]
-    void normalize();
-
-    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]
-    IHTMLDOMAttribute *getAttributeNode([in] BSTR bstrname);
-
-    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]
-    IHTMLDOMAttribute *setAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]
-    IHTMLDOMAttribute *removeAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    void onbeforeactivate(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    VARIANT onbeforeactivate();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    void onfocusin(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    VARIANT onfocusin();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    void onfocusout(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    VARIANT onfocusout();
+    WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
 
     [propget, id(DISPID_IHTMLUNIQUENAME_UNIQUENUMBER), hidden]
     LONG uniqueNumber();
@@ -14705,42 +14427,7 @@
     WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    void onmousewheel(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    VARIANT onmousewheel();
-
-    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]
-    void normalize();
-
-    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]
-    IHTMLDOMAttribute *getAttributeNode([in] BSTR bstrname);
-
-    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]
-    IHTMLDOMAttribute *setAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]
-    IHTMLDOMAttribute *removeAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    void onbeforeactivate(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    VARIANT onbeforeactivate();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    void onfocusin(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    VARIANT onfocusin();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    void onfocusout(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    VARIANT onfocusout();
+    WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
 
     [propget, id(DISPID_IHTMLUNIQUENAME_UNIQUENUMBER), hidden]
     LONG uniqueNumber();
@@ -15006,42 +14693,7 @@
     WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    void onmousewheel(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    VARIANT onmousewheel();
-
-    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]
-    void normalize();
-
-    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]
-    IHTMLDOMAttribute *getAttributeNode([in] BSTR bstrname);
-
-    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]
-    IHTMLDOMAttribute *setAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]
-    IHTMLDOMAttribute *removeAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    void onbeforeactivate(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    VARIANT onbeforeactivate();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    void onfocusin(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    VARIANT onfocusin();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    void onfocusout(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    VARIANT onfocusout();
+    WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
 
     [propget, id(DISPID_IHTMLUNIQUENAME_UNIQUENUMBER), hidden]
     LONG uniqueNumber();
@@ -15377,42 +15029,7 @@
     WINE_IHTMLELEMENT_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT2_DISPINTERFACE_DECL;
     WINE_IHTMLELEMENT3_DISPINTERFACE_DECL;
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    void onmousewheel(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONMOUSEWHEEL), displaybind, bindable]
-    VARIANT onmousewheel();
-
-    [id(DISPID_IHTMLELEMENT4_NORMALIZE)]
-    void normalize();
-
-    [id(DISPID_IHTMLELEMENT4_GETATTRIBUTENODE)]
-    IHTMLDOMAttribute *getAttributeNode([in] BSTR bstrname);
-
-    [id(DISPID_IHTMLELEMENT4_SETATTRIBUTENODE)]
-    IHTMLDOMAttribute *setAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [id(DISPID_IHTMLELEMENT4_REMOVEATTRIBUTENODE)]
-    IHTMLDOMAttribute *removeAttributeNode([in] IHTMLDOMAttribute *pattr);
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    void onbeforeactivate(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONBEFOREACTIVATE), displaybind, bindable]
-    VARIANT onbeforeactivate();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    void onfocusin(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSIN), displaybind, bindable]
-    VARIANT onfocusin();
-
-    [propput, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    void onfocusout(VARIANT v);
-
-    [propget, id(DISPID_IHTMLELEMENT4_ONFOCUSOUT), displaybind, bindable]
-    VARIANT onfocusout();
+    WINE_IHTMLELEMENT4_DISPINTERFACE_DECL;
 
     [propget, id(DISPID_IHTMLUNIQUENAME_UNIQUENUMBER), hidden]
     LONG uniqueNumber();