WebCore/generated/JSDOMWindow.cpp
changeset 0 4f2f89ce4247
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/WebCore/generated/JSDOMWindow.cpp	Fri Sep 17 09:02:29 2010 +0300
@@ -0,0 +1,9286 @@
+/*
+    This file is part of the WebKit open source project.
+    This file has been generated by generate-bindings.pl. DO NOT MODIFY!
+
+    This library is free software; you can redistribute it and/or
+    modify it under the terms of the GNU Library General Public
+    License as published by the Free Software Foundation; either
+    version 2 of the License, or (at your option) any later version.
+
+    This library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+    Library General Public License for more details.
+
+    You should have received a copy of the GNU Library General Public License
+    along with this library; see the file COPYING.LIB.  If not, write to
+    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+    Boston, MA 02110-1301, USA.
+*/
+
+#include "config.h"
+#include "JSDOMWindow.h"
+
+#include "BarInfo.h"
+#include "CSSMutableStyleDeclaration.h"
+#include "CSSRuleList.h"
+#include "CSSStyleDeclaration.h"
+#include "Console.h"
+#include "DOMApplicationCache.h"
+#include "DOMSelection.h"
+#include "DOMWindow.h"
+#include "Database.h"
+#include "Document.h"
+#include "Element.h"
+#include "Event.h"
+#include "EventListener.h"
+#include "JSArrayBuffer.h"
+#include "JSAttr.h"
+#include "JSBarInfo.h"
+#include "JSBeforeLoadEvent.h"
+#include "JSBlob.h"
+#include "JSBlobBuilder.h"
+#include "JSCDATASection.h"
+#include "JSCSSCharsetRule.h"
+#include "JSCSSFontFaceRule.h"
+#include "JSCSSImportRule.h"
+#include "JSCSSMediaRule.h"
+#include "JSCSSPageRule.h"
+#include "JSCSSPrimitiveValue.h"
+#include "JSCSSRule.h"
+#include "JSCSSRuleList.h"
+#include "JSCSSStyleDeclaration.h"
+#include "JSCSSStyleRule.h"
+#include "JSCSSStyleSheet.h"
+#include "JSCSSValue.h"
+#include "JSCSSValueList.h"
+#include "JSCSSVariablesDeclaration.h"
+#include "JSCSSVariablesRule.h"
+#include "JSCanvasGradient.h"
+#include "JSCanvasPattern.h"
+#include "JSCanvasRenderingContext2D.h"
+#include "JSCharacterData.h"
+#include "JSClientRect.h"
+#include "JSClientRectList.h"
+#include "JSClipboard.h"
+#include "JSComment.h"
+#include "JSConsole.h"
+#include "JSCounter.h"
+#include "JSDOMApplicationCache.h"
+#include "JSDOMBinding.h"
+#include "JSDOMCoreException.h"
+#include "JSDOMFormData.h"
+#include "JSDOMImplementation.h"
+#include "JSDOMMimeType.h"
+#include "JSDOMMimeTypeArray.h"
+#include "JSDOMParser.h"
+#include "JSDOMPlugin.h"
+#include "JSDOMPluginArray.h"
+#include "JSDOMSelection.h"
+#include "JSDOMStringList.h"
+#include "JSDOMStringMap.h"
+#include "JSDOMWindow.h"
+#include "JSDOMWindowCustom.h"
+#include "JSDOMWindowShell.h"
+#include "JSDeviceOrientationEvent.h"
+#include "JSDocument.h"
+#include "JSDocumentFragment.h"
+#include "JSDocumentType.h"
+#include "JSElement.h"
+#include "JSEntity.h"
+#include "JSEntityReference.h"
+#include "JSEvent.h"
+#include "JSEventException.h"
+#include "JSEventListener.h"
+#include "JSEventSource.h"
+#include "JSFile.h"
+#include "JSFileError.h"
+#include "JSFileList.h"
+#include "JSFileReader.h"
+#include "JSFloat32Array.h"
+#include "JSHTMLAllCollection.h"
+#include "JSHTMLAnchorElement.h"
+#include "JSHTMLAppletElement.h"
+#include "JSHTMLAreaElement.h"
+#include "JSHTMLAudioElement.h"
+#include "JSHTMLBRElement.h"
+#include "JSHTMLBaseElement.h"
+#include "JSHTMLBaseFontElement.h"
+#include "JSHTMLBlockquoteElement.h"
+#include "JSHTMLBodyElement.h"
+#include "JSHTMLButtonElement.h"
+#include "JSHTMLCanvasElement.h"
+#include "JSHTMLCollection.h"
+#include "JSHTMLDListElement.h"
+#include "JSHTMLDataGridCellElement.h"
+#include "JSHTMLDataGridColElement.h"
+#include "JSHTMLDataGridElement.h"
+#include "JSHTMLDirectoryElement.h"
+#include "JSHTMLDivElement.h"
+#include "JSHTMLDocument.h"
+#include "JSHTMLElement.h"
+#include "JSHTMLEmbedElement.h"
+#include "JSHTMLFieldSetElement.h"
+#include "JSHTMLFontElement.h"
+#include "JSHTMLFormElement.h"
+#include "JSHTMLFrameElement.h"
+#include "JSHTMLFrameSetElement.h"
+#include "JSHTMLHRElement.h"
+#include "JSHTMLHeadElement.h"
+#include "JSHTMLHeadingElement.h"
+#include "JSHTMLHtmlElement.h"
+#include "JSHTMLIFrameElement.h"
+#include "JSHTMLImageElement.h"
+#include "JSHTMLInputElement.h"
+#include "JSHTMLIsIndexElement.h"
+#include "JSHTMLLIElement.h"
+#include "JSHTMLLabelElement.h"
+#include "JSHTMLLegendElement.h"
+#include "JSHTMLLinkElement.h"
+#include "JSHTMLMapElement.h"
+#include "JSHTMLMarqueeElement.h"
+#include "JSHTMLMediaElement.h"
+#include "JSHTMLMenuElement.h"
+#include "JSHTMLMetaElement.h"
+#include "JSHTMLMeterElement.h"
+#include "JSHTMLModElement.h"
+#include "JSHTMLOListElement.h"
+#include "JSHTMLObjectElement.h"
+#include "JSHTMLOptGroupElement.h"
+#include "JSHTMLOptionElement.h"
+#include "JSHTMLParagraphElement.h"
+#include "JSHTMLParamElement.h"
+#include "JSHTMLPreElement.h"
+#include "JSHTMLProgressElement.h"
+#include "JSHTMLQuoteElement.h"
+#include "JSHTMLScriptElement.h"
+#include "JSHTMLSelectElement.h"
+#include "JSHTMLStyleElement.h"
+#include "JSHTMLTableCaptionElement.h"
+#include "JSHTMLTableCellElement.h"
+#include "JSHTMLTableColElement.h"
+#include "JSHTMLTableElement.h"
+#include "JSHTMLTableRowElement.h"
+#include "JSHTMLTableSectionElement.h"
+#include "JSHTMLTextAreaElement.h"
+#include "JSHTMLTitleElement.h"
+#include "JSHTMLUListElement.h"
+#include "JSHTMLVideoElement.h"
+#include "JSImageData.h"
+#include "JSInt16Array.h"
+#include "JSInt32Array.h"
+#include "JSInt8Array.h"
+#include "JSKeyboardEvent.h"
+#include "JSMediaError.h"
+#include "JSMediaList.h"
+#include "JSMessageChannel.h"
+#include "JSMessageEvent.h"
+#include "JSMessagePort.h"
+#include "JSMouseEvent.h"
+#include "JSMutationEvent.h"
+#include "JSNamedNodeMap.h"
+#include "JSNavigator.h"
+#include "JSNode.h"
+#include "JSNodeFilter.h"
+#include "JSNodeList.h"
+#include "JSNotation.h"
+#include "JSNotificationCenter.h"
+#include "JSOverflowEvent.h"
+#include "JSPageTransitionEvent.h"
+#include "JSProcessingInstruction.h"
+#include "JSProgressEvent.h"
+#include "JSRGBColor.h"
+#include "JSRange.h"
+#include "JSRangeException.h"
+#include "JSRect.h"
+#include "JSSQLException.h"
+#include "JSSVGAElement.h"
+#include "JSSVGAngle.h"
+#include "JSSVGAnimatedAngle.h"
+#include "JSSVGAnimatedBoolean.h"
+#include "JSSVGAnimatedEnumeration.h"
+#include "JSSVGAnimatedInteger.h"
+#include "JSSVGAnimatedLength.h"
+#include "JSSVGAnimatedLengthList.h"
+#include "JSSVGAnimatedNumber.h"
+#include "JSSVGAnimatedNumberList.h"
+#include "JSSVGAnimatedPreserveAspectRatio.h"
+#include "JSSVGAnimatedRect.h"
+#include "JSSVGAnimatedString.h"
+#include "JSSVGAnimatedTransformList.h"
+#include "JSSVGCircleElement.h"
+#include "JSSVGClipPathElement.h"
+#include "JSSVGColor.h"
+#include "JSSVGComponentTransferFunctionElement.h"
+#include "JSSVGCursorElement.h"
+#include "JSSVGDefsElement.h"
+#include "JSSVGDescElement.h"
+#include "JSSVGDocument.h"
+#include "JSSVGElement.h"
+#include "JSSVGElementInstance.h"
+#include "JSSVGElementInstanceList.h"
+#include "JSSVGEllipseElement.h"
+#include "JSSVGException.h"
+#include "JSSVGFEBlendElement.h"
+#include "JSSVGFEColorMatrixElement.h"
+#include "JSSVGFEComponentTransferElement.h"
+#include "JSSVGFECompositeElement.h"
+#include "JSSVGFEConvolveMatrixElement.h"
+#include "JSSVGFEDiffuseLightingElement.h"
+#include "JSSVGFEDisplacementMapElement.h"
+#include "JSSVGFEDistantLightElement.h"
+#include "JSSVGFEFloodElement.h"
+#include "JSSVGFEFuncAElement.h"
+#include "JSSVGFEFuncBElement.h"
+#include "JSSVGFEFuncGElement.h"
+#include "JSSVGFEFuncRElement.h"
+#include "JSSVGFEGaussianBlurElement.h"
+#include "JSSVGFEImageElement.h"
+#include "JSSVGFEMergeElement.h"
+#include "JSSVGFEMergeNodeElement.h"
+#include "JSSVGFEMorphologyElement.h"
+#include "JSSVGFEOffsetElement.h"
+#include "JSSVGFEPointLightElement.h"
+#include "JSSVGFESpecularLightingElement.h"
+#include "JSSVGFESpotLightElement.h"
+#include "JSSVGFETileElement.h"
+#include "JSSVGFETurbulenceElement.h"
+#include "JSSVGFilterElement.h"
+#include "JSSVGGElement.h"
+#include "JSSVGGradientElement.h"
+#include "JSSVGImageElement.h"
+#include "JSSVGLength.h"
+#include "JSSVGLengthList.h"
+#include "JSSVGLineElement.h"
+#include "JSSVGLinearGradientElement.h"
+#include "JSSVGMarkerElement.h"
+#include "JSSVGMaskElement.h"
+#include "JSSVGMatrix.h"
+#include "JSSVGMetadataElement.h"
+#include "JSSVGNumber.h"
+#include "JSSVGNumberList.h"
+#include "JSSVGPaint.h"
+#include "JSSVGPathElement.h"
+#include "JSSVGPathSeg.h"
+#include "JSSVGPathSegArcAbs.h"
+#include "JSSVGPathSegArcRel.h"
+#include "JSSVGPathSegClosePath.h"
+#include "JSSVGPathSegCurvetoCubicAbs.h"
+#include "JSSVGPathSegCurvetoCubicRel.h"
+#include "JSSVGPathSegCurvetoCubicSmoothAbs.h"
+#include "JSSVGPathSegCurvetoCubicSmoothRel.h"
+#include "JSSVGPathSegCurvetoQuadraticAbs.h"
+#include "JSSVGPathSegCurvetoQuadraticRel.h"
+#include "JSSVGPathSegCurvetoQuadraticSmoothAbs.h"
+#include "JSSVGPathSegCurvetoQuadraticSmoothRel.h"
+#include "JSSVGPathSegLinetoAbs.h"
+#include "JSSVGPathSegLinetoHorizontalAbs.h"
+#include "JSSVGPathSegLinetoHorizontalRel.h"
+#include "JSSVGPathSegLinetoRel.h"
+#include "JSSVGPathSegLinetoVerticalAbs.h"
+#include "JSSVGPathSegLinetoVerticalRel.h"
+#include "JSSVGPathSegList.h"
+#include "JSSVGPathSegMovetoAbs.h"
+#include "JSSVGPathSegMovetoRel.h"
+#include "JSSVGPatternElement.h"
+#include "JSSVGPoint.h"
+#include "JSSVGPointList.h"
+#include "JSSVGPolygonElement.h"
+#include "JSSVGPolylineElement.h"
+#include "JSSVGPreserveAspectRatio.h"
+#include "JSSVGRadialGradientElement.h"
+#include "JSSVGRect.h"
+#include "JSSVGRectElement.h"
+#include "JSSVGRenderingIntent.h"
+#include "JSSVGSVGElement.h"
+#include "JSSVGScriptElement.h"
+#include "JSSVGStopElement.h"
+#include "JSSVGStringList.h"
+#include "JSSVGStyleElement.h"
+#include "JSSVGSwitchElement.h"
+#include "JSSVGSymbolElement.h"
+#include "JSSVGTRefElement.h"
+#include "JSSVGTSpanElement.h"
+#include "JSSVGTextContentElement.h"
+#include "JSSVGTextElement.h"
+#include "JSSVGTextPathElement.h"
+#include "JSSVGTextPositioningElement.h"
+#include "JSSVGTitleElement.h"
+#include "JSSVGTransform.h"
+#include "JSSVGTransformList.h"
+#include "JSSVGUnitTypes.h"
+#include "JSSVGUseElement.h"
+#include "JSSVGViewElement.h"
+#include "JSSVGZoomEvent.h"
+#include "JSScreen.h"
+#include "JSSharedWorker.h"
+#include "JSStorage.h"
+#include "JSStorageEvent.h"
+#include "JSStyleMedia.h"
+#include "JSStyleSheet.h"
+#include "JSStyleSheetList.h"
+#include "JSText.h"
+#include "JSTextEvent.h"
+#include "JSTextMetrics.h"
+#include "JSTimeRanges.h"
+#include "JSTouchEvent.h"
+#include "JSTransformActionEvent.h"
+#include "JSUIEvent.h"
+#include "JSUint16Array.h"
+#include "JSUint32Array.h"
+#include "JSUint8Array.h"
+#include "JSWebGLRenderingContext.h"
+#include "JSWebKitAnimationEvent.h"
+#include "JSWebKitCSSKeyframeRule.h"
+#include "JSWebKitCSSKeyframesRule.h"
+#include "JSWebKitCSSMatrix.h"
+#include "JSWebKitCSSTransformValue.h"
+#include "JSWebKitPoint.h"
+#include "JSWebKitTransitionEvent.h"
+#include "JSWebSocket.h"
+#include "JSWheelEvent.h"
+#include "JSWorker.h"
+#include "JSXMLHttpRequest.h"
+#include "JSXMLHttpRequestException.h"
+#include "JSXMLHttpRequestUpload.h"
+#include "JSXMLSerializer.h"
+#include "JSXPathEvaluator.h"
+#include "JSXPathException.h"
+#include "JSXPathResult.h"
+#include "JSXSLTProcessor.h"
+#include "KURL.h"
+#include "Navigator.h"
+#include "NotificationCenter.h"
+#include "RegisteredEventListener.h"
+#include "Screen.h"
+#include "Storage.h"
+#include "StyleMedia.h"
+#include "WebKitPoint.h"
+#include <runtime/Error.h>
+#include <runtime/JSNumberCell.h>
+#include <runtime/JSString.h>
+#include <wtf/GetPtr.h>
+
+using namespace JSC;
+
+namespace WebCore {
+
+ASSERT_CLASS_FITS_IN_CELL(JSDOMWindow);
+
+/* Hash table */
+#if ENABLE(JIT)
+#define THUNK_GENERATOR(generator) , generator
+#else
+#define THUNK_GENERATOR(generator)
+#endif
+
+static const HashTableValue JSDOMWindowTableValues[436] =
+{
+    { "screen", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowScreen), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "history", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHistory), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "locationbar", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowLocationbar), (intptr_t)setJSDOMWindowLocationbar THUNK_GENERATOR(0) },
+    { "menubar", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowMenubar), (intptr_t)setJSDOMWindowMenubar THUNK_GENERATOR(0) },
+    { "personalbar", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowPersonalbar), (intptr_t)setJSDOMWindowPersonalbar THUNK_GENERATOR(0) },
+    { "scrollbars", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowScrollbars), (intptr_t)setJSDOMWindowScrollbars THUNK_GENERATOR(0) },
+    { "statusbar", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowStatusbar), (intptr_t)setJSDOMWindowStatusbar THUNK_GENERATOR(0) },
+    { "toolbar", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowToolbar), (intptr_t)setJSDOMWindowToolbar THUNK_GENERATOR(0) },
+    { "navigator", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowNavigator), (intptr_t)setJSDOMWindowNavigator THUNK_GENERATOR(0) },
+    { "clientInformation", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowClientInformation), (intptr_t)setJSDOMWindowClientInformation THUNK_GENERATOR(0) },
+    { "location", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowLocation), (intptr_t)setJSDOMWindowLocation THUNK_GENERATOR(0) },
+    { "event", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowEvent), (intptr_t)setJSDOMWindowEvent THUNK_GENERATOR(0) },
+    { "crypto", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCrypto), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "frameElement", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowFrameElement), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "offscreenBuffering", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOffscreenBuffering), (intptr_t)setJSDOMWindowOffscreenBuffering THUNK_GENERATOR(0) },
+    { "outerHeight", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOuterHeight), (intptr_t)setJSDOMWindowOuterHeight THUNK_GENERATOR(0) },
+    { "outerWidth", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOuterWidth), (intptr_t)setJSDOMWindowOuterWidth THUNK_GENERATOR(0) },
+    { "innerHeight", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowInnerHeight), (intptr_t)setJSDOMWindowInnerHeight THUNK_GENERATOR(0) },
+    { "innerWidth", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowInnerWidth), (intptr_t)setJSDOMWindowInnerWidth THUNK_GENERATOR(0) },
+    { "screenX", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowScreenX), (intptr_t)setJSDOMWindowScreenX THUNK_GENERATOR(0) },
+    { "screenY", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowScreenY), (intptr_t)setJSDOMWindowScreenY THUNK_GENERATOR(0) },
+    { "screenLeft", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowScreenLeft), (intptr_t)setJSDOMWindowScreenLeft THUNK_GENERATOR(0) },
+    { "screenTop", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowScreenTop), (intptr_t)setJSDOMWindowScreenTop THUNK_GENERATOR(0) },
+    { "scrollX", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowScrollX), (intptr_t)setJSDOMWindowScrollX THUNK_GENERATOR(0) },
+    { "scrollY", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowScrollY), (intptr_t)setJSDOMWindowScrollY THUNK_GENERATOR(0) },
+    { "pageXOffset", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowPageXOffset), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "pageYOffset", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowPageYOffset), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "closed", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowClosed), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "length", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowLength), (intptr_t)setJSDOMWindowLength THUNK_GENERATOR(0) },
+    { "name", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowName), (intptr_t)setJSDOMWindowName THUNK_GENERATOR(0) },
+    { "status", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowStatus), (intptr_t)setJSDOMWindowStatus THUNK_GENERATOR(0) },
+    { "defaultStatus", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDefaultStatus), (intptr_t)setJSDOMWindowDefaultStatus THUNK_GENERATOR(0) },
+    { "defaultstatus", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDefaultstatus), (intptr_t)setJSDOMWindowDefaultstatus THUNK_GENERATOR(0) },
+    { "self", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSelf), (intptr_t)setJSDOMWindowSelf THUNK_GENERATOR(0) },
+    { "window", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWindow), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "frames", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowFrames), (intptr_t)setJSDOMWindowFrames THUNK_GENERATOR(0) },
+    { "opener", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOpener), (intptr_t)setJSDOMWindowOpener THUNK_GENERATOR(0) },
+    { "parent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowParent), (intptr_t)setJSDOMWindowParent THUNK_GENERATOR(0) },
+    { "top", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowTop), (intptr_t)setJSDOMWindowTop THUNK_GENERATOR(0) },
+    { "document", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDocument), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "styleMedia", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowStyleMedia), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "devicePixelRatio", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDevicePixelRatio), (intptr_t)setJSDOMWindowDevicePixelRatio THUNK_GENERATOR(0) },
+    { "applicationCache", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowApplicationCache), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "sessionStorage", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSessionStorage), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "localStorage", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowLocalStorage), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "webkitNotifications", DontDelete | ReadOnly, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebkitNotifications), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "console", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowConsole), (intptr_t)setJSDOMWindowConsole THUNK_GENERATOR(0) },
+    { "onabort", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnabort), (intptr_t)setJSDOMWindowOnabort THUNK_GENERATOR(0) },
+    { "onbeforeunload", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnbeforeunload), (intptr_t)setJSDOMWindowOnbeforeunload THUNK_GENERATOR(0) },
+    { "onblur", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnblur), (intptr_t)setJSDOMWindowOnblur THUNK_GENERATOR(0) },
+    { "oncanplay", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOncanplay), (intptr_t)setJSDOMWindowOncanplay THUNK_GENERATOR(0) },
+    { "oncanplaythrough", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOncanplaythrough), (intptr_t)setJSDOMWindowOncanplaythrough THUNK_GENERATOR(0) },
+    { "onchange", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnchange), (intptr_t)setJSDOMWindowOnchange THUNK_GENERATOR(0) },
+    { "onclick", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnclick), (intptr_t)setJSDOMWindowOnclick THUNK_GENERATOR(0) },
+    { "oncontextmenu", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOncontextmenu), (intptr_t)setJSDOMWindowOncontextmenu THUNK_GENERATOR(0) },
+    { "ondblclick", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOndblclick), (intptr_t)setJSDOMWindowOndblclick THUNK_GENERATOR(0) },
+    { "ondrag", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOndrag), (intptr_t)setJSDOMWindowOndrag THUNK_GENERATOR(0) },
+    { "ondragend", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOndragend), (intptr_t)setJSDOMWindowOndragend THUNK_GENERATOR(0) },
+    { "ondragenter", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOndragenter), (intptr_t)setJSDOMWindowOndragenter THUNK_GENERATOR(0) },
+    { "ondragleave", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOndragleave), (intptr_t)setJSDOMWindowOndragleave THUNK_GENERATOR(0) },
+    { "ondragover", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOndragover), (intptr_t)setJSDOMWindowOndragover THUNK_GENERATOR(0) },
+    { "ondragstart", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOndragstart), (intptr_t)setJSDOMWindowOndragstart THUNK_GENERATOR(0) },
+    { "ondrop", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOndrop), (intptr_t)setJSDOMWindowOndrop THUNK_GENERATOR(0) },
+    { "ondurationchange", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOndurationchange), (intptr_t)setJSDOMWindowOndurationchange THUNK_GENERATOR(0) },
+    { "onemptied", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnemptied), (intptr_t)setJSDOMWindowOnemptied THUNK_GENERATOR(0) },
+    { "onended", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnended), (intptr_t)setJSDOMWindowOnended THUNK_GENERATOR(0) },
+    { "onerror", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnerror), (intptr_t)setJSDOMWindowOnerror THUNK_GENERATOR(0) },
+    { "onfocus", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnfocus), (intptr_t)setJSDOMWindowOnfocus THUNK_GENERATOR(0) },
+    { "onhashchange", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnhashchange), (intptr_t)setJSDOMWindowOnhashchange THUNK_GENERATOR(0) },
+    { "oninput", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOninput), (intptr_t)setJSDOMWindowOninput THUNK_GENERATOR(0) },
+    { "oninvalid", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOninvalid), (intptr_t)setJSDOMWindowOninvalid THUNK_GENERATOR(0) },
+    { "onkeydown", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnkeydown), (intptr_t)setJSDOMWindowOnkeydown THUNK_GENERATOR(0) },
+    { "onkeypress", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnkeypress), (intptr_t)setJSDOMWindowOnkeypress THUNK_GENERATOR(0) },
+    { "onkeyup", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnkeyup), (intptr_t)setJSDOMWindowOnkeyup THUNK_GENERATOR(0) },
+    { "onload", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnload), (intptr_t)setJSDOMWindowOnload THUNK_GENERATOR(0) },
+    { "onloadeddata", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnloadeddata), (intptr_t)setJSDOMWindowOnloadeddata THUNK_GENERATOR(0) },
+    { "onloadedmetadata", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnloadedmetadata), (intptr_t)setJSDOMWindowOnloadedmetadata THUNK_GENERATOR(0) },
+    { "onloadstart", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnloadstart), (intptr_t)setJSDOMWindowOnloadstart THUNK_GENERATOR(0) },
+    { "onmessage", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnmessage), (intptr_t)setJSDOMWindowOnmessage THUNK_GENERATOR(0) },
+    { "onmousedown", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnmousedown), (intptr_t)setJSDOMWindowOnmousedown THUNK_GENERATOR(0) },
+    { "onmousemove", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnmousemove), (intptr_t)setJSDOMWindowOnmousemove THUNK_GENERATOR(0) },
+    { "onmouseout", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnmouseout), (intptr_t)setJSDOMWindowOnmouseout THUNK_GENERATOR(0) },
+    { "onmouseover", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnmouseover), (intptr_t)setJSDOMWindowOnmouseover THUNK_GENERATOR(0) },
+    { "onmouseup", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnmouseup), (intptr_t)setJSDOMWindowOnmouseup THUNK_GENERATOR(0) },
+    { "onmousewheel", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnmousewheel), (intptr_t)setJSDOMWindowOnmousewheel THUNK_GENERATOR(0) },
+    { "onoffline", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnoffline), (intptr_t)setJSDOMWindowOnoffline THUNK_GENERATOR(0) },
+    { "ononline", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnonline), (intptr_t)setJSDOMWindowOnonline THUNK_GENERATOR(0) },
+    { "onpagehide", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnpagehide), (intptr_t)setJSDOMWindowOnpagehide THUNK_GENERATOR(0) },
+    { "onpageshow", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnpageshow), (intptr_t)setJSDOMWindowOnpageshow THUNK_GENERATOR(0) },
+    { "onpause", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnpause), (intptr_t)setJSDOMWindowOnpause THUNK_GENERATOR(0) },
+    { "onplay", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnplay), (intptr_t)setJSDOMWindowOnplay THUNK_GENERATOR(0) },
+    { "onplaying", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnplaying), (intptr_t)setJSDOMWindowOnplaying THUNK_GENERATOR(0) },
+    { "onpopstate", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnpopstate), (intptr_t)setJSDOMWindowOnpopstate THUNK_GENERATOR(0) },
+    { "onprogress", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnprogress), (intptr_t)setJSDOMWindowOnprogress THUNK_GENERATOR(0) },
+    { "onratechange", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnratechange), (intptr_t)setJSDOMWindowOnratechange THUNK_GENERATOR(0) },
+    { "onresize", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnresize), (intptr_t)setJSDOMWindowOnresize THUNK_GENERATOR(0) },
+    { "onscroll", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnscroll), (intptr_t)setJSDOMWindowOnscroll THUNK_GENERATOR(0) },
+    { "onseeked", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnseeked), (intptr_t)setJSDOMWindowOnseeked THUNK_GENERATOR(0) },
+    { "onseeking", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnseeking), (intptr_t)setJSDOMWindowOnseeking THUNK_GENERATOR(0) },
+    { "onselect", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnselect), (intptr_t)setJSDOMWindowOnselect THUNK_GENERATOR(0) },
+    { "onstalled", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnstalled), (intptr_t)setJSDOMWindowOnstalled THUNK_GENERATOR(0) },
+    { "onstorage", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnstorage), (intptr_t)setJSDOMWindowOnstorage THUNK_GENERATOR(0) },
+    { "onsubmit", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnsubmit), (intptr_t)setJSDOMWindowOnsubmit THUNK_GENERATOR(0) },
+    { "onsuspend", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnsuspend), (intptr_t)setJSDOMWindowOnsuspend THUNK_GENERATOR(0) },
+    { "ontimeupdate", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOntimeupdate), (intptr_t)setJSDOMWindowOntimeupdate THUNK_GENERATOR(0) },
+    { "onunload", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnunload), (intptr_t)setJSDOMWindowOnunload THUNK_GENERATOR(0) },
+    { "onvolumechange", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnvolumechange), (intptr_t)setJSDOMWindowOnvolumechange THUNK_GENERATOR(0) },
+    { "onwaiting", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnwaiting), (intptr_t)setJSDOMWindowOnwaiting THUNK_GENERATOR(0) },
+    { "onreset", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnreset), (intptr_t)setJSDOMWindowOnreset THUNK_GENERATOR(0) },
+    { "onsearch", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnsearch), (intptr_t)setJSDOMWindowOnsearch THUNK_GENERATOR(0) },
+    { "onwebkitanimationend", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnwebkitanimationend), (intptr_t)setJSDOMWindowOnwebkitanimationend THUNK_GENERATOR(0) },
+    { "onwebkitanimationiteration", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnwebkitanimationiteration), (intptr_t)setJSDOMWindowOnwebkitanimationiteration THUNK_GENERATOR(0) },
+    { "onwebkitanimationstart", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnwebkitanimationstart), (intptr_t)setJSDOMWindowOnwebkitanimationstart THUNK_GENERATOR(0) },
+    { "onwebkittransitionend", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOnwebkittransitionend), (intptr_t)setJSDOMWindowOnwebkittransitionend THUNK_GENERATOR(0) },
+#if ENABLE(TOUCH_EVENTS)
+    { "ontouchstart", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOntouchstart), (intptr_t)setJSDOMWindowOntouchstart THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(TOUCH_EVENTS)
+    { "ontouchmove", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOntouchmove), (intptr_t)setJSDOMWindowOntouchmove THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(TOUCH_EVENTS)
+    { "ontouchend", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOntouchend), (intptr_t)setJSDOMWindowOntouchend THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(TOUCH_EVENTS)
+    { "ontouchcancel", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOntouchcancel), (intptr_t)setJSDOMWindowOntouchcancel THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(TRANSFORMACTION_EVENTS)
+    { "ontransformactionstart", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOntransformactionstart), (intptr_t)setJSDOMWindowOntransformactionstart THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(TRANSFORMACTION_EVENTS)
+    { "ontransformactionupdate", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOntransformactionupdate), (intptr_t)setJSDOMWindowOntransformactionupdate THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(TRANSFORMACTION_EVENTS)
+    { "ontransformactionend", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOntransformactionend), (intptr_t)setJSDOMWindowOntransformactionend THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(DEVICE_ORIENTATION)
+    { "DeviceOrientationEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDeviceOrientationEventConstructor), (intptr_t)setJSDOMWindowDeviceOrientationEventConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(DEVICE_ORIENTATION)
+    { "ondeviceorientation", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOndeviceorientation), (intptr_t)setJSDOMWindowOndeviceorientation THUNK_GENERATOR(0) },
+#endif
+    { "StyleSheet", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowStyleSheetConstructor), (intptr_t)setJSDOMWindowStyleSheetConstructor THUNK_GENERATOR(0) },
+    { "CSSStyleSheet", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSStyleSheetConstructor), (intptr_t)setJSDOMWindowCSSStyleSheetConstructor THUNK_GENERATOR(0) },
+    { "CSSValue", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSValueConstructor), (intptr_t)setJSDOMWindowCSSValueConstructor THUNK_GENERATOR(0) },
+    { "CSSPrimitiveValue", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSPrimitiveValueConstructor), (intptr_t)setJSDOMWindowCSSPrimitiveValueConstructor THUNK_GENERATOR(0) },
+    { "CSSValueList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSValueListConstructor), (intptr_t)setJSDOMWindowCSSValueListConstructor THUNK_GENERATOR(0) },
+    { "WebKitCSSTransformValue", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebKitCSSTransformValueConstructor), (intptr_t)setJSDOMWindowWebKitCSSTransformValueConstructor THUNK_GENERATOR(0) },
+    { "CSSRule", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSRuleConstructor), (intptr_t)setJSDOMWindowCSSRuleConstructor THUNK_GENERATOR(0) },
+    { "CSSCharsetRule", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSCharsetRuleConstructor), (intptr_t)setJSDOMWindowCSSCharsetRuleConstructor THUNK_GENERATOR(0) },
+    { "CSSFontFaceRule", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSFontFaceRuleConstructor), (intptr_t)setJSDOMWindowCSSFontFaceRuleConstructor THUNK_GENERATOR(0) },
+    { "CSSImportRule", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSImportRuleConstructor), (intptr_t)setJSDOMWindowCSSImportRuleConstructor THUNK_GENERATOR(0) },
+    { "CSSMediaRule", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSMediaRuleConstructor), (intptr_t)setJSDOMWindowCSSMediaRuleConstructor THUNK_GENERATOR(0) },
+    { "CSSPageRule", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSPageRuleConstructor), (intptr_t)setJSDOMWindowCSSPageRuleConstructor THUNK_GENERATOR(0) },
+    { "CSSStyleRule", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSStyleRuleConstructor), (intptr_t)setJSDOMWindowCSSStyleRuleConstructor THUNK_GENERATOR(0) },
+    { "CSSVariablesRule", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSVariablesRuleConstructor), (intptr_t)setJSDOMWindowCSSVariablesRuleConstructor THUNK_GENERATOR(0) },
+    { "CSSVariablesDeclaration", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSVariablesDeclarationConstructor), (intptr_t)setJSDOMWindowCSSVariablesDeclarationConstructor THUNK_GENERATOR(0) },
+    { "CSSStyleDeclaration", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSStyleDeclarationConstructor), (intptr_t)setJSDOMWindowCSSStyleDeclarationConstructor THUNK_GENERATOR(0) },
+    { "MediaList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowMediaListConstructor), (intptr_t)setJSDOMWindowMediaListConstructor THUNK_GENERATOR(0) },
+    { "Counter", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCounterConstructor), (intptr_t)setJSDOMWindowCounterConstructor THUNK_GENERATOR(0) },
+    { "CSSRuleList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCSSRuleListConstructor), (intptr_t)setJSDOMWindowCSSRuleListConstructor THUNK_GENERATOR(0) },
+    { "Rect", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowRectConstructor), (intptr_t)setJSDOMWindowRectConstructor THUNK_GENERATOR(0) },
+    { "RGBColor", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowRGBColorConstructor), (intptr_t)setJSDOMWindowRGBColorConstructor THUNK_GENERATOR(0) },
+    { "StyleSheetList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowStyleSheetListConstructor), (intptr_t)setJSDOMWindowStyleSheetListConstructor THUNK_GENERATOR(0) },
+    { "DOMException", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDOMExceptionConstructor), (intptr_t)setJSDOMWindowDOMExceptionConstructor THUNK_GENERATOR(0) },
+    { "DOMStringList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDOMStringListConstructor), (intptr_t)setJSDOMWindowDOMStringListConstructor THUNK_GENERATOR(0) },
+    { "DOMImplementation", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDOMImplementationConstructor), (intptr_t)setJSDOMWindowDOMImplementationConstructor THUNK_GENERATOR(0) },
+    { "DocumentFragment", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDocumentFragmentConstructor), (intptr_t)setJSDOMWindowDocumentFragmentConstructor THUNK_GENERATOR(0) },
+    { "Document", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDocumentConstructor), (intptr_t)setJSDOMWindowDocumentConstructor THUNK_GENERATOR(0) },
+    { "Node", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowNodeConstructor), (intptr_t)setJSDOMWindowNodeConstructor THUNK_GENERATOR(0) },
+    { "NodeList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowNodeListConstructor), (intptr_t)setJSDOMWindowNodeListConstructor THUNK_GENERATOR(0) },
+    { "NamedNodeMap", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowNamedNodeMapConstructor), (intptr_t)setJSDOMWindowNamedNodeMapConstructor THUNK_GENERATOR(0) },
+    { "CharacterData", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCharacterDataConstructor), (intptr_t)setJSDOMWindowCharacterDataConstructor THUNK_GENERATOR(0) },
+    { "Attr", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowAttrConstructor), (intptr_t)setJSDOMWindowAttrConstructor THUNK_GENERATOR(0) },
+    { "Element", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowElementConstructor), (intptr_t)setJSDOMWindowElementConstructor THUNK_GENERATOR(0) },
+    { "Text", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowTextConstructor), (intptr_t)setJSDOMWindowTextConstructor THUNK_GENERATOR(0) },
+    { "Comment", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCommentConstructor), (intptr_t)setJSDOMWindowCommentConstructor THUNK_GENERATOR(0) },
+    { "CDATASection", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCDATASectionConstructor), (intptr_t)setJSDOMWindowCDATASectionConstructor THUNK_GENERATOR(0) },
+    { "DocumentType", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDocumentTypeConstructor), (intptr_t)setJSDOMWindowDocumentTypeConstructor THUNK_GENERATOR(0) },
+    { "Notation", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowNotationConstructor), (intptr_t)setJSDOMWindowNotationConstructor THUNK_GENERATOR(0) },
+    { "Entity", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowEntityConstructor), (intptr_t)setJSDOMWindowEntityConstructor THUNK_GENERATOR(0) },
+    { "EntityReference", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowEntityReferenceConstructor), (intptr_t)setJSDOMWindowEntityReferenceConstructor THUNK_GENERATOR(0) },
+    { "ProcessingInstruction", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowProcessingInstructionConstructor), (intptr_t)setJSDOMWindowProcessingInstructionConstructor THUNK_GENERATOR(0) },
+    { "HTMLDocument", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLDocumentConstructor), (intptr_t)setJSDOMWindowHTMLDocumentConstructor THUNK_GENERATOR(0) },
+    { "HTMLElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLElementConstructor), (intptr_t)setJSDOMWindowHTMLElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLAnchorElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLAnchorElementConstructor), (intptr_t)setJSDOMWindowHTMLAnchorElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLAppletElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLAppletElementConstructor), (intptr_t)setJSDOMWindowHTMLAppletElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLAreaElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLAreaElementConstructor), (intptr_t)setJSDOMWindowHTMLAreaElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLBRElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLBRElementConstructor), (intptr_t)setJSDOMWindowHTMLBRElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLBaseElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLBaseElementConstructor), (intptr_t)setJSDOMWindowHTMLBaseElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLBaseFontElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLBaseFontElementConstructor), (intptr_t)setJSDOMWindowHTMLBaseFontElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLBlockquoteElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLBlockquoteElementConstructor), (intptr_t)setJSDOMWindowHTMLBlockquoteElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLBodyElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLBodyElementConstructor), (intptr_t)setJSDOMWindowHTMLBodyElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLButtonElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLButtonElementConstructor), (intptr_t)setJSDOMWindowHTMLButtonElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLCanvasElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLCanvasElementConstructor), (intptr_t)setJSDOMWindowHTMLCanvasElementConstructor THUNK_GENERATOR(0) },
+#if ENABLE(DATAGRID)
+    { "HTMLDataGridElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLDataGridElementConstructor), (intptr_t)setJSDOMWindowHTMLDataGridElementConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(DATAGRID)
+    { "HTMLDataGridCellElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLDataGridCellElementConstructor), (intptr_t)setJSDOMWindowHTMLDataGridCellElementConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(DATAGRID)
+    { "HTMLDataGridColElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLDataGridColElementConstructor), (intptr_t)setJSDOMWindowHTMLDataGridColElementConstructor THUNK_GENERATOR(0) },
+#endif
+    { "HTMLDListElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLDListElementConstructor), (intptr_t)setJSDOMWindowHTMLDListElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLDirectoryElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLDirectoryElementConstructor), (intptr_t)setJSDOMWindowHTMLDirectoryElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLDivElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLDivElementConstructor), (intptr_t)setJSDOMWindowHTMLDivElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLEmbedElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLEmbedElementConstructor), (intptr_t)setJSDOMWindowHTMLEmbedElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLFieldSetElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLFieldSetElementConstructor), (intptr_t)setJSDOMWindowHTMLFieldSetElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLFontElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLFontElementConstructor), (intptr_t)setJSDOMWindowHTMLFontElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLFormElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLFormElementConstructor), (intptr_t)setJSDOMWindowHTMLFormElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLFrameElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLFrameElementConstructor), (intptr_t)setJSDOMWindowHTMLFrameElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLFrameSetElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLFrameSetElementConstructor), (intptr_t)setJSDOMWindowHTMLFrameSetElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLHRElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLHRElementConstructor), (intptr_t)setJSDOMWindowHTMLHRElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLHeadElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLHeadElementConstructor), (intptr_t)setJSDOMWindowHTMLHeadElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLHeadingElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLHeadingElementConstructor), (intptr_t)setJSDOMWindowHTMLHeadingElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLHtmlElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLHtmlElementConstructor), (intptr_t)setJSDOMWindowHTMLHtmlElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLIFrameElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLIFrameElementConstructor), (intptr_t)setJSDOMWindowHTMLIFrameElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLImageElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLImageElementConstructor), (intptr_t)setJSDOMWindowHTMLImageElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLInputElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLInputElementConstructor), (intptr_t)setJSDOMWindowHTMLInputElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLIsIndexElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLIsIndexElementConstructor), (intptr_t)setJSDOMWindowHTMLIsIndexElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLLIElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLLIElementConstructor), (intptr_t)setJSDOMWindowHTMLLIElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLLabelElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLLabelElementConstructor), (intptr_t)setJSDOMWindowHTMLLabelElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLLegendElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLLegendElementConstructor), (intptr_t)setJSDOMWindowHTMLLegendElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLLinkElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLLinkElementConstructor), (intptr_t)setJSDOMWindowHTMLLinkElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLMapElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLMapElementConstructor), (intptr_t)setJSDOMWindowHTMLMapElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLMarqueeElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLMarqueeElementConstructor), (intptr_t)setJSDOMWindowHTMLMarqueeElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLMenuElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLMenuElementConstructor), (intptr_t)setJSDOMWindowHTMLMenuElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLMetaElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLMetaElementConstructor), (intptr_t)setJSDOMWindowHTMLMetaElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLMeterElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLMeterElementConstructor), (intptr_t)setJSDOMWindowHTMLMeterElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLModElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLModElementConstructor), (intptr_t)setJSDOMWindowHTMLModElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLOListElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLOListElementConstructor), (intptr_t)setJSDOMWindowHTMLOListElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLObjectElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLObjectElementConstructor), (intptr_t)setJSDOMWindowHTMLObjectElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLOptGroupElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLOptGroupElementConstructor), (intptr_t)setJSDOMWindowHTMLOptGroupElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLOptionElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLOptionElementConstructor), (intptr_t)setJSDOMWindowHTMLOptionElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLParagraphElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLParagraphElementConstructor), (intptr_t)setJSDOMWindowHTMLParagraphElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLParamElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLParamElementConstructor), (intptr_t)setJSDOMWindowHTMLParamElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLPreElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLPreElementConstructor), (intptr_t)setJSDOMWindowHTMLPreElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLProgressElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLProgressElementConstructor), (intptr_t)setJSDOMWindowHTMLProgressElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLQuoteElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLQuoteElementConstructor), (intptr_t)setJSDOMWindowHTMLQuoteElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLScriptElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLScriptElementConstructor), (intptr_t)setJSDOMWindowHTMLScriptElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLSelectElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLSelectElementConstructor), (intptr_t)setJSDOMWindowHTMLSelectElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLStyleElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLStyleElementConstructor), (intptr_t)setJSDOMWindowHTMLStyleElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLTableCaptionElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLTableCaptionElementConstructor), (intptr_t)setJSDOMWindowHTMLTableCaptionElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLTableCellElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLTableCellElementConstructor), (intptr_t)setJSDOMWindowHTMLTableCellElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLTableColElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLTableColElementConstructor), (intptr_t)setJSDOMWindowHTMLTableColElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLTableElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLTableElementConstructor), (intptr_t)setJSDOMWindowHTMLTableElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLTableRowElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLTableRowElementConstructor), (intptr_t)setJSDOMWindowHTMLTableRowElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLTableSectionElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLTableSectionElementConstructor), (intptr_t)setJSDOMWindowHTMLTableSectionElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLTextAreaElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLTextAreaElementConstructor), (intptr_t)setJSDOMWindowHTMLTextAreaElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLTitleElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLTitleElementConstructor), (intptr_t)setJSDOMWindowHTMLTitleElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLUListElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLUListElementConstructor), (intptr_t)setJSDOMWindowHTMLUListElementConstructor THUNK_GENERATOR(0) },
+    { "HTMLCollection", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLCollectionConstructor), (intptr_t)setJSDOMWindowHTMLCollectionConstructor THUNK_GENERATOR(0) },
+    { "HTMLAllCollection", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLAllCollectionConstructor), (intptr_t)setJSDOMWindowHTMLAllCollectionConstructor THUNK_GENERATOR(0) },
+    { "Image", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowImageConstructor), (intptr_t)setJSDOMWindowImageConstructor THUNK_GENERATOR(0) },
+    { "Option", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOptionConstructor), (intptr_t)setJSDOMWindowOptionConstructor THUNK_GENERATOR(0) },
+    { "CanvasPattern", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCanvasPatternConstructor), (intptr_t)setJSDOMWindowCanvasPatternConstructor THUNK_GENERATOR(0) },
+    { "CanvasGradient", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCanvasGradientConstructor), (intptr_t)setJSDOMWindowCanvasGradientConstructor THUNK_GENERATOR(0) },
+    { "CanvasRenderingContext2D", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowCanvasRenderingContext2DConstructor), (intptr_t)setJSDOMWindowCanvasRenderingContext2DConstructor THUNK_GENERATOR(0) },
+    { "ImageData", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowImageDataConstructor), (intptr_t)setJSDOMWindowImageDataConstructor THUNK_GENERATOR(0) },
+#if ENABLE(3D_CANVAS)
+    { "WebGLRenderingContext", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebGLRenderingContextConstructor), (intptr_t)setJSDOMWindowWebGLRenderingContextConstructor THUNK_GENERATOR(0) },
+#endif
+    { "TextMetrics", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowTextMetricsConstructor), (intptr_t)setJSDOMWindowTextMetricsConstructor THUNK_GENERATOR(0) },
+    { "DOMStringMap", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDOMStringMapConstructor), (intptr_t)setJSDOMWindowDOMStringMapConstructor THUNK_GENERATOR(0) },
+#if ENABLE(3D_CANVAS)
+    { "ArrayBuffer", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowArrayBufferConstructor), (intptr_t)setJSDOMWindowArrayBufferConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "Int8Array", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowInt8ArrayConstructor), (intptr_t)setJSDOMWindowInt8ArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "Uint8Array", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowUint8ArrayConstructor), (intptr_t)setJSDOMWindowUint8ArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "Int16Array", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowInt16ArrayConstructor), (intptr_t)setJSDOMWindowInt16ArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "Uint16Array", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowUint16ArrayConstructor), (intptr_t)setJSDOMWindowUint16ArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "Int32Array", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowInt32ArrayConstructor), (intptr_t)setJSDOMWindowInt32ArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "Uint32Array", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowUint32ArrayConstructor), (intptr_t)setJSDOMWindowUint32ArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "Float32Array", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowFloat32ArrayConstructor), (intptr_t)setJSDOMWindowFloat32ArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "WebGLArrayBuffer", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebGLArrayBufferConstructor), (intptr_t)setJSDOMWindowWebGLArrayBufferConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "WebGLByteArray", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebGLByteArrayConstructor), (intptr_t)setJSDOMWindowWebGLByteArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "WebGLUnsignedByteArray", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebGLUnsignedByteArrayConstructor), (intptr_t)setJSDOMWindowWebGLUnsignedByteArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "WebGLShortArray", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebGLShortArrayConstructor), (intptr_t)setJSDOMWindowWebGLShortArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "WebGLUnsignedShortArray", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebGLUnsignedShortArrayConstructor), (intptr_t)setJSDOMWindowWebGLUnsignedShortArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "WebGLIntArray", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebGLIntArrayConstructor), (intptr_t)setJSDOMWindowWebGLIntArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "WebGLUnsignedIntArray", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebGLUnsignedIntArrayConstructor), (intptr_t)setJSDOMWindowWebGLUnsignedIntArrayConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(3D_CANVAS)
+    { "WebGLFloatArray", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebGLFloatArrayConstructor), (intptr_t)setJSDOMWindowWebGLFloatArrayConstructor THUNK_GENERATOR(0) },
+#endif
+    { "Event", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowEventConstructor), (intptr_t)setJSDOMWindowEventConstructor THUNK_GENERATOR(0) },
+    { "BeforeLoadEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowBeforeLoadEventConstructor), (intptr_t)setJSDOMWindowBeforeLoadEventConstructor THUNK_GENERATOR(0) },
+    { "KeyboardEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowKeyboardEventConstructor), (intptr_t)setJSDOMWindowKeyboardEventConstructor THUNK_GENERATOR(0) },
+    { "MouseEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowMouseEventConstructor), (intptr_t)setJSDOMWindowMouseEventConstructor THUNK_GENERATOR(0) },
+    { "MutationEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowMutationEventConstructor), (intptr_t)setJSDOMWindowMutationEventConstructor THUNK_GENERATOR(0) },
+    { "OverflowEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowOverflowEventConstructor), (intptr_t)setJSDOMWindowOverflowEventConstructor THUNK_GENERATOR(0) },
+    { "PageTransitionEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowPageTransitionEventConstructor), (intptr_t)setJSDOMWindowPageTransitionEventConstructor THUNK_GENERATOR(0) },
+    { "ProgressEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowProgressEventConstructor), (intptr_t)setJSDOMWindowProgressEventConstructor THUNK_GENERATOR(0) },
+    { "TextEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowTextEventConstructor), (intptr_t)setJSDOMWindowTextEventConstructor THUNK_GENERATOR(0) },
+    { "UIEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowUIEventConstructor), (intptr_t)setJSDOMWindowUIEventConstructor THUNK_GENERATOR(0) },
+    { "WebKitAnimationEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebKitAnimationEventConstructor), (intptr_t)setJSDOMWindowWebKitAnimationEventConstructor THUNK_GENERATOR(0) },
+    { "WebKitTransitionEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebKitTransitionEventConstructor), (intptr_t)setJSDOMWindowWebKitTransitionEventConstructor THUNK_GENERATOR(0) },
+    { "WheelEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWheelEventConstructor), (intptr_t)setJSDOMWindowWheelEventConstructor THUNK_GENERATOR(0) },
+    { "MessageEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowMessageEventConstructor), (intptr_t)setJSDOMWindowMessageEventConstructor THUNK_GENERATOR(0) },
+    { "EventException", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowEventExceptionConstructor), (intptr_t)setJSDOMWindowEventExceptionConstructor THUNK_GENERATOR(0) },
+    { "WebKitCSSKeyframeRule", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebKitCSSKeyframeRuleConstructor), (intptr_t)setJSDOMWindowWebKitCSSKeyframeRuleConstructor THUNK_GENERATOR(0) },
+    { "WebKitCSSKeyframesRule", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebKitCSSKeyframesRuleConstructor), (intptr_t)setJSDOMWindowWebKitCSSKeyframesRuleConstructor THUNK_GENERATOR(0) },
+    { "WebKitCSSMatrix", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebKitCSSMatrixConstructor), (intptr_t)setJSDOMWindowWebKitCSSMatrixConstructor THUNK_GENERATOR(0) },
+    { "WebKitPoint", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebKitPointConstructor), (intptr_t)setJSDOMWindowWebKitPointConstructor THUNK_GENERATOR(0) },
+    { "Clipboard", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowClipboardConstructor), (intptr_t)setJSDOMWindowClipboardConstructor THUNK_GENERATOR(0) },
+    { "File", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowFileConstructor), (intptr_t)setJSDOMWindowFileConstructor THUNK_GENERATOR(0) },
+    { "FileList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowFileListConstructor), (intptr_t)setJSDOMWindowFileListConstructor THUNK_GENERATOR(0) },
+    { "Blob", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowBlobConstructor), (intptr_t)setJSDOMWindowBlobConstructor THUNK_GENERATOR(0) },
+    { "NodeFilter", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowNodeFilterConstructor), (intptr_t)setJSDOMWindowNodeFilterConstructor THUNK_GENERATOR(0) },
+    { "Range", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowRangeConstructor), (intptr_t)setJSDOMWindowRangeConstructor THUNK_GENERATOR(0) },
+    { "RangeException", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowRangeExceptionConstructor), (intptr_t)setJSDOMWindowRangeExceptionConstructor THUNK_GENERATOR(0) },
+    { "EventSource", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowEventSourceConstructor), (intptr_t)setJSDOMWindowEventSourceConstructor THUNK_GENERATOR(0) },
+    { "XMLDocument", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowXMLDocumentConstructor), (intptr_t)setJSDOMWindowXMLDocumentConstructor THUNK_GENERATOR(0) },
+    { "DOMParser", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowDOMParserConstructor), (intptr_t)setJSDOMWindowDOMParserConstructor THUNK_GENERATOR(0) },
+    { "XMLSerializer", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowXMLSerializerConstructor), (intptr_t)setJSDOMWindowXMLSerializerConstructor THUNK_GENERATOR(0) },
+    { "XMLHttpRequest", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowXMLHttpRequestConstructor), (intptr_t)setJSDOMWindowXMLHttpRequestConstructor THUNK_GENERATOR(0) },
+    { "XMLHttpRequestUpload", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowXMLHttpRequestUploadConstructor), (intptr_t)setJSDOMWindowXMLHttpRequestUploadConstructor THUNK_GENERATOR(0) },
+    { "XMLHttpRequestException", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowXMLHttpRequestExceptionConstructor), (intptr_t)setJSDOMWindowXMLHttpRequestExceptionConstructor THUNK_GENERATOR(0) },
+#if ENABLE(XSLT)
+    { "XSLTProcessor", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowXSLTProcessorConstructor), (intptr_t)setJSDOMWindowXSLTProcessorConstructor THUNK_GENERATOR(0) },
+#endif
+    { "MessagePort", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowMessagePortConstructor), (intptr_t)setJSDOMWindowMessagePortConstructor THUNK_GENERATOR(0) },
+    { "MessageChannel", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowMessageChannelConstructor), (intptr_t)setJSDOMWindowMessageChannelConstructor THUNK_GENERATOR(0) },
+    { "Worker", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWorkerConstructor), (intptr_t)setJSDOMWindowWorkerConstructor THUNK_GENERATOR(0) },
+    { "SharedWorker", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSharedWorkerConstructor), (intptr_t)setJSDOMWindowSharedWorkerConstructor THUNK_GENERATOR(0) },
+    { "WebSocket", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowWebSocketConstructor), (intptr_t)setJSDOMWindowWebSocketConstructor THUNK_GENERATOR(0) },
+    { "Plugin", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowPluginConstructor), (intptr_t)setJSDOMWindowPluginConstructor THUNK_GENERATOR(0) },
+    { "PluginArray", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowPluginArrayConstructor), (intptr_t)setJSDOMWindowPluginArrayConstructor THUNK_GENERATOR(0) },
+    { "MimeType", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowMimeTypeConstructor), (intptr_t)setJSDOMWindowMimeTypeConstructor THUNK_GENERATOR(0) },
+    { "MimeTypeArray", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowMimeTypeArrayConstructor), (intptr_t)setJSDOMWindowMimeTypeArrayConstructor THUNK_GENERATOR(0) },
+    { "ClientRect", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowClientRectConstructor), (intptr_t)setJSDOMWindowClientRectConstructor THUNK_GENERATOR(0) },
+    { "ClientRectList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowClientRectListConstructor), (intptr_t)setJSDOMWindowClientRectListConstructor THUNK_GENERATOR(0) },
+    { "Storage", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowStorageConstructor), (intptr_t)setJSDOMWindowStorageConstructor THUNK_GENERATOR(0) },
+    { "StorageEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowStorageEventConstructor), (intptr_t)setJSDOMWindowStorageEventConstructor THUNK_GENERATOR(0) },
+#if ENABLE(VIDEO)
+    { "Audio", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowAudioConstructor), (intptr_t)setJSDOMWindowAudioConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(VIDEO)
+    { "HTMLAudioElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLAudioElementConstructor), (intptr_t)setJSDOMWindowHTMLAudioElementConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(VIDEO)
+    { "HTMLMediaElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLMediaElementConstructor), (intptr_t)setJSDOMWindowHTMLMediaElementConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(VIDEO)
+    { "HTMLVideoElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowHTMLVideoElementConstructor), (intptr_t)setJSDOMWindowHTMLVideoElementConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(VIDEO)
+    { "MediaError", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowMediaErrorConstructor), (intptr_t)setJSDOMWindowMediaErrorConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(VIDEO)
+    { "TimeRanges", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowTimeRangesConstructor), (intptr_t)setJSDOMWindowTimeRangesConstructor THUNK_GENERATOR(0) },
+#endif
+    { "XPathEvaluator", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowXPathEvaluatorConstructor), (intptr_t)setJSDOMWindowXPathEvaluatorConstructor THUNK_GENERATOR(0) },
+    { "XPathResult", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowXPathResultConstructor), (intptr_t)setJSDOMWindowXPathResultConstructor THUNK_GENERATOR(0) },
+    { "XPathException", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowXPathExceptionConstructor), (intptr_t)setJSDOMWindowXPathExceptionConstructor THUNK_GENERATOR(0) },
+    { "SVGAElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAElementConstructor), (intptr_t)setJSDOMWindowSVGAElementConstructor THUNK_GENERATOR(0) },
+    { "SVGAngle", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAngleConstructor), (intptr_t)setJSDOMWindowSVGAngleConstructor THUNK_GENERATOR(0) },
+    { "SVGAnimatedAngle", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAnimatedAngleConstructor), (intptr_t)setJSDOMWindowSVGAnimatedAngleConstructor THUNK_GENERATOR(0) },
+    { "SVGAnimatedBoolean", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAnimatedBooleanConstructor), (intptr_t)setJSDOMWindowSVGAnimatedBooleanConstructor THUNK_GENERATOR(0) },
+    { "SVGAnimatedEnumeration", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAnimatedEnumerationConstructor), (intptr_t)setJSDOMWindowSVGAnimatedEnumerationConstructor THUNK_GENERATOR(0) },
+    { "SVGAnimatedInteger", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAnimatedIntegerConstructor), (intptr_t)setJSDOMWindowSVGAnimatedIntegerConstructor THUNK_GENERATOR(0) },
+    { "SVGAnimatedLength", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAnimatedLengthConstructor), (intptr_t)setJSDOMWindowSVGAnimatedLengthConstructor THUNK_GENERATOR(0) },
+    { "SVGAnimatedLengthList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAnimatedLengthListConstructor), (intptr_t)setJSDOMWindowSVGAnimatedLengthListConstructor THUNK_GENERATOR(0) },
+    { "SVGAnimatedNumber", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAnimatedNumberConstructor), (intptr_t)setJSDOMWindowSVGAnimatedNumberConstructor THUNK_GENERATOR(0) },
+    { "SVGAnimatedNumberList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAnimatedNumberListConstructor), (intptr_t)setJSDOMWindowSVGAnimatedNumberListConstructor THUNK_GENERATOR(0) },
+    { "SVGAnimatedPreserveAspectRatio", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAnimatedPreserveAspectRatioConstructor), (intptr_t)setJSDOMWindowSVGAnimatedPreserveAspectRatioConstructor THUNK_GENERATOR(0) },
+    { "SVGAnimatedRect", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAnimatedRectConstructor), (intptr_t)setJSDOMWindowSVGAnimatedRectConstructor THUNK_GENERATOR(0) },
+    { "SVGAnimatedString", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAnimatedStringConstructor), (intptr_t)setJSDOMWindowSVGAnimatedStringConstructor THUNK_GENERATOR(0) },
+    { "SVGAnimatedTransformList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGAnimatedTransformListConstructor), (intptr_t)setJSDOMWindowSVGAnimatedTransformListConstructor THUNK_GENERATOR(0) },
+    { "SVGCircleElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGCircleElementConstructor), (intptr_t)setJSDOMWindowSVGCircleElementConstructor THUNK_GENERATOR(0) },
+    { "SVGClipPathElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGClipPathElementConstructor), (intptr_t)setJSDOMWindowSVGClipPathElementConstructor THUNK_GENERATOR(0) },
+    { "SVGColor", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGColorConstructor), (intptr_t)setJSDOMWindowSVGColorConstructor THUNK_GENERATOR(0) },
+    { "SVGCursorElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGCursorElementConstructor), (intptr_t)setJSDOMWindowSVGCursorElementConstructor THUNK_GENERATOR(0) },
+    { "SVGDefsElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGDefsElementConstructor), (intptr_t)setJSDOMWindowSVGDefsElementConstructor THUNK_GENERATOR(0) },
+    { "SVGDescElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGDescElementConstructor), (intptr_t)setJSDOMWindowSVGDescElementConstructor THUNK_GENERATOR(0) },
+    { "SVGDocument", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGDocumentConstructor), (intptr_t)setJSDOMWindowSVGDocumentConstructor THUNK_GENERATOR(0) },
+    { "SVGElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGElementConstructor), (intptr_t)setJSDOMWindowSVGElementConstructor THUNK_GENERATOR(0) },
+    { "SVGElementInstance", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGElementInstanceConstructor), (intptr_t)setJSDOMWindowSVGElementInstanceConstructor THUNK_GENERATOR(0) },
+    { "SVGElementInstanceList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGElementInstanceListConstructor), (intptr_t)setJSDOMWindowSVGElementInstanceListConstructor THUNK_GENERATOR(0) },
+    { "SVGEllipseElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGEllipseElementConstructor), (intptr_t)setJSDOMWindowSVGEllipseElementConstructor THUNK_GENERATOR(0) },
+    { "SVGException", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGExceptionConstructor), (intptr_t)setJSDOMWindowSVGExceptionConstructor THUNK_GENERATOR(0) },
+    { "SVGGElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGGElementConstructor), (intptr_t)setJSDOMWindowSVGGElementConstructor THUNK_GENERATOR(0) },
+    { "SVGGradientElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGGradientElementConstructor), (intptr_t)setJSDOMWindowSVGGradientElementConstructor THUNK_GENERATOR(0) },
+    { "SVGImageElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGImageElementConstructor), (intptr_t)setJSDOMWindowSVGImageElementConstructor THUNK_GENERATOR(0) },
+    { "SVGLength", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGLengthConstructor), (intptr_t)setJSDOMWindowSVGLengthConstructor THUNK_GENERATOR(0) },
+    { "SVGLengthList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGLengthListConstructor), (intptr_t)setJSDOMWindowSVGLengthListConstructor THUNK_GENERATOR(0) },
+    { "SVGLinearGradientElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGLinearGradientElementConstructor), (intptr_t)setJSDOMWindowSVGLinearGradientElementConstructor THUNK_GENERATOR(0) },
+    { "SVGLineElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGLineElementConstructor), (intptr_t)setJSDOMWindowSVGLineElementConstructor THUNK_GENERATOR(0) },
+    { "SVGMarkerElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGMarkerElementConstructor), (intptr_t)setJSDOMWindowSVGMarkerElementConstructor THUNK_GENERATOR(0) },
+    { "SVGMaskElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGMaskElementConstructor), (intptr_t)setJSDOMWindowSVGMaskElementConstructor THUNK_GENERATOR(0) },
+    { "SVGMatrix", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGMatrixConstructor), (intptr_t)setJSDOMWindowSVGMatrixConstructor THUNK_GENERATOR(0) },
+    { "SVGMetadataElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGMetadataElementConstructor), (intptr_t)setJSDOMWindowSVGMetadataElementConstructor THUNK_GENERATOR(0) },
+    { "SVGNumber", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGNumberConstructor), (intptr_t)setJSDOMWindowSVGNumberConstructor THUNK_GENERATOR(0) },
+    { "SVGNumberList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGNumberListConstructor), (intptr_t)setJSDOMWindowSVGNumberListConstructor THUNK_GENERATOR(0) },
+    { "SVGPaint", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPaintConstructor), (intptr_t)setJSDOMWindowSVGPaintConstructor THUNK_GENERATOR(0) },
+    { "SVGPathElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathElementConstructor), (intptr_t)setJSDOMWindowSVGPathElementConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSeg", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegConstructor), (intptr_t)setJSDOMWindowSVGPathSegConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegArcAbs", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegArcAbsConstructor), (intptr_t)setJSDOMWindowSVGPathSegArcAbsConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegArcRel", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegArcRelConstructor), (intptr_t)setJSDOMWindowSVGPathSegArcRelConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegClosePath", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegClosePathConstructor), (intptr_t)setJSDOMWindowSVGPathSegClosePathConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegCurvetoCubicAbs", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegCurvetoCubicAbsConstructor), (intptr_t)setJSDOMWindowSVGPathSegCurvetoCubicAbsConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegCurvetoCubicRel", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegCurvetoCubicRelConstructor), (intptr_t)setJSDOMWindowSVGPathSegCurvetoCubicRelConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegCurvetoCubicSmoothAbs", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegCurvetoCubicSmoothAbsConstructor), (intptr_t)setJSDOMWindowSVGPathSegCurvetoCubicSmoothAbsConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegCurvetoCubicSmoothRel", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegCurvetoCubicSmoothRelConstructor), (intptr_t)setJSDOMWindowSVGPathSegCurvetoCubicSmoothRelConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegCurvetoQuadraticAbs", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegCurvetoQuadraticAbsConstructor), (intptr_t)setJSDOMWindowSVGPathSegCurvetoQuadraticAbsConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegCurvetoQuadraticRel", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegCurvetoQuadraticRelConstructor), (intptr_t)setJSDOMWindowSVGPathSegCurvetoQuadraticRelConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegCurvetoQuadraticSmoothAbs", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegCurvetoQuadraticSmoothAbsConstructor), (intptr_t)setJSDOMWindowSVGPathSegCurvetoQuadraticSmoothAbsConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegCurvetoQuadraticSmoothRel", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegCurvetoQuadraticSmoothRelConstructor), (intptr_t)setJSDOMWindowSVGPathSegCurvetoQuadraticSmoothRelConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegLinetoAbs", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegLinetoAbsConstructor), (intptr_t)setJSDOMWindowSVGPathSegLinetoAbsConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegLinetoHorizontalAbs", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegLinetoHorizontalAbsConstructor), (intptr_t)setJSDOMWindowSVGPathSegLinetoHorizontalAbsConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegLinetoHorizontalRel", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegLinetoHorizontalRelConstructor), (intptr_t)setJSDOMWindowSVGPathSegLinetoHorizontalRelConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegLinetoRel", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegLinetoRelConstructor), (intptr_t)setJSDOMWindowSVGPathSegLinetoRelConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegLinetoVerticalAbs", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegLinetoVerticalAbsConstructor), (intptr_t)setJSDOMWindowSVGPathSegLinetoVerticalAbsConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegLinetoVerticalRel", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegLinetoVerticalRelConstructor), (intptr_t)setJSDOMWindowSVGPathSegLinetoVerticalRelConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegListConstructor), (intptr_t)setJSDOMWindowSVGPathSegListConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegMovetoAbs", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegMovetoAbsConstructor), (intptr_t)setJSDOMWindowSVGPathSegMovetoAbsConstructor THUNK_GENERATOR(0) },
+    { "SVGPathSegMovetoRel", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPathSegMovetoRelConstructor), (intptr_t)setJSDOMWindowSVGPathSegMovetoRelConstructor THUNK_GENERATOR(0) },
+    { "SVGPatternElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPatternElementConstructor), (intptr_t)setJSDOMWindowSVGPatternElementConstructor THUNK_GENERATOR(0) },
+    { "SVGPoint", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPointConstructor), (intptr_t)setJSDOMWindowSVGPointConstructor THUNK_GENERATOR(0) },
+    { "SVGPointList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPointListConstructor), (intptr_t)setJSDOMWindowSVGPointListConstructor THUNK_GENERATOR(0) },
+    { "SVGPolygonElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPolygonElementConstructor), (intptr_t)setJSDOMWindowSVGPolygonElementConstructor THUNK_GENERATOR(0) },
+    { "SVGPolylineElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPolylineElementConstructor), (intptr_t)setJSDOMWindowSVGPolylineElementConstructor THUNK_GENERATOR(0) },
+    { "SVGPreserveAspectRatio", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGPreserveAspectRatioConstructor), (intptr_t)setJSDOMWindowSVGPreserveAspectRatioConstructor THUNK_GENERATOR(0) },
+    { "SVGRadialGradientElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGRadialGradientElementConstructor), (intptr_t)setJSDOMWindowSVGRadialGradientElementConstructor THUNK_GENERATOR(0) },
+    { "SVGRect", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGRectConstructor), (intptr_t)setJSDOMWindowSVGRectConstructor THUNK_GENERATOR(0) },
+    { "SVGRectElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGRectElementConstructor), (intptr_t)setJSDOMWindowSVGRectElementConstructor THUNK_GENERATOR(0) },
+    { "SVGRenderingIntent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGRenderingIntentConstructor), (intptr_t)setJSDOMWindowSVGRenderingIntentConstructor THUNK_GENERATOR(0) },
+    { "SVGScriptElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGScriptElementConstructor), (intptr_t)setJSDOMWindowSVGScriptElementConstructor THUNK_GENERATOR(0) },
+    { "SVGStopElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGStopElementConstructor), (intptr_t)setJSDOMWindowSVGStopElementConstructor THUNK_GENERATOR(0) },
+    { "SVGStringList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGStringListConstructor), (intptr_t)setJSDOMWindowSVGStringListConstructor THUNK_GENERATOR(0) },
+    { "SVGStyleElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGStyleElementConstructor), (intptr_t)setJSDOMWindowSVGStyleElementConstructor THUNK_GENERATOR(0) },
+    { "SVGSVGElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGSVGElementConstructor), (intptr_t)setJSDOMWindowSVGSVGElementConstructor THUNK_GENERATOR(0) },
+    { "SVGSwitchElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGSwitchElementConstructor), (intptr_t)setJSDOMWindowSVGSwitchElementConstructor THUNK_GENERATOR(0) },
+    { "SVGSymbolElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGSymbolElementConstructor), (intptr_t)setJSDOMWindowSVGSymbolElementConstructor THUNK_GENERATOR(0) },
+    { "SVGTextContentElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGTextContentElementConstructor), (intptr_t)setJSDOMWindowSVGTextContentElementConstructor THUNK_GENERATOR(0) },
+    { "SVGTextElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGTextElementConstructor), (intptr_t)setJSDOMWindowSVGTextElementConstructor THUNK_GENERATOR(0) },
+    { "SVGTextPathElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGTextPathElementConstructor), (intptr_t)setJSDOMWindowSVGTextPathElementConstructor THUNK_GENERATOR(0) },
+    { "SVGTextPositioningElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGTextPositioningElementConstructor), (intptr_t)setJSDOMWindowSVGTextPositioningElementConstructor THUNK_GENERATOR(0) },
+    { "SVGTitleElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGTitleElementConstructor), (intptr_t)setJSDOMWindowSVGTitleElementConstructor THUNK_GENERATOR(0) },
+    { "SVGTransform", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGTransformConstructor), (intptr_t)setJSDOMWindowSVGTransformConstructor THUNK_GENERATOR(0) },
+    { "SVGTransformList", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGTransformListConstructor), (intptr_t)setJSDOMWindowSVGTransformListConstructor THUNK_GENERATOR(0) },
+    { "SVGTRefElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGTRefElementConstructor), (intptr_t)setJSDOMWindowSVGTRefElementConstructor THUNK_GENERATOR(0) },
+    { "SVGTSpanElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGTSpanElementConstructor), (intptr_t)setJSDOMWindowSVGTSpanElementConstructor THUNK_GENERATOR(0) },
+    { "SVGUnitTypes", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGUnitTypesConstructor), (intptr_t)setJSDOMWindowSVGUnitTypesConstructor THUNK_GENERATOR(0) },
+    { "SVGUseElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGUseElementConstructor), (intptr_t)setJSDOMWindowSVGUseElementConstructor THUNK_GENERATOR(0) },
+    { "SVGViewElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGViewElementConstructor), (intptr_t)setJSDOMWindowSVGViewElementConstructor THUNK_GENERATOR(0) },
+    { "SVGZoomEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGZoomEventConstructor), (intptr_t)setJSDOMWindowSVGZoomEventConstructor THUNK_GENERATOR(0) },
+    { "SVGComponentTransferFunctionElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGComponentTransferFunctionElementConstructor), (intptr_t)setJSDOMWindowSVGComponentTransferFunctionElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEBlendElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEBlendElementConstructor), (intptr_t)setJSDOMWindowSVGFEBlendElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEColorMatrixElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEColorMatrixElementConstructor), (intptr_t)setJSDOMWindowSVGFEColorMatrixElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEComponentTransferElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEComponentTransferElementConstructor), (intptr_t)setJSDOMWindowSVGFEComponentTransferElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFECompositeElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFECompositeElementConstructor), (intptr_t)setJSDOMWindowSVGFECompositeElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEConvolveMatrixElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEConvolveMatrixElementConstructor), (intptr_t)setJSDOMWindowSVGFEConvolveMatrixElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEDiffuseLightingElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEDiffuseLightingElementConstructor), (intptr_t)setJSDOMWindowSVGFEDiffuseLightingElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEDisplacementMapElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEDisplacementMapElementConstructor), (intptr_t)setJSDOMWindowSVGFEDisplacementMapElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEDistantLightElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEDistantLightElementConstructor), (intptr_t)setJSDOMWindowSVGFEDistantLightElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEFloodElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEFloodElementConstructor), (intptr_t)setJSDOMWindowSVGFEFloodElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEFuncAElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEFuncAElementConstructor), (intptr_t)setJSDOMWindowSVGFEFuncAElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEFuncBElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEFuncBElementConstructor), (intptr_t)setJSDOMWindowSVGFEFuncBElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEFuncGElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEFuncGElementConstructor), (intptr_t)setJSDOMWindowSVGFEFuncGElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEFuncRElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEFuncRElementConstructor), (intptr_t)setJSDOMWindowSVGFEFuncRElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEGaussianBlurElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEGaussianBlurElementConstructor), (intptr_t)setJSDOMWindowSVGFEGaussianBlurElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEImageElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEImageElementConstructor), (intptr_t)setJSDOMWindowSVGFEImageElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEMergeElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEMergeElementConstructor), (intptr_t)setJSDOMWindowSVGFEMergeElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEMergeNodeElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEMergeNodeElementConstructor), (intptr_t)setJSDOMWindowSVGFEMergeNodeElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEMorphologyElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEMorphologyElementConstructor), (intptr_t)setJSDOMWindowSVGFEMorphologyElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEOffsetElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEOffsetElementConstructor), (intptr_t)setJSDOMWindowSVGFEOffsetElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFEPointLightElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFEPointLightElementConstructor), (intptr_t)setJSDOMWindowSVGFEPointLightElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFESpecularLightingElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFESpecularLightingElementConstructor), (intptr_t)setJSDOMWindowSVGFESpecularLightingElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFESpotLightElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFESpotLightElementConstructor), (intptr_t)setJSDOMWindowSVGFESpotLightElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFETileElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFETileElementConstructor), (intptr_t)setJSDOMWindowSVGFETileElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFETurbulenceElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFETurbulenceElementConstructor), (intptr_t)setJSDOMWindowSVGFETurbulenceElementConstructor THUNK_GENERATOR(0) },
+    { "SVGFilterElement", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSVGFilterElementConstructor), (intptr_t)setJSDOMWindowSVGFilterElementConstructor THUNK_GENERATOR(0) },
+    { "SQLException", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowSQLExceptionConstructor), (intptr_t)setJSDOMWindowSQLExceptionConstructor THUNK_GENERATOR(0) },
+#if ENABLE(TOUCH_EVENTS)
+    { "TouchEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowTouchEventConstructor), (intptr_t)setJSDOMWindowTouchEventConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(TRANSFORMACTION_EVENTS)
+    { "TransformActionEvent", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowTransformActionEventConstructor), (intptr_t)setJSDOMWindowTransformActionEventConstructor THUNK_GENERATOR(0) },
+#endif
+    { "FormData", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowFormDataConstructor), (intptr_t)setJSDOMWindowFormDataConstructor THUNK_GENERATOR(0) },
+#if ENABLE(FILE_READER) || ENABLE(FILE_WRITER)
+    { "FileError", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowFileErrorConstructor), (intptr_t)setJSDOMWindowFileErrorConstructor THUNK_GENERATOR(0) },
+#endif
+#if ENABLE(FILE_READER)
+    { "FileReader", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowFileReaderConstructor), (intptr_t)setJSDOMWindowFileReaderConstructor THUNK_GENERATOR(0) },
+#endif
+    { "BlobBuilder", DontDelete, (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsDOMWindowBlobBuilderConstructor), (intptr_t)setJSDOMWindowBlobBuilderConstructor THUNK_GENERATOR(0) },
+    { 0, 0, 0, 0 THUNK_GENERATOR(0) }
+};
+
+#undef THUNK_GENERATOR
+static JSC_CONST_HASHTABLE HashTable JSDOMWindowTable = { 1119, 1023, JSDOMWindowTableValues, 0 };
+/* Hash table for prototype */
+#if ENABLE(JIT)
+#define THUNK_GENERATOR(generator) , generator
+#else
+#define THUNK_GENERATOR(generator)
+#endif
+
+static const HashTableValue JSDOMWindowPrototypeTableValues[37] =
+{
+    { "getSelection", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionGetSelection), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "focus", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionFocus), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "blur", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionBlur), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "close", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionClose), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "print", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionPrint), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "stop", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionStop), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "open", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionOpen), (intptr_t)3 THUNK_GENERATOR(0) },
+    { "showModalDialog", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionShowModalDialog), (intptr_t)3 THUNK_GENERATOR(0) },
+    { "alert", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionAlert), (intptr_t)1 THUNK_GENERATOR(0) },
+    { "confirm", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionConfirm), (intptr_t)1 THUNK_GENERATOR(0) },
+    { "prompt", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionPrompt), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "find", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionFind), (intptr_t)7 THUNK_GENERATOR(0) },
+    { "scrollBy", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionScrollBy), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "scrollTo", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionScrollTo), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "scroll", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionScroll), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "moveBy", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionMoveBy), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "moveTo", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionMoveTo), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "resizeBy", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionResizeBy), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "resizeTo", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionResizeTo), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "getComputedStyle", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionGetComputedStyle), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "getMatchedCSSRules", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionGetMatchedCSSRules), (intptr_t)3 THUNK_GENERATOR(0) },
+    { "webkitConvertPointFromPageToNode", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionWebkitConvertPointFromPageToNode), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "webkitConvertPointFromNodeToPage", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionWebkitConvertPointFromNodeToPage), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "openDatabase", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionOpenDatabase), (intptr_t)5 THUNK_GENERATOR(0) },
+    { "postMessage", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionPostMessage), (intptr_t)3 THUNK_GENERATOR(0) },
+    { "setTimeout", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionSetTimeout), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "clearTimeout", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionClearTimeout), (intptr_t)1 THUNK_GENERATOR(0) },
+    { "setInterval", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionSetInterval), (intptr_t)2 THUNK_GENERATOR(0) },
+    { "clearInterval", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionClearInterval), (intptr_t)1 THUNK_GENERATOR(0) },
+    { "atob", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionAtob), (intptr_t)1 THUNK_GENERATOR(0) },
+    { "btoa", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionBtoa), (intptr_t)1 THUNK_GENERATOR(0) },
+    { "addEventListener", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionAddEventListener), (intptr_t)3 THUNK_GENERATOR(0) },
+    { "removeEventListener", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionRemoveEventListener), (intptr_t)3 THUNK_GENERATOR(0) },
+    { "dispatchEvent", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionDispatchEvent), (intptr_t)1 THUNK_GENERATOR(0) },
+    { "captureEvents", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionCaptureEvents), (intptr_t)0 THUNK_GENERATOR(0) },
+    { "releaseEvents", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsDOMWindowPrototypeFunctionReleaseEvents), (intptr_t)0 THUNK_GENERATOR(0) },
+    { 0, 0, 0, 0 THUNK_GENERATOR(0) }
+};
+
+#undef THUNK_GENERATOR
+static JSC_CONST_HASHTABLE HashTable JSDOMWindowPrototypeTable = { 134, 127, JSDOMWindowPrototypeTableValues, 0 };
+const ClassInfo JSDOMWindowPrototype::s_info = { "DOMWindowPrototype", 0, &JSDOMWindowPrototypeTable, 0 };
+
+void* JSDOMWindowPrototype::operator new(size_t size)
+{
+    return JSDOMWindow::commonJSGlobalData()->heap.allocate(size);
+}
+
+bool JSDOMWindowPrototype::getOwnPropertySlot(ExecState* exec, const Identifier& propertyName, PropertySlot& slot)
+{
+    return getStaticFunctionSlot<JSObject>(exec, &JSDOMWindowPrototypeTable, this, propertyName, slot);
+}
+
+bool JSDOMWindowPrototype::getOwnPropertyDescriptor(ExecState* exec, const Identifier& propertyName, PropertyDescriptor& descriptor)
+{
+    return getStaticFunctionDescriptor<JSObject>(exec, &JSDOMWindowPrototypeTable, this, propertyName, descriptor);
+}
+
+const ClassInfo JSDOMWindow::s_info = { "DOMWindow", &JSDOMWindowBase::s_info, &JSDOMWindowTable, 0 };
+
+JSDOMWindow::JSDOMWindow(NonNullPassRefPtr<Structure> structure, PassRefPtr<DOMWindow> impl, JSDOMWindowShell* shell)
+    : JSDOMWindowBase(structure, impl, shell)
+{
+}
+
+JSDOMWindow::~JSDOMWindow()
+{
+    impl()->invalidateJSEventListeners(this);
+}
+
+JSValue jsDOMWindowScreen(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->screen()));
+    return result;
+}
+
+JSValue jsDOMWindowHistory(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    return castedThis->history(exec);
+}
+
+JSValue jsDOMWindowLocationbar(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->locationbar()));
+    return result;
+}
+
+JSValue jsDOMWindowMenubar(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->menubar()));
+    return result;
+}
+
+JSValue jsDOMWindowPersonalbar(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->personalbar()));
+    return result;
+}
+
+JSValue jsDOMWindowScrollbars(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->scrollbars()));
+    return result;
+}
+
+JSValue jsDOMWindowStatusbar(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->statusbar()));
+    return result;
+}
+
+JSValue jsDOMWindowToolbar(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->toolbar()));
+    return result;
+}
+
+JSValue jsDOMWindowNavigator(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->navigator()));
+    return result;
+}
+
+JSValue jsDOMWindowClientInformation(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->clientInformation()));
+    return result;
+}
+
+JSValue jsDOMWindowLocation(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    return castedThis->location(exec);
+}
+
+JSValue jsDOMWindowEvent(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->event(exec);
+}
+
+JSValue jsDOMWindowCrypto(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->crypto(exec);
+}
+
+JSValue jsDOMWindowFrameElement(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    return checkNodeSecurity(exec, imp->frameElement()) ? toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->frameElement())) : jsUndefined();
+}
+
+JSValue jsDOMWindowOffscreenBuffering(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsBoolean(imp->offscreenBuffering());
+    return result;
+}
+
+JSValue jsDOMWindowOuterHeight(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->outerHeight());
+    return result;
+}
+
+JSValue jsDOMWindowOuterWidth(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->outerWidth());
+    return result;
+}
+
+JSValue jsDOMWindowInnerHeight(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->innerHeight());
+    return result;
+}
+
+JSValue jsDOMWindowInnerWidth(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->innerWidth());
+    return result;
+}
+
+JSValue jsDOMWindowScreenX(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->screenX());
+    return result;
+}
+
+JSValue jsDOMWindowScreenY(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->screenY());
+    return result;
+}
+
+JSValue jsDOMWindowScreenLeft(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->screenLeft());
+    return result;
+}
+
+JSValue jsDOMWindowScreenTop(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->screenTop());
+    return result;
+}
+
+JSValue jsDOMWindowScrollX(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->scrollX());
+    return result;
+}
+
+JSValue jsDOMWindowScrollY(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->scrollY());
+    return result;
+}
+
+JSValue jsDOMWindowPageXOffset(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->pageXOffset());
+    return result;
+}
+
+JSValue jsDOMWindowPageYOffset(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->pageYOffset());
+    return result;
+}
+
+JSValue jsDOMWindowClosed(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsBoolean(imp->closed());
+    return result;
+}
+
+JSValue jsDOMWindowLength(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->length());
+    return result;
+}
+
+JSValue jsDOMWindowName(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsString(exec, imp->name());
+    return result;
+}
+
+JSValue jsDOMWindowStatus(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsString(exec, imp->status());
+    return result;
+}
+
+JSValue jsDOMWindowDefaultStatus(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsString(exec, imp->defaultStatus());
+    return result;
+}
+
+JSValue jsDOMWindowDefaultstatus(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsString(exec, imp->defaultstatus());
+    return result;
+}
+
+JSValue jsDOMWindowSelf(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->self()));
+    return result;
+}
+
+JSValue jsDOMWindowWindow(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->window()));
+    return result;
+}
+
+JSValue jsDOMWindowFrames(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->frames()));
+    return result;
+}
+
+JSValue jsDOMWindowOpener(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->opener()));
+    return result;
+}
+
+JSValue jsDOMWindowParent(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->parent()));
+    return result;
+}
+
+JSValue jsDOMWindowTop(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->top()));
+    return result;
+}
+
+JSValue jsDOMWindowDocument(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->document()));
+    return result;
+}
+
+JSValue jsDOMWindowStyleMedia(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->styleMedia()));
+    return result;
+}
+
+JSValue jsDOMWindowDevicePixelRatio(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = jsNumber(exec, imp->devicePixelRatio());
+    return result;
+}
+
+JSValue jsDOMWindowApplicationCache(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->applicationCache()));
+    return result;
+}
+
+JSValue jsDOMWindowSessionStorage(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    ExceptionCode ec = 0;
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSC::JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->sessionStorage(ec)));
+    setDOMException(exec, ec);
+    return result;
+}
+
+JSValue jsDOMWindowLocalStorage(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    ExceptionCode ec = 0;
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSC::JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->localStorage(ec)));
+    setDOMException(exec, ec);
+    return result;
+}
+
+JSValue jsDOMWindowWebkitNotifications(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->webkitNotifications()));
+    return result;
+}
+
+JSValue jsDOMWindowConsole(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->console()));
+    return result;
+}
+
+JSValue jsDOMWindowOnabort(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onabort()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnbeforeunload(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onbeforeunload()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnblur(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onblur()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOncanplay(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->oncanplay()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOncanplaythrough(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->oncanplaythrough()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnchange(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onchange()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnclick(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onclick()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOncontextmenu(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->oncontextmenu()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOndblclick(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ondblclick()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOndrag(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ondrag()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOndragend(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ondragend()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOndragenter(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ondragenter()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOndragleave(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ondragleave()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOndragover(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ondragover()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOndragstart(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ondragstart()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOndrop(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ondrop()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOndurationchange(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ondurationchange()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnemptied(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onemptied()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnended(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onended()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnerror(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onerror()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnfocus(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onfocus()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnhashchange(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onhashchange()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOninput(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->oninput()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOninvalid(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->oninvalid()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnkeydown(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onkeydown()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnkeypress(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onkeypress()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnkeyup(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onkeyup()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnload(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onload()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnloadeddata(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onloadeddata()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnloadedmetadata(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onloadedmetadata()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnloadstart(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onloadstart()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnmessage(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onmessage()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnmousedown(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onmousedown()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnmousemove(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onmousemove()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnmouseout(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onmouseout()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnmouseover(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onmouseover()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnmouseup(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onmouseup()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnmousewheel(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onmousewheel()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnoffline(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onoffline()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnonline(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ononline()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnpagehide(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onpagehide()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnpageshow(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onpageshow()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnpause(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onpause()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnplay(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onplay()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnplaying(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onplaying()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnpopstate(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onpopstate()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnprogress(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onprogress()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnratechange(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onratechange()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnresize(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onresize()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnscroll(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onscroll()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnseeked(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onseeked()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnseeking(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onseeking()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnselect(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onselect()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnstalled(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onstalled()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnstorage(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onstorage()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnsubmit(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onsubmit()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnsuspend(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onsuspend()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOntimeupdate(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ontimeupdate()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnunload(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onunload()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnvolumechange(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onvolumechange()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnwaiting(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onwaiting()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnreset(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onreset()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnsearch(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onsearch()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnwebkitanimationend(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onwebkitanimationend()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnwebkitanimationiteration(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onwebkitanimationiteration()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnwebkitanimationstart(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onwebkitanimationstart()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+JSValue jsDOMWindowOnwebkittransitionend(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->onwebkittransitionend()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+
+#if ENABLE(TOUCH_EVENTS)
+JSValue jsDOMWindowOntouchstart(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ontouchstart()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+#endif
+
+#if ENABLE(TOUCH_EVENTS)
+JSValue jsDOMWindowOntouchmove(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ontouchmove()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+#endif
+
+#if ENABLE(TOUCH_EVENTS)
+JSValue jsDOMWindowOntouchend(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ontouchend()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+#endif
+
+#if ENABLE(TOUCH_EVENTS)
+JSValue jsDOMWindowOntouchcancel(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ontouchcancel()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+#endif
+
+#if ENABLE(TRANSFORMACTION_EVENTS)
+JSValue jsDOMWindowOntransformactionstart(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ontransformactionstart()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+#endif
+
+#if ENABLE(TRANSFORMACTION_EVENTS)
+JSValue jsDOMWindowOntransformactionupdate(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ontransformactionupdate()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+#endif
+
+#if ENABLE(TRANSFORMACTION_EVENTS)
+JSValue jsDOMWindowOntransformactionend(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ontransformactionend()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+#endif
+
+#if ENABLE(DEVICE_ORIENTATION)
+JSValue jsDOMWindowDeviceOrientationEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDeviceOrientationEvent::getConstructor(exec, castedThis);
+}
+#endif
+
+#if ENABLE(DEVICE_ORIENTATION)
+JSValue jsDOMWindowOndeviceorientation(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (EventListener* listener = imp->ondeviceorientation()) {
+        if (const JSEventListener* jsListener = JSEventListener::cast(listener)) {
+            if (JSObject* jsFunction = jsListener->jsFunction(imp->scriptExecutionContext()))
+                return jsFunction;
+        }
+    }
+    return jsNull();
+}
+#endif
+
+JSValue jsDOMWindowStyleSheetConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSStyleSheet::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSStyleSheetConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSStyleSheet::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSValueConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSValue::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSPrimitiveValueConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSPrimitiveValue::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSValueListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSValueList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowWebKitCSSTransformValueConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSWebKitCSSTransformValue::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSRuleConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSRule::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSCharsetRuleConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSCharsetRule::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSFontFaceRuleConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSFontFaceRule::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSImportRuleConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSImportRule::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSMediaRuleConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSMediaRule::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSPageRuleConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSPageRule::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSStyleRuleConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSStyleRule::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSVariablesRuleConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSVariablesRule::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSVariablesDeclarationConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSVariablesDeclaration::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSStyleDeclarationConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSStyleDeclaration::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowMediaListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSMediaList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCounterConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCounter::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCSSRuleListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCSSRuleList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowRectConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSRect::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowRGBColorConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSRGBColor::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowStyleSheetListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSStyleSheetList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowDOMExceptionConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDOMCoreException::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowDOMStringListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDOMStringList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowDOMImplementationConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDOMImplementation::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowDocumentFragmentConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDocumentFragment::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowDocumentConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDocument::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowNodeConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSNode::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowNodeListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSNodeList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowNamedNodeMapConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSNamedNodeMap::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCharacterDataConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCharacterData::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowAttrConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSAttr::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowTextConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSText::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCommentConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSComment::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCDATASectionConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCDATASection::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowDocumentTypeConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDocumentType::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowNotationConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSNotation::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowEntityConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSEntity::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowEntityReferenceConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSEntityReference::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowProcessingInstructionConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSProcessingInstruction::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLDocumentConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLDocument::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLAnchorElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLAnchorElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLAppletElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLAppletElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLAreaElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLAreaElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLBRElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLBRElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLBaseElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLBaseElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLBaseFontElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLBaseFontElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLBlockquoteElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLBlockquoteElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLBodyElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLBodyElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLButtonElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLButtonElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLCanvasElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLCanvasElement::getConstructor(exec, castedThis);
+}
+
+#if ENABLE(DATAGRID)
+JSValue jsDOMWindowHTMLDataGridElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLDataGridElement::getConstructor(exec, castedThis);
+}
+#endif
+
+#if ENABLE(DATAGRID)
+JSValue jsDOMWindowHTMLDataGridCellElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLDataGridCellElement::getConstructor(exec, castedThis);
+}
+#endif
+
+#if ENABLE(DATAGRID)
+JSValue jsDOMWindowHTMLDataGridColElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLDataGridColElement::getConstructor(exec, castedThis);
+}
+#endif
+
+JSValue jsDOMWindowHTMLDListElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLDListElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLDirectoryElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLDirectoryElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLDivElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLDivElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLEmbedElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLEmbedElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLFieldSetElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLFieldSetElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLFontElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLFontElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLFormElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLFormElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLFrameElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLFrameElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLFrameSetElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLFrameSetElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLHRElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLHRElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLHeadElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLHeadElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLHeadingElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLHeadingElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLHtmlElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLHtmlElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLIFrameElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLIFrameElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLImageElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLImageElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLInputElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLInputElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLIsIndexElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLIsIndexElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLLIElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLLIElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLLabelElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLLabelElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLLegendElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLLegendElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLLinkElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLLinkElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLMapElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLMapElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLMarqueeElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLMarqueeElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLMenuElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLMenuElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLMetaElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLMetaElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLMeterElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLMeterElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLModElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLModElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLOListElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLOListElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLObjectElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLObjectElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLOptGroupElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLOptGroupElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLOptionElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLOptionElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLParagraphElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLParagraphElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLParamElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLParamElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLPreElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLPreElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLProgressElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLProgressElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLQuoteElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLQuoteElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLScriptElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLScriptElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLSelectElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLSelectElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLStyleElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLStyleElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLTableCaptionElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLTableCaptionElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLTableCellElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLTableCellElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLTableColElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLTableColElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLTableElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLTableElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLTableRowElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLTableRowElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLTableSectionElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLTableSectionElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLTextAreaElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLTextAreaElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLTitleElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLTitleElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLUListElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLUListElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLCollectionConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLCollection::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowHTMLAllCollectionConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLAllCollection::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowImageConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->image(exec);
+}
+
+JSValue jsDOMWindowOptionConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->option(exec);
+}
+
+JSValue jsDOMWindowCanvasPatternConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCanvasPattern::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCanvasGradientConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCanvasGradient::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowCanvasRenderingContext2DConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSCanvasRenderingContext2D::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowImageDataConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSImageData::getConstructor(exec, castedThis);
+}
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowWebGLRenderingContextConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSWebGLRenderingContext::getConstructor(exec, castedThis);
+}
+#endif
+
+JSValue jsDOMWindowTextMetricsConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSTextMetrics::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowDOMStringMapConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDOMStringMap::getConstructor(exec, castedThis);
+}
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowArrayBufferConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->arrayBuffer(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowInt8ArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->int8Array(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowUint8ArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->uint8Array(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowInt16ArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->int16Array(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowUint16ArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->uint16Array(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowInt32ArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->int32Array(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowUint32ArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->uint32Array(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowFloat32ArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->float32Array(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowWebGLArrayBufferConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->webGLArrayBuffer(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowWebGLByteArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->webGLByteArray(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowWebGLUnsignedByteArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->webGLUnsignedByteArray(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowWebGLShortArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->webGLShortArray(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowWebGLUnsignedShortArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->webGLUnsignedShortArray(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowWebGLIntArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->webGLIntArray(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowWebGLUnsignedIntArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->webGLUnsignedIntArray(exec);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+JSValue jsDOMWindowWebGLFloatArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->webGLFloatArray(exec);
+}
+#endif
+
+JSValue jsDOMWindowEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowBeforeLoadEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSBeforeLoadEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowKeyboardEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSKeyboardEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowMouseEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSMouseEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowMutationEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSMutationEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowOverflowEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSOverflowEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowPageTransitionEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSPageTransitionEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowProgressEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSProgressEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowTextEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSTextEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowUIEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSUIEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowWebKitAnimationEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSWebKitAnimationEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowWebKitTransitionEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSWebKitTransitionEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowWheelEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSWheelEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowMessageEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSMessageEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowEventExceptionConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSEventException::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowWebKitCSSKeyframeRuleConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSWebKitCSSKeyframeRule::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowWebKitCSSKeyframesRuleConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSWebKitCSSKeyframesRule::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowWebKitCSSMatrixConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->webKitCSSMatrix(exec);
+}
+
+JSValue jsDOMWindowWebKitPointConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->webKitPoint(exec);
+}
+
+JSValue jsDOMWindowClipboardConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSClipboard::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowFileConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSFile::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowFileListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSFileList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowBlobConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSBlob::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowNodeFilterConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSNodeFilter::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowRangeConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSRange::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowRangeExceptionConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSRangeException::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowEventSourceConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->eventSource(exec);
+}
+
+JSValue jsDOMWindowXMLDocumentConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDocument::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowDOMParserConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDOMParser::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowXMLSerializerConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSXMLSerializer::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowXMLHttpRequestConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->xmlHttpRequest(exec);
+}
+
+JSValue jsDOMWindowXMLHttpRequestUploadConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSXMLHttpRequestUpload::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowXMLHttpRequestExceptionConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSXMLHttpRequestException::getConstructor(exec, castedThis);
+}
+
+#if ENABLE(XSLT)
+JSValue jsDOMWindowXSLTProcessorConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->xsltProcessor(exec);
+}
+#endif
+
+JSValue jsDOMWindowMessagePortConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSMessagePort::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowMessageChannelConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->messageChannel(exec);
+}
+
+JSValue jsDOMWindowWorkerConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->worker(exec);
+}
+
+JSValue jsDOMWindowSharedWorkerConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->sharedWorker(exec);
+}
+
+JSValue jsDOMWindowWebSocketConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->webSocket(exec);
+}
+
+JSValue jsDOMWindowPluginConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDOMPlugin::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowPluginArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDOMPluginArray::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowMimeTypeConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDOMMimeType::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowMimeTypeArrayConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDOMMimeTypeArray::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowClientRectConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSClientRect::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowClientRectListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSClientRectList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowStorageConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSStorage::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowStorageEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSStorageEvent::getConstructor(exec, castedThis);
+}
+
+#if ENABLE(VIDEO)
+JSValue jsDOMWindowAudioConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return castedThis->audio(exec);
+}
+#endif
+
+#if ENABLE(VIDEO)
+JSValue jsDOMWindowHTMLAudioElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLAudioElement::getConstructor(exec, castedThis);
+}
+#endif
+
+#if ENABLE(VIDEO)
+JSValue jsDOMWindowHTMLMediaElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLMediaElement::getConstructor(exec, castedThis);
+}
+#endif
+
+#if ENABLE(VIDEO)
+JSValue jsDOMWindowHTMLVideoElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSHTMLVideoElement::getConstructor(exec, castedThis);
+}
+#endif
+
+#if ENABLE(VIDEO)
+JSValue jsDOMWindowMediaErrorConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSMediaError::getConstructor(exec, castedThis);
+}
+#endif
+
+#if ENABLE(VIDEO)
+JSValue jsDOMWindowTimeRangesConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSTimeRanges::getConstructor(exec, castedThis);
+}
+#endif
+
+JSValue jsDOMWindowXPathEvaluatorConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSXPathEvaluator::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowXPathResultConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSXPathResult::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowXPathExceptionConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSXPathException::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAngleConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAngle::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAnimatedAngleConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAnimatedAngle::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAnimatedBooleanConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAnimatedBoolean::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAnimatedEnumerationConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAnimatedEnumeration::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAnimatedIntegerConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAnimatedInteger::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAnimatedLengthConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAnimatedLength::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAnimatedLengthListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAnimatedLengthList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAnimatedNumberConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAnimatedNumber::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAnimatedNumberListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAnimatedNumberList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAnimatedPreserveAspectRatioConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAnimatedPreserveAspectRatio::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAnimatedRectConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAnimatedRect::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAnimatedStringConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAnimatedString::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGAnimatedTransformListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGAnimatedTransformList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGCircleElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGCircleElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGClipPathElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGClipPathElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGColorConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGColor::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGCursorElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGCursorElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGDefsElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGDefsElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGDescElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGDescElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGDocumentConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGDocument::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGElementInstanceConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGElementInstance::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGElementInstanceListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGElementInstanceList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGEllipseElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGEllipseElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGExceptionConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGException::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGGElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGGElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGGradientElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGGradientElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGImageElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGImageElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGLengthConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGLength::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGLengthListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGLengthList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGLinearGradientElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGLinearGradientElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGLineElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGLineElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGMarkerElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGMarkerElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGMaskElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGMaskElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGMatrixConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGMatrix::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGMetadataElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGMetadataElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGNumberConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGNumber::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGNumberListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGNumberList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPaintConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPaint::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSeg::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegArcAbsConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegArcAbs::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegArcRelConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegArcRel::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegClosePathConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegClosePath::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegCurvetoCubicAbsConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegCurvetoCubicAbs::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegCurvetoCubicRelConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegCurvetoCubicRel::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegCurvetoCubicSmoothAbsConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegCurvetoCubicSmoothAbs::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegCurvetoCubicSmoothRelConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegCurvetoCubicSmoothRel::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegCurvetoQuadraticAbsConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegCurvetoQuadraticAbs::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegCurvetoQuadraticRelConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegCurvetoQuadraticRel::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegCurvetoQuadraticSmoothAbsConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegCurvetoQuadraticSmoothAbs::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegCurvetoQuadraticSmoothRelConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegCurvetoQuadraticSmoothRel::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegLinetoAbsConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegLinetoAbs::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegLinetoHorizontalAbsConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegLinetoHorizontalAbs::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegLinetoHorizontalRelConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegLinetoHorizontalRel::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegLinetoRelConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegLinetoRel::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegLinetoVerticalAbsConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegLinetoVerticalAbs::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegLinetoVerticalRelConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegLinetoVerticalRel::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegMovetoAbsConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegMovetoAbs::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPathSegMovetoRelConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPathSegMovetoRel::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPatternElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPatternElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPointConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPoint::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPointListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPointList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPolygonElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPolygonElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPolylineElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPolylineElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGPreserveAspectRatioConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGPreserveAspectRatio::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGRadialGradientElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGRadialGradientElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGRectConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGRect::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGRectElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGRectElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGRenderingIntentConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGRenderingIntent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGScriptElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGScriptElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGStopElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGStopElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGStringListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGStringList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGStyleElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGStyleElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGSVGElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGSVGElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGSwitchElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGSwitchElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGSymbolElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGSymbolElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGTextContentElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGTextContentElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGTextElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGTextElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGTextPathElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGTextPathElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGTextPositioningElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGTextPositioningElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGTitleElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGTitleElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGTransformConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGTransform::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGTransformListConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGTransformList::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGTRefElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGTRefElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGTSpanElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGTSpanElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGUnitTypesConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGUnitTypes::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGUseElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGUseElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGViewElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGViewElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGZoomEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGZoomEvent::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGComponentTransferFunctionElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGComponentTransferFunctionElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEBlendElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEBlendElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEColorMatrixElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEColorMatrixElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEComponentTransferElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEComponentTransferElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFECompositeElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFECompositeElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEConvolveMatrixElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEConvolveMatrixElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEDiffuseLightingElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEDiffuseLightingElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEDisplacementMapElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEDisplacementMapElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEDistantLightElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEDistantLightElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEFloodElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEFloodElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEFuncAElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEFuncAElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEFuncBElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEFuncBElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEFuncGElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEFuncGElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEFuncRElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEFuncRElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEGaussianBlurElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEGaussianBlurElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEImageElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEImageElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEMergeElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEMergeElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEMergeNodeElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEMergeNodeElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEMorphologyElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEMorphologyElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEOffsetElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEOffsetElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFEPointLightElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFEPointLightElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFESpecularLightingElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFESpecularLightingElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFESpotLightElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFESpotLightElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFETileElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFETileElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFETurbulenceElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFETurbulenceElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSVGFilterElementConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSVGFilterElement::getConstructor(exec, castedThis);
+}
+
+JSValue jsDOMWindowSQLExceptionConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSSQLException::getConstructor(exec, castedThis);
+}
+
+#if ENABLE(TOUCH_EVENTS)
+JSValue jsDOMWindowTouchEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSTouchEvent::getConstructor(exec, castedThis);
+}
+#endif
+
+#if ENABLE(TRANSFORMACTION_EVENTS)
+JSValue jsDOMWindowTransformActionEventConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSTransformActionEvent::getConstructor(exec, castedThis);
+}
+#endif
+
+JSValue jsDOMWindowFormDataConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSDOMFormData::getConstructor(exec, castedThis);
+}
+
+#if ENABLE(FILE_READER) || ENABLE(FILE_WRITER)
+JSValue jsDOMWindowFileErrorConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSFileError::getConstructor(exec, castedThis);
+}
+#endif
+
+#if ENABLE(FILE_READER)
+JSValue jsDOMWindowFileReaderConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSFileReader::getConstructor(exec, castedThis);
+}
+#endif
+
+JSValue jsDOMWindowBlobBuilderConstructor(ExecState* exec, JSValue slotBase, const Identifier&)
+{
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(asObject(slotBase));
+    if (!castedThis->allowsAccessFrom(exec))
+        return jsUndefined();
+    return JSBlobBuilder::getConstructor(exec, castedThis);
+}
+
+void setJSDOMWindowLocationbar(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "locationbar"), value);
+}
+
+void setJSDOMWindowMenubar(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "menubar"), value);
+}
+
+void setJSDOMWindowPersonalbar(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "personalbar"), value);
+}
+
+void setJSDOMWindowScrollbars(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "scrollbars"), value);
+}
+
+void setJSDOMWindowStatusbar(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "statusbar"), value);
+}
+
+void setJSDOMWindowToolbar(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "toolbar"), value);
+}
+
+void setJSDOMWindowNavigator(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "navigator"), value);
+}
+
+void setJSDOMWindowClientInformation(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "clientInformation"), value);
+}
+
+void setJSDOMWindowLocation(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    static_cast<JSDOMWindow*>(thisObject)->setLocation(exec, value);
+}
+
+void setJSDOMWindowEvent(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "event"), value);
+}
+
+void setJSDOMWindowOffscreenBuffering(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "offscreenBuffering"), value);
+}
+
+void setJSDOMWindowOuterHeight(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "outerHeight"), value);
+}
+
+void setJSDOMWindowOuterWidth(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "outerWidth"), value);
+}
+
+void setJSDOMWindowInnerHeight(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "innerHeight"), value);
+}
+
+void setJSDOMWindowInnerWidth(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "innerWidth"), value);
+}
+
+void setJSDOMWindowScreenX(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "screenX"), value);
+}
+
+void setJSDOMWindowScreenY(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "screenY"), value);
+}
+
+void setJSDOMWindowScreenLeft(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "screenLeft"), value);
+}
+
+void setJSDOMWindowScreenTop(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "screenTop"), value);
+}
+
+void setJSDOMWindowScrollX(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "scrollX"), value);
+}
+
+void setJSDOMWindowScrollY(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "scrollY"), value);
+}
+
+void setJSDOMWindowLength(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "length"), value);
+}
+
+void setJSDOMWindowName(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(thisObject);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    imp->setName(ustringToString(value.toString(exec)));
+}
+
+void setJSDOMWindowStatus(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(thisObject);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    imp->setStatus(ustringToString(value.toString(exec)));
+}
+
+void setJSDOMWindowDefaultStatus(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(thisObject);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    imp->setDefaultStatus(ustringToString(value.toString(exec)));
+}
+
+void setJSDOMWindowDefaultstatus(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    JSDOMWindow* castedThis = static_cast<JSDOMWindow*>(thisObject);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    imp->setDefaultstatus(ustringToString(value.toString(exec)));
+}
+
+void setJSDOMWindowSelf(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "self"), value);
+}
+
+void setJSDOMWindowFrames(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "frames"), value);
+}
+
+void setJSDOMWindowOpener(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "opener"), value);
+}
+
+void setJSDOMWindowParent(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "parent"), value);
+}
+
+void setJSDOMWindowTop(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "top"), value);
+}
+
+void setJSDOMWindowDevicePixelRatio(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "devicePixelRatio"), value);
+}
+
+void setJSDOMWindowConsole(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in object
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "console"), value);
+}
+
+void setJSDOMWindowOnabort(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnabort(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnbeforeunload(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnbeforeunload(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnblur(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnblur(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOncanplay(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOncanplay(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOncanplaythrough(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOncanplaythrough(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnchange(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnchange(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnclick(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnclick(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOncontextmenu(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOncontextmenu(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOndblclick(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOndblclick(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOndrag(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOndrag(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOndragend(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOndragend(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOndragenter(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOndragenter(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOndragleave(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOndragleave(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOndragover(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOndragover(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOndragstart(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOndragstart(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOndrop(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOndrop(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOndurationchange(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOndurationchange(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnemptied(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnemptied(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnended(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnended(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnerror(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnerror(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnfocus(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnfocus(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnhashchange(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnhashchange(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOninput(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOninput(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOninvalid(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOninvalid(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnkeydown(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnkeydown(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnkeypress(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnkeypress(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnkeyup(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnkeyup(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnload(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnload(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnloadeddata(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnloadeddata(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnloadedmetadata(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnloadedmetadata(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnloadstart(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnloadstart(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnmessage(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnmessage(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnmousedown(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnmousedown(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnmousemove(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnmousemove(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnmouseout(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnmouseout(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnmouseover(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnmouseover(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnmouseup(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnmouseup(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnmousewheel(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnmousewheel(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnoffline(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnoffline(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnonline(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnonline(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnpagehide(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnpagehide(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnpageshow(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnpageshow(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnpause(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnpause(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnplay(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnplay(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnplaying(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnplaying(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnpopstate(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnpopstate(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnprogress(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnprogress(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnratechange(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnratechange(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnresize(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnresize(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnscroll(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnscroll(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnseeked(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnseeked(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnseeking(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnseeking(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnselect(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnselect(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnstalled(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnstalled(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnstorage(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnstorage(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnsubmit(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnsubmit(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnsuspend(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnsuspend(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOntimeupdate(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOntimeupdate(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnunload(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnunload(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnvolumechange(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnvolumechange(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnwaiting(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnwaiting(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnreset(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnreset(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnsearch(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnsearch(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnwebkitanimationend(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnwebkitanimationend(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnwebkitanimationiteration(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnwebkitanimationiteration(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnwebkitanimationstart(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnwebkitanimationstart(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+void setJSDOMWindowOnwebkittransitionend(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOnwebkittransitionend(createJSAttributeEventListener(exec, value, thisObject));
+}
+
+#if ENABLE(TOUCH_EVENTS)
+void setJSDOMWindowOntouchstart(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOntouchstart(createJSAttributeEventListener(exec, value, thisObject));
+}
+#endif
+
+#if ENABLE(TOUCH_EVENTS)
+void setJSDOMWindowOntouchmove(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOntouchmove(createJSAttributeEventListener(exec, value, thisObject));
+}
+#endif
+
+#if ENABLE(TOUCH_EVENTS)
+void setJSDOMWindowOntouchend(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOntouchend(createJSAttributeEventListener(exec, value, thisObject));
+}
+#endif
+
+#if ENABLE(TOUCH_EVENTS)
+void setJSDOMWindowOntouchcancel(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOntouchcancel(createJSAttributeEventListener(exec, value, thisObject));
+}
+#endif
+
+#if ENABLE(TRANSFORMACTION_EVENTS)
+void setJSDOMWindowOntransformactionstart(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOntransformactionstart(createJSAttributeEventListener(exec, value, thisObject));
+}
+#endif
+
+#if ENABLE(TRANSFORMACTION_EVENTS)
+void setJSDOMWindowOntransformactionupdate(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOntransformactionupdate(createJSAttributeEventListener(exec, value, thisObject));
+}
+#endif
+
+#if ENABLE(TRANSFORMACTION_EVENTS)
+void setJSDOMWindowOntransformactionend(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOntransformactionend(createJSAttributeEventListener(exec, value, thisObject));
+}
+#endif
+
+#if ENABLE(DEVICE_ORIENTATION)
+void setJSDOMWindowDeviceOrientationEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "DeviceOrientationEvent"), value);
+}
+#endif
+
+#if ENABLE(DEVICE_ORIENTATION)
+void setJSDOMWindowOndeviceorientation(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    UNUSED_PARAM(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(static_cast<JSDOMWindow*>(thisObject)->impl());
+    imp->setOndeviceorientation(createJSAttributeEventListener(exec, value, thisObject));
+}
+#endif
+
+void setJSDOMWindowStyleSheetConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "StyleSheet"), value);
+}
+
+void setJSDOMWindowCSSStyleSheetConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSStyleSheet"), value);
+}
+
+void setJSDOMWindowCSSValueConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSValue"), value);
+}
+
+void setJSDOMWindowCSSPrimitiveValueConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSPrimitiveValue"), value);
+}
+
+void setJSDOMWindowCSSValueListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSValueList"), value);
+}
+
+void setJSDOMWindowWebKitCSSTransformValueConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebKitCSSTransformValue"), value);
+}
+
+void setJSDOMWindowCSSRuleConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSRule"), value);
+}
+
+void setJSDOMWindowCSSCharsetRuleConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSCharsetRule"), value);
+}
+
+void setJSDOMWindowCSSFontFaceRuleConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSFontFaceRule"), value);
+}
+
+void setJSDOMWindowCSSImportRuleConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSImportRule"), value);
+}
+
+void setJSDOMWindowCSSMediaRuleConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSMediaRule"), value);
+}
+
+void setJSDOMWindowCSSPageRuleConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSPageRule"), value);
+}
+
+void setJSDOMWindowCSSStyleRuleConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSStyleRule"), value);
+}
+
+void setJSDOMWindowCSSVariablesRuleConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSVariablesRule"), value);
+}
+
+void setJSDOMWindowCSSVariablesDeclarationConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSVariablesDeclaration"), value);
+}
+
+void setJSDOMWindowCSSStyleDeclarationConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSStyleDeclaration"), value);
+}
+
+void setJSDOMWindowMediaListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "MediaList"), value);
+}
+
+void setJSDOMWindowCounterConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Counter"), value);
+}
+
+void setJSDOMWindowCSSRuleListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CSSRuleList"), value);
+}
+
+void setJSDOMWindowRectConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Rect"), value);
+}
+
+void setJSDOMWindowRGBColorConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "RGBColor"), value);
+}
+
+void setJSDOMWindowStyleSheetListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "StyleSheetList"), value);
+}
+
+void setJSDOMWindowDOMExceptionConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "DOMException"), value);
+}
+
+void setJSDOMWindowDOMStringListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "DOMStringList"), value);
+}
+
+void setJSDOMWindowDOMImplementationConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "DOMImplementation"), value);
+}
+
+void setJSDOMWindowDocumentFragmentConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "DocumentFragment"), value);
+}
+
+void setJSDOMWindowDocumentConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Document"), value);
+}
+
+void setJSDOMWindowNodeConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Node"), value);
+}
+
+void setJSDOMWindowNodeListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "NodeList"), value);
+}
+
+void setJSDOMWindowNamedNodeMapConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "NamedNodeMap"), value);
+}
+
+void setJSDOMWindowCharacterDataConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CharacterData"), value);
+}
+
+void setJSDOMWindowAttrConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Attr"), value);
+}
+
+void setJSDOMWindowElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Element"), value);
+}
+
+void setJSDOMWindowTextConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Text"), value);
+}
+
+void setJSDOMWindowCommentConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Comment"), value);
+}
+
+void setJSDOMWindowCDATASectionConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CDATASection"), value);
+}
+
+void setJSDOMWindowDocumentTypeConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "DocumentType"), value);
+}
+
+void setJSDOMWindowNotationConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Notation"), value);
+}
+
+void setJSDOMWindowEntityConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Entity"), value);
+}
+
+void setJSDOMWindowEntityReferenceConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "EntityReference"), value);
+}
+
+void setJSDOMWindowProcessingInstructionConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "ProcessingInstruction"), value);
+}
+
+void setJSDOMWindowHTMLDocumentConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLDocument"), value);
+}
+
+void setJSDOMWindowHTMLElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLElement"), value);
+}
+
+void setJSDOMWindowHTMLAnchorElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLAnchorElement"), value);
+}
+
+void setJSDOMWindowHTMLAppletElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLAppletElement"), value);
+}
+
+void setJSDOMWindowHTMLAreaElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLAreaElement"), value);
+}
+
+void setJSDOMWindowHTMLBRElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLBRElement"), value);
+}
+
+void setJSDOMWindowHTMLBaseElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLBaseElement"), value);
+}
+
+void setJSDOMWindowHTMLBaseFontElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLBaseFontElement"), value);
+}
+
+void setJSDOMWindowHTMLBlockquoteElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLBlockquoteElement"), value);
+}
+
+void setJSDOMWindowHTMLBodyElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLBodyElement"), value);
+}
+
+void setJSDOMWindowHTMLButtonElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLButtonElement"), value);
+}
+
+void setJSDOMWindowHTMLCanvasElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLCanvasElement"), value);
+}
+
+#if ENABLE(DATAGRID)
+void setJSDOMWindowHTMLDataGridElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLDataGridElement"), value);
+}
+#endif
+
+#if ENABLE(DATAGRID)
+void setJSDOMWindowHTMLDataGridCellElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLDataGridCellElement"), value);
+}
+#endif
+
+#if ENABLE(DATAGRID)
+void setJSDOMWindowHTMLDataGridColElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLDataGridColElement"), value);
+}
+#endif
+
+void setJSDOMWindowHTMLDListElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLDListElement"), value);
+}
+
+void setJSDOMWindowHTMLDirectoryElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLDirectoryElement"), value);
+}
+
+void setJSDOMWindowHTMLDivElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLDivElement"), value);
+}
+
+void setJSDOMWindowHTMLEmbedElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLEmbedElement"), value);
+}
+
+void setJSDOMWindowHTMLFieldSetElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLFieldSetElement"), value);
+}
+
+void setJSDOMWindowHTMLFontElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLFontElement"), value);
+}
+
+void setJSDOMWindowHTMLFormElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLFormElement"), value);
+}
+
+void setJSDOMWindowHTMLFrameElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLFrameElement"), value);
+}
+
+void setJSDOMWindowHTMLFrameSetElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLFrameSetElement"), value);
+}
+
+void setJSDOMWindowHTMLHRElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLHRElement"), value);
+}
+
+void setJSDOMWindowHTMLHeadElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLHeadElement"), value);
+}
+
+void setJSDOMWindowHTMLHeadingElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLHeadingElement"), value);
+}
+
+void setJSDOMWindowHTMLHtmlElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLHtmlElement"), value);
+}
+
+void setJSDOMWindowHTMLIFrameElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLIFrameElement"), value);
+}
+
+void setJSDOMWindowHTMLImageElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLImageElement"), value);
+}
+
+void setJSDOMWindowHTMLInputElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLInputElement"), value);
+}
+
+void setJSDOMWindowHTMLIsIndexElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLIsIndexElement"), value);
+}
+
+void setJSDOMWindowHTMLLIElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLLIElement"), value);
+}
+
+void setJSDOMWindowHTMLLabelElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLLabelElement"), value);
+}
+
+void setJSDOMWindowHTMLLegendElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLLegendElement"), value);
+}
+
+void setJSDOMWindowHTMLLinkElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLLinkElement"), value);
+}
+
+void setJSDOMWindowHTMLMapElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLMapElement"), value);
+}
+
+void setJSDOMWindowHTMLMarqueeElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLMarqueeElement"), value);
+}
+
+void setJSDOMWindowHTMLMenuElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLMenuElement"), value);
+}
+
+void setJSDOMWindowHTMLMetaElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLMetaElement"), value);
+}
+
+void setJSDOMWindowHTMLMeterElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLMeterElement"), value);
+}
+
+void setJSDOMWindowHTMLModElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLModElement"), value);
+}
+
+void setJSDOMWindowHTMLOListElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLOListElement"), value);
+}
+
+void setJSDOMWindowHTMLObjectElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLObjectElement"), value);
+}
+
+void setJSDOMWindowHTMLOptGroupElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLOptGroupElement"), value);
+}
+
+void setJSDOMWindowHTMLOptionElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLOptionElement"), value);
+}
+
+void setJSDOMWindowHTMLParagraphElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLParagraphElement"), value);
+}
+
+void setJSDOMWindowHTMLParamElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLParamElement"), value);
+}
+
+void setJSDOMWindowHTMLPreElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLPreElement"), value);
+}
+
+void setJSDOMWindowHTMLProgressElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLProgressElement"), value);
+}
+
+void setJSDOMWindowHTMLQuoteElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLQuoteElement"), value);
+}
+
+void setJSDOMWindowHTMLScriptElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLScriptElement"), value);
+}
+
+void setJSDOMWindowHTMLSelectElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLSelectElement"), value);
+}
+
+void setJSDOMWindowHTMLStyleElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLStyleElement"), value);
+}
+
+void setJSDOMWindowHTMLTableCaptionElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLTableCaptionElement"), value);
+}
+
+void setJSDOMWindowHTMLTableCellElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLTableCellElement"), value);
+}
+
+void setJSDOMWindowHTMLTableColElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLTableColElement"), value);
+}
+
+void setJSDOMWindowHTMLTableElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLTableElement"), value);
+}
+
+void setJSDOMWindowHTMLTableRowElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLTableRowElement"), value);
+}
+
+void setJSDOMWindowHTMLTableSectionElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLTableSectionElement"), value);
+}
+
+void setJSDOMWindowHTMLTextAreaElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLTextAreaElement"), value);
+}
+
+void setJSDOMWindowHTMLTitleElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLTitleElement"), value);
+}
+
+void setJSDOMWindowHTMLUListElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLUListElement"), value);
+}
+
+void setJSDOMWindowHTMLCollectionConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLCollection"), value);
+}
+
+void setJSDOMWindowHTMLAllCollectionConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLAllCollection"), value);
+}
+
+void setJSDOMWindowImageConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Image"), value);
+}
+
+void setJSDOMWindowOptionConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Option"), value);
+}
+
+void setJSDOMWindowCanvasPatternConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CanvasPattern"), value);
+}
+
+void setJSDOMWindowCanvasGradientConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CanvasGradient"), value);
+}
+
+void setJSDOMWindowCanvasRenderingContext2DConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "CanvasRenderingContext2D"), value);
+}
+
+void setJSDOMWindowImageDataConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "ImageData"), value);
+}
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowWebGLRenderingContextConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebGLRenderingContext"), value);
+}
+#endif
+
+void setJSDOMWindowTextMetricsConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "TextMetrics"), value);
+}
+
+void setJSDOMWindowDOMStringMapConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "DOMStringMap"), value);
+}
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowArrayBufferConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "ArrayBuffer"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowInt8ArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Int8Array"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowUint8ArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Uint8Array"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowInt16ArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Int16Array"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowUint16ArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Uint16Array"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowInt32ArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Int32Array"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowUint32ArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Uint32Array"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowFloat32ArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Float32Array"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowWebGLArrayBufferConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebGLArrayBuffer"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowWebGLByteArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebGLByteArray"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowWebGLUnsignedByteArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebGLUnsignedByteArray"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowWebGLShortArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebGLShortArray"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowWebGLUnsignedShortArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebGLUnsignedShortArray"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowWebGLIntArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebGLIntArray"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowWebGLUnsignedIntArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebGLUnsignedIntArray"), value);
+}
+#endif
+
+#if ENABLE(3D_CANVAS)
+void setJSDOMWindowWebGLFloatArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebGLFloatArray"), value);
+}
+#endif
+
+void setJSDOMWindowEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Event"), value);
+}
+
+void setJSDOMWindowBeforeLoadEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "BeforeLoadEvent"), value);
+}
+
+void setJSDOMWindowKeyboardEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "KeyboardEvent"), value);
+}
+
+void setJSDOMWindowMouseEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "MouseEvent"), value);
+}
+
+void setJSDOMWindowMutationEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "MutationEvent"), value);
+}
+
+void setJSDOMWindowOverflowEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "OverflowEvent"), value);
+}
+
+void setJSDOMWindowPageTransitionEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "PageTransitionEvent"), value);
+}
+
+void setJSDOMWindowProgressEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "ProgressEvent"), value);
+}
+
+void setJSDOMWindowTextEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "TextEvent"), value);
+}
+
+void setJSDOMWindowUIEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "UIEvent"), value);
+}
+
+void setJSDOMWindowWebKitAnimationEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebKitAnimationEvent"), value);
+}
+
+void setJSDOMWindowWebKitTransitionEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebKitTransitionEvent"), value);
+}
+
+void setJSDOMWindowWheelEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WheelEvent"), value);
+}
+
+void setJSDOMWindowMessageEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "MessageEvent"), value);
+}
+
+void setJSDOMWindowEventExceptionConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "EventException"), value);
+}
+
+void setJSDOMWindowWebKitCSSKeyframeRuleConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebKitCSSKeyframeRule"), value);
+}
+
+void setJSDOMWindowWebKitCSSKeyframesRuleConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebKitCSSKeyframesRule"), value);
+}
+
+void setJSDOMWindowWebKitCSSMatrixConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebKitCSSMatrix"), value);
+}
+
+void setJSDOMWindowWebKitPointConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebKitPoint"), value);
+}
+
+void setJSDOMWindowClipboardConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Clipboard"), value);
+}
+
+void setJSDOMWindowFileConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "File"), value);
+}
+
+void setJSDOMWindowFileListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "FileList"), value);
+}
+
+void setJSDOMWindowBlobConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Blob"), value);
+}
+
+void setJSDOMWindowNodeFilterConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "NodeFilter"), value);
+}
+
+void setJSDOMWindowRangeConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Range"), value);
+}
+
+void setJSDOMWindowRangeExceptionConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "RangeException"), value);
+}
+
+void setJSDOMWindowEventSourceConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "EventSource"), value);
+}
+
+void setJSDOMWindowXMLDocumentConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "XMLDocument"), value);
+}
+
+void setJSDOMWindowDOMParserConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "DOMParser"), value);
+}
+
+void setJSDOMWindowXMLSerializerConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "XMLSerializer"), value);
+}
+
+void setJSDOMWindowXMLHttpRequestConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "XMLHttpRequest"), value);
+}
+
+void setJSDOMWindowXMLHttpRequestUploadConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "XMLHttpRequestUpload"), value);
+}
+
+void setJSDOMWindowXMLHttpRequestExceptionConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "XMLHttpRequestException"), value);
+}
+
+#if ENABLE(XSLT)
+void setJSDOMWindowXSLTProcessorConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "XSLTProcessor"), value);
+}
+#endif
+
+void setJSDOMWindowMessagePortConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "MessagePort"), value);
+}
+
+void setJSDOMWindowMessageChannelConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "MessageChannel"), value);
+}
+
+void setJSDOMWindowWorkerConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Worker"), value);
+}
+
+void setJSDOMWindowSharedWorkerConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SharedWorker"), value);
+}
+
+void setJSDOMWindowWebSocketConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "WebSocket"), value);
+}
+
+void setJSDOMWindowPluginConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Plugin"), value);
+}
+
+void setJSDOMWindowPluginArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "PluginArray"), value);
+}
+
+void setJSDOMWindowMimeTypeConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "MimeType"), value);
+}
+
+void setJSDOMWindowMimeTypeArrayConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "MimeTypeArray"), value);
+}
+
+void setJSDOMWindowClientRectConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "ClientRect"), value);
+}
+
+void setJSDOMWindowClientRectListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "ClientRectList"), value);
+}
+
+void setJSDOMWindowStorageConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Storage"), value);
+}
+
+void setJSDOMWindowStorageEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "StorageEvent"), value);
+}
+
+#if ENABLE(VIDEO)
+void setJSDOMWindowAudioConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "Audio"), value);
+}
+#endif
+
+#if ENABLE(VIDEO)
+void setJSDOMWindowHTMLAudioElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLAudioElement"), value);
+}
+#endif
+
+#if ENABLE(VIDEO)
+void setJSDOMWindowHTMLMediaElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLMediaElement"), value);
+}
+#endif
+
+#if ENABLE(VIDEO)
+void setJSDOMWindowHTMLVideoElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "HTMLVideoElement"), value);
+}
+#endif
+
+#if ENABLE(VIDEO)
+void setJSDOMWindowMediaErrorConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "MediaError"), value);
+}
+#endif
+
+#if ENABLE(VIDEO)
+void setJSDOMWindowTimeRangesConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "TimeRanges"), value);
+}
+#endif
+
+void setJSDOMWindowXPathEvaluatorConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "XPathEvaluator"), value);
+}
+
+void setJSDOMWindowXPathResultConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "XPathResult"), value);
+}
+
+void setJSDOMWindowXPathExceptionConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "XPathException"), value);
+}
+
+void setJSDOMWindowSVGAElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAElement"), value);
+}
+
+void setJSDOMWindowSVGAngleConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAngle"), value);
+}
+
+void setJSDOMWindowSVGAnimatedAngleConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAnimatedAngle"), value);
+}
+
+void setJSDOMWindowSVGAnimatedBooleanConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAnimatedBoolean"), value);
+}
+
+void setJSDOMWindowSVGAnimatedEnumerationConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAnimatedEnumeration"), value);
+}
+
+void setJSDOMWindowSVGAnimatedIntegerConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAnimatedInteger"), value);
+}
+
+void setJSDOMWindowSVGAnimatedLengthConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAnimatedLength"), value);
+}
+
+void setJSDOMWindowSVGAnimatedLengthListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAnimatedLengthList"), value);
+}
+
+void setJSDOMWindowSVGAnimatedNumberConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAnimatedNumber"), value);
+}
+
+void setJSDOMWindowSVGAnimatedNumberListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAnimatedNumberList"), value);
+}
+
+void setJSDOMWindowSVGAnimatedPreserveAspectRatioConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAnimatedPreserveAspectRatio"), value);
+}
+
+void setJSDOMWindowSVGAnimatedRectConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAnimatedRect"), value);
+}
+
+void setJSDOMWindowSVGAnimatedStringConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAnimatedString"), value);
+}
+
+void setJSDOMWindowSVGAnimatedTransformListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGAnimatedTransformList"), value);
+}
+
+void setJSDOMWindowSVGCircleElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGCircleElement"), value);
+}
+
+void setJSDOMWindowSVGClipPathElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGClipPathElement"), value);
+}
+
+void setJSDOMWindowSVGColorConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGColor"), value);
+}
+
+void setJSDOMWindowSVGCursorElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGCursorElement"), value);
+}
+
+void setJSDOMWindowSVGDefsElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGDefsElement"), value);
+}
+
+void setJSDOMWindowSVGDescElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGDescElement"), value);
+}
+
+void setJSDOMWindowSVGDocumentConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGDocument"), value);
+}
+
+void setJSDOMWindowSVGElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGElement"), value);
+}
+
+void setJSDOMWindowSVGElementInstanceConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGElementInstance"), value);
+}
+
+void setJSDOMWindowSVGElementInstanceListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGElementInstanceList"), value);
+}
+
+void setJSDOMWindowSVGEllipseElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGEllipseElement"), value);
+}
+
+void setJSDOMWindowSVGExceptionConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGException"), value);
+}
+
+void setJSDOMWindowSVGGElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGGElement"), value);
+}
+
+void setJSDOMWindowSVGGradientElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGGradientElement"), value);
+}
+
+void setJSDOMWindowSVGImageElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGImageElement"), value);
+}
+
+void setJSDOMWindowSVGLengthConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGLength"), value);
+}
+
+void setJSDOMWindowSVGLengthListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGLengthList"), value);
+}
+
+void setJSDOMWindowSVGLinearGradientElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGLinearGradientElement"), value);
+}
+
+void setJSDOMWindowSVGLineElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGLineElement"), value);
+}
+
+void setJSDOMWindowSVGMarkerElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGMarkerElement"), value);
+}
+
+void setJSDOMWindowSVGMaskElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGMaskElement"), value);
+}
+
+void setJSDOMWindowSVGMatrixConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGMatrix"), value);
+}
+
+void setJSDOMWindowSVGMetadataElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGMetadataElement"), value);
+}
+
+void setJSDOMWindowSVGNumberConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGNumber"), value);
+}
+
+void setJSDOMWindowSVGNumberListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGNumberList"), value);
+}
+
+void setJSDOMWindowSVGPaintConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPaint"), value);
+}
+
+void setJSDOMWindowSVGPathElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathElement"), value);
+}
+
+void setJSDOMWindowSVGPathSegConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSeg"), value);
+}
+
+void setJSDOMWindowSVGPathSegArcAbsConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegArcAbs"), value);
+}
+
+void setJSDOMWindowSVGPathSegArcRelConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegArcRel"), value);
+}
+
+void setJSDOMWindowSVGPathSegClosePathConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegClosePath"), value);
+}
+
+void setJSDOMWindowSVGPathSegCurvetoCubicAbsConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegCurvetoCubicAbs"), value);
+}
+
+void setJSDOMWindowSVGPathSegCurvetoCubicRelConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegCurvetoCubicRel"), value);
+}
+
+void setJSDOMWindowSVGPathSegCurvetoCubicSmoothAbsConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegCurvetoCubicSmoothAbs"), value);
+}
+
+void setJSDOMWindowSVGPathSegCurvetoCubicSmoothRelConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegCurvetoCubicSmoothRel"), value);
+}
+
+void setJSDOMWindowSVGPathSegCurvetoQuadraticAbsConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegCurvetoQuadraticAbs"), value);
+}
+
+void setJSDOMWindowSVGPathSegCurvetoQuadraticRelConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegCurvetoQuadraticRel"), value);
+}
+
+void setJSDOMWindowSVGPathSegCurvetoQuadraticSmoothAbsConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegCurvetoQuadraticSmoothAbs"), value);
+}
+
+void setJSDOMWindowSVGPathSegCurvetoQuadraticSmoothRelConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegCurvetoQuadraticSmoothRel"), value);
+}
+
+void setJSDOMWindowSVGPathSegLinetoAbsConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegLinetoAbs"), value);
+}
+
+void setJSDOMWindowSVGPathSegLinetoHorizontalAbsConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegLinetoHorizontalAbs"), value);
+}
+
+void setJSDOMWindowSVGPathSegLinetoHorizontalRelConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegLinetoHorizontalRel"), value);
+}
+
+void setJSDOMWindowSVGPathSegLinetoRelConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegLinetoRel"), value);
+}
+
+void setJSDOMWindowSVGPathSegLinetoVerticalAbsConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegLinetoVerticalAbs"), value);
+}
+
+void setJSDOMWindowSVGPathSegLinetoVerticalRelConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegLinetoVerticalRel"), value);
+}
+
+void setJSDOMWindowSVGPathSegListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegList"), value);
+}
+
+void setJSDOMWindowSVGPathSegMovetoAbsConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegMovetoAbs"), value);
+}
+
+void setJSDOMWindowSVGPathSegMovetoRelConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPathSegMovetoRel"), value);
+}
+
+void setJSDOMWindowSVGPatternElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPatternElement"), value);
+}
+
+void setJSDOMWindowSVGPointConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPoint"), value);
+}
+
+void setJSDOMWindowSVGPointListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPointList"), value);
+}
+
+void setJSDOMWindowSVGPolygonElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPolygonElement"), value);
+}
+
+void setJSDOMWindowSVGPolylineElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPolylineElement"), value);
+}
+
+void setJSDOMWindowSVGPreserveAspectRatioConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGPreserveAspectRatio"), value);
+}
+
+void setJSDOMWindowSVGRadialGradientElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGRadialGradientElement"), value);
+}
+
+void setJSDOMWindowSVGRectConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGRect"), value);
+}
+
+void setJSDOMWindowSVGRectElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGRectElement"), value);
+}
+
+void setJSDOMWindowSVGRenderingIntentConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGRenderingIntent"), value);
+}
+
+void setJSDOMWindowSVGScriptElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGScriptElement"), value);
+}
+
+void setJSDOMWindowSVGStopElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGStopElement"), value);
+}
+
+void setJSDOMWindowSVGStringListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGStringList"), value);
+}
+
+void setJSDOMWindowSVGStyleElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGStyleElement"), value);
+}
+
+void setJSDOMWindowSVGSVGElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGSVGElement"), value);
+}
+
+void setJSDOMWindowSVGSwitchElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGSwitchElement"), value);
+}
+
+void setJSDOMWindowSVGSymbolElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGSymbolElement"), value);
+}
+
+void setJSDOMWindowSVGTextContentElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGTextContentElement"), value);
+}
+
+void setJSDOMWindowSVGTextElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGTextElement"), value);
+}
+
+void setJSDOMWindowSVGTextPathElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGTextPathElement"), value);
+}
+
+void setJSDOMWindowSVGTextPositioningElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGTextPositioningElement"), value);
+}
+
+void setJSDOMWindowSVGTitleElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGTitleElement"), value);
+}
+
+void setJSDOMWindowSVGTransformConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGTransform"), value);
+}
+
+void setJSDOMWindowSVGTransformListConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGTransformList"), value);
+}
+
+void setJSDOMWindowSVGTRefElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGTRefElement"), value);
+}
+
+void setJSDOMWindowSVGTSpanElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGTSpanElement"), value);
+}
+
+void setJSDOMWindowSVGUnitTypesConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGUnitTypes"), value);
+}
+
+void setJSDOMWindowSVGUseElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGUseElement"), value);
+}
+
+void setJSDOMWindowSVGViewElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGViewElement"), value);
+}
+
+void setJSDOMWindowSVGZoomEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGZoomEvent"), value);
+}
+
+void setJSDOMWindowSVGComponentTransferFunctionElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGComponentTransferFunctionElement"), value);
+}
+
+void setJSDOMWindowSVGFEBlendElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEBlendElement"), value);
+}
+
+void setJSDOMWindowSVGFEColorMatrixElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEColorMatrixElement"), value);
+}
+
+void setJSDOMWindowSVGFEComponentTransferElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEComponentTransferElement"), value);
+}
+
+void setJSDOMWindowSVGFECompositeElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFECompositeElement"), value);
+}
+
+void setJSDOMWindowSVGFEConvolveMatrixElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEConvolveMatrixElement"), value);
+}
+
+void setJSDOMWindowSVGFEDiffuseLightingElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEDiffuseLightingElement"), value);
+}
+
+void setJSDOMWindowSVGFEDisplacementMapElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEDisplacementMapElement"), value);
+}
+
+void setJSDOMWindowSVGFEDistantLightElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEDistantLightElement"), value);
+}
+
+void setJSDOMWindowSVGFEFloodElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEFloodElement"), value);
+}
+
+void setJSDOMWindowSVGFEFuncAElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEFuncAElement"), value);
+}
+
+void setJSDOMWindowSVGFEFuncBElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEFuncBElement"), value);
+}
+
+void setJSDOMWindowSVGFEFuncGElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEFuncGElement"), value);
+}
+
+void setJSDOMWindowSVGFEFuncRElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEFuncRElement"), value);
+}
+
+void setJSDOMWindowSVGFEGaussianBlurElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEGaussianBlurElement"), value);
+}
+
+void setJSDOMWindowSVGFEImageElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEImageElement"), value);
+}
+
+void setJSDOMWindowSVGFEMergeElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEMergeElement"), value);
+}
+
+void setJSDOMWindowSVGFEMergeNodeElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEMergeNodeElement"), value);
+}
+
+void setJSDOMWindowSVGFEMorphologyElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEMorphologyElement"), value);
+}
+
+void setJSDOMWindowSVGFEOffsetElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEOffsetElement"), value);
+}
+
+void setJSDOMWindowSVGFEPointLightElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFEPointLightElement"), value);
+}
+
+void setJSDOMWindowSVGFESpecularLightingElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFESpecularLightingElement"), value);
+}
+
+void setJSDOMWindowSVGFESpotLightElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFESpotLightElement"), value);
+}
+
+void setJSDOMWindowSVGFETileElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFETileElement"), value);
+}
+
+void setJSDOMWindowSVGFETurbulenceElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFETurbulenceElement"), value);
+}
+
+void setJSDOMWindowSVGFilterElementConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SVGFilterElement"), value);
+}
+
+void setJSDOMWindowSQLExceptionConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "SQLException"), value);
+}
+
+#if ENABLE(TOUCH_EVENTS)
+void setJSDOMWindowTouchEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "TouchEvent"), value);
+}
+#endif
+
+#if ENABLE(TRANSFORMACTION_EVENTS)
+void setJSDOMWindowTransformActionEventConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "TransformActionEvent"), value);
+}
+#endif
+
+void setJSDOMWindowFormDataConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "FormData"), value);
+}
+
+#if ENABLE(FILE_READER) || ENABLE(FILE_WRITER)
+void setJSDOMWindowFileErrorConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "FileError"), value);
+}
+#endif
+
+#if ENABLE(FILE_READER)
+void setJSDOMWindowFileReaderConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "FileReader"), value);
+}
+#endif
+
+void setJSDOMWindowBlobBuilderConstructor(ExecState* exec, JSObject* thisObject, JSValue value)
+{
+    if (!static_cast<JSDOMWindow*>(thisObject)->allowsAccessFrom(exec))
+        return;
+    // Shadowing a built-in constructor
+    static_cast<JSDOMWindow*>(thisObject)->putDirect(Identifier(exec, "BlobBuilder"), value);
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionGetSelection(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+
+
+    JSC::JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->getSelection()));
+    return JSValue::encode(result);
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionFocus(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+
+    imp->focus();
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionBlur(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+
+    imp->blur();
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionClose(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+
+    imp->close();
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionPrint(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+
+    imp->print();
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionStop(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+
+    imp->stop();
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionOpen(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    return JSValue::encode(castedThis->open(exec));
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionShowModalDialog(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    return JSValue::encode(castedThis->showModalDialog(exec));
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionAlert(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    const String& message = ustringToString(exec->argument(0).toString(exec));
+
+    imp->alert(message);
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionConfirm(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    const String& message = ustringToString(exec->argument(0).toString(exec));
+
+
+    JSC::JSValue result = jsBoolean(imp->confirm(message));
+    return JSValue::encode(result);
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionPrompt(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    const String& message = ustringToString(exec->argument(0).toString(exec));
+    const String& defaultValue = valueToStringWithUndefinedOrNullCheck(exec, exec->argument(1));
+
+
+    JSC::JSValue result = jsStringOrNull(exec, imp->prompt(message, defaultValue));
+    return JSValue::encode(result);
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionFind(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    const String& string = ustringToString(exec->argument(0).toString(exec));
+    bool caseSensitive = exec->argument(1).toBoolean(exec);
+    bool backwards = exec->argument(2).toBoolean(exec);
+    bool wrap = exec->argument(3).toBoolean(exec);
+    bool wholeWord = exec->argument(4).toBoolean(exec);
+    bool searchInFrames = exec->argument(5).toBoolean(exec);
+    bool showDialog = exec->argument(6).toBoolean(exec);
+
+
+    JSC::JSValue result = jsBoolean(imp->find(string, caseSensitive, backwards, wrap, wholeWord, searchInFrames, showDialog));
+    return JSValue::encode(result);
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionScrollBy(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (exec->argumentCount() < 2)
+        return JSValue::encode(jsUndefined());
+    int x = exec->argument(0).toInt32(exec);
+    int y = exec->argument(1).toInt32(exec);
+
+    imp->scrollBy(x, y);
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionScrollTo(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (exec->argumentCount() < 2)
+        return JSValue::encode(jsUndefined());
+    int x = exec->argument(0).toInt32(exec);
+    int y = exec->argument(1).toInt32(exec);
+
+    imp->scrollTo(x, y);
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionScroll(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (exec->argumentCount() < 2)
+        return JSValue::encode(jsUndefined());
+    int x = exec->argument(0).toInt32(exec);
+    int y = exec->argument(1).toInt32(exec);
+
+    imp->scroll(x, y);
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionMoveBy(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (exec->argumentCount() < 2)
+        return JSValue::encode(jsUndefined());
+    float x = exec->argument(0).toFloat(exec);
+    float y = exec->argument(1).toFloat(exec);
+
+    imp->moveBy(x, y);
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionMoveTo(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (exec->argumentCount() < 2)
+        return JSValue::encode(jsUndefined());
+    float x = exec->argument(0).toFloat(exec);
+    float y = exec->argument(1).toFloat(exec);
+
+    imp->moveTo(x, y);
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionResizeBy(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (exec->argumentCount() < 2)
+        return JSValue::encode(jsUndefined());
+    float x = exec->argument(0).toFloat(exec);
+    float y = exec->argument(1).toFloat(exec);
+
+    imp->resizeBy(x, y);
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionResizeTo(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    if (exec->argumentCount() < 2)
+        return JSValue::encode(jsUndefined());
+    float width = exec->argument(0).toFloat(exec);
+    float height = exec->argument(1).toFloat(exec);
+
+    imp->resizeTo(width, height);
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionGetComputedStyle(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    Element* element = toElement(exec->argument(0));
+    const String& pseudoElement = ustringToString(exec->argument(1).toString(exec));
+
+
+    JSC::JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->getComputedStyle(element, pseudoElement)));
+    return JSValue::encode(result);
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionGetMatchedCSSRules(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    Element* element = toElement(exec->argument(0));
+    const String& pseudoElement = ustringToString(exec->argument(1).toString(exec));
+
+    int argsCount = exec->argumentCount();
+    if (argsCount < 3) {
+
+        JSC::JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->getMatchedCSSRules(element, pseudoElement)));
+        return JSValue::encode(result);
+    }
+
+    bool authorOnly = exec->argument(2).toBoolean(exec);
+
+
+    JSC::JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->getMatchedCSSRules(element, pseudoElement, authorOnly)));
+    return JSValue::encode(result);
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionWebkitConvertPointFromPageToNode(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    Node* node = toNode(exec->argument(0));
+    WebKitPoint* p = toWebKitPoint(exec->argument(1));
+
+
+    JSC::JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->webkitConvertPointFromPageToNode(node, p)));
+    return JSValue::encode(result);
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionWebkitConvertPointFromNodeToPage(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    Node* node = toNode(exec->argument(0));
+    WebKitPoint* p = toWebKitPoint(exec->argument(1));
+
+
+    JSC::JSValue result = toJS(exec, castedThis->globalObject(), WTF::getPtr(imp->webkitConvertPointFromNodeToPage(node, p)));
+    return JSValue::encode(result);
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionOpenDatabase(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    return JSValue::encode(castedThis->openDatabase(exec));
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionPostMessage(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    return JSValue::encode(castedThis->postMessage(exec));
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionSetTimeout(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    return JSValue::encode(castedThis->setTimeout(exec));
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionClearTimeout(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    int handle = exec->argument(0).toInt32(exec);
+
+    imp->clearTimeout(handle);
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionSetInterval(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    return JSValue::encode(castedThis->setInterval(exec));
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionClearInterval(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    int handle = exec->argument(0).toInt32(exec);
+
+    imp->clearInterval(handle);
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionAtob(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    ExceptionCode ec = 0;
+    const String& string = valueToStringWithNullCheck(exec, exec->argument(0));
+
+
+    JSC::JSValue result = jsString(exec, imp->atob(string, ec));
+    setDOMException(exec, ec);
+    return JSValue::encode(result);
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionBtoa(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    ExceptionCode ec = 0;
+    const String& string = valueToStringWithNullCheck(exec, exec->argument(0));
+
+
+    JSC::JSValue result = jsString(exec, imp->btoa(string, ec));
+    setDOMException(exec, ec);
+    return JSValue::encode(result);
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionAddEventListener(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    return JSValue::encode(castedThis->addEventListener(exec));
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionRemoveEventListener(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    return JSValue::encode(castedThis->removeEventListener(exec));
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionDispatchEvent(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+    ExceptionCode ec = 0;
+    Event* evt = toEvent(exec->argument(0));
+
+
+    JSC::JSValue result = jsBoolean(imp->dispatchEvent(evt, ec));
+    setDOMException(exec, ec);
+    return JSValue::encode(result);
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionCaptureEvents(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+
+    imp->captureEvents();
+    return JSValue::encode(jsUndefined());
+}
+
+EncodedJSValue JSC_HOST_CALL jsDOMWindowPrototypeFunctionReleaseEvents(ExecState* exec)
+{
+    JSDOMWindow* castedThis = toJSDOMWindow(exec->hostThisValue().toThisObject(exec));
+    if (!castedThis)
+        return throwVMTypeError(exec);
+    if (!castedThis->allowsAccessFrom(exec))
+        return JSValue::encode(jsUndefined());
+    DOMWindow* imp = static_cast<DOMWindow*>(castedThis->impl());
+
+    imp->releaseEvents();
+    return JSValue::encode(jsUndefined());
+}
+
+
+}