diff --git a/LICENSE b/LICENSE
new file mode 100644
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,21 @@
+Copyright (c) 2010-2012 Hamish Mackenzie, Victor Nazarov, Luite Stegeman
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
diff --git a/Setup.lhs b/Setup.lhs
new file mode 100644
--- /dev/null
+++ b/Setup.lhs
@@ -0,0 +1,6 @@
+#!/usr/bin/runhaskell 
+> module Main where
+> import Distribution.Simple
+> main :: IO ()
+> main = defaultMain
+
diff --git a/ghcjs-dom-jsaddle.cabal b/ghcjs-dom-jsaddle.cabal
new file mode 100644
--- /dev/null
+++ b/ghcjs-dom-jsaddle.cabal
@@ -0,0 +1,546 @@
+name: ghcjs-dom-jsaddle
+version: 0.3.1.0
+cabal-version: >=1.22
+build-type: Simple
+license: MIT
+license-file: LICENSE
+maintainer: Hamish Mackenzie <Hamish.K.Mackenzie@googlemail.com>
+synopsis: DOM library that supports both GHCJS and WebKitGTK using jsaddle
+description: Documentent Object Model (DOM) functions that work with
+             GHCJS, but can also be used with GHC and WebKitGTK.
+author: Hamish Mackenzie
+data-dir: ""
+category: Web
+
+Source-Repository head
+  type:         git
+  location:     https://github.com/ghcjs/ghcjs-dom
+  subdir:       ghcjs-dom-jsaddle
+
+library
+    build-depends: jsaddle-dom >=0.2.0.0 && <0.3
+
+    default-language: Haskell2010
+
+    exposed: True
+    buildable: True
+
+    reexported-modules:
+            JSDOM as GHCJS.DOM
+          , JSDOM.Types as GHCJS.DOM.Types
+          , JSDOM.EventM as GHCJS.DOM.EventM
+
+          -- Generated by domconv-webkit-jsffi
+          , JSDOM.ANGLEInstancedArrays as GHCJS.DOM.ANGLEInstancedArrays
+          , JSDOM.AbstractView as GHCJS.DOM.AbstractView
+          , JSDOM.AbstractWorker as GHCJS.DOM.AbstractWorker
+          , JSDOM.AllAudioCapabilities as GHCJS.DOM.AllAudioCapabilities
+          , JSDOM.AllVideoCapabilities as GHCJS.DOM.AllVideoCapabilities
+          , JSDOM.AnalyserNode as GHCJS.DOM.AnalyserNode
+          , JSDOM.AnimationEvent as GHCJS.DOM.AnimationEvent
+          , JSDOM.ApplicationCache as GHCJS.DOM.ApplicationCache
+          , JSDOM.Attr as GHCJS.DOM.Attr
+          , JSDOM.AudioBuffer as GHCJS.DOM.AudioBuffer
+          , JSDOM.AudioBufferCallback as GHCJS.DOM.AudioBufferCallback
+          , JSDOM.AudioBufferSourceNode as GHCJS.DOM.AudioBufferSourceNode
+          , JSDOM.AudioContext as GHCJS.DOM.AudioContext
+          , JSDOM.AudioDestinationNode as GHCJS.DOM.AudioDestinationNode
+          , JSDOM.AudioListener as GHCJS.DOM.AudioListener
+          , JSDOM.AudioNode as GHCJS.DOM.AudioNode
+          , JSDOM.AudioParam as GHCJS.DOM.AudioParam
+          , JSDOM.AudioProcessingEvent as GHCJS.DOM.AudioProcessingEvent
+          , JSDOM.AudioStreamTrack as GHCJS.DOM.AudioStreamTrack
+          , JSDOM.AudioTrack as GHCJS.DOM.AudioTrack
+          , JSDOM.AudioTrackList as GHCJS.DOM.AudioTrackList
+          , JSDOM.AutocompleteErrorEvent as GHCJS.DOM.AutocompleteErrorEvent
+          , JSDOM.BarProp as GHCJS.DOM.BarProp
+          , JSDOM.BatteryManager as GHCJS.DOM.BatteryManager
+          , JSDOM.BeforeLoadEvent as GHCJS.DOM.BeforeLoadEvent
+          , JSDOM.BeforeUnloadEvent as GHCJS.DOM.BeforeUnloadEvent
+          , JSDOM.BiquadFilterNode as GHCJS.DOM.BiquadFilterNode
+          , JSDOM.Blob as GHCJS.DOM.Blob
+          , JSDOM.CSS as GHCJS.DOM.CSS
+          , JSDOM.CSSCharsetRule as GHCJS.DOM.CSSCharsetRule
+          , JSDOM.CSSFontFaceLoadEvent as GHCJS.DOM.CSSFontFaceLoadEvent
+          , JSDOM.CSSFontFaceRule as GHCJS.DOM.CSSFontFaceRule
+          , JSDOM.CSSImportRule as GHCJS.DOM.CSSImportRule
+          , JSDOM.CSSKeyframeRule as GHCJS.DOM.CSSKeyframeRule
+          , JSDOM.CSSKeyframesRule as GHCJS.DOM.CSSKeyframesRule
+          , JSDOM.CSSMediaRule as GHCJS.DOM.CSSMediaRule
+          , JSDOM.CSSPageRule as GHCJS.DOM.CSSPageRule
+          , JSDOM.CSSPrimitiveValue as GHCJS.DOM.CSSPrimitiveValue
+          , JSDOM.CSSRule as GHCJS.DOM.CSSRule
+          , JSDOM.CSSRuleList as GHCJS.DOM.CSSRuleList
+          , JSDOM.CSSStyleDeclaration as GHCJS.DOM.CSSStyleDeclaration
+          , JSDOM.CSSStyleRule as GHCJS.DOM.CSSStyleRule
+          , JSDOM.CSSStyleSheet as GHCJS.DOM.CSSStyleSheet
+          , JSDOM.CSSSupportsRule as GHCJS.DOM.CSSSupportsRule
+          , JSDOM.CSSValue as GHCJS.DOM.CSSValue
+          , JSDOM.CSSValueList as GHCJS.DOM.CSSValueList
+          , JSDOM.CanvasGradient as GHCJS.DOM.CanvasGradient
+          , JSDOM.CanvasRenderingContext as GHCJS.DOM.CanvasRenderingContext
+          , JSDOM.CanvasRenderingContext2D as GHCJS.DOM.CanvasRenderingContext2D
+          , JSDOM.CapabilityRange as GHCJS.DOM.CapabilityRange
+          , JSDOM.CharacterData as GHCJS.DOM.CharacterData
+          , JSDOM.ChildNode as GHCJS.DOM.ChildNode
+          , JSDOM.ClientRect as GHCJS.DOM.ClientRect
+          , JSDOM.ClientRectList as GHCJS.DOM.ClientRectList
+          , JSDOM.CloseEvent as GHCJS.DOM.CloseEvent
+          , JSDOM.CommandLineAPIHost as GHCJS.DOM.CommandLineAPIHost
+          , JSDOM.Comment as GHCJS.DOM.Comment
+          , JSDOM.CompositionEvent as GHCJS.DOM.CompositionEvent
+          , JSDOM.ConvolverNode as GHCJS.DOM.ConvolverNode
+          , JSDOM.Coordinates as GHCJS.DOM.Coordinates
+          , JSDOM.Counter as GHCJS.DOM.Counter
+          , JSDOM.Crypto as GHCJS.DOM.Crypto
+          , JSDOM.CryptoKey as GHCJS.DOM.CryptoKey
+          , JSDOM.CryptoKeyPair as GHCJS.DOM.CryptoKeyPair
+          , JSDOM.CustomEvent as GHCJS.DOM.CustomEvent
+          , JSDOM.DOMError as GHCJS.DOM.DOMError
+          , JSDOM.DOMImplementation as GHCJS.DOM.DOMImplementation
+          , JSDOM.DOMNamedFlowCollection as GHCJS.DOM.DOMNamedFlowCollection
+          , JSDOM.DOMParser as GHCJS.DOM.DOMParser
+          , JSDOM.DOMSettableTokenList as GHCJS.DOM.DOMSettableTokenList
+          , JSDOM.DOMStringList as GHCJS.DOM.DOMStringList
+          , JSDOM.DOMTokenList as GHCJS.DOM.DOMTokenList
+          , JSDOM.DataCue as GHCJS.DOM.DataCue
+          , JSDOM.DataTransfer as GHCJS.DOM.DataTransfer
+          , JSDOM.DataTransferItem as GHCJS.DOM.DataTransferItem
+          , JSDOM.DataTransferItemList as GHCJS.DOM.DataTransferItemList
+          , JSDOM.Database as GHCJS.DOM.Database
+          , JSDOM.DatabaseCallback as GHCJS.DOM.DatabaseCallback
+          , JSDOM.DedicatedWorkerGlobalScope as GHCJS.DOM.DedicatedWorkerGlobalScope
+          , JSDOM.DelayNode as GHCJS.DOM.DelayNode
+          , JSDOM.DeviceMotionEvent as GHCJS.DOM.DeviceMotionEvent
+          , JSDOM.DeviceOrientationEvent as GHCJS.DOM.DeviceOrientationEvent
+          , JSDOM.DeviceProximityEvent as GHCJS.DOM.DeviceProximityEvent
+          , JSDOM.Document as GHCJS.DOM.Document
+          , JSDOM.DocumentFragment as GHCJS.DOM.DocumentFragment
+          , JSDOM.DocumentType as GHCJS.DOM.DocumentType
+          , JSDOM.DynamicsCompressorNode as GHCJS.DOM.DynamicsCompressorNode
+          , JSDOM.EXTBlendMinMax as GHCJS.DOM.EXTBlendMinMax
+          , JSDOM.EXTTextureFilterAnisotropic as GHCJS.DOM.EXTTextureFilterAnisotropic
+          , JSDOM.EXTsRGB as GHCJS.DOM.EXTsRGB
+          , JSDOM.Element as GHCJS.DOM.Element
+          , JSDOM.Entity as GHCJS.DOM.Entity
+          , JSDOM.Enums as GHCJS.DOM.Enums
+          , JSDOM.ErrorEvent as GHCJS.DOM.ErrorEvent
+          , JSDOM.Event as GHCJS.DOM.Event
+          , JSDOM.EventListener as GHCJS.DOM.EventListener
+          , JSDOM.EventSource as GHCJS.DOM.EventSource
+          , JSDOM.EventTarget as GHCJS.DOM.EventTarget
+          , JSDOM.File as GHCJS.DOM.File
+          , JSDOM.FileError as GHCJS.DOM.FileError
+          , JSDOM.FileList as GHCJS.DOM.FileList
+          , JSDOM.FileReader as GHCJS.DOM.FileReader
+          , JSDOM.FileReaderSync as GHCJS.DOM.FileReaderSync
+          , JSDOM.FocusEvent as GHCJS.DOM.FocusEvent
+          , JSDOM.FontLoader as GHCJS.DOM.FontLoader
+          , JSDOM.FormData as GHCJS.DOM.FormData
+          , JSDOM.GainNode as GHCJS.DOM.GainNode
+          , JSDOM.Gamepad as GHCJS.DOM.Gamepad
+          , JSDOM.GamepadButton as GHCJS.DOM.GamepadButton
+          , JSDOM.GamepadEvent as GHCJS.DOM.GamepadEvent
+          , JSDOM.Geolocation as GHCJS.DOM.Geolocation
+          , JSDOM.Geoposition as GHCJS.DOM.Geoposition
+          , JSDOM.HTMLAllCollection as GHCJS.DOM.HTMLAllCollection
+          , JSDOM.HTMLAnchorElement as GHCJS.DOM.HTMLAnchorElement
+          , JSDOM.HTMLAppletElement as GHCJS.DOM.HTMLAppletElement
+          , JSDOM.HTMLAreaElement as GHCJS.DOM.HTMLAreaElement
+          , JSDOM.HTMLBRElement as GHCJS.DOM.HTMLBRElement
+          , JSDOM.HTMLBaseElement as GHCJS.DOM.HTMLBaseElement
+          , JSDOM.HTMLBaseFontElement as GHCJS.DOM.HTMLBaseFontElement
+          , JSDOM.HTMLBodyElement as GHCJS.DOM.HTMLBodyElement
+          , JSDOM.HTMLButtonElement as GHCJS.DOM.HTMLButtonElement
+          , JSDOM.HTMLCanvasElement as GHCJS.DOM.HTMLCanvasElement
+          , JSDOM.HTMLCollection as GHCJS.DOM.HTMLCollection
+          , JSDOM.HTMLDListElement as GHCJS.DOM.HTMLDListElement
+          , JSDOM.HTMLDataListElement as GHCJS.DOM.HTMLDataListElement
+          , JSDOM.HTMLDetailsElement as GHCJS.DOM.HTMLDetailsElement
+          , JSDOM.HTMLDirectoryElement as GHCJS.DOM.HTMLDirectoryElement
+          , JSDOM.HTMLDivElement as GHCJS.DOM.HTMLDivElement
+          , JSDOM.HTMLDocument as GHCJS.DOM.HTMLDocument
+          , JSDOM.HTMLElement as GHCJS.DOM.HTMLElement
+          , JSDOM.HTMLEmbedElement as GHCJS.DOM.HTMLEmbedElement
+          , JSDOM.HTMLFieldSetElement as GHCJS.DOM.HTMLFieldSetElement
+          , JSDOM.HTMLFontElement as GHCJS.DOM.HTMLFontElement
+          , JSDOM.HTMLFormControlsCollection as GHCJS.DOM.HTMLFormControlsCollection
+          , JSDOM.HTMLFormElement as GHCJS.DOM.HTMLFormElement
+          , JSDOM.HTMLFrameElement as GHCJS.DOM.HTMLFrameElement
+          , JSDOM.HTMLFrameSetElement as GHCJS.DOM.HTMLFrameSetElement
+          , JSDOM.HTMLHRElement as GHCJS.DOM.HTMLHRElement
+          , JSDOM.HTMLHeadElement as GHCJS.DOM.HTMLHeadElement
+          , JSDOM.HTMLHeadingElement as GHCJS.DOM.HTMLHeadingElement
+          , JSDOM.HTMLHtmlElement as GHCJS.DOM.HTMLHtmlElement
+          , JSDOM.HTMLIFrameElement as GHCJS.DOM.HTMLIFrameElement
+          , JSDOM.HTMLImageElement as GHCJS.DOM.HTMLImageElement
+          , JSDOM.HTMLInputElement as GHCJS.DOM.HTMLInputElement
+          , JSDOM.HTMLKeygenElement as GHCJS.DOM.HTMLKeygenElement
+          , JSDOM.HTMLLIElement as GHCJS.DOM.HTMLLIElement
+          , JSDOM.HTMLLabelElement as GHCJS.DOM.HTMLLabelElement
+          , JSDOM.HTMLLegendElement as GHCJS.DOM.HTMLLegendElement
+          , JSDOM.HTMLLinkElement as GHCJS.DOM.HTMLLinkElement
+          , JSDOM.HTMLMapElement as GHCJS.DOM.HTMLMapElement
+          , JSDOM.HTMLMarqueeElement as GHCJS.DOM.HTMLMarqueeElement
+          , JSDOM.HTMLMediaElement as GHCJS.DOM.HTMLMediaElement
+          , JSDOM.HTMLMenuElement as GHCJS.DOM.HTMLMenuElement
+          , JSDOM.HTMLMetaElement as GHCJS.DOM.HTMLMetaElement
+          , JSDOM.HTMLMeterElement as GHCJS.DOM.HTMLMeterElement
+          , JSDOM.HTMLModElement as GHCJS.DOM.HTMLModElement
+          , JSDOM.HTMLOListElement as GHCJS.DOM.HTMLOListElement
+          , JSDOM.HTMLObjectElement as GHCJS.DOM.HTMLObjectElement
+          , JSDOM.HTMLOptGroupElement as GHCJS.DOM.HTMLOptGroupElement
+          , JSDOM.HTMLOptionElement as GHCJS.DOM.HTMLOptionElement
+          , JSDOM.HTMLOptionsCollection as GHCJS.DOM.HTMLOptionsCollection
+          , JSDOM.HTMLOutputElement as GHCJS.DOM.HTMLOutputElement
+          , JSDOM.HTMLParagraphElement as GHCJS.DOM.HTMLParagraphElement
+          , JSDOM.HTMLParamElement as GHCJS.DOM.HTMLParamElement
+          , JSDOM.HTMLPreElement as GHCJS.DOM.HTMLPreElement
+          , JSDOM.HTMLProgressElement as GHCJS.DOM.HTMLProgressElement
+          , JSDOM.HTMLQuoteElement as GHCJS.DOM.HTMLQuoteElement
+          , JSDOM.HTMLScriptElement as GHCJS.DOM.HTMLScriptElement
+          , JSDOM.HTMLSelectElement as GHCJS.DOM.HTMLSelectElement
+          , JSDOM.HTMLSourceElement as GHCJS.DOM.HTMLSourceElement
+          , JSDOM.HTMLStyleElement as GHCJS.DOM.HTMLStyleElement
+          , JSDOM.HTMLTableCaptionElement as GHCJS.DOM.HTMLTableCaptionElement
+          , JSDOM.HTMLTableCellElement as GHCJS.DOM.HTMLTableCellElement
+          , JSDOM.HTMLTableColElement as GHCJS.DOM.HTMLTableColElement
+          , JSDOM.HTMLTableElement as GHCJS.DOM.HTMLTableElement
+          , JSDOM.HTMLTableRowElement as GHCJS.DOM.HTMLTableRowElement
+          , JSDOM.HTMLTableSectionElement as GHCJS.DOM.HTMLTableSectionElement
+          , JSDOM.HTMLTemplateElement as GHCJS.DOM.HTMLTemplateElement
+          , JSDOM.HTMLTextAreaElement as GHCJS.DOM.HTMLTextAreaElement
+          , JSDOM.HTMLTitleElement as GHCJS.DOM.HTMLTitleElement
+          , JSDOM.HTMLTrackElement as GHCJS.DOM.HTMLTrackElement
+          , JSDOM.HTMLUListElement as GHCJS.DOM.HTMLUListElement
+          , JSDOM.HTMLVideoElement as GHCJS.DOM.HTMLVideoElement
+          , JSDOM.HashChangeEvent as GHCJS.DOM.HashChangeEvent
+          , JSDOM.History as GHCJS.DOM.History
+          , JSDOM.IDBCursor as GHCJS.DOM.IDBCursor
+          , JSDOM.IDBCursorWithValue as GHCJS.DOM.IDBCursorWithValue
+          , JSDOM.IDBDatabase as GHCJS.DOM.IDBDatabase
+          , JSDOM.IDBFactory as GHCJS.DOM.IDBFactory
+          , JSDOM.IDBIndex as GHCJS.DOM.IDBIndex
+          , JSDOM.IDBKeyRange as GHCJS.DOM.IDBKeyRange
+          , JSDOM.IDBObjectStore as GHCJS.DOM.IDBObjectStore
+          , JSDOM.IDBOpenDBRequest as GHCJS.DOM.IDBOpenDBRequest
+          , JSDOM.IDBRequest as GHCJS.DOM.IDBRequest
+          , JSDOM.IDBTransaction as GHCJS.DOM.IDBTransaction
+          , JSDOM.IDBVersionChangeEvent as GHCJS.DOM.IDBVersionChangeEvent
+          , JSDOM.ImageData as GHCJS.DOM.ImageData
+          , JSDOM.InspectorFrontendHost as GHCJS.DOM.InspectorFrontendHost
+          , JSDOM.InternalSettings as GHCJS.DOM.InternalSettings
+          , JSDOM.Internals as GHCJS.DOM.Internals
+          , JSDOM.KeyboardEvent as GHCJS.DOM.KeyboardEvent
+          , JSDOM.Location as GHCJS.DOM.Location
+          , JSDOM.MallocStatistics as GHCJS.DOM.MallocStatistics
+          , JSDOM.MediaController as GHCJS.DOM.MediaController
+          , JSDOM.MediaControlsHost as GHCJS.DOM.MediaControlsHost
+          , JSDOM.MediaElementAudioSourceNode as GHCJS.DOM.MediaElementAudioSourceNode
+          , JSDOM.MediaError as GHCJS.DOM.MediaError
+          , JSDOM.MediaKeyError as GHCJS.DOM.MediaKeyError
+          , JSDOM.MediaKeyEvent as GHCJS.DOM.MediaKeyEvent
+          , JSDOM.MediaKeyMessageEvent as GHCJS.DOM.MediaKeyMessageEvent
+          , JSDOM.MediaKeyNeededEvent as GHCJS.DOM.MediaKeyNeededEvent
+          , JSDOM.MediaKeySession as GHCJS.DOM.MediaKeySession
+          , JSDOM.MediaKeys as GHCJS.DOM.MediaKeys
+          , JSDOM.MediaList as GHCJS.DOM.MediaList
+          , JSDOM.MediaQueryList as GHCJS.DOM.MediaQueryList
+          , JSDOM.MediaQueryListListener as GHCJS.DOM.MediaQueryListListener
+          , JSDOM.MediaSource as GHCJS.DOM.MediaSource
+          , JSDOM.MediaSourceStates as GHCJS.DOM.MediaSourceStates
+          , JSDOM.MediaStream as GHCJS.DOM.MediaStream
+          , JSDOM.MediaStreamAudioDestinationNode as GHCJS.DOM.MediaStreamAudioDestinationNode
+          , JSDOM.MediaStreamAudioSourceNode as GHCJS.DOM.MediaStreamAudioSourceNode
+          , JSDOM.MediaStreamEvent as GHCJS.DOM.MediaStreamEvent
+          , JSDOM.MediaStreamTrack as GHCJS.DOM.MediaStreamTrack
+          , JSDOM.MediaStreamTrackEvent as GHCJS.DOM.MediaStreamTrackEvent
+          , JSDOM.MediaStreamTrackSourcesCallback as GHCJS.DOM.MediaStreamTrackSourcesCallback
+          , JSDOM.MediaTrackConstraints as GHCJS.DOM.MediaTrackConstraints
+          , JSDOM.MemoryInfo as GHCJS.DOM.MemoryInfo
+          , JSDOM.MessageChannel as GHCJS.DOM.MessageChannel
+          , JSDOM.MessageEvent as GHCJS.DOM.MessageEvent
+          , JSDOM.MessagePort as GHCJS.DOM.MessagePort
+          , JSDOM.MimeType as GHCJS.DOM.MimeType
+          , JSDOM.MimeTypeArray as GHCJS.DOM.MimeTypeArray
+          , JSDOM.MouseEvent as GHCJS.DOM.MouseEvent
+          , JSDOM.MutationEvent as GHCJS.DOM.MutationEvent
+          , JSDOM.MutationObserver as GHCJS.DOM.MutationObserver
+          , JSDOM.MutationRecord as GHCJS.DOM.MutationRecord
+          , JSDOM.NamedNodeMap as GHCJS.DOM.NamedNodeMap
+          , JSDOM.Navigator as GHCJS.DOM.Navigator
+          , JSDOM.NavigatorUserMediaError as GHCJS.DOM.NavigatorUserMediaError
+          , JSDOM.NavigatorUserMediaErrorCallback as GHCJS.DOM.NavigatorUserMediaErrorCallback
+          , JSDOM.NavigatorUserMediaSuccessCallback as GHCJS.DOM.NavigatorUserMediaSuccessCallback
+          , JSDOM.Node as GHCJS.DOM.Node
+          , JSDOM.NodeFilter as GHCJS.DOM.NodeFilter
+          , JSDOM.NodeIterator as GHCJS.DOM.NodeIterator
+          , JSDOM.NodeList as GHCJS.DOM.NodeList
+          , JSDOM.Notification as GHCJS.DOM.Notification
+          , JSDOM.NotificationCenter as GHCJS.DOM.NotificationCenter
+          , JSDOM.NotificationPermissionCallback as GHCJS.DOM.NotificationPermissionCallback
+          , JSDOM.OESStandardDerivatives as GHCJS.DOM.OESStandardDerivatives
+          , JSDOM.OESTextureHalfFloat as GHCJS.DOM.OESTextureHalfFloat
+          , JSDOM.OESVertexArrayObject as GHCJS.DOM.OESVertexArrayObject
+          , JSDOM.OfflineAudioCompletionEvent as GHCJS.DOM.OfflineAudioCompletionEvent
+          , JSDOM.OfflineAudioContext as GHCJS.DOM.OfflineAudioContext
+          , JSDOM.OscillatorNode as GHCJS.DOM.OscillatorNode
+          , JSDOM.OverflowEvent as GHCJS.DOM.OverflowEvent
+          , JSDOM.PageTransitionEvent as GHCJS.DOM.PageTransitionEvent
+          , JSDOM.PannerNode as GHCJS.DOM.PannerNode
+          , JSDOM.Path2D as GHCJS.DOM.Path2D
+          , JSDOM.Performance as GHCJS.DOM.Performance
+          , JSDOM.PerformanceEntry as GHCJS.DOM.PerformanceEntry
+          , JSDOM.PerformanceEntryList as GHCJS.DOM.PerformanceEntryList
+          , JSDOM.PerformanceNavigation as GHCJS.DOM.PerformanceNavigation
+          , JSDOM.PerformanceResourceTiming as GHCJS.DOM.PerformanceResourceTiming
+          , JSDOM.PerformanceTiming as GHCJS.DOM.PerformanceTiming
+          , JSDOM.Plugin as GHCJS.DOM.Plugin
+          , JSDOM.PluginArray as GHCJS.DOM.PluginArray
+          , JSDOM.PopStateEvent as GHCJS.DOM.PopStateEvent
+          , JSDOM.PositionCallback as GHCJS.DOM.PositionCallback
+          , JSDOM.PositionError as GHCJS.DOM.PositionError
+          , JSDOM.PositionErrorCallback as GHCJS.DOM.PositionErrorCallback
+          , JSDOM.ProcessingInstruction as GHCJS.DOM.ProcessingInstruction
+          , JSDOM.ProgressEvent as GHCJS.DOM.ProgressEvent
+          , JSDOM.QuickTimePluginReplacement as GHCJS.DOM.QuickTimePluginReplacement
+          , JSDOM.RGBColor as GHCJS.DOM.RGBColor
+          , JSDOM.RTCConfiguration as GHCJS.DOM.RTCConfiguration
+          , JSDOM.RTCDTMFSender as GHCJS.DOM.RTCDTMFSender
+          , JSDOM.RTCDTMFToneChangeEvent as GHCJS.DOM.RTCDTMFToneChangeEvent
+          , JSDOM.RTCDataChannel as GHCJS.DOM.RTCDataChannel
+          , JSDOM.RTCDataChannelEvent as GHCJS.DOM.RTCDataChannelEvent
+          , JSDOM.RTCIceCandidate as GHCJS.DOM.RTCIceCandidate
+          , JSDOM.RTCIceCandidateEvent as GHCJS.DOM.RTCIceCandidateEvent
+          , JSDOM.RTCIceServer as GHCJS.DOM.RTCIceServer
+          , JSDOM.RTCPeerConnection as GHCJS.DOM.RTCPeerConnection
+          , JSDOM.RTCPeerConnectionErrorCallback as GHCJS.DOM.RTCPeerConnectionErrorCallback
+          , JSDOM.RTCSessionDescription as GHCJS.DOM.RTCSessionDescription
+          , JSDOM.RTCSessionDescriptionCallback as GHCJS.DOM.RTCSessionDescriptionCallback
+          , JSDOM.RTCStatsCallback as GHCJS.DOM.RTCStatsCallback
+          , JSDOM.RTCStatsReport as GHCJS.DOM.RTCStatsReport
+          , JSDOM.RTCStatsResponse as GHCJS.DOM.RTCStatsResponse
+          , JSDOM.RadioNodeList as GHCJS.DOM.RadioNodeList
+          , JSDOM.Range as GHCJS.DOM.Range
+          , JSDOM.ReadableStream as GHCJS.DOM.ReadableStream
+          , JSDOM.Rect as GHCJS.DOM.Rect
+          , JSDOM.RequestAnimationFrameCallback as GHCJS.DOM.RequestAnimationFrameCallback
+          , JSDOM.SQLError as GHCJS.DOM.SQLError
+          , JSDOM.SQLResultSet as GHCJS.DOM.SQLResultSet
+          , JSDOM.SQLResultSetRowList as GHCJS.DOM.SQLResultSetRowList
+          , JSDOM.SQLStatementCallback as GHCJS.DOM.SQLStatementCallback
+          , JSDOM.SQLStatementErrorCallback as GHCJS.DOM.SQLStatementErrorCallback
+          , JSDOM.SQLTransaction as GHCJS.DOM.SQLTransaction
+          , JSDOM.SQLTransactionCallback as GHCJS.DOM.SQLTransactionCallback
+          , JSDOM.SQLTransactionErrorCallback as GHCJS.DOM.SQLTransactionErrorCallback
+          , JSDOM.SVGAElement as GHCJS.DOM.SVGAElement
+          , JSDOM.SVGAltGlyphElement as GHCJS.DOM.SVGAltGlyphElement
+          , JSDOM.SVGAngle as GHCJS.DOM.SVGAngle
+          , JSDOM.SVGAnimatedAngle as GHCJS.DOM.SVGAnimatedAngle
+          , JSDOM.SVGAnimatedBoolean as GHCJS.DOM.SVGAnimatedBoolean
+          , JSDOM.SVGAnimatedEnumeration as GHCJS.DOM.SVGAnimatedEnumeration
+          , JSDOM.SVGAnimatedInteger as GHCJS.DOM.SVGAnimatedInteger
+          , JSDOM.SVGAnimatedLength as GHCJS.DOM.SVGAnimatedLength
+          , JSDOM.SVGAnimatedLengthList as GHCJS.DOM.SVGAnimatedLengthList
+          , JSDOM.SVGAnimatedNumber as GHCJS.DOM.SVGAnimatedNumber
+          , JSDOM.SVGAnimatedNumberList as GHCJS.DOM.SVGAnimatedNumberList
+          , JSDOM.SVGAnimatedPreserveAspectRatio as GHCJS.DOM.SVGAnimatedPreserveAspectRatio
+          , JSDOM.SVGAnimatedRect as GHCJS.DOM.SVGAnimatedRect
+          , JSDOM.SVGAnimatedString as GHCJS.DOM.SVGAnimatedString
+          , JSDOM.SVGAnimatedTransformList as GHCJS.DOM.SVGAnimatedTransformList
+          , JSDOM.SVGAnimationElement as GHCJS.DOM.SVGAnimationElement
+          , JSDOM.SVGCircleElement as GHCJS.DOM.SVGCircleElement
+          , JSDOM.SVGClipPathElement as GHCJS.DOM.SVGClipPathElement
+          , JSDOM.SVGColor as GHCJS.DOM.SVGColor
+          , JSDOM.SVGComponentTransferFunctionElement as GHCJS.DOM.SVGComponentTransferFunctionElement
+          , JSDOM.SVGCursorElement as GHCJS.DOM.SVGCursorElement
+          , JSDOM.SVGDocument as GHCJS.DOM.SVGDocument
+          , JSDOM.SVGElement as GHCJS.DOM.SVGElement
+          , JSDOM.SVGEllipseElement as GHCJS.DOM.SVGEllipseElement
+          , JSDOM.SVGExternalResourcesRequired as GHCJS.DOM.SVGExternalResourcesRequired
+          , JSDOM.SVGFEBlendElement as GHCJS.DOM.SVGFEBlendElement
+          , JSDOM.SVGFEColorMatrixElement as GHCJS.DOM.SVGFEColorMatrixElement
+          , JSDOM.SVGFEComponentTransferElement as GHCJS.DOM.SVGFEComponentTransferElement
+          , JSDOM.SVGFECompositeElement as GHCJS.DOM.SVGFECompositeElement
+          , JSDOM.SVGFEConvolveMatrixElement as GHCJS.DOM.SVGFEConvolveMatrixElement
+          , JSDOM.SVGFEDiffuseLightingElement as GHCJS.DOM.SVGFEDiffuseLightingElement
+          , JSDOM.SVGFEDisplacementMapElement as GHCJS.DOM.SVGFEDisplacementMapElement
+          , JSDOM.SVGFEDistantLightElement as GHCJS.DOM.SVGFEDistantLightElement
+          , JSDOM.SVGFEDropShadowElement as GHCJS.DOM.SVGFEDropShadowElement
+          , JSDOM.SVGFEGaussianBlurElement as GHCJS.DOM.SVGFEGaussianBlurElement
+          , JSDOM.SVGFEImageElement as GHCJS.DOM.SVGFEImageElement
+          , JSDOM.SVGFEMergeNodeElement as GHCJS.DOM.SVGFEMergeNodeElement
+          , JSDOM.SVGFEMorphologyElement as GHCJS.DOM.SVGFEMorphologyElement
+          , JSDOM.SVGFEOffsetElement as GHCJS.DOM.SVGFEOffsetElement
+          , JSDOM.SVGFEPointLightElement as GHCJS.DOM.SVGFEPointLightElement
+          , JSDOM.SVGFESpecularLightingElement as GHCJS.DOM.SVGFESpecularLightingElement
+          , JSDOM.SVGFESpotLightElement as GHCJS.DOM.SVGFESpotLightElement
+          , JSDOM.SVGFETileElement as GHCJS.DOM.SVGFETileElement
+          , JSDOM.SVGFETurbulenceElement as GHCJS.DOM.SVGFETurbulenceElement
+          , JSDOM.SVGFilterElement as GHCJS.DOM.SVGFilterElement
+          , JSDOM.SVGFilterPrimitiveStandardAttributes as GHCJS.DOM.SVGFilterPrimitiveStandardAttributes
+          , JSDOM.SVGFitToViewBox as GHCJS.DOM.SVGFitToViewBox
+          , JSDOM.SVGForeignObjectElement as GHCJS.DOM.SVGForeignObjectElement
+          , JSDOM.SVGGlyphRefElement as GHCJS.DOM.SVGGlyphRefElement
+          , JSDOM.SVGGradientElement as GHCJS.DOM.SVGGradientElement
+          , JSDOM.SVGGraphicsElement as GHCJS.DOM.SVGGraphicsElement
+          , JSDOM.SVGImageElement as GHCJS.DOM.SVGImageElement
+          , JSDOM.SVGLength as GHCJS.DOM.SVGLength
+          , JSDOM.SVGLengthList as GHCJS.DOM.SVGLengthList
+          , JSDOM.SVGLineElement as GHCJS.DOM.SVGLineElement
+          , JSDOM.SVGLinearGradientElement as GHCJS.DOM.SVGLinearGradientElement
+          , JSDOM.SVGMarkerElement as GHCJS.DOM.SVGMarkerElement
+          , JSDOM.SVGMaskElement as GHCJS.DOM.SVGMaskElement
+          , JSDOM.SVGMatrix as GHCJS.DOM.SVGMatrix
+          , JSDOM.SVGNumber as GHCJS.DOM.SVGNumber
+          , JSDOM.SVGNumberList as GHCJS.DOM.SVGNumberList
+          , JSDOM.SVGPaint as GHCJS.DOM.SVGPaint
+          , JSDOM.SVGPathElement as GHCJS.DOM.SVGPathElement
+          , JSDOM.SVGPathSeg as GHCJS.DOM.SVGPathSeg
+          , JSDOM.SVGPathSegArcAbs as GHCJS.DOM.SVGPathSegArcAbs
+          , JSDOM.SVGPathSegArcRel as GHCJS.DOM.SVGPathSegArcRel
+          , JSDOM.SVGPathSegCurvetoCubicAbs as GHCJS.DOM.SVGPathSegCurvetoCubicAbs
+          , JSDOM.SVGPathSegCurvetoCubicRel as GHCJS.DOM.SVGPathSegCurvetoCubicRel
+          , JSDOM.SVGPathSegCurvetoCubicSmoothAbs as GHCJS.DOM.SVGPathSegCurvetoCubicSmoothAbs
+          , JSDOM.SVGPathSegCurvetoCubicSmoothRel as GHCJS.DOM.SVGPathSegCurvetoCubicSmoothRel
+          , JSDOM.SVGPathSegCurvetoQuadraticAbs as GHCJS.DOM.SVGPathSegCurvetoQuadraticAbs
+          , JSDOM.SVGPathSegCurvetoQuadraticRel as GHCJS.DOM.SVGPathSegCurvetoQuadraticRel
+          , JSDOM.SVGPathSegCurvetoQuadraticSmoothAbs as GHCJS.DOM.SVGPathSegCurvetoQuadraticSmoothAbs
+          , JSDOM.SVGPathSegCurvetoQuadraticSmoothRel as GHCJS.DOM.SVGPathSegCurvetoQuadraticSmoothRel
+          , JSDOM.SVGPathSegLinetoAbs as GHCJS.DOM.SVGPathSegLinetoAbs
+          , JSDOM.SVGPathSegLinetoHorizontalAbs as GHCJS.DOM.SVGPathSegLinetoHorizontalAbs
+          , JSDOM.SVGPathSegLinetoHorizontalRel as GHCJS.DOM.SVGPathSegLinetoHorizontalRel
+          , JSDOM.SVGPathSegLinetoRel as GHCJS.DOM.SVGPathSegLinetoRel
+          , JSDOM.SVGPathSegLinetoVerticalAbs as GHCJS.DOM.SVGPathSegLinetoVerticalAbs
+          , JSDOM.SVGPathSegLinetoVerticalRel as GHCJS.DOM.SVGPathSegLinetoVerticalRel
+          , JSDOM.SVGPathSegList as GHCJS.DOM.SVGPathSegList
+          , JSDOM.SVGPathSegMovetoAbs as GHCJS.DOM.SVGPathSegMovetoAbs
+          , JSDOM.SVGPathSegMovetoRel as GHCJS.DOM.SVGPathSegMovetoRel
+          , JSDOM.SVGPatternElement as GHCJS.DOM.SVGPatternElement
+          , JSDOM.SVGPoint as GHCJS.DOM.SVGPoint
+          , JSDOM.SVGPointList as GHCJS.DOM.SVGPointList
+          , JSDOM.SVGPolygonElement as GHCJS.DOM.SVGPolygonElement
+          , JSDOM.SVGPolylineElement as GHCJS.DOM.SVGPolylineElement
+          , JSDOM.SVGPreserveAspectRatio as GHCJS.DOM.SVGPreserveAspectRatio
+          , JSDOM.SVGRadialGradientElement as GHCJS.DOM.SVGRadialGradientElement
+          , JSDOM.SVGRect as GHCJS.DOM.SVGRect
+          , JSDOM.SVGRectElement as GHCJS.DOM.SVGRectElement
+          , JSDOM.SVGRenderingIntent as GHCJS.DOM.SVGRenderingIntent
+          , JSDOM.SVGSVGElement as GHCJS.DOM.SVGSVGElement
+          , JSDOM.SVGScriptElement as GHCJS.DOM.SVGScriptElement
+          , JSDOM.SVGStopElement as GHCJS.DOM.SVGStopElement
+          , JSDOM.SVGStringList as GHCJS.DOM.SVGStringList
+          , JSDOM.SVGStyleElement as GHCJS.DOM.SVGStyleElement
+          , JSDOM.SVGTests as GHCJS.DOM.SVGTests
+          , JSDOM.SVGTextContentElement as GHCJS.DOM.SVGTextContentElement
+          , JSDOM.SVGTextPathElement as GHCJS.DOM.SVGTextPathElement
+          , JSDOM.SVGTextPositioningElement as GHCJS.DOM.SVGTextPositioningElement
+          , JSDOM.SVGTransform as GHCJS.DOM.SVGTransform
+          , JSDOM.SVGTransformList as GHCJS.DOM.SVGTransformList
+          , JSDOM.SVGURIReference as GHCJS.DOM.SVGURIReference
+          , JSDOM.SVGUnitTypes as GHCJS.DOM.SVGUnitTypes
+          , JSDOM.SVGUseElement as GHCJS.DOM.SVGUseElement
+          , JSDOM.SVGViewElement as GHCJS.DOM.SVGViewElement
+          , JSDOM.SVGViewSpec as GHCJS.DOM.SVGViewSpec
+          , JSDOM.SVGZoomAndPan as GHCJS.DOM.SVGZoomAndPan
+          , JSDOM.SVGZoomEvent as GHCJS.DOM.SVGZoomEvent
+          , JSDOM.Screen as GHCJS.DOM.Screen
+          , JSDOM.ScriptProcessorNode as GHCJS.DOM.ScriptProcessorNode
+          , JSDOM.ScriptProfile as GHCJS.DOM.ScriptProfile
+          , JSDOM.ScriptProfileNode as GHCJS.DOM.ScriptProfileNode
+          , JSDOM.SecurityPolicy as GHCJS.DOM.SecurityPolicy
+          , JSDOM.SecurityPolicyViolationEvent as GHCJS.DOM.SecurityPolicyViolationEvent
+          , JSDOM.Selection as GHCJS.DOM.Selection
+          , JSDOM.SourceBuffer as GHCJS.DOM.SourceBuffer
+          , JSDOM.SourceBufferList as GHCJS.DOM.SourceBufferList
+          , JSDOM.SourceInfo as GHCJS.DOM.SourceInfo
+          , JSDOM.SpeechSynthesis as GHCJS.DOM.SpeechSynthesis
+          , JSDOM.SpeechSynthesisEvent as GHCJS.DOM.SpeechSynthesisEvent
+          , JSDOM.SpeechSynthesisUtterance as GHCJS.DOM.SpeechSynthesisUtterance
+          , JSDOM.SpeechSynthesisVoice as GHCJS.DOM.SpeechSynthesisVoice
+          , JSDOM.Storage as GHCJS.DOM.Storage
+          , JSDOM.StorageErrorCallback as GHCJS.DOM.StorageErrorCallback
+          , JSDOM.StorageEvent as GHCJS.DOM.StorageEvent
+          , JSDOM.StorageInfo as GHCJS.DOM.StorageInfo
+          , JSDOM.StorageQuota as GHCJS.DOM.StorageQuota
+          , JSDOM.StorageQuotaCallback as GHCJS.DOM.StorageQuotaCallback
+          , JSDOM.StorageUsageCallback as GHCJS.DOM.StorageUsageCallback
+          , JSDOM.StringCallback as GHCJS.DOM.StringCallback
+          , JSDOM.StyleMedia as GHCJS.DOM.StyleMedia
+          , JSDOM.StyleSheet as GHCJS.DOM.StyleSheet
+          , JSDOM.StyleSheetList as GHCJS.DOM.StyleSheetList
+          , JSDOM.SubtleCrypto as GHCJS.DOM.SubtleCrypto
+          , JSDOM.Text as GHCJS.DOM.Text
+          , JSDOM.TextEvent as GHCJS.DOM.TextEvent
+          , JSDOM.TextMetrics as GHCJS.DOM.TextMetrics
+          , JSDOM.TextTrack as GHCJS.DOM.TextTrack
+          , JSDOM.TextTrackCue as GHCJS.DOM.TextTrackCue
+          , JSDOM.TextTrackCueList as GHCJS.DOM.TextTrackCueList
+          , JSDOM.TextTrackList as GHCJS.DOM.TextTrackList
+          , JSDOM.TimeRanges as GHCJS.DOM.TimeRanges
+          , JSDOM.Touch as GHCJS.DOM.Touch
+          , JSDOM.TouchEvent as GHCJS.DOM.TouchEvent
+          , JSDOM.TouchList as GHCJS.DOM.TouchList
+          , JSDOM.TrackEvent as GHCJS.DOM.TrackEvent
+          , JSDOM.TransitionEvent as GHCJS.DOM.TransitionEvent
+          , JSDOM.TreeWalker as GHCJS.DOM.TreeWalker
+          , JSDOM.TypeConversions as GHCJS.DOM.TypeConversions
+          , JSDOM.UIEvent as GHCJS.DOM.UIEvent
+          , JSDOM.UIRequestEvent as GHCJS.DOM.UIRequestEvent
+          , JSDOM.URL as GHCJS.DOM.URL
+          , JSDOM.URLUtils as GHCJS.DOM.URLUtils
+          , JSDOM.UserMessageHandler as GHCJS.DOM.UserMessageHandler
+          , JSDOM.VTTCue as GHCJS.DOM.VTTCue
+          , JSDOM.VTTRegion as GHCJS.DOM.VTTRegion
+          , JSDOM.VTTRegionList as GHCJS.DOM.VTTRegionList
+          , JSDOM.ValidityState as GHCJS.DOM.ValidityState
+          , JSDOM.VideoPlaybackQuality as GHCJS.DOM.VideoPlaybackQuality
+          , JSDOM.VideoStreamTrack as GHCJS.DOM.VideoStreamTrack
+          , JSDOM.VideoTrack as GHCJS.DOM.VideoTrack
+          , JSDOM.VideoTrackList as GHCJS.DOM.VideoTrackList
+          , JSDOM.VoidCallback as GHCJS.DOM.VoidCallback
+          , JSDOM.WaveShaperNode as GHCJS.DOM.WaveShaperNode
+          , JSDOM.WebGL2RenderingContext as GHCJS.DOM.WebGL2RenderingContext
+          , JSDOM.WebGLActiveInfo as GHCJS.DOM.WebGLActiveInfo
+          , JSDOM.WebGLCompressedTextureATC as GHCJS.DOM.WebGLCompressedTextureATC
+          , JSDOM.WebGLCompressedTexturePVRTC as GHCJS.DOM.WebGLCompressedTexturePVRTC
+          , JSDOM.WebGLCompressedTextureS3TC as GHCJS.DOM.WebGLCompressedTextureS3TC
+          , JSDOM.WebGLContextAttributes as GHCJS.DOM.WebGLContextAttributes
+          , JSDOM.WebGLContextEvent as GHCJS.DOM.WebGLContextEvent
+          , JSDOM.WebGLDebugRendererInfo as GHCJS.DOM.WebGLDebugRendererInfo
+          , JSDOM.WebGLDebugShaders as GHCJS.DOM.WebGLDebugShaders
+          , JSDOM.WebGLDepthTexture as GHCJS.DOM.WebGLDepthTexture
+          , JSDOM.WebGLDrawBuffers as GHCJS.DOM.WebGLDrawBuffers
+          , JSDOM.WebGLLoseContext as GHCJS.DOM.WebGLLoseContext
+          , JSDOM.WebGLRenderingContextBase as GHCJS.DOM.WebGLRenderingContextBase
+          , JSDOM.WebGLShaderPrecisionFormat as GHCJS.DOM.WebGLShaderPrecisionFormat
+          , JSDOM.WebKitAnimationEvent as GHCJS.DOM.WebKitAnimationEvent
+          , JSDOM.WebKitCSSFilterValue as GHCJS.DOM.WebKitCSSFilterValue
+          , JSDOM.WebKitCSSMatrix as GHCJS.DOM.WebKitCSSMatrix
+          , JSDOM.WebKitCSSRegionRule as GHCJS.DOM.WebKitCSSRegionRule
+          , JSDOM.WebKitCSSTransformValue as GHCJS.DOM.WebKitCSSTransformValue
+          , JSDOM.WebKitCSSViewportRule as GHCJS.DOM.WebKitCSSViewportRule
+          , JSDOM.WebKitNamedFlow as GHCJS.DOM.WebKitNamedFlow
+          , JSDOM.WebKitNamespace as GHCJS.DOM.WebKitNamespace
+          , JSDOM.WebKitPlaybackTargetAvailabilityEvent as GHCJS.DOM.WebKitPlaybackTargetAvailabilityEvent
+          , JSDOM.WebKitPoint as GHCJS.DOM.WebKitPoint
+          , JSDOM.WebKitTransitionEvent as GHCJS.DOM.WebKitTransitionEvent
+          , JSDOM.WebSocket as GHCJS.DOM.WebSocket
+          , JSDOM.WheelEvent as GHCJS.DOM.WheelEvent
+          , JSDOM.Window as GHCJS.DOM.Window
+          , JSDOM.WindowBase64 as GHCJS.DOM.WindowBase64
+          , JSDOM.WindowTimers as GHCJS.DOM.WindowTimers
+          , JSDOM.Worker as GHCJS.DOM.Worker
+          , JSDOM.WorkerGlobalScope as GHCJS.DOM.WorkerGlobalScope
+          , JSDOM.WorkerLocation as GHCJS.DOM.WorkerLocation
+          , JSDOM.WorkerNavigator as GHCJS.DOM.WorkerNavigator
+          , JSDOM.XMLHttpRequest as GHCJS.DOM.XMLHttpRequest
+          , JSDOM.XMLHttpRequestProgressEvent as GHCJS.DOM.XMLHttpRequestProgressEvent
+          , JSDOM.XMLHttpRequestUpload as GHCJS.DOM.XMLHttpRequestUpload
+          , JSDOM.XMLSerializer as GHCJS.DOM.XMLSerializer
+          , JSDOM.XPathEvaluator as GHCJS.DOM.XPathEvaluator
+          , JSDOM.XPathExpression as GHCJS.DOM.XPathExpression
+          , JSDOM.XPathNSResolver as GHCJS.DOM.XPathNSResolver
+          , JSDOM.XPathResult as GHCJS.DOM.XPathResult
+          , JSDOM.XSLTProcessor as GHCJS.DOM.XSLTProcessor
+
