Merge from Chromium at DEPS revision r213780

This commit was generated by merge_to_master.py.

Change-Id: I702915ad75bd2cc5201b0239db771978b0a8137d
diff --git a/Source/WebKit/chromium/WebKit.gyp b/Source/WebKit/chromium/WebKit.gyp
index fbbd3e9..0d74cd2 100644
--- a/Source/WebKit/chromium/WebKit.gyp
+++ b/Source/WebKit/chromium/WebKit.gyp
@@ -263,6 +263,10 @@
             'dependencies': [
                 '../../wtf/wtf.gyp:wtf',
                 '<(DEPTH)/skia/skia.gyp:skia',
+                '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
+            ],
+            'export_dependent_settings': [
+              '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
             ],
             'defines': [
                 'INSIDE_WEBKIT',
diff --git a/Source/WebKit/chromium/blink_common.target.darwin-arm.mk b/Source/WebKit/chromium/blink_common.target.darwin-arm.mk
index 9bd4462..166e7a2 100644
--- a/Source/WebKit/chromium/blink_common.target.darwin-arm.mk
+++ b/Source/WebKit/chromium/blink_common.target.darwin-arm.mk
@@ -12,7 +12,8 @@
 # Make sure our deps are built first.
 GYP_TARGET_DEPENDENCIES := \
 	$(call intermediates-dir-for,GYP,skia_skia_gyp)/skia.stamp \
-	$(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp)/skia_skia_library_gyp.a
+	$(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp)/skia_skia_library_gyp.a \
+	$(call intermediates-dir-for,GYP,v8_tools_gyp_v8_gyp)/v8.stamp
 
 GYP_GENERATED_OUTPUTS :=
 
@@ -142,6 +143,7 @@
 	$(LOCAL_PATH)/third_party/skia/include/ports \
 	$(LOCAL_PATH)/third_party/skia/include/utils \
 	$(LOCAL_PATH)/skia/ext \
+	$(LOCAL_PATH)/v8/include \
 	$(PWD)/frameworks/wilhelm/include \
 	$(PWD)/bionic \
 	$(PWD)/external/stlport/stlport
@@ -274,6 +276,7 @@
 	$(LOCAL_PATH)/third_party/skia/include/ports \
 	$(LOCAL_PATH)/third_party/skia/include/utils \
 	$(LOCAL_PATH)/skia/ext \
+	$(LOCAL_PATH)/v8/include \
 	$(PWD)/frameworks/wilhelm/include \
 	$(PWD)/bionic \
 	$(PWD)/external/stlport/stlport
diff --git a/Source/WebKit/chromium/blink_common.target.darwin-mips.mk b/Source/WebKit/chromium/blink_common.target.darwin-mips.mk
index b3a660f..32c9baa 100644
--- a/Source/WebKit/chromium/blink_common.target.darwin-mips.mk
+++ b/Source/WebKit/chromium/blink_common.target.darwin-mips.mk
@@ -12,7 +12,8 @@
 # Make sure our deps are built first.
 GYP_TARGET_DEPENDENCIES := \
 	$(call intermediates-dir-for,GYP,skia_skia_gyp)/skia.stamp \
-	$(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp)/skia_skia_library_gyp.a
+	$(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp)/skia_skia_library_gyp.a \
+	$(call intermediates-dir-for,GYP,v8_tools_gyp_v8_gyp)/v8.stamp
 
 GYP_GENERATED_OUTPUTS :=
 
@@ -142,6 +143,7 @@
 	$(LOCAL_PATH)/third_party/skia/include/ports \
 	$(LOCAL_PATH)/third_party/skia/include/utils \
 	$(LOCAL_PATH)/skia/ext \
+	$(LOCAL_PATH)/v8/include \
 	$(PWD)/frameworks/wilhelm/include \
 	$(PWD)/bionic \
 	$(PWD)/external/stlport/stlport
@@ -274,6 +276,7 @@
 	$(LOCAL_PATH)/third_party/skia/include/ports \
 	$(LOCAL_PATH)/third_party/skia/include/utils \
 	$(LOCAL_PATH)/skia/ext \
+	$(LOCAL_PATH)/v8/include \
 	$(PWD)/frameworks/wilhelm/include \
 	$(PWD)/bionic \
 	$(PWD)/external/stlport/stlport
diff --git a/Source/WebKit/chromium/blink_common.target.darwin-x86.mk b/Source/WebKit/chromium/blink_common.target.darwin-x86.mk
index 24f4966..17034bd 100644
--- a/Source/WebKit/chromium/blink_common.target.darwin-x86.mk
+++ b/Source/WebKit/chromium/blink_common.target.darwin-x86.mk
@@ -12,7 +12,8 @@
 # Make sure our deps are built first.
 GYP_TARGET_DEPENDENCIES := \
 	$(call intermediates-dir-for,GYP,skia_skia_gyp)/skia.stamp \
-	$(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp)/skia_skia_library_gyp.a
+	$(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp)/skia_skia_library_gyp.a \
+	$(call intermediates-dir-for,GYP,v8_tools_gyp_v8_gyp)/v8.stamp
 
 GYP_GENERATED_OUTPUTS :=
 
@@ -144,6 +145,7 @@
 	$(LOCAL_PATH)/third_party/skia/include/ports \
 	$(LOCAL_PATH)/third_party/skia/include/utils \
 	$(LOCAL_PATH)/skia/ext \
+	$(LOCAL_PATH)/v8/include \
 	$(PWD)/frameworks/wilhelm/include \
 	$(PWD)/bionic \
 	$(PWD)/external/stlport/stlport
@@ -279,6 +281,7 @@
 	$(LOCAL_PATH)/third_party/skia/include/ports \
 	$(LOCAL_PATH)/third_party/skia/include/utils \
 	$(LOCAL_PATH)/skia/ext \
+	$(LOCAL_PATH)/v8/include \
 	$(PWD)/frameworks/wilhelm/include \
 	$(PWD)/bionic \
 	$(PWD)/external/stlport/stlport
diff --git a/Source/WebKit/chromium/blink_common.target.linux-arm.mk b/Source/WebKit/chromium/blink_common.target.linux-arm.mk
index 9bd4462..166e7a2 100644
--- a/Source/WebKit/chromium/blink_common.target.linux-arm.mk
+++ b/Source/WebKit/chromium/blink_common.target.linux-arm.mk
@@ -12,7 +12,8 @@
 # Make sure our deps are built first.
 GYP_TARGET_DEPENDENCIES := \
 	$(call intermediates-dir-for,GYP,skia_skia_gyp)/skia.stamp \
-	$(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp)/skia_skia_library_gyp.a
+	$(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp)/skia_skia_library_gyp.a \
+	$(call intermediates-dir-for,GYP,v8_tools_gyp_v8_gyp)/v8.stamp
 
 GYP_GENERATED_OUTPUTS :=
 
@@ -142,6 +143,7 @@
 	$(LOCAL_PATH)/third_party/skia/include/ports \
 	$(LOCAL_PATH)/third_party/skia/include/utils \
 	$(LOCAL_PATH)/skia/ext \
+	$(LOCAL_PATH)/v8/include \
 	$(PWD)/frameworks/wilhelm/include \
 	$(PWD)/bionic \
 	$(PWD)/external/stlport/stlport
@@ -274,6 +276,7 @@
 	$(LOCAL_PATH)/third_party/skia/include/ports \
 	$(LOCAL_PATH)/third_party/skia/include/utils \
 	$(LOCAL_PATH)/skia/ext \
+	$(LOCAL_PATH)/v8/include \
 	$(PWD)/frameworks/wilhelm/include \
 	$(PWD)/bionic \
 	$(PWD)/external/stlport/stlport
diff --git a/Source/WebKit/chromium/blink_common.target.linux-mips.mk b/Source/WebKit/chromium/blink_common.target.linux-mips.mk
index b3a660f..32c9baa 100644
--- a/Source/WebKit/chromium/blink_common.target.linux-mips.mk
+++ b/Source/WebKit/chromium/blink_common.target.linux-mips.mk
@@ -12,7 +12,8 @@
 # Make sure our deps are built first.
 GYP_TARGET_DEPENDENCIES := \
 	$(call intermediates-dir-for,GYP,skia_skia_gyp)/skia.stamp \
-	$(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp)/skia_skia_library_gyp.a
+	$(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp)/skia_skia_library_gyp.a \
+	$(call intermediates-dir-for,GYP,v8_tools_gyp_v8_gyp)/v8.stamp
 
 GYP_GENERATED_OUTPUTS :=
 
@@ -142,6 +143,7 @@
 	$(LOCAL_PATH)/third_party/skia/include/ports \
 	$(LOCAL_PATH)/third_party/skia/include/utils \
 	$(LOCAL_PATH)/skia/ext \
+	$(LOCAL_PATH)/v8/include \
 	$(PWD)/frameworks/wilhelm/include \
 	$(PWD)/bionic \
 	$(PWD)/external/stlport/stlport
@@ -274,6 +276,7 @@
 	$(LOCAL_PATH)/third_party/skia/include/ports \
 	$(LOCAL_PATH)/third_party/skia/include/utils \
 	$(LOCAL_PATH)/skia/ext \
+	$(LOCAL_PATH)/v8/include \
 	$(PWD)/frameworks/wilhelm/include \
 	$(PWD)/bionic \
 	$(PWD)/external/stlport/stlport
diff --git a/Source/WebKit/chromium/blink_common.target.linux-x86.mk b/Source/WebKit/chromium/blink_common.target.linux-x86.mk
index 24f4966..17034bd 100644
--- a/Source/WebKit/chromium/blink_common.target.linux-x86.mk
+++ b/Source/WebKit/chromium/blink_common.target.linux-x86.mk
@@ -12,7 +12,8 @@
 # Make sure our deps are built first.
 GYP_TARGET_DEPENDENCIES := \
 	$(call intermediates-dir-for,GYP,skia_skia_gyp)/skia.stamp \
-	$(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp)/skia_skia_library_gyp.a
+	$(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp)/skia_skia_library_gyp.a \
+	$(call intermediates-dir-for,GYP,v8_tools_gyp_v8_gyp)/v8.stamp
 
 GYP_GENERATED_OUTPUTS :=
 
@@ -144,6 +145,7 @@
 	$(LOCAL_PATH)/third_party/skia/include/ports \
 	$(LOCAL_PATH)/third_party/skia/include/utils \
 	$(LOCAL_PATH)/skia/ext \
+	$(LOCAL_PATH)/v8/include \
 	$(PWD)/frameworks/wilhelm/include \
 	$(PWD)/bionic \
 	$(PWD)/external/stlport/stlport
@@ -279,6 +281,7 @@
 	$(LOCAL_PATH)/third_party/skia/include/ports \
 	$(LOCAL_PATH)/third_party/skia/include/utils \
 	$(LOCAL_PATH)/skia/ext \
+	$(LOCAL_PATH)/v8/include \
 	$(PWD)/frameworks/wilhelm/include \
 	$(PWD)/bionic \
 	$(PWD)/external/stlport/stlport
diff --git a/Source/WebKit/chromium/webkit.target.darwin-arm.mk b/Source/WebKit/chromium/webkit.target.darwin-arm.mk
index be99766..11e9c9a 100644
--- a/Source/WebKit/chromium/webkit.target.darwin-arm.mk
+++ b/Source/WebKit/chromium/webkit.target.darwin-arm.mk
@@ -33,6 +33,7 @@
 	third_party/WebKit/Source/core/platform/chromium/support/WebActiveGestureAnimation.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebArrayBuffer.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebAudioBus.cpp \
+	third_party/WebKit/Source/core/platform/chromium/support/WebCrypto.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCryptoAlgorithm.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCryptoKey.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCursorInfo.cpp \
diff --git a/Source/WebKit/chromium/webkit.target.darwin-mips.mk b/Source/WebKit/chromium/webkit.target.darwin-mips.mk
index aed6942..75d13b2 100644
--- a/Source/WebKit/chromium/webkit.target.darwin-mips.mk
+++ b/Source/WebKit/chromium/webkit.target.darwin-mips.mk
@@ -33,6 +33,7 @@
 	third_party/WebKit/Source/core/platform/chromium/support/WebActiveGestureAnimation.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebArrayBuffer.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebAudioBus.cpp \
+	third_party/WebKit/Source/core/platform/chromium/support/WebCrypto.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCryptoAlgorithm.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCryptoKey.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCursorInfo.cpp \
diff --git a/Source/WebKit/chromium/webkit.target.darwin-x86.mk b/Source/WebKit/chromium/webkit.target.darwin-x86.mk
index f085c85..884d72b 100644
--- a/Source/WebKit/chromium/webkit.target.darwin-x86.mk
+++ b/Source/WebKit/chromium/webkit.target.darwin-x86.mk
@@ -33,6 +33,7 @@
 	third_party/WebKit/Source/core/platform/chromium/support/WebActiveGestureAnimation.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebArrayBuffer.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebAudioBus.cpp \
+	third_party/WebKit/Source/core/platform/chromium/support/WebCrypto.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCryptoAlgorithm.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCryptoKey.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCursorInfo.cpp \
diff --git a/Source/WebKit/chromium/webkit.target.linux-arm.mk b/Source/WebKit/chromium/webkit.target.linux-arm.mk
index be99766..11e9c9a 100644
--- a/Source/WebKit/chromium/webkit.target.linux-arm.mk
+++ b/Source/WebKit/chromium/webkit.target.linux-arm.mk
@@ -33,6 +33,7 @@
 	third_party/WebKit/Source/core/platform/chromium/support/WebActiveGestureAnimation.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebArrayBuffer.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebAudioBus.cpp \
+	third_party/WebKit/Source/core/platform/chromium/support/WebCrypto.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCryptoAlgorithm.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCryptoKey.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCursorInfo.cpp \
diff --git a/Source/WebKit/chromium/webkit.target.linux-mips.mk b/Source/WebKit/chromium/webkit.target.linux-mips.mk
index aed6942..75d13b2 100644
--- a/Source/WebKit/chromium/webkit.target.linux-mips.mk
+++ b/Source/WebKit/chromium/webkit.target.linux-mips.mk
@@ -33,6 +33,7 @@
 	third_party/WebKit/Source/core/platform/chromium/support/WebActiveGestureAnimation.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebArrayBuffer.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebAudioBus.cpp \
+	third_party/WebKit/Source/core/platform/chromium/support/WebCrypto.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCryptoAlgorithm.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCryptoKey.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCursorInfo.cpp \
diff --git a/Source/WebKit/chromium/webkit.target.linux-x86.mk b/Source/WebKit/chromium/webkit.target.linux-x86.mk
index f085c85..884d72b 100644
--- a/Source/WebKit/chromium/webkit.target.linux-x86.mk
+++ b/Source/WebKit/chromium/webkit.target.linux-x86.mk
@@ -33,6 +33,7 @@
 	third_party/WebKit/Source/core/platform/chromium/support/WebActiveGestureAnimation.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebArrayBuffer.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebAudioBus.cpp \
+	third_party/WebKit/Source/core/platform/chromium/support/WebCrypto.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCryptoAlgorithm.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCryptoKey.cpp \
 	third_party/WebKit/Source/core/platform/chromium/support/WebCursorInfo.cpp \
diff --git a/Source/bindings/deprecated_perl_bindings_sources.target.darwin-arm.mk b/Source/bindings/deprecated_perl_bindings_sources.target.darwin-arm.mk
index 0591809..d88d64a 100644
--- a/Source/bindings/deprecated_perl_bindings_sources.target.darwin-arm.mk
+++ b/Source/bindings/deprecated_perl_bindings_sources.target.darwin-arm.mk
@@ -17,7 +17,7 @@
 
 
 ### Generated for rule "third_party_WebKit_Source_bindings_derived_sources_gyp_deprecated_perl_bindings_sources_target_deprecated_perl_binding":
-# "{'inputs': ['scripts/deprecated_generate_bindings.pl', 'scripts/deprecated_code_generator_v8.pm', 'scripts/deprecated_idl_parser.pm', 'scripts/deprecated_idl_serializer.pm', '../core/scripts/preprocessor.pm', 'scripts/IDLAttributes.txt', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '../modules/filesystem/HTMLInputElementFileSystem.idl', '../core/dom/DocumentFullscreen.idl', '../modules/geolocation/NavigatorGeolocation.idl', '../modules/mediasource/WindowMediaSource.idl', '../modules/filesystem/WindowFileSystem.idl', '../modules/indexeddb/WindowIndexedDatabase.idl', '../modules/navigatorcontentutils/NavigatorContentUtils.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/quota/WindowQuota.idl', '../modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl', '../modules/webmidi/NavigatorWebMIDI.idl', '../modules/notifications/WorkerGlobalScopeNotifications.idl', '../modules/webdatabase/WindowWebDatabase.idl', '../core/page/WindowPagePopup.idl', '../modules/webdatabase/WorkerGlobalScopeWebDatabase.idl', '../modules/mediastream/NavigatorMediaStream.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/crypto/WorkerGlobalScopeCrypto.idl', '../modules/filesystem/DataTransferItemFileSystem.idl', '../modules/gamepad/NavigatorGamepad.idl', '../core/xml/DocumentXPathEvaluator.idl', '../modules/filesystem/WorkerGlobalScopeFileSystem.idl', '../modules/donottrack/NavigatorDoNotTrack.idl', '../modules/notifications/WindowNotifications.idl', '$(gyp_shared_intermediate_dir)/WindowConstructors.idl', '$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl'], 'msvs_cygwin_shell': '0', 'extension': 'idl', 'msvs_external_rule': '1', 'outputs': ['$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.cpp', '$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.h'], 'variables': {'extra_blink_generator_include_dirs%': [], 'generator_include_dirs': ['--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit']}, 'rule_name': 'deprecated_perl_binding', 'rule_sources': ['../core/css/CSS.idl', '../core/css/CSSCharsetRule.idl', '../core/css/CSSFontFaceLoadEvent.idl', '../core/css/CSSFontFaceRule.idl', '../core/css/CSSHostRule.idl', '../core/css/CSSImportRule.idl', '../core/css/CSSMediaRule.idl', '../core/css/CSSPageRule.idl', '../core/css/CSSPrimitiveValue.idl', '../core/css/CSSRule.idl', '../core/css/CSSRuleList.idl', '../core/css/CSSStyleDeclaration.idl', '../core/css/CSSStyleRule.idl', '../core/css/CSSStyleSheet.idl', '../core/css/CSSSupportsRule.idl', '../core/css/CSSValue.idl', '../core/css/CSSValueList.idl', '../core/css/CSSViewportRule.idl', '../core/css/CSSVariablesMap.idl', '../core/css/Counter.idl', '../core/css/FontLoader.idl', '../core/css/MediaList.idl', '../core/css/MediaQueryList.idl', '../core/css/Rect.idl', '../core/css/RGBColor.idl', '../core/css/StyleMedia.idl', '../core/css/StyleSheet.idl', '../core/css/StyleSheetList.idl', '../core/css/WebKitCSSFilterRule.idl', '../core/css/WebKitCSSFilterValue.idl', '../core/css/WebKitCSSKeyframeRule.idl', '../core/css/WebKitCSSKeyframesRule.idl', '../core/css/WebKitCSSMatrix.idl', '../core/css/WebKitCSSMixFunctionValue.idl', '../core/css/WebKitCSSRegionRule.idl', '../core/css/WebKitCSSTransformValue.idl', '../core/dom/Attr.idl', '../core/dom/AutocompleteErrorEvent.idl', '../core/dom/BeforeLoadEvent.idl', '../core/dom/CDATASection.idl', '../core/dom/CharacterData.idl', '../core/dom/ClientRect.idl', '../core/dom/ClientRectList.idl', '../core/dom/Clipboard.idl', '../core/dom/Comment.idl', '../core/dom/CompositionEvent.idl', '../core/dom/CustomEvent.idl', '../core/dom/DOMError.idl', '../core/dom/DOMException.idl', '../core/dom/DOMImplementation.idl', '../core/dom/DOMStringList.idl', '../core/dom/DOMStringMap.idl', '../core/dom/DataTransferItem.idl', '../core/dom/DataTransferItemList.idl', '../core/dom/Document.idl', '../core/dom/DocumentFragment.idl', '../core/dom/DocumentType.idl', '../core/dom/Element.idl', '../core/dom/Entity.idl', '../core/dom/ErrorEvent.idl', '../core/dom/Event.idl', '../core/dom/EventTarget.idl', '../core/dom/FocusEvent.idl', '../core/dom/HashChangeEvent.idl', '../core/dom/KeyboardEvent.idl', '../core/dom/MessageChannel.idl', '../core/dom/MessageEvent.idl', '../core/dom/MessagePort.idl', '../core/dom/MouseEvent.idl', '../core/dom/MutationEvent.idl', '../core/dom/MutationObserver.idl', '../core/dom/MutationRecord.idl', '../core/dom/NamedNodeMap.idl', '../core/dom/Node.idl', '../core/dom/NodeFilter.idl', '../core/dom/NodeIterator.idl', '../core/dom/NodeList.idl', '../core/dom/Notation.idl', '../core/dom/OverflowEvent.idl', '../core/dom/PageTransitionEvent.idl', '../core/dom/PopStateEvent.idl', '../core/dom/ProcessingInstruction.idl', '../core/dom/ProgressEvent.idl', '../core/dom/Promise.idl', '../core/dom/PromiseResolver.idl', '../core/dom/Range.idl', '../core/dom/RequestAnimationFrameCallback.idl', '../core/dom/ResourceProgressEvent.idl', '../core/dom/SecurityPolicyViolationEvent.idl', '../core/dom/StringCallback.idl', '../core/dom/Text.idl', '../core/dom/TextEvent.idl', '../core/dom/Touch.idl', '../core/dom/TouchEvent.idl', '../core/dom/TouchList.idl', '../core/dom/TransitionEvent.idl', '../core/dom/TreeWalker.idl', '../core/dom/UIEvent.idl', '../core/dom/WebKitAnimationEvent.idl', '../core/dom/WebKitNamedFlow.idl', '../core/dom/WebKitNamedFlowCollection.idl', '../core/dom/WheelEvent.idl', '../core/dom/shadow/ShadowRoot.idl', '../core/fileapi/Blob.idl', '../core/fileapi/File.idl', '../core/fileapi/FileError.idl', '../core/fileapi/FileList.idl', '../core/fileapi/FileReader.idl', '../core/fileapi/FileReaderSync.idl', '../core/fileapi/Stream.idl', '../core/html/DOMSettableTokenList.idl', '../core/html/DOMTokenList.idl', '../core/html/FormData.idl', '../core/html/HTMLAllCollection.idl', '../core/html/HTMLAnchorElement.idl', '../core/html/HTMLAppletElement.idl', '../core/html/HTMLAreaElement.idl', '../core/html/HTMLAudioElement.idl', '../core/html/HTMLBRElement.idl', '../core/html/HTMLBaseElement.idl', '../core/html/HTMLBodyElement.idl', '../core/html/HTMLButtonElement.idl', '../core/html/HTMLCanvasElement.idl', '../core/html/HTMLCollection.idl', '../core/html/HTMLDListElement.idl', '../core/html/HTMLDataListElement.idl', '../core/html/HTMLDetailsElement.idl', '../core/html/HTMLDialogElement.idl', '../core/html/HTMLDirectoryElement.idl', '../core/html/HTMLDivElement.idl', '../core/html/HTMLDocument.idl', '../core/html/HTMLElement.idl', '../core/html/HTMLEmbedElement.idl', '../core/html/HTMLFieldSetElement.idl', '../core/html/HTMLFontElement.idl', '../core/html/HTMLFormControlsCollection.idl', '../core/html/HTMLFormElement.idl', '../core/html/HTMLFrameElement.idl', '../core/html/HTMLFrameSetElement.idl', '../core/html/HTMLHRElement.idl', '../core/html/HTMLHeadElement.idl', '../core/html/HTMLHeadingElement.idl', '../core/html/HTMLHtmlElement.idl', '../core/html/HTMLIFrameElement.idl', '../core/html/HTMLImageElement.idl', '../core/html/HTMLInputElement.idl', '../core/html/HTMLKeygenElement.idl', '../core/html/HTMLLIElement.idl', '../core/html/HTMLLabelElement.idl', '../core/html/HTMLLegendElement.idl', '../core/html/HTMLLinkElement.idl', '../core/html/HTMLMapElement.idl', '../core/html/HTMLMarqueeElement.idl', '../core/html/HTMLMediaElement.idl', '../core/html/HTMLMenuElement.idl', '../core/html/HTMLMetaElement.idl', '../core/html/HTMLMeterElement.idl', '../core/html/HTMLModElement.idl', '../core/html/HTMLOListElement.idl', '../core/html/HTMLObjectElement.idl', '../core/html/HTMLOptGroupElement.idl', '../core/html/HTMLOptionElement.idl', '../core/html/HTMLOptionsCollection.idl', '../core/html/HTMLOutputElement.idl', '../core/html/HTMLParagraphElement.idl', '../core/html/HTMLParamElement.idl', '../core/html/HTMLPreElement.idl', '../core/html/HTMLProgressElement.idl', '../core/html/HTMLQuoteElement.idl', '../core/html/HTMLScriptElement.idl', '../core/html/HTMLSelectElement.idl', '../core/html/HTMLSourceElement.idl', '../core/html/HTMLSpanElement.idl', '../core/html/HTMLStyleElement.idl', '../core/html/HTMLTableCaptionElement.idl', '../core/html/HTMLTableCellElement.idl', '../core/html/HTMLTableColElement.idl', '../core/html/HTMLTableElement.idl', '../core/html/HTMLTableRowElement.idl', '../core/html/HTMLTableSectionElement.idl', '../core/html/HTMLTextAreaElement.idl', '../core/html/HTMLTemplateElement.idl', '../core/html/HTMLTitleElement.idl', '../core/html/HTMLTrackElement.idl', '../core/html/HTMLUListElement.idl', '../core/html/HTMLUnknownElement.idl', '../core/html/HTMLVideoElement.idl', '../core/html/ImageData.idl', '../core/html/MediaController.idl', '../core/html/MediaError.idl', '../core/html/MediaKeyError.idl', '../core/html/MediaKeyEvent.idl', '../core/html/RadioNodeList.idl', '../core/html/TextMetrics.idl', '../core/html/TimeRanges.idl', '../core/html/URL.idl', '../core/html/ValidityState.idl', '../core/html/VoidCallback.idl', '../core/html/canvas/ANGLEInstancedArrays.idl', '../core/html/canvas/ArrayBufferView.idl', '../core/html/canvas/CanvasGradient.idl', '../core/html/canvas/CanvasPattern.idl', '../core/html/canvas/CanvasRenderingContext.idl', '../core/html/canvas/CanvasRenderingContext2D.idl', '../core/html/canvas/Canvas2DContextAttributes.idl', '../core/html/canvas/DataView.idl', '../core/html/canvas/EXTFragDepth.idl', '../core/html/canvas/EXTTextureFilterAnisotropic.idl', '../core/html/canvas/Float32Array.idl', '../core/html/canvas/Float64Array.idl', '../core/html/canvas/Int16Array.idl', '../core/html/canvas/Int32Array.idl', '../core/html/canvas/Int8Array.idl', '../core/html/canvas/OESStandardDerivatives.idl', '../core/html/canvas/OESTextureFloat.idl', '../core/html/canvas/OESTextureFloatLinear.idl', '../core/html/canvas/OESTextureHalfFloat.idl', '../core/html/canvas/OESTextureHalfFloatLinear.idl', '../core/html/canvas/OESVertexArrayObject.idl', '../core/html/canvas/OESElementIndexUint.idl', '../core/html/canvas/Path.idl', '../core/html/canvas/Uint16Array.idl', '../core/html/canvas/Uint32Array.idl', '../core/html/canvas/Uint8Array.idl', '../core/html/canvas/Uint8ClampedArray.idl', '../core/html/canvas/WebGLActiveInfo.idl', '../core/html/canvas/WebGLBuffer.idl', '../core/html/canvas/WebGLCompressedTextureATC.idl', '../core/html/canvas/WebGLCompressedTexturePVRTC.idl', '../core/html/canvas/WebGLCompressedTextureS3TC.idl', '../core/html/canvas/WebGLContextAttributes.idl', '../core/html/canvas/WebGLContextEvent.idl', '../core/html/canvas/WebGLDebugRendererInfo.idl', '../core/html/canvas/WebGLDebugShaders.idl', '../core/html/canvas/WebGLDepthTexture.idl', '../core/html/canvas/WebGLDrawBuffers.idl', '../core/html/canvas/WebGLFramebuffer.idl', '../core/html/canvas/WebGLLoseContext.idl', '../core/html/canvas/WebGLProgram.idl', '../core/html/canvas/WebGLRenderbuffer.idl', '../core/html/canvas/WebGLRenderingContext.idl', '../core/html/canvas/WebGLShader.idl', '../core/html/canvas/WebGLShaderPrecisionFormat.idl', '../core/html/canvas/WebGLTexture.idl', '../core/html/canvas/WebGLUniformLocation.idl', '../core/html/canvas/WebGLVertexArrayObjectOES.idl', '../core/html/ime/Composition.idl', '../core/html/ime/InputMethodContext.idl', '../core/html/shadow/HTMLContentElement.idl', '../core/html/shadow/HTMLShadowElement.idl', '../core/html/track/TextTrack.idl', '../core/html/track/TextTrackCue.idl', '../core/html/track/TextTrackCueList.idl', '../core/html/track/TextTrackList.idl', '../core/html/track/TrackEvent.idl', '../core/html/track/TextTrackRegion.idl', '../core/html/track/TextTrackRegionList.idl', '../core/inspector/InjectedScriptHost.idl', '../core/inspector/InspectorFrontendHost.idl', '../core/inspector/InspectorOverlayHost.idl', '../core/inspector/JavaScriptCallFrame.idl', '../core/loader/appcache/DOMApplicationCache.idl', '../core/page/BarProp.idl', '../core/page/Console.idl', '../core/page/EventSource.idl', '../core/page/History.idl', '../core/page/ImageBitmap.idl', '../core/page/ImageBitmapCallback.idl', '../core/page/Location.idl', '../core/page/MemoryInfo.idl', '../core/page/Navigator.idl', '../core/page/PagePopupController.idl', '../core/page/Performance.idl', '../core/page/PerformanceEntry.idl', '../core/page/PerformanceMark.idl', '../core/page/PerformanceMeasure.idl', '../core/page/PerformanceNavigation.idl', '../core/page/PerformanceResourceTiming.idl', '../core/page/PerformanceTiming.idl', '../core/page/Screen.idl', '../core/page/SecurityPolicy.idl', '../core/page/Selection.idl', '../core/page/SpeechInputEvent.idl', '../core/page/SpeechInputResult.idl', '../core/page/SpeechInputResultList.idl', '../core/page/WebKitPoint.idl', '../core/page/Window.idl', '../core/page/WindowBase64.idl', '../core/page/WindowTimers.idl', '../core/page/WorkerNavigator.idl', '../core/plugins/MimeType.idl', '../core/plugins/MimeTypeArray.idl', '../core/plugins/Plugin.idl', '../core/plugins/PluginArray.idl', '../core/storage/Storage.idl', '../core/storage/StorageEvent.idl', '../core/workers/DedicatedWorkerGlobalScope.idl', '../core/workers/SharedWorker.idl', '../core/workers/SharedWorkerGlobalScope.idl', '../core/workers/Worker.idl', '../core/workers/WorkerGlobalScope.idl', '../core/workers/WorkerLocation.idl', '../core/xml/DOMParser.idl', '../core/xml/DocumentXPathEvaluator.idl', '../core/xml/XMLHttpRequest.idl', '../core/xml/XMLHttpRequestProgressEvent.idl', '../core/xml/XMLHttpRequestUpload.idl', '../core/xml/XMLSerializer.idl', '../core/xml/XPathEvaluator.idl', '../core/xml/XPathExpression.idl', '../core/xml/XPathNSResolver.idl', '../core/xml/XPathResult.idl', '../core/xml/XSLTProcessor.idl', '../modules/crypto/AesCbcParams.idl', '../modules/crypto/AesKeyGenParams.idl', '../modules/crypto/Algorithm.idl', '../modules/crypto/Crypto.idl', '../modules/crypto/CryptoOperation.idl', '../modules/crypto/Key.idl', '../modules/crypto/SubtleCrypto.idl', '../modules/crypto/WorkerCrypto.idl', '../modules/device_orientation/DeviceAcceleration.idl', '../modules/device_orientation/DeviceMotionEvent.idl', '../modules/device_orientation/DeviceOrientationEvent.idl', '../modules/device_orientation/DeviceRotationRate.idl', '../modules/encryptedmedia/MediaKeyMessageEvent.idl', '../modules/encryptedmedia/MediaKeyNeededEvent.idl', '../modules/encryptedmedia/MediaKeys.idl', '../modules/encryptedmedia/MediaKeySession.idl', '../modules/filesystem/DOMFileSystem.idl', '../modules/filesystem/DOMFileSystemSync.idl', '../modules/filesystem/DirectoryEntry.idl', '../modules/filesystem/DirectoryEntrySync.idl', '../modules/filesystem/DirectoryReader.idl', '../modules/filesystem/DirectoryReaderSync.idl', '../modules/filesystem/EntriesCallback.idl', '../modules/filesystem/Entry.idl', '../modules/filesystem/EntryArray.idl', '../modules/filesystem/EntryArraySync.idl', '../modules/filesystem/EntryCallback.idl', '../modules/filesystem/EntrySync.idl', '../modules/filesystem/ErrorCallback.idl', '../modules/filesystem/FileCallback.idl', '../modules/filesystem/FileEntry.idl', '../modules/filesystem/FileEntrySync.idl', '../modules/filesystem/FileSystemCallback.idl', '../modules/filesystem/FileWriter.idl', '../modules/filesystem/FileWriterCallback.idl', '../modules/filesystem/FileWriterSync.idl', '../modules/filesystem/Metadata.idl', '../modules/filesystem/MetadataCallback.idl', '../modules/gamepad/Gamepad.idl', '../modules/gamepad/GamepadList.idl', '../modules/geolocation/Coordinates.idl', '../modules/geolocation/Geolocation.idl', '../modules/geolocation/Geoposition.idl', '../modules/geolocation/PositionCallback.idl', '../modules/geolocation/PositionError.idl', '../modules/geolocation/PositionErrorCallback.idl', '../modules/indexeddb/IDBAny.idl', '../modules/indexeddb/IDBCursor.idl', '../modules/indexeddb/IDBCursorWithValue.idl', '../modules/indexeddb/IDBDatabase.idl', '../modules/indexeddb/IDBFactory.idl', '../modules/indexeddb/IDBIndex.idl', '../modules/indexeddb/IDBKeyRange.idl', '../modules/indexeddb/IDBObjectStore.idl', '../modules/indexeddb/IDBOpenDBRequest.idl', '../modules/indexeddb/IDBRequest.idl', '../modules/indexeddb/IDBTransaction.idl', '../modules/indexeddb/IDBVersionChangeEvent.idl', '../modules/mediasource/MediaSource.idl', '../modules/mediasource/SourceBuffer.idl', '../modules/mediasource/SourceBufferList.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/mediasource/WebKitMediaSource.idl', '../modules/mediasource/WebKitSourceBuffer.idl', '../modules/mediasource/WebKitSourceBufferList.idl', '../modules/mediastream/MediaStream.idl', '../modules/mediastream/MediaStreamEvent.idl', '../modules/mediastream/MediaStreamTrack.idl', '../modules/mediastream/MediaStreamTrackEvent.idl', '../modules/mediastream/MediaStreamTrackSourcesCallback.idl', '../modules/mediastream/NavigatorUserMediaError.idl', '../modules/mediastream/NavigatorUserMediaErrorCallback.idl', '../modules/mediastream/NavigatorUserMediaSuccessCallback.idl', '../modules/mediastream/RTCDTMFSender.idl', '../modules/mediastream/RTCDTMFToneChangeEvent.idl', '../modules/mediastream/RTCDataChannel.idl', '../modules/mediastream/RTCDataChannelEvent.idl', '../modules/mediastream/RTCErrorCallback.idl', '../modules/mediastream/RTCIceCandidate.idl', '../modules/mediastream/RTCIceCandidateEvent.idl', '../modules/mediastream/RTCPeerConnection.idl', '../modules/mediastream/RTCSessionDescription.idl', '../modules/mediastream/RTCSessionDescriptionCallback.idl', '../modules/mediastream/RTCStatsCallback.idl', '../modules/mediastream/RTCStatsReport.idl', '../modules/mediastream/RTCStatsResponse.idl', '../modules/mediastream/SourceInfo.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/notifications/Notification.idl', '../modules/notifications/NotificationCenter.idl', '../modules/notifications/NotificationPermissionCallback.idl', '../modules/performance/WorkerPerformance.idl', '../modules/quota/StorageErrorCallback.idl', '../modules/quota/StorageInfo.idl', '../modules/quota/StorageQuota.idl', '../modules/quota/StorageQuotaCallback.idl', '../modules/quota/StorageUsageCallback.idl', '../modules/speech/SpeechGrammar.idl', '../modules/speech/SpeechGrammarList.idl', '../modules/speech/SpeechRecognition.idl', '../modules/speech/SpeechRecognitionAlternative.idl', '../modules/speech/SpeechRecognitionError.idl', '../modules/speech/SpeechRecognitionEvent.idl', '../modules/speech/SpeechRecognitionResult.idl', '../modules/speech/SpeechRecognitionResultList.idl', '../modules/speech/SpeechSynthesis.idl', '../modules/speech/SpeechSynthesisEvent.idl', '../modules/speech/SpeechSynthesisUtterance.idl', '../modules/speech/SpeechSynthesisVoice.idl', '../modules/webaudio/AudioBuffer.idl', '../modules/webaudio/AudioBufferCallback.idl', '../modules/webaudio/AudioBufferSourceNode.idl', '../modules/webaudio/ChannelMergerNode.idl', '../modules/webaudio/ChannelSplitterNode.idl', '../modules/webaudio/AudioContext.idl', '../modules/webaudio/AudioDestinationNode.idl', '../modules/webaudio/GainNode.idl', '../modules/webaudio/AudioListener.idl', '../modules/webaudio/AudioNode.idl', '../modules/webaudio/PannerNode.idl', '../modules/webaudio/AudioParam.idl', '../modules/webaudio/AudioProcessingEvent.idl', '../modules/webaudio/AudioSourceNode.idl', '../modules/webaudio/BiquadFilterNode.idl', '../modules/webaudio/ConvolverNode.idl', '../modules/webaudio/DelayNode.idl', '../modules/webaudio/DynamicsCompressorNode.idl', '../modules/webaudio/ScriptProcessorNode.idl', '../modules/webaudio/MediaElementAudioSourceNode.idl', '../modules/webaudio/MediaStreamAudioDestinationNode.idl', '../modules/webaudio/MediaStreamAudioSourceNode.idl', '../modules/webaudio/OfflineAudioCompletionEvent.idl', '../modules/webaudio/OfflineAudioContext.idl', '../modules/webaudio/OscillatorNode.idl', '../modules/webaudio/PeriodicWave.idl', '../modules/webaudio/AnalyserNode.idl', '../modules/webaudio/WaveShaperNode.idl', '../modules/webdatabase/Database.idl', '../modules/webdatabase/DatabaseCallback.idl', '../modules/webdatabase/DatabaseSync.idl', '../modules/webdatabase/SQLError.idl', '../modules/webdatabase/SQLResultSet.idl', '../modules/webdatabase/SQLResultSetRowList.idl', '../modules/webdatabase/SQLStatementCallback.idl', '../modules/webdatabase/SQLStatementErrorCallback.idl', '../modules/webdatabase/SQLTransaction.idl', '../modules/webdatabase/SQLTransactionCallback.idl', '../modules/webdatabase/SQLTransactionErrorCallback.idl', '../modules/webdatabase/SQLTransactionSync.idl', '../modules/webdatabase/SQLTransactionSyncCallback.idl', '../modules/webmidi/MIDIAccess.idl', '../modules/webmidi/MIDIAccessPromise.idl', '../modules/webmidi/MIDIConnectionEvent.idl', '../modules/webmidi/MIDIErrorCallback.idl', '../modules/webmidi/MIDIInput.idl', '../modules/webmidi/MIDIMessageEvent.idl', '../modules/webmidi/MIDIOutput.idl', '../modules/webmidi/MIDIPort.idl', '../modules/webmidi/MIDISuccessCallback.idl', '../modules/websockets/CloseEvent.idl', '../modules/websockets/WebSocket.idl', '../core/svg/SVGAElement.idl', '../core/svg/SVGAltGlyphElement.idl', '../core/svg/SVGAltGlyphItemElement.idl', '../core/svg/SVGAltGlyphDefElement.idl', '../core/svg/SVGAngle.idl', '../core/svg/SVGAnimateColorElement.idl', '../core/svg/SVGAnimateMotionElement.idl', '../core/svg/SVGAnimateElement.idl', '../core/svg/SVGAnimateTransformElement.idl', '../core/svg/SVGAnimatedAngle.idl', '../core/svg/SVGAnimatedBoolean.idl', '../core/svg/SVGAnimatedEnumeration.idl', '../core/svg/SVGAnimatedInteger.idl', '../core/svg/SVGAnimatedLength.idl', '../core/svg/SVGAnimatedLengthList.idl', '../core/svg/SVGAnimatedNumber.idl', '../core/svg/SVGAnimatedNumberList.idl', '../core/svg/SVGAnimatedPreserveAspectRatio.idl', '../core/svg/SVGAnimatedRect.idl', '../core/svg/SVGAnimatedString.idl', '../core/svg/SVGAnimatedTransformList.idl', '../core/svg/SVGAnimationElement.idl', '../core/svg/SVGCircleElement.idl', '../core/svg/SVGClipPathElement.idl', '../core/svg/SVGColor.idl', '../core/svg/SVGComponentTransferFunctionElement.idl', '../core/svg/SVGCursorElement.idl', '../core/svg/SVGDefsElement.idl', '../core/svg/SVGDescElement.idl', '../core/svg/SVGDocument.idl', '../core/svg/SVGElement.idl', '../core/svg/SVGElementInstance.idl', '../core/svg/SVGElementInstanceList.idl', '../core/svg/SVGEllipseElement.idl', '../core/svg/SVGFEBlendElement.idl', '../core/svg/SVGFEColorMatrixElement.idl', '../core/svg/SVGFEComponentTransferElement.idl', '../core/svg/SVGFECompositeElement.idl', '../core/svg/SVGFEConvolveMatrixElement.idl', '../core/svg/SVGFEDiffuseLightingElement.idl', '../core/svg/SVGFEDisplacementMapElement.idl', '../core/svg/SVGFEDistantLightElement.idl', '../core/svg/SVGFEDropShadowElement.idl', '../core/svg/SVGFEFloodElement.idl', '../core/svg/SVGFEFuncAElement.idl', '../core/svg/SVGFEFuncBElement.idl', '../core/svg/SVGFEFuncGElement.idl', '../core/svg/SVGFEFuncRElement.idl', '../core/svg/SVGFEGaussianBlurElement.idl', '../core/svg/SVGFEImageElement.idl', '../core/svg/SVGFEMergeElement.idl', '../core/svg/SVGFEMergeNodeElement.idl', '../core/svg/SVGFEMorphologyElement.idl', '../core/svg/SVGFEOffsetElement.idl', '../core/svg/SVGFEPointLightElement.idl', '../core/svg/SVGFESpecularLightingElement.idl', '../core/svg/SVGFESpotLightElement.idl', '../core/svg/SVGFETileElement.idl', '../core/svg/SVGFETurbulenceElement.idl', '../core/svg/SVGFilterElement.idl', '../core/svg/SVGFontElement.idl', '../core/svg/SVGFontFaceElement.idl', '../core/svg/SVGFontFaceFormatElement.idl', '../core/svg/SVGFontFaceNameElement.idl', '../core/svg/SVGFontFaceSrcElement.idl', '../core/svg/SVGFontFaceUriElement.idl', '../core/svg/SVGForeignObjectElement.idl', '../core/svg/SVGGElement.idl', '../core/svg/SVGGlyphElement.idl', '../core/svg/SVGGlyphRefElement.idl', '../core/svg/SVGGradientElement.idl', '../core/svg/SVGGraphicsElement.idl', '../core/svg/SVGHKernElement.idl', '../core/svg/SVGImageElement.idl', '../core/svg/SVGLength.idl', '../core/svg/SVGLengthList.idl', '../core/svg/SVGLineElement.idl', '../core/svg/SVGLinearGradientElement.idl', '../core/svg/SVGMarkerElement.idl', '../core/svg/SVGMaskElement.idl', '../core/svg/SVGMatrix.idl', '../core/svg/SVGMetadataElement.idl', '../core/svg/SVGMissingGlyphElement.idl', '../core/svg/SVGMPathElement.idl', '../core/svg/SVGNumber.idl', '../core/svg/SVGNumberList.idl', '../core/svg/SVGPaint.idl', '../core/svg/SVGPathElement.idl', '../core/svg/SVGPathSeg.idl', '../core/svg/SVGPathSegArcAbs.idl', '../core/svg/SVGPathSegArcRel.idl', '../core/svg/SVGPathSegClosePath.idl', '../core/svg/SVGPathSegCurvetoCubicAbs.idl', '../core/svg/SVGPathSegCurvetoCubicRel.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl', '../core/svg/SVGPathSegLinetoAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalRel.idl', '../core/svg/SVGPathSegLinetoRel.idl', '../core/svg/SVGPathSegLinetoVerticalAbs.idl', '../core/svg/SVGPathSegLinetoVerticalRel.idl', '../core/svg/SVGPathSegList.idl', '../core/svg/SVGPathSegMovetoAbs.idl', '../core/svg/SVGPathSegMovetoRel.idl', '../core/svg/SVGPatternElement.idl', '../core/svg/SVGPoint.idl', '../core/svg/SVGPointList.idl', '../core/svg/SVGPolygonElement.idl', '../core/svg/SVGPolylineElement.idl', '../core/svg/SVGPreserveAspectRatio.idl', '../core/svg/SVGRadialGradientElement.idl', '../core/svg/SVGRect.idl', '../core/svg/SVGRectElement.idl', '../core/svg/SVGRenderingIntent.idl', '../core/svg/SVGSVGElement.idl', '../core/svg/SVGScriptElement.idl', '../core/svg/SVGSetElement.idl', '../core/svg/SVGStopElement.idl', '../core/svg/SVGStringList.idl', '../core/svg/SVGStyleElement.idl', '../core/svg/SVGStyledElement.idl', '../core/svg/SVGSwitchElement.idl', '../core/svg/SVGSymbolElement.idl', '../core/svg/SVGTRefElement.idl', '../core/svg/SVGTSpanElement.idl', '../core/svg/SVGTextContentElement.idl', '../core/svg/SVGTextElement.idl', '../core/svg/SVGTextPathElement.idl', '../core/svg/SVGTextPositioningElement.idl', '../core/svg/SVGTitleElement.idl', '../core/svg/SVGTransform.idl', '../core/svg/SVGTransformList.idl', '../core/svg/SVGUnitTypes.idl', '../core/svg/SVGUseElement.idl', '../core/svg/SVGViewElement.idl', '../core/svg/SVGViewSpec.idl', '../core/svg/SVGVKernElement.idl', '../core/svg/SVGZoomEvent.idl', '../core/testing/Internals.idl', '../core/testing/InternalProfilers.idl', '../core/testing/InternalSettings.idl', '../core/testing/LayerRect.idl', '../core/testing/LayerRectList.idl', '../core/testing/MallocStatistics.idl', '../core/testing/TypeConversions.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl'], 'action': ['perl', '-w', '-Iscripts', '-I../core/scripts', '-I../../../../third_party/JSON/out/lib/perl5', 'scripts/deprecated_generate_bindings.pl', '--outputDir', '$(gyp_shared_intermediate_dir)/webkit/bindings', '--idlAttributesFile', 'scripts/IDLAttributes.txt', '--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit', '--interfaceDependenciesFile', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '--additionalIdlFiles', '../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl "$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl" "$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl"', '--preprocessor', '/usr/bin/gcc -E -P -x c++', '--write-file-only-if-changed', '0', '$(RULE_SOURCES)'], 'message': 'Generating binding from $(RULE_SOURCES)'}":
+# "{'inputs': ['scripts/deprecated_generate_bindings.pl', 'scripts/deprecated_code_generator_v8.pm', 'scripts/deprecated_idl_parser.pm', 'scripts/deprecated_idl_serializer.pm', '../core/scripts/preprocessor.pm', 'scripts/IDLAttributes.txt', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '../modules/filesystem/HTMLInputElementFileSystem.idl', '../core/dom/DocumentFullscreen.idl', '../modules/geolocation/NavigatorGeolocation.idl', '../modules/mediasource/WindowMediaSource.idl', '../modules/filesystem/WindowFileSystem.idl', '../modules/indexeddb/WindowIndexedDatabase.idl', '../modules/navigatorcontentutils/NavigatorContentUtils.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/quota/WindowQuota.idl', '../modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl', '../modules/webmidi/NavigatorWebMIDI.idl', '../modules/notifications/WorkerGlobalScopeNotifications.idl', '../modules/webdatabase/WindowWebDatabase.idl', '../core/page/WindowPagePopup.idl', '../modules/webdatabase/WorkerGlobalScopeWebDatabase.idl', '../modules/mediastream/NavigatorMediaStream.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/crypto/WorkerGlobalScopeCrypto.idl', '../modules/filesystem/DataTransferItemFileSystem.idl', '../modules/gamepad/NavigatorGamepad.idl', '../core/xml/DocumentXPathEvaluator.idl', '../modules/filesystem/WorkerGlobalScopeFileSystem.idl', '../modules/donottrack/NavigatorDoNotTrack.idl', '../modules/notifications/WindowNotifications.idl', '$(gyp_shared_intermediate_dir)/WindowConstructors.idl', '$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl'], 'msvs_cygwin_shell': '0', 'extension': 'idl', 'msvs_external_rule': '1', 'outputs': ['$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.cpp', '$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.h'], 'variables': {'extra_blink_generator_include_dirs%': [], 'generator_include_dirs': ['--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit']}, 'rule_name': 'deprecated_perl_binding', 'rule_sources': ['../core/css/CSS.idl', '../core/css/CSSCharsetRule.idl', '../core/css/CSSFontFaceLoadEvent.idl', '../core/css/CSSFontFaceRule.idl', '../core/css/CSSHostRule.idl', '../core/css/CSSImportRule.idl', '../core/css/CSSMediaRule.idl', '../core/css/CSSPageRule.idl', '../core/css/CSSPrimitiveValue.idl', '../core/css/CSSRule.idl', '../core/css/CSSRuleList.idl', '../core/css/CSSStyleDeclaration.idl', '../core/css/CSSStyleRule.idl', '../core/css/CSSStyleSheet.idl', '../core/css/CSSSupportsRule.idl', '../core/css/CSSValue.idl', '../core/css/CSSValueList.idl', '../core/css/CSSViewportRule.idl', '../core/css/CSSVariablesMap.idl', '../core/css/Counter.idl', '../core/css/FontLoader.idl', '../core/css/MediaList.idl', '../core/css/MediaQueryList.idl', '../core/css/Rect.idl', '../core/css/RGBColor.idl', '../core/css/StyleMedia.idl', '../core/css/StyleSheet.idl', '../core/css/StyleSheetList.idl', '../core/css/WebKitCSSFilterRule.idl', '../core/css/WebKitCSSFilterValue.idl', '../core/css/WebKitCSSKeyframeRule.idl', '../core/css/WebKitCSSKeyframesRule.idl', '../core/css/WebKitCSSMatrix.idl', '../core/css/WebKitCSSMixFunctionValue.idl', '../core/css/WebKitCSSRegionRule.idl', '../core/css/WebKitCSSTransformValue.idl', '../core/dom/Attr.idl', '../core/dom/AutocompleteErrorEvent.idl', '../core/dom/BeforeLoadEvent.idl', '../core/dom/CDATASection.idl', '../core/dom/CharacterData.idl', '../core/dom/ClientRect.idl', '../core/dom/ClientRectList.idl', '../core/dom/Clipboard.idl', '../core/dom/Comment.idl', '../core/dom/CompositionEvent.idl', '../core/dom/CustomEvent.idl', '../core/dom/DOMError.idl', '../core/dom/DOMException.idl', '../core/dom/DOMImplementation.idl', '../core/dom/DOMStringList.idl', '../core/dom/DOMStringMap.idl', '../core/dom/DataTransferItem.idl', '../core/dom/DataTransferItemList.idl', '../core/dom/Document.idl', '../core/dom/DocumentFragment.idl', '../core/dom/DocumentType.idl', '../core/dom/Element.idl', '../core/dom/Entity.idl', '../core/dom/ErrorEvent.idl', '../core/dom/Event.idl', '../core/dom/EventTarget.idl', '../core/dom/FocusEvent.idl', '../core/dom/HashChangeEvent.idl', '../core/dom/KeyboardEvent.idl', '../core/dom/MessageChannel.idl', '../core/dom/MessageEvent.idl', '../core/dom/MessagePort.idl', '../core/dom/MouseEvent.idl', '../core/dom/MutationEvent.idl', '../core/dom/MutationObserver.idl', '../core/dom/MutationRecord.idl', '../core/dom/NamedNodeMap.idl', '../core/dom/Node.idl', '../core/dom/NodeFilter.idl', '../core/dom/NodeIterator.idl', '../core/dom/NodeList.idl', '../core/dom/Notation.idl', '../core/dom/OverflowEvent.idl', '../core/dom/PageTransitionEvent.idl', '../core/dom/PopStateEvent.idl', '../core/dom/ProcessingInstruction.idl', '../core/dom/ProgressEvent.idl', '../core/dom/Promise.idl', '../core/dom/PromiseResolver.idl', '../core/dom/Range.idl', '../core/dom/RequestAnimationFrameCallback.idl', '../core/dom/ResourceProgressEvent.idl', '../core/dom/SecurityPolicyViolationEvent.idl', '../core/dom/StringCallback.idl', '../core/dom/Text.idl', '../core/dom/TextEvent.idl', '../core/dom/Touch.idl', '../core/dom/TouchEvent.idl', '../core/dom/TouchList.idl', '../core/dom/TransitionEvent.idl', '../core/dom/TreeWalker.idl', '../core/dom/UIEvent.idl', '../core/dom/WebKitAnimationEvent.idl', '../core/dom/WebKitNamedFlow.idl', '../core/dom/WebKitNamedFlowCollection.idl', '../core/dom/WheelEvent.idl', '../core/dom/shadow/ShadowRoot.idl', '../core/fileapi/Blob.idl', '../core/fileapi/File.idl', '../core/fileapi/FileError.idl', '../core/fileapi/FileList.idl', '../core/fileapi/FileReader.idl', '../core/fileapi/FileReaderSync.idl', '../core/fileapi/Stream.idl', '../core/html/DOMSettableTokenList.idl', '../core/html/DOMTokenList.idl', '../core/html/FormData.idl', '../core/html/HTMLAllCollection.idl', '../core/html/HTMLAnchorElement.idl', '../core/html/HTMLAppletElement.idl', '../core/html/HTMLAreaElement.idl', '../core/html/HTMLAudioElement.idl', '../core/html/HTMLBRElement.idl', '../core/html/HTMLBaseElement.idl', '../core/html/HTMLBodyElement.idl', '../core/html/HTMLButtonElement.idl', '../core/html/HTMLCanvasElement.idl', '../core/html/HTMLCollection.idl', '../core/html/HTMLDListElement.idl', '../core/html/HTMLDataListElement.idl', '../core/html/HTMLDetailsElement.idl', '../core/html/HTMLDialogElement.idl', '../core/html/HTMLDirectoryElement.idl', '../core/html/HTMLDivElement.idl', '../core/html/HTMLDocument.idl', '../core/html/HTMLElement.idl', '../core/html/HTMLEmbedElement.idl', '../core/html/HTMLFieldSetElement.idl', '../core/html/HTMLFontElement.idl', '../core/html/HTMLFormControlsCollection.idl', '../core/html/HTMLFormElement.idl', '../core/html/HTMLFrameElement.idl', '../core/html/HTMLFrameSetElement.idl', '../core/html/HTMLHRElement.idl', '../core/html/HTMLHeadElement.idl', '../core/html/HTMLHeadingElement.idl', '../core/html/HTMLHtmlElement.idl', '../core/html/HTMLIFrameElement.idl', '../core/html/HTMLImageElement.idl', '../core/html/HTMLInputElement.idl', '../core/html/HTMLKeygenElement.idl', '../core/html/HTMLLIElement.idl', '../core/html/HTMLLabelElement.idl', '../core/html/HTMLLegendElement.idl', '../core/html/HTMLLinkElement.idl', '../core/html/HTMLMapElement.idl', '../core/html/HTMLMarqueeElement.idl', '../core/html/HTMLMediaElement.idl', '../core/html/HTMLMenuElement.idl', '../core/html/HTMLMetaElement.idl', '../core/html/HTMLMeterElement.idl', '../core/html/HTMLModElement.idl', '../core/html/HTMLOListElement.idl', '../core/html/HTMLObjectElement.idl', '../core/html/HTMLOptGroupElement.idl', '../core/html/HTMLOptionElement.idl', '../core/html/HTMLOptionsCollection.idl', '../core/html/HTMLOutputElement.idl', '../core/html/HTMLParagraphElement.idl', '../core/html/HTMLParamElement.idl', '../core/html/HTMLPreElement.idl', '../core/html/HTMLProgressElement.idl', '../core/html/HTMLQuoteElement.idl', '../core/html/HTMLScriptElement.idl', '../core/html/HTMLSelectElement.idl', '../core/html/HTMLSourceElement.idl', '../core/html/HTMLSpanElement.idl', '../core/html/HTMLStyleElement.idl', '../core/html/HTMLTableCaptionElement.idl', '../core/html/HTMLTableCellElement.idl', '../core/html/HTMLTableColElement.idl', '../core/html/HTMLTableElement.idl', '../core/html/HTMLTableRowElement.idl', '../core/html/HTMLTableSectionElement.idl', '../core/html/HTMLTextAreaElement.idl', '../core/html/HTMLTemplateElement.idl', '../core/html/HTMLTitleElement.idl', '../core/html/HTMLTrackElement.idl', '../core/html/HTMLUListElement.idl', '../core/html/HTMLUnknownElement.idl', '../core/html/HTMLVideoElement.idl', '../core/html/ImageData.idl', '../core/html/MediaController.idl', '../core/html/MediaError.idl', '../core/html/MediaKeyError.idl', '../core/html/MediaKeyEvent.idl', '../core/html/RadioNodeList.idl', '../core/html/TextMetrics.idl', '../core/html/TimeRanges.idl', '../core/html/URL.idl', '../core/html/ValidityState.idl', '../core/html/VoidCallback.idl', '../core/html/canvas/ANGLEInstancedArrays.idl', '../core/html/canvas/ArrayBufferView.idl', '../core/html/canvas/CanvasGradient.idl', '../core/html/canvas/CanvasPattern.idl', '../core/html/canvas/CanvasRenderingContext.idl', '../core/html/canvas/CanvasRenderingContext2D.idl', '../core/html/canvas/Canvas2DContextAttributes.idl', '../core/html/canvas/DataView.idl', '../core/html/canvas/EXTFragDepth.idl', '../core/html/canvas/EXTTextureFilterAnisotropic.idl', '../core/html/canvas/Float32Array.idl', '../core/html/canvas/Float64Array.idl', '../core/html/canvas/Int16Array.idl', '../core/html/canvas/Int32Array.idl', '../core/html/canvas/Int8Array.idl', '../core/html/canvas/OESStandardDerivatives.idl', '../core/html/canvas/OESTextureFloat.idl', '../core/html/canvas/OESTextureFloatLinear.idl', '../core/html/canvas/OESTextureHalfFloat.idl', '../core/html/canvas/OESTextureHalfFloatLinear.idl', '../core/html/canvas/OESVertexArrayObject.idl', '../core/html/canvas/OESElementIndexUint.idl', '../core/html/canvas/Path.idl', '../core/html/canvas/Uint16Array.idl', '../core/html/canvas/Uint32Array.idl', '../core/html/canvas/Uint8Array.idl', '../core/html/canvas/Uint8ClampedArray.idl', '../core/html/canvas/WebGLActiveInfo.idl', '../core/html/canvas/WebGLBuffer.idl', '../core/html/canvas/WebGLCompressedTextureATC.idl', '../core/html/canvas/WebGLCompressedTexturePVRTC.idl', '../core/html/canvas/WebGLCompressedTextureS3TC.idl', '../core/html/canvas/WebGLContextAttributes.idl', '../core/html/canvas/WebGLContextEvent.idl', '../core/html/canvas/WebGLDebugRendererInfo.idl', '../core/html/canvas/WebGLDebugShaders.idl', '../core/html/canvas/WebGLDepthTexture.idl', '../core/html/canvas/WebGLDrawBuffers.idl', '../core/html/canvas/WebGLFramebuffer.idl', '../core/html/canvas/WebGLLoseContext.idl', '../core/html/canvas/WebGLProgram.idl', '../core/html/canvas/WebGLRenderbuffer.idl', '../core/html/canvas/WebGLRenderingContext.idl', '../core/html/canvas/WebGLShader.idl', '../core/html/canvas/WebGLShaderPrecisionFormat.idl', '../core/html/canvas/WebGLTexture.idl', '../core/html/canvas/WebGLUniformLocation.idl', '../core/html/canvas/WebGLVertexArrayObjectOES.idl', '../core/html/ime/Composition.idl', '../core/html/ime/InputMethodContext.idl', '../core/html/shadow/HTMLContentElement.idl', '../core/html/shadow/HTMLShadowElement.idl', '../core/html/track/TextTrack.idl', '../core/html/track/TextTrackCue.idl', '../core/html/track/TextTrackCueList.idl', '../core/html/track/TextTrackList.idl', '../core/html/track/TrackEvent.idl', '../core/html/track/TextTrackRegion.idl', '../core/html/track/TextTrackRegionList.idl', '../core/inspector/InjectedScriptHost.idl', '../core/inspector/InspectorFrontendHost.idl', '../core/inspector/InspectorOverlayHost.idl', '../core/inspector/JavaScriptCallFrame.idl', '../core/loader/appcache/DOMApplicationCache.idl', '../core/page/BarProp.idl', '../core/page/Console.idl', '../core/page/EventSource.idl', '../core/page/History.idl', '../core/page/ImageBitmap.idl', '../core/page/ImageBitmapCallback.idl', '../core/page/Location.idl', '../core/page/MemoryInfo.idl', '../core/page/Navigator.idl', '../core/page/PagePopupController.idl', '../core/page/Performance.idl', '../core/page/PerformanceEntry.idl', '../core/page/PerformanceMark.idl', '../core/page/PerformanceMeasure.idl', '../core/page/PerformanceNavigation.idl', '../core/page/PerformanceResourceTiming.idl', '../core/page/PerformanceTiming.idl', '../core/page/Screen.idl', '../core/page/SecurityPolicy.idl', '../core/page/Selection.idl', '../core/page/SpeechInputEvent.idl', '../core/page/SpeechInputResult.idl', '../core/page/SpeechInputResultList.idl', '../core/page/WebKitPoint.idl', '../core/page/Window.idl', '../core/page/WindowBase64.idl', '../core/page/WindowTimers.idl', '../core/page/WorkerNavigator.idl', '../core/plugins/MimeType.idl', '../core/plugins/MimeTypeArray.idl', '../core/plugins/Plugin.idl', '../core/plugins/PluginArray.idl', '../core/storage/Storage.idl', '../core/storage/StorageEvent.idl', '../core/workers/DedicatedWorkerGlobalScope.idl', '../core/workers/SharedWorker.idl', '../core/workers/SharedWorkerGlobalScope.idl', '../core/workers/Worker.idl', '../core/workers/WorkerGlobalScope.idl', '../core/workers/WorkerLocation.idl', '../core/xml/DOMParser.idl', '../core/xml/DocumentXPathEvaluator.idl', '../core/xml/XMLHttpRequest.idl', '../core/xml/XMLHttpRequestProgressEvent.idl', '../core/xml/XMLHttpRequestUpload.idl', '../core/xml/XMLSerializer.idl', '../core/xml/XPathEvaluator.idl', '../core/xml/XPathExpression.idl', '../core/xml/XPathNSResolver.idl', '../core/xml/XPathResult.idl', '../core/xml/XSLTProcessor.idl', '../modules/crypto/AesCbcParams.idl', '../modules/crypto/AesKeyGenParams.idl', '../modules/crypto/Algorithm.idl', '../modules/crypto/Crypto.idl', '../modules/crypto/CryptoOperation.idl', '../modules/crypto/HmacParams.idl', '../modules/crypto/Key.idl', '../modules/crypto/SubtleCrypto.idl', '../modules/crypto/WorkerCrypto.idl', '../modules/device_orientation/DeviceAcceleration.idl', '../modules/device_orientation/DeviceMotionEvent.idl', '../modules/device_orientation/DeviceOrientationEvent.idl', '../modules/device_orientation/DeviceRotationRate.idl', '../modules/encryptedmedia/MediaKeyMessageEvent.idl', '../modules/encryptedmedia/MediaKeyNeededEvent.idl', '../modules/encryptedmedia/MediaKeys.idl', '../modules/encryptedmedia/MediaKeySession.idl', '../modules/filesystem/DOMFileSystem.idl', '../modules/filesystem/DOMFileSystemSync.idl', '../modules/filesystem/DirectoryEntry.idl', '../modules/filesystem/DirectoryEntrySync.idl', '../modules/filesystem/DirectoryReader.idl', '../modules/filesystem/DirectoryReaderSync.idl', '../modules/filesystem/EntriesCallback.idl', '../modules/filesystem/Entry.idl', '../modules/filesystem/EntryArray.idl', '../modules/filesystem/EntryArraySync.idl', '../modules/filesystem/EntryCallback.idl', '../modules/filesystem/EntrySync.idl', '../modules/filesystem/ErrorCallback.idl', '../modules/filesystem/FileCallback.idl', '../modules/filesystem/FileEntry.idl', '../modules/filesystem/FileEntrySync.idl', '../modules/filesystem/FileSystemCallback.idl', '../modules/filesystem/FileWriter.idl', '../modules/filesystem/FileWriterCallback.idl', '../modules/filesystem/FileWriterSync.idl', '../modules/filesystem/Metadata.idl', '../modules/filesystem/MetadataCallback.idl', '../modules/gamepad/Gamepad.idl', '../modules/gamepad/GamepadList.idl', '../modules/geolocation/Coordinates.idl', '../modules/geolocation/Geolocation.idl', '../modules/geolocation/Geoposition.idl', '../modules/geolocation/PositionCallback.idl', '../modules/geolocation/PositionError.idl', '../modules/geolocation/PositionErrorCallback.idl', '../modules/indexeddb/IDBAny.idl', '../modules/indexeddb/IDBCursor.idl', '../modules/indexeddb/IDBCursorWithValue.idl', '../modules/indexeddb/IDBDatabase.idl', '../modules/indexeddb/IDBFactory.idl', '../modules/indexeddb/IDBIndex.idl', '../modules/indexeddb/IDBKeyRange.idl', '../modules/indexeddb/IDBObjectStore.idl', '../modules/indexeddb/IDBOpenDBRequest.idl', '../modules/indexeddb/IDBRequest.idl', '../modules/indexeddb/IDBTransaction.idl', '../modules/indexeddb/IDBVersionChangeEvent.idl', '../modules/mediasource/MediaSource.idl', '../modules/mediasource/SourceBuffer.idl', '../modules/mediasource/SourceBufferList.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/mediasource/WebKitMediaSource.idl', '../modules/mediasource/WebKitSourceBuffer.idl', '../modules/mediasource/WebKitSourceBufferList.idl', '../modules/mediastream/MediaStream.idl', '../modules/mediastream/MediaStreamEvent.idl', '../modules/mediastream/MediaStreamTrack.idl', '../modules/mediastream/MediaStreamTrackEvent.idl', '../modules/mediastream/MediaStreamTrackSourcesCallback.idl', '../modules/mediastream/NavigatorUserMediaError.idl', '../modules/mediastream/NavigatorUserMediaErrorCallback.idl', '../modules/mediastream/NavigatorUserMediaSuccessCallback.idl', '../modules/mediastream/RTCDTMFSender.idl', '../modules/mediastream/RTCDTMFToneChangeEvent.idl', '../modules/mediastream/RTCDataChannel.idl', '../modules/mediastream/RTCDataChannelEvent.idl', '../modules/mediastream/RTCErrorCallback.idl', '../modules/mediastream/RTCIceCandidate.idl', '../modules/mediastream/RTCIceCandidateEvent.idl', '../modules/mediastream/RTCPeerConnection.idl', '../modules/mediastream/RTCSessionDescription.idl', '../modules/mediastream/RTCSessionDescriptionCallback.idl', '../modules/mediastream/RTCStatsCallback.idl', '../modules/mediastream/RTCStatsReport.idl', '../modules/mediastream/RTCStatsResponse.idl', '../modules/mediastream/SourceInfo.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/notifications/Notification.idl', '../modules/notifications/NotificationCenter.idl', '../modules/notifications/NotificationPermissionCallback.idl', '../modules/performance/WorkerPerformance.idl', '../modules/quota/StorageErrorCallback.idl', '../modules/quota/StorageInfo.idl', '../modules/quota/StorageQuota.idl', '../modules/quota/StorageQuotaCallback.idl', '../modules/quota/StorageUsageCallback.idl', '../modules/speech/SpeechGrammar.idl', '../modules/speech/SpeechGrammarList.idl', '../modules/speech/SpeechRecognition.idl', '../modules/speech/SpeechRecognitionAlternative.idl', '../modules/speech/SpeechRecognitionError.idl', '../modules/speech/SpeechRecognitionEvent.idl', '../modules/speech/SpeechRecognitionResult.idl', '../modules/speech/SpeechRecognitionResultList.idl', '../modules/speech/SpeechSynthesis.idl', '../modules/speech/SpeechSynthesisEvent.idl', '../modules/speech/SpeechSynthesisUtterance.idl', '../modules/speech/SpeechSynthesisVoice.idl', '../modules/webaudio/AudioBuffer.idl', '../modules/webaudio/AudioBufferCallback.idl', '../modules/webaudio/AudioBufferSourceNode.idl', '../modules/webaudio/ChannelMergerNode.idl', '../modules/webaudio/ChannelSplitterNode.idl', '../modules/webaudio/AudioContext.idl', '../modules/webaudio/AudioDestinationNode.idl', '../modules/webaudio/GainNode.idl', '../modules/webaudio/AudioListener.idl', '../modules/webaudio/AudioNode.idl', '../modules/webaudio/PannerNode.idl', '../modules/webaudio/AudioParam.idl', '../modules/webaudio/AudioProcessingEvent.idl', '../modules/webaudio/AudioSourceNode.idl', '../modules/webaudio/BiquadFilterNode.idl', '../modules/webaudio/ConvolverNode.idl', '../modules/webaudio/DelayNode.idl', '../modules/webaudio/DynamicsCompressorNode.idl', '../modules/webaudio/ScriptProcessorNode.idl', '../modules/webaudio/MediaElementAudioSourceNode.idl', '../modules/webaudio/MediaStreamAudioDestinationNode.idl', '../modules/webaudio/MediaStreamAudioSourceNode.idl', '../modules/webaudio/OfflineAudioCompletionEvent.idl', '../modules/webaudio/OfflineAudioContext.idl', '../modules/webaudio/OscillatorNode.idl', '../modules/webaudio/PeriodicWave.idl', '../modules/webaudio/AnalyserNode.idl', '../modules/webaudio/WaveShaperNode.idl', '../modules/webdatabase/Database.idl', '../modules/webdatabase/DatabaseCallback.idl', '../modules/webdatabase/DatabaseSync.idl', '../modules/webdatabase/SQLError.idl', '../modules/webdatabase/SQLResultSet.idl', '../modules/webdatabase/SQLResultSetRowList.idl', '../modules/webdatabase/SQLStatementCallback.idl', '../modules/webdatabase/SQLStatementErrorCallback.idl', '../modules/webdatabase/SQLTransaction.idl', '../modules/webdatabase/SQLTransactionCallback.idl', '../modules/webdatabase/SQLTransactionErrorCallback.idl', '../modules/webdatabase/SQLTransactionSync.idl', '../modules/webdatabase/SQLTransactionSyncCallback.idl', '../modules/webmidi/MIDIAccess.idl', '../modules/webmidi/MIDIAccessPromise.idl', '../modules/webmidi/MIDIConnectionEvent.idl', '../modules/webmidi/MIDIErrorCallback.idl', '../modules/webmidi/MIDIInput.idl', '../modules/webmidi/MIDIMessageEvent.idl', '../modules/webmidi/MIDIOutput.idl', '../modules/webmidi/MIDIPort.idl', '../modules/webmidi/MIDISuccessCallback.idl', '../modules/websockets/CloseEvent.idl', '../modules/websockets/WebSocket.idl', '../core/svg/SVGAElement.idl', '../core/svg/SVGAltGlyphElement.idl', '../core/svg/SVGAltGlyphItemElement.idl', '../core/svg/SVGAltGlyphDefElement.idl', '../core/svg/SVGAngle.idl', '../core/svg/SVGAnimateColorElement.idl', '../core/svg/SVGAnimateMotionElement.idl', '../core/svg/SVGAnimateElement.idl', '../core/svg/SVGAnimateTransformElement.idl', '../core/svg/SVGAnimatedAngle.idl', '../core/svg/SVGAnimatedBoolean.idl', '../core/svg/SVGAnimatedEnumeration.idl', '../core/svg/SVGAnimatedInteger.idl', '../core/svg/SVGAnimatedLength.idl', '../core/svg/SVGAnimatedLengthList.idl', '../core/svg/SVGAnimatedNumber.idl', '../core/svg/SVGAnimatedNumberList.idl', '../core/svg/SVGAnimatedPreserveAspectRatio.idl', '../core/svg/SVGAnimatedRect.idl', '../core/svg/SVGAnimatedString.idl', '../core/svg/SVGAnimatedTransformList.idl', '../core/svg/SVGAnimationElement.idl', '../core/svg/SVGCircleElement.idl', '../core/svg/SVGClipPathElement.idl', '../core/svg/SVGColor.idl', '../core/svg/SVGComponentTransferFunctionElement.idl', '../core/svg/SVGCursorElement.idl', '../core/svg/SVGDefsElement.idl', '../core/svg/SVGDescElement.idl', '../core/svg/SVGDocument.idl', '../core/svg/SVGElement.idl', '../core/svg/SVGElementInstance.idl', '../core/svg/SVGElementInstanceList.idl', '../core/svg/SVGEllipseElement.idl', '../core/svg/SVGFEBlendElement.idl', '../core/svg/SVGFEColorMatrixElement.idl', '../core/svg/SVGFEComponentTransferElement.idl', '../core/svg/SVGFECompositeElement.idl', '../core/svg/SVGFEConvolveMatrixElement.idl', '../core/svg/SVGFEDiffuseLightingElement.idl', '../core/svg/SVGFEDisplacementMapElement.idl', '../core/svg/SVGFEDistantLightElement.idl', '../core/svg/SVGFEDropShadowElement.idl', '../core/svg/SVGFEFloodElement.idl', '../core/svg/SVGFEFuncAElement.idl', '../core/svg/SVGFEFuncBElement.idl', '../core/svg/SVGFEFuncGElement.idl', '../core/svg/SVGFEFuncRElement.idl', '../core/svg/SVGFEGaussianBlurElement.idl', '../core/svg/SVGFEImageElement.idl', '../core/svg/SVGFEMergeElement.idl', '../core/svg/SVGFEMergeNodeElement.idl', '../core/svg/SVGFEMorphologyElement.idl', '../core/svg/SVGFEOffsetElement.idl', '../core/svg/SVGFEPointLightElement.idl', '../core/svg/SVGFESpecularLightingElement.idl', '../core/svg/SVGFESpotLightElement.idl', '../core/svg/SVGFETileElement.idl', '../core/svg/SVGFETurbulenceElement.idl', '../core/svg/SVGFilterElement.idl', '../core/svg/SVGFontElement.idl', '../core/svg/SVGFontFaceElement.idl', '../core/svg/SVGFontFaceFormatElement.idl', '../core/svg/SVGFontFaceNameElement.idl', '../core/svg/SVGFontFaceSrcElement.idl', '../core/svg/SVGFontFaceUriElement.idl', '../core/svg/SVGForeignObjectElement.idl', '../core/svg/SVGGElement.idl', '../core/svg/SVGGlyphElement.idl', '../core/svg/SVGGlyphRefElement.idl', '../core/svg/SVGGradientElement.idl', '../core/svg/SVGGraphicsElement.idl', '../core/svg/SVGHKernElement.idl', '../core/svg/SVGImageElement.idl', '../core/svg/SVGLength.idl', '../core/svg/SVGLengthList.idl', '../core/svg/SVGLineElement.idl', '../core/svg/SVGLinearGradientElement.idl', '../core/svg/SVGMarkerElement.idl', '../core/svg/SVGMaskElement.idl', '../core/svg/SVGMatrix.idl', '../core/svg/SVGMetadataElement.idl', '../core/svg/SVGMissingGlyphElement.idl', '../core/svg/SVGMPathElement.idl', '../core/svg/SVGNumber.idl', '../core/svg/SVGNumberList.idl', '../core/svg/SVGPaint.idl', '../core/svg/SVGPathElement.idl', '../core/svg/SVGPathSeg.idl', '../core/svg/SVGPathSegArcAbs.idl', '../core/svg/SVGPathSegArcRel.idl', '../core/svg/SVGPathSegClosePath.idl', '../core/svg/SVGPathSegCurvetoCubicAbs.idl', '../core/svg/SVGPathSegCurvetoCubicRel.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl', '../core/svg/SVGPathSegLinetoAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalRel.idl', '../core/svg/SVGPathSegLinetoRel.idl', '../core/svg/SVGPathSegLinetoVerticalAbs.idl', '../core/svg/SVGPathSegLinetoVerticalRel.idl', '../core/svg/SVGPathSegList.idl', '../core/svg/SVGPathSegMovetoAbs.idl', '../core/svg/SVGPathSegMovetoRel.idl', '../core/svg/SVGPatternElement.idl', '../core/svg/SVGPoint.idl', '../core/svg/SVGPointList.idl', '../core/svg/SVGPolygonElement.idl', '../core/svg/SVGPolylineElement.idl', '../core/svg/SVGPreserveAspectRatio.idl', '../core/svg/SVGRadialGradientElement.idl', '../core/svg/SVGRect.idl', '../core/svg/SVGRectElement.idl', '../core/svg/SVGRenderingIntent.idl', '../core/svg/SVGSVGElement.idl', '../core/svg/SVGScriptElement.idl', '../core/svg/SVGSetElement.idl', '../core/svg/SVGStopElement.idl', '../core/svg/SVGStringList.idl', '../core/svg/SVGStyleElement.idl', '../core/svg/SVGStyledElement.idl', '../core/svg/SVGSwitchElement.idl', '../core/svg/SVGSymbolElement.idl', '../core/svg/SVGTRefElement.idl', '../core/svg/SVGTSpanElement.idl', '../core/svg/SVGTextContentElement.idl', '../core/svg/SVGTextElement.idl', '../core/svg/SVGTextPathElement.idl', '../core/svg/SVGTextPositioningElement.idl', '../core/svg/SVGTitleElement.idl', '../core/svg/SVGTransform.idl', '../core/svg/SVGTransformList.idl', '../core/svg/SVGUnitTypes.idl', '../core/svg/SVGUseElement.idl', '../core/svg/SVGViewElement.idl', '../core/svg/SVGViewSpec.idl', '../core/svg/SVGVKernElement.idl', '../core/svg/SVGZoomEvent.idl', '../core/testing/Internals.idl', '../core/testing/InternalProfilers.idl', '../core/testing/InternalSettings.idl', '../core/testing/LayerRect.idl', '../core/testing/LayerRectList.idl', '../core/testing/MallocStatistics.idl', '../core/testing/TypeConversions.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl'], 'action': ['perl', '-w', '-Iscripts', '-I../core/scripts', '-I../../../../third_party/JSON/out/lib/perl5', 'scripts/deprecated_generate_bindings.pl', '--outputDir', '$(gyp_shared_intermediate_dir)/webkit/bindings', '--idlAttributesFile', 'scripts/IDLAttributes.txt', '--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit', '--interfaceDependenciesFile', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '--additionalIdlFiles', '../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl "$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl" "$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl"', '--preprocessor', '/usr/bin/gcc -E -P -x c++', '--write-file-only-if-changed', '0', '$(RULE_SOURCES)'], 'message': 'Generating binding from $(RULE_SOURCES)'}":
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_local_path := $(LOCAL_PATH)
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
@@ -3516,6 +3516,17 @@
 .PHONY: third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger
 third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger: $(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.cpp
 
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_local_path := $(LOCAL_PATH)
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/HmacParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_generate_bindings.pl $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_code_generator_v8.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_idl_parser.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_idl_serializer.pm $(LOCAL_PATH)/third_party/WebKit/Source/core/scripts/preprocessor.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/IDLAttributes.txt $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(gyp_shared_intermediate_dir)/WindowConstructors.idl $(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl $(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl $(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl $(GYP_TARGET_DEPENDENCIES)
+	mkdir -p $(gyp_shared_intermediate_dir)/webkit/bindings; cd $(gyp_local_path)/third_party/WebKit/Source/bindings; perl -w -Iscripts -I../core/scripts -I../../../../third_party/JSON/out/lib/perl5 scripts/deprecated_generate_bindings.pl --outputDir "$(gyp_shared_intermediate_dir)/webkit/bindings" --idlAttributesFile scripts/IDLAttributes.txt --include ../core --include ../modules --include "$(gyp_shared_intermediate_dir)/webkit" --interfaceDependenciesFile "$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt" --additionalIdlFiles "../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl \"$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl\" \"$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl\"" --preprocessor "/usr/bin/gcc -E -P -x c++" --write-file-only-if-changed 0 ../modules/crypto/HmacParams.idl
+
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.h: $(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp ;
+.PHONY: third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger
+third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger: $(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp
+
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_local_path := $(LOCAL_PATH)
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
@@ -7543,6 +7554,8 @@
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Crypto.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.cpp \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.h \
+	$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp \
+	$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8SubtleCrypto.cpp \
diff --git a/Source/bindings/deprecated_perl_bindings_sources.target.darwin-mips.mk b/Source/bindings/deprecated_perl_bindings_sources.target.darwin-mips.mk
index adc4ac2..dd64c8f 100644
--- a/Source/bindings/deprecated_perl_bindings_sources.target.darwin-mips.mk
+++ b/Source/bindings/deprecated_perl_bindings_sources.target.darwin-mips.mk
@@ -17,7 +17,7 @@
 
 
 ### Generated for rule "third_party_WebKit_Source_bindings_derived_sources_gyp_deprecated_perl_bindings_sources_target_deprecated_perl_binding":
-# "{'inputs': ['scripts/deprecated_generate_bindings.pl', 'scripts/deprecated_code_generator_v8.pm', 'scripts/deprecated_idl_parser.pm', 'scripts/deprecated_idl_serializer.pm', '../core/scripts/preprocessor.pm', 'scripts/IDLAttributes.txt', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '../modules/filesystem/HTMLInputElementFileSystem.idl', '../core/dom/DocumentFullscreen.idl', '../modules/geolocation/NavigatorGeolocation.idl', '../modules/mediasource/WindowMediaSource.idl', '../modules/filesystem/WindowFileSystem.idl', '../modules/indexeddb/WindowIndexedDatabase.idl', '../modules/navigatorcontentutils/NavigatorContentUtils.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/quota/WindowQuota.idl', '../modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl', '../modules/webmidi/NavigatorWebMIDI.idl', '../modules/notifications/WorkerGlobalScopeNotifications.idl', '../modules/webdatabase/WindowWebDatabase.idl', '../core/page/WindowPagePopup.idl', '../modules/webdatabase/WorkerGlobalScopeWebDatabase.idl', '../modules/mediastream/NavigatorMediaStream.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/crypto/WorkerGlobalScopeCrypto.idl', '../modules/filesystem/DataTransferItemFileSystem.idl', '../modules/gamepad/NavigatorGamepad.idl', '../core/xml/DocumentXPathEvaluator.idl', '../modules/filesystem/WorkerGlobalScopeFileSystem.idl', '../modules/donottrack/NavigatorDoNotTrack.idl', '../modules/notifications/WindowNotifications.idl', '$(gyp_shared_intermediate_dir)/WindowConstructors.idl', '$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl'], 'msvs_cygwin_shell': '0', 'extension': 'idl', 'msvs_external_rule': '1', 'outputs': ['$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.cpp', '$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.h'], 'variables': {'extra_blink_generator_include_dirs%': [], 'generator_include_dirs': ['--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit']}, 'rule_name': 'deprecated_perl_binding', 'rule_sources': ['../core/css/CSS.idl', '../core/css/CSSCharsetRule.idl', '../core/css/CSSFontFaceLoadEvent.idl', '../core/css/CSSFontFaceRule.idl', '../core/css/CSSHostRule.idl', '../core/css/CSSImportRule.idl', '../core/css/CSSMediaRule.idl', '../core/css/CSSPageRule.idl', '../core/css/CSSPrimitiveValue.idl', '../core/css/CSSRule.idl', '../core/css/CSSRuleList.idl', '../core/css/CSSStyleDeclaration.idl', '../core/css/CSSStyleRule.idl', '../core/css/CSSStyleSheet.idl', '../core/css/CSSSupportsRule.idl', '../core/css/CSSValue.idl', '../core/css/CSSValueList.idl', '../core/css/CSSViewportRule.idl', '../core/css/CSSVariablesMap.idl', '../core/css/Counter.idl', '../core/css/FontLoader.idl', '../core/css/MediaList.idl', '../core/css/MediaQueryList.idl', '../core/css/Rect.idl', '../core/css/RGBColor.idl', '../core/css/StyleMedia.idl', '../core/css/StyleSheet.idl', '../core/css/StyleSheetList.idl', '../core/css/WebKitCSSFilterRule.idl', '../core/css/WebKitCSSFilterValue.idl', '../core/css/WebKitCSSKeyframeRule.idl', '../core/css/WebKitCSSKeyframesRule.idl', '../core/css/WebKitCSSMatrix.idl', '../core/css/WebKitCSSMixFunctionValue.idl', '../core/css/WebKitCSSRegionRule.idl', '../core/css/WebKitCSSTransformValue.idl', '../core/dom/Attr.idl', '../core/dom/AutocompleteErrorEvent.idl', '../core/dom/BeforeLoadEvent.idl', '../core/dom/CDATASection.idl', '../core/dom/CharacterData.idl', '../core/dom/ClientRect.idl', '../core/dom/ClientRectList.idl', '../core/dom/Clipboard.idl', '../core/dom/Comment.idl', '../core/dom/CompositionEvent.idl', '../core/dom/CustomEvent.idl', '../core/dom/DOMError.idl', '../core/dom/DOMException.idl', '../core/dom/DOMImplementation.idl', '../core/dom/DOMStringList.idl', '../core/dom/DOMStringMap.idl', '../core/dom/DataTransferItem.idl', '../core/dom/DataTransferItemList.idl', '../core/dom/Document.idl', '../core/dom/DocumentFragment.idl', '../core/dom/DocumentType.idl', '../core/dom/Element.idl', '../core/dom/Entity.idl', '../core/dom/ErrorEvent.idl', '../core/dom/Event.idl', '../core/dom/EventTarget.idl', '../core/dom/FocusEvent.idl', '../core/dom/HashChangeEvent.idl', '../core/dom/KeyboardEvent.idl', '../core/dom/MessageChannel.idl', '../core/dom/MessageEvent.idl', '../core/dom/MessagePort.idl', '../core/dom/MouseEvent.idl', '../core/dom/MutationEvent.idl', '../core/dom/MutationObserver.idl', '../core/dom/MutationRecord.idl', '../core/dom/NamedNodeMap.idl', '../core/dom/Node.idl', '../core/dom/NodeFilter.idl', '../core/dom/NodeIterator.idl', '../core/dom/NodeList.idl', '../core/dom/Notation.idl', '../core/dom/OverflowEvent.idl', '../core/dom/PageTransitionEvent.idl', '../core/dom/PopStateEvent.idl', '../core/dom/ProcessingInstruction.idl', '../core/dom/ProgressEvent.idl', '../core/dom/Promise.idl', '../core/dom/PromiseResolver.idl', '../core/dom/Range.idl', '../core/dom/RequestAnimationFrameCallback.idl', '../core/dom/ResourceProgressEvent.idl', '../core/dom/SecurityPolicyViolationEvent.idl', '../core/dom/StringCallback.idl', '../core/dom/Text.idl', '../core/dom/TextEvent.idl', '../core/dom/Touch.idl', '../core/dom/TouchEvent.idl', '../core/dom/TouchList.idl', '../core/dom/TransitionEvent.idl', '../core/dom/TreeWalker.idl', '../core/dom/UIEvent.idl', '../core/dom/WebKitAnimationEvent.idl', '../core/dom/WebKitNamedFlow.idl', '../core/dom/WebKitNamedFlowCollection.idl', '../core/dom/WheelEvent.idl', '../core/dom/shadow/ShadowRoot.idl', '../core/fileapi/Blob.idl', '../core/fileapi/File.idl', '../core/fileapi/FileError.idl', '../core/fileapi/FileList.idl', '../core/fileapi/FileReader.idl', '../core/fileapi/FileReaderSync.idl', '../core/fileapi/Stream.idl', '../core/html/DOMSettableTokenList.idl', '../core/html/DOMTokenList.idl', '../core/html/FormData.idl', '../core/html/HTMLAllCollection.idl', '../core/html/HTMLAnchorElement.idl', '../core/html/HTMLAppletElement.idl', '../core/html/HTMLAreaElement.idl', '../core/html/HTMLAudioElement.idl', '../core/html/HTMLBRElement.idl', '../core/html/HTMLBaseElement.idl', '../core/html/HTMLBodyElement.idl', '../core/html/HTMLButtonElement.idl', '../core/html/HTMLCanvasElement.idl', '../core/html/HTMLCollection.idl', '../core/html/HTMLDListElement.idl', '../core/html/HTMLDataListElement.idl', '../core/html/HTMLDetailsElement.idl', '../core/html/HTMLDialogElement.idl', '../core/html/HTMLDirectoryElement.idl', '../core/html/HTMLDivElement.idl', '../core/html/HTMLDocument.idl', '../core/html/HTMLElement.idl', '../core/html/HTMLEmbedElement.idl', '../core/html/HTMLFieldSetElement.idl', '../core/html/HTMLFontElement.idl', '../core/html/HTMLFormControlsCollection.idl', '../core/html/HTMLFormElement.idl', '../core/html/HTMLFrameElement.idl', '../core/html/HTMLFrameSetElement.idl', '../core/html/HTMLHRElement.idl', '../core/html/HTMLHeadElement.idl', '../core/html/HTMLHeadingElement.idl', '../core/html/HTMLHtmlElement.idl', '../core/html/HTMLIFrameElement.idl', '../core/html/HTMLImageElement.idl', '../core/html/HTMLInputElement.idl', '../core/html/HTMLKeygenElement.idl', '../core/html/HTMLLIElement.idl', '../core/html/HTMLLabelElement.idl', '../core/html/HTMLLegendElement.idl', '../core/html/HTMLLinkElement.idl', '../core/html/HTMLMapElement.idl', '../core/html/HTMLMarqueeElement.idl', '../core/html/HTMLMediaElement.idl', '../core/html/HTMLMenuElement.idl', '../core/html/HTMLMetaElement.idl', '../core/html/HTMLMeterElement.idl', '../core/html/HTMLModElement.idl', '../core/html/HTMLOListElement.idl', '../core/html/HTMLObjectElement.idl', '../core/html/HTMLOptGroupElement.idl', '../core/html/HTMLOptionElement.idl', '../core/html/HTMLOptionsCollection.idl', '../core/html/HTMLOutputElement.idl', '../core/html/HTMLParagraphElement.idl', '../core/html/HTMLParamElement.idl', '../core/html/HTMLPreElement.idl', '../core/html/HTMLProgressElement.idl', '../core/html/HTMLQuoteElement.idl', '../core/html/HTMLScriptElement.idl', '../core/html/HTMLSelectElement.idl', '../core/html/HTMLSourceElement.idl', '../core/html/HTMLSpanElement.idl', '../core/html/HTMLStyleElement.idl', '../core/html/HTMLTableCaptionElement.idl', '../core/html/HTMLTableCellElement.idl', '../core/html/HTMLTableColElement.idl', '../core/html/HTMLTableElement.idl', '../core/html/HTMLTableRowElement.idl', '../core/html/HTMLTableSectionElement.idl', '../core/html/HTMLTextAreaElement.idl', '../core/html/HTMLTemplateElement.idl', '../core/html/HTMLTitleElement.idl', '../core/html/HTMLTrackElement.idl', '../core/html/HTMLUListElement.idl', '../core/html/HTMLUnknownElement.idl', '../core/html/HTMLVideoElement.idl', '../core/html/ImageData.idl', '../core/html/MediaController.idl', '../core/html/MediaError.idl', '../core/html/MediaKeyError.idl', '../core/html/MediaKeyEvent.idl', '../core/html/RadioNodeList.idl', '../core/html/TextMetrics.idl', '../core/html/TimeRanges.idl', '../core/html/URL.idl', '../core/html/ValidityState.idl', '../core/html/VoidCallback.idl', '../core/html/canvas/ANGLEInstancedArrays.idl', '../core/html/canvas/ArrayBufferView.idl', '../core/html/canvas/CanvasGradient.idl', '../core/html/canvas/CanvasPattern.idl', '../core/html/canvas/CanvasRenderingContext.idl', '../core/html/canvas/CanvasRenderingContext2D.idl', '../core/html/canvas/Canvas2DContextAttributes.idl', '../core/html/canvas/DataView.idl', '../core/html/canvas/EXTFragDepth.idl', '../core/html/canvas/EXTTextureFilterAnisotropic.idl', '../core/html/canvas/Float32Array.idl', '../core/html/canvas/Float64Array.idl', '../core/html/canvas/Int16Array.idl', '../core/html/canvas/Int32Array.idl', '../core/html/canvas/Int8Array.idl', '../core/html/canvas/OESStandardDerivatives.idl', '../core/html/canvas/OESTextureFloat.idl', '../core/html/canvas/OESTextureFloatLinear.idl', '../core/html/canvas/OESTextureHalfFloat.idl', '../core/html/canvas/OESTextureHalfFloatLinear.idl', '../core/html/canvas/OESVertexArrayObject.idl', '../core/html/canvas/OESElementIndexUint.idl', '../core/html/canvas/Path.idl', '../core/html/canvas/Uint16Array.idl', '../core/html/canvas/Uint32Array.idl', '../core/html/canvas/Uint8Array.idl', '../core/html/canvas/Uint8ClampedArray.idl', '../core/html/canvas/WebGLActiveInfo.idl', '../core/html/canvas/WebGLBuffer.idl', '../core/html/canvas/WebGLCompressedTextureATC.idl', '../core/html/canvas/WebGLCompressedTexturePVRTC.idl', '../core/html/canvas/WebGLCompressedTextureS3TC.idl', '../core/html/canvas/WebGLContextAttributes.idl', '../core/html/canvas/WebGLContextEvent.idl', '../core/html/canvas/WebGLDebugRendererInfo.idl', '../core/html/canvas/WebGLDebugShaders.idl', '../core/html/canvas/WebGLDepthTexture.idl', '../core/html/canvas/WebGLDrawBuffers.idl', '../core/html/canvas/WebGLFramebuffer.idl', '../core/html/canvas/WebGLLoseContext.idl', '../core/html/canvas/WebGLProgram.idl', '../core/html/canvas/WebGLRenderbuffer.idl', '../core/html/canvas/WebGLRenderingContext.idl', '../core/html/canvas/WebGLShader.idl', '../core/html/canvas/WebGLShaderPrecisionFormat.idl', '../core/html/canvas/WebGLTexture.idl', '../core/html/canvas/WebGLUniformLocation.idl', '../core/html/canvas/WebGLVertexArrayObjectOES.idl', '../core/html/ime/Composition.idl', '../core/html/ime/InputMethodContext.idl', '../core/html/shadow/HTMLContentElement.idl', '../core/html/shadow/HTMLShadowElement.idl', '../core/html/track/TextTrack.idl', '../core/html/track/TextTrackCue.idl', '../core/html/track/TextTrackCueList.idl', '../core/html/track/TextTrackList.idl', '../core/html/track/TrackEvent.idl', '../core/html/track/TextTrackRegion.idl', '../core/html/track/TextTrackRegionList.idl', '../core/inspector/InjectedScriptHost.idl', '../core/inspector/InspectorFrontendHost.idl', '../core/inspector/InspectorOverlayHost.idl', '../core/inspector/JavaScriptCallFrame.idl', '../core/loader/appcache/DOMApplicationCache.idl', '../core/page/BarProp.idl', '../core/page/Console.idl', '../core/page/EventSource.idl', '../core/page/History.idl', '../core/page/ImageBitmap.idl', '../core/page/ImageBitmapCallback.idl', '../core/page/Location.idl', '../core/page/MemoryInfo.idl', '../core/page/Navigator.idl', '../core/page/PagePopupController.idl', '../core/page/Performance.idl', '../core/page/PerformanceEntry.idl', '../core/page/PerformanceMark.idl', '../core/page/PerformanceMeasure.idl', '../core/page/PerformanceNavigation.idl', '../core/page/PerformanceResourceTiming.idl', '../core/page/PerformanceTiming.idl', '../core/page/Screen.idl', '../core/page/SecurityPolicy.idl', '../core/page/Selection.idl', '../core/page/SpeechInputEvent.idl', '../core/page/SpeechInputResult.idl', '../core/page/SpeechInputResultList.idl', '../core/page/WebKitPoint.idl', '../core/page/Window.idl', '../core/page/WindowBase64.idl', '../core/page/WindowTimers.idl', '../core/page/WorkerNavigator.idl', '../core/plugins/MimeType.idl', '../core/plugins/MimeTypeArray.idl', '../core/plugins/Plugin.idl', '../core/plugins/PluginArray.idl', '../core/storage/Storage.idl', '../core/storage/StorageEvent.idl', '../core/workers/DedicatedWorkerGlobalScope.idl', '../core/workers/SharedWorker.idl', '../core/workers/SharedWorkerGlobalScope.idl', '../core/workers/Worker.idl', '../core/workers/WorkerGlobalScope.idl', '../core/workers/WorkerLocation.idl', '../core/xml/DOMParser.idl', '../core/xml/DocumentXPathEvaluator.idl', '../core/xml/XMLHttpRequest.idl', '../core/xml/XMLHttpRequestProgressEvent.idl', '../core/xml/XMLHttpRequestUpload.idl', '../core/xml/XMLSerializer.idl', '../core/xml/XPathEvaluator.idl', '../core/xml/XPathExpression.idl', '../core/xml/XPathNSResolver.idl', '../core/xml/XPathResult.idl', '../core/xml/XSLTProcessor.idl', '../modules/crypto/AesCbcParams.idl', '../modules/crypto/AesKeyGenParams.idl', '../modules/crypto/Algorithm.idl', '../modules/crypto/Crypto.idl', '../modules/crypto/CryptoOperation.idl', '../modules/crypto/Key.idl', '../modules/crypto/SubtleCrypto.idl', '../modules/crypto/WorkerCrypto.idl', '../modules/device_orientation/DeviceAcceleration.idl', '../modules/device_orientation/DeviceMotionEvent.idl', '../modules/device_orientation/DeviceOrientationEvent.idl', '../modules/device_orientation/DeviceRotationRate.idl', '../modules/encryptedmedia/MediaKeyMessageEvent.idl', '../modules/encryptedmedia/MediaKeyNeededEvent.idl', '../modules/encryptedmedia/MediaKeys.idl', '../modules/encryptedmedia/MediaKeySession.idl', '../modules/filesystem/DOMFileSystem.idl', '../modules/filesystem/DOMFileSystemSync.idl', '../modules/filesystem/DirectoryEntry.idl', '../modules/filesystem/DirectoryEntrySync.idl', '../modules/filesystem/DirectoryReader.idl', '../modules/filesystem/DirectoryReaderSync.idl', '../modules/filesystem/EntriesCallback.idl', '../modules/filesystem/Entry.idl', '../modules/filesystem/EntryArray.idl', '../modules/filesystem/EntryArraySync.idl', '../modules/filesystem/EntryCallback.idl', '../modules/filesystem/EntrySync.idl', '../modules/filesystem/ErrorCallback.idl', '../modules/filesystem/FileCallback.idl', '../modules/filesystem/FileEntry.idl', '../modules/filesystem/FileEntrySync.idl', '../modules/filesystem/FileSystemCallback.idl', '../modules/filesystem/FileWriter.idl', '../modules/filesystem/FileWriterCallback.idl', '../modules/filesystem/FileWriterSync.idl', '../modules/filesystem/Metadata.idl', '../modules/filesystem/MetadataCallback.idl', '../modules/gamepad/Gamepad.idl', '../modules/gamepad/GamepadList.idl', '../modules/geolocation/Coordinates.idl', '../modules/geolocation/Geolocation.idl', '../modules/geolocation/Geoposition.idl', '../modules/geolocation/PositionCallback.idl', '../modules/geolocation/PositionError.idl', '../modules/geolocation/PositionErrorCallback.idl', '../modules/indexeddb/IDBAny.idl', '../modules/indexeddb/IDBCursor.idl', '../modules/indexeddb/IDBCursorWithValue.idl', '../modules/indexeddb/IDBDatabase.idl', '../modules/indexeddb/IDBFactory.idl', '../modules/indexeddb/IDBIndex.idl', '../modules/indexeddb/IDBKeyRange.idl', '../modules/indexeddb/IDBObjectStore.idl', '../modules/indexeddb/IDBOpenDBRequest.idl', '../modules/indexeddb/IDBRequest.idl', '../modules/indexeddb/IDBTransaction.idl', '../modules/indexeddb/IDBVersionChangeEvent.idl', '../modules/mediasource/MediaSource.idl', '../modules/mediasource/SourceBuffer.idl', '../modules/mediasource/SourceBufferList.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/mediasource/WebKitMediaSource.idl', '../modules/mediasource/WebKitSourceBuffer.idl', '../modules/mediasource/WebKitSourceBufferList.idl', '../modules/mediastream/MediaStream.idl', '../modules/mediastream/MediaStreamEvent.idl', '../modules/mediastream/MediaStreamTrack.idl', '../modules/mediastream/MediaStreamTrackEvent.idl', '../modules/mediastream/MediaStreamTrackSourcesCallback.idl', '../modules/mediastream/NavigatorUserMediaError.idl', '../modules/mediastream/NavigatorUserMediaErrorCallback.idl', '../modules/mediastream/NavigatorUserMediaSuccessCallback.idl', '../modules/mediastream/RTCDTMFSender.idl', '../modules/mediastream/RTCDTMFToneChangeEvent.idl', '../modules/mediastream/RTCDataChannel.idl', '../modules/mediastream/RTCDataChannelEvent.idl', '../modules/mediastream/RTCErrorCallback.idl', '../modules/mediastream/RTCIceCandidate.idl', '../modules/mediastream/RTCIceCandidateEvent.idl', '../modules/mediastream/RTCPeerConnection.idl', '../modules/mediastream/RTCSessionDescription.idl', '../modules/mediastream/RTCSessionDescriptionCallback.idl', '../modules/mediastream/RTCStatsCallback.idl', '../modules/mediastream/RTCStatsReport.idl', '../modules/mediastream/RTCStatsResponse.idl', '../modules/mediastream/SourceInfo.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/notifications/Notification.idl', '../modules/notifications/NotificationCenter.idl', '../modules/notifications/NotificationPermissionCallback.idl', '../modules/performance/WorkerPerformance.idl', '../modules/quota/StorageErrorCallback.idl', '../modules/quota/StorageInfo.idl', '../modules/quota/StorageQuota.idl', '../modules/quota/StorageQuotaCallback.idl', '../modules/quota/StorageUsageCallback.idl', '../modules/speech/SpeechGrammar.idl', '../modules/speech/SpeechGrammarList.idl', '../modules/speech/SpeechRecognition.idl', '../modules/speech/SpeechRecognitionAlternative.idl', '../modules/speech/SpeechRecognitionError.idl', '../modules/speech/SpeechRecognitionEvent.idl', '../modules/speech/SpeechRecognitionResult.idl', '../modules/speech/SpeechRecognitionResultList.idl', '../modules/speech/SpeechSynthesis.idl', '../modules/speech/SpeechSynthesisEvent.idl', '../modules/speech/SpeechSynthesisUtterance.idl', '../modules/speech/SpeechSynthesisVoice.idl', '../modules/webaudio/AudioBuffer.idl', '../modules/webaudio/AudioBufferCallback.idl', '../modules/webaudio/AudioBufferSourceNode.idl', '../modules/webaudio/ChannelMergerNode.idl', '../modules/webaudio/ChannelSplitterNode.idl', '../modules/webaudio/AudioContext.idl', '../modules/webaudio/AudioDestinationNode.idl', '../modules/webaudio/GainNode.idl', '../modules/webaudio/AudioListener.idl', '../modules/webaudio/AudioNode.idl', '../modules/webaudio/PannerNode.idl', '../modules/webaudio/AudioParam.idl', '../modules/webaudio/AudioProcessingEvent.idl', '../modules/webaudio/AudioSourceNode.idl', '../modules/webaudio/BiquadFilterNode.idl', '../modules/webaudio/ConvolverNode.idl', '../modules/webaudio/DelayNode.idl', '../modules/webaudio/DynamicsCompressorNode.idl', '../modules/webaudio/ScriptProcessorNode.idl', '../modules/webaudio/MediaElementAudioSourceNode.idl', '../modules/webaudio/MediaStreamAudioDestinationNode.idl', '../modules/webaudio/MediaStreamAudioSourceNode.idl', '../modules/webaudio/OfflineAudioCompletionEvent.idl', '../modules/webaudio/OfflineAudioContext.idl', '../modules/webaudio/OscillatorNode.idl', '../modules/webaudio/PeriodicWave.idl', '../modules/webaudio/AnalyserNode.idl', '../modules/webaudio/WaveShaperNode.idl', '../modules/webdatabase/Database.idl', '../modules/webdatabase/DatabaseCallback.idl', '../modules/webdatabase/DatabaseSync.idl', '../modules/webdatabase/SQLError.idl', '../modules/webdatabase/SQLResultSet.idl', '../modules/webdatabase/SQLResultSetRowList.idl', '../modules/webdatabase/SQLStatementCallback.idl', '../modules/webdatabase/SQLStatementErrorCallback.idl', '../modules/webdatabase/SQLTransaction.idl', '../modules/webdatabase/SQLTransactionCallback.idl', '../modules/webdatabase/SQLTransactionErrorCallback.idl', '../modules/webdatabase/SQLTransactionSync.idl', '../modules/webdatabase/SQLTransactionSyncCallback.idl', '../modules/webmidi/MIDIAccess.idl', '../modules/webmidi/MIDIAccessPromise.idl', '../modules/webmidi/MIDIConnectionEvent.idl', '../modules/webmidi/MIDIErrorCallback.idl', '../modules/webmidi/MIDIInput.idl', '../modules/webmidi/MIDIMessageEvent.idl', '../modules/webmidi/MIDIOutput.idl', '../modules/webmidi/MIDIPort.idl', '../modules/webmidi/MIDISuccessCallback.idl', '../modules/websockets/CloseEvent.idl', '../modules/websockets/WebSocket.idl', '../core/svg/SVGAElement.idl', '../core/svg/SVGAltGlyphElement.idl', '../core/svg/SVGAltGlyphItemElement.idl', '../core/svg/SVGAltGlyphDefElement.idl', '../core/svg/SVGAngle.idl', '../core/svg/SVGAnimateColorElement.idl', '../core/svg/SVGAnimateMotionElement.idl', '../core/svg/SVGAnimateElement.idl', '../core/svg/SVGAnimateTransformElement.idl', '../core/svg/SVGAnimatedAngle.idl', '../core/svg/SVGAnimatedBoolean.idl', '../core/svg/SVGAnimatedEnumeration.idl', '../core/svg/SVGAnimatedInteger.idl', '../core/svg/SVGAnimatedLength.idl', '../core/svg/SVGAnimatedLengthList.idl', '../core/svg/SVGAnimatedNumber.idl', '../core/svg/SVGAnimatedNumberList.idl', '../core/svg/SVGAnimatedPreserveAspectRatio.idl', '../core/svg/SVGAnimatedRect.idl', '../core/svg/SVGAnimatedString.idl', '../core/svg/SVGAnimatedTransformList.idl', '../core/svg/SVGAnimationElement.idl', '../core/svg/SVGCircleElement.idl', '../core/svg/SVGClipPathElement.idl', '../core/svg/SVGColor.idl', '../core/svg/SVGComponentTransferFunctionElement.idl', '../core/svg/SVGCursorElement.idl', '../core/svg/SVGDefsElement.idl', '../core/svg/SVGDescElement.idl', '../core/svg/SVGDocument.idl', '../core/svg/SVGElement.idl', '../core/svg/SVGElementInstance.idl', '../core/svg/SVGElementInstanceList.idl', '../core/svg/SVGEllipseElement.idl', '../core/svg/SVGFEBlendElement.idl', '../core/svg/SVGFEColorMatrixElement.idl', '../core/svg/SVGFEComponentTransferElement.idl', '../core/svg/SVGFECompositeElement.idl', '../core/svg/SVGFEConvolveMatrixElement.idl', '../core/svg/SVGFEDiffuseLightingElement.idl', '../core/svg/SVGFEDisplacementMapElement.idl', '../core/svg/SVGFEDistantLightElement.idl', '../core/svg/SVGFEDropShadowElement.idl', '../core/svg/SVGFEFloodElement.idl', '../core/svg/SVGFEFuncAElement.idl', '../core/svg/SVGFEFuncBElement.idl', '../core/svg/SVGFEFuncGElement.idl', '../core/svg/SVGFEFuncRElement.idl', '../core/svg/SVGFEGaussianBlurElement.idl', '../core/svg/SVGFEImageElement.idl', '../core/svg/SVGFEMergeElement.idl', '../core/svg/SVGFEMergeNodeElement.idl', '../core/svg/SVGFEMorphologyElement.idl', '../core/svg/SVGFEOffsetElement.idl', '../core/svg/SVGFEPointLightElement.idl', '../core/svg/SVGFESpecularLightingElement.idl', '../core/svg/SVGFESpotLightElement.idl', '../core/svg/SVGFETileElement.idl', '../core/svg/SVGFETurbulenceElement.idl', '../core/svg/SVGFilterElement.idl', '../core/svg/SVGFontElement.idl', '../core/svg/SVGFontFaceElement.idl', '../core/svg/SVGFontFaceFormatElement.idl', '../core/svg/SVGFontFaceNameElement.idl', '../core/svg/SVGFontFaceSrcElement.idl', '../core/svg/SVGFontFaceUriElement.idl', '../core/svg/SVGForeignObjectElement.idl', '../core/svg/SVGGElement.idl', '../core/svg/SVGGlyphElement.idl', '../core/svg/SVGGlyphRefElement.idl', '../core/svg/SVGGradientElement.idl', '../core/svg/SVGGraphicsElement.idl', '../core/svg/SVGHKernElement.idl', '../core/svg/SVGImageElement.idl', '../core/svg/SVGLength.idl', '../core/svg/SVGLengthList.idl', '../core/svg/SVGLineElement.idl', '../core/svg/SVGLinearGradientElement.idl', '../core/svg/SVGMarkerElement.idl', '../core/svg/SVGMaskElement.idl', '../core/svg/SVGMatrix.idl', '../core/svg/SVGMetadataElement.idl', '../core/svg/SVGMissingGlyphElement.idl', '../core/svg/SVGMPathElement.idl', '../core/svg/SVGNumber.idl', '../core/svg/SVGNumberList.idl', '../core/svg/SVGPaint.idl', '../core/svg/SVGPathElement.idl', '../core/svg/SVGPathSeg.idl', '../core/svg/SVGPathSegArcAbs.idl', '../core/svg/SVGPathSegArcRel.idl', '../core/svg/SVGPathSegClosePath.idl', '../core/svg/SVGPathSegCurvetoCubicAbs.idl', '../core/svg/SVGPathSegCurvetoCubicRel.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl', '../core/svg/SVGPathSegLinetoAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalRel.idl', '../core/svg/SVGPathSegLinetoRel.idl', '../core/svg/SVGPathSegLinetoVerticalAbs.idl', '../core/svg/SVGPathSegLinetoVerticalRel.idl', '../core/svg/SVGPathSegList.idl', '../core/svg/SVGPathSegMovetoAbs.idl', '../core/svg/SVGPathSegMovetoRel.idl', '../core/svg/SVGPatternElement.idl', '../core/svg/SVGPoint.idl', '../core/svg/SVGPointList.idl', '../core/svg/SVGPolygonElement.idl', '../core/svg/SVGPolylineElement.idl', '../core/svg/SVGPreserveAspectRatio.idl', '../core/svg/SVGRadialGradientElement.idl', '../core/svg/SVGRect.idl', '../core/svg/SVGRectElement.idl', '../core/svg/SVGRenderingIntent.idl', '../core/svg/SVGSVGElement.idl', '../core/svg/SVGScriptElement.idl', '../core/svg/SVGSetElement.idl', '../core/svg/SVGStopElement.idl', '../core/svg/SVGStringList.idl', '../core/svg/SVGStyleElement.idl', '../core/svg/SVGStyledElement.idl', '../core/svg/SVGSwitchElement.idl', '../core/svg/SVGSymbolElement.idl', '../core/svg/SVGTRefElement.idl', '../core/svg/SVGTSpanElement.idl', '../core/svg/SVGTextContentElement.idl', '../core/svg/SVGTextElement.idl', '../core/svg/SVGTextPathElement.idl', '../core/svg/SVGTextPositioningElement.idl', '../core/svg/SVGTitleElement.idl', '../core/svg/SVGTransform.idl', '../core/svg/SVGTransformList.idl', '../core/svg/SVGUnitTypes.idl', '../core/svg/SVGUseElement.idl', '../core/svg/SVGViewElement.idl', '../core/svg/SVGViewSpec.idl', '../core/svg/SVGVKernElement.idl', '../core/svg/SVGZoomEvent.idl', '../core/testing/Internals.idl', '../core/testing/InternalProfilers.idl', '../core/testing/InternalSettings.idl', '../core/testing/LayerRect.idl', '../core/testing/LayerRectList.idl', '../core/testing/MallocStatistics.idl', '../core/testing/TypeConversions.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl'], 'action': ['perl', '-w', '-Iscripts', '-I../core/scripts', '-I../../../../third_party/JSON/out/lib/perl5', 'scripts/deprecated_generate_bindings.pl', '--outputDir', '$(gyp_shared_intermediate_dir)/webkit/bindings', '--idlAttributesFile', 'scripts/IDLAttributes.txt', '--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit', '--interfaceDependenciesFile', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '--additionalIdlFiles', '../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl "$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl" "$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl"', '--preprocessor', '/usr/bin/gcc -E -P -x c++', '--write-file-only-if-changed', '0', '$(RULE_SOURCES)'], 'message': 'Generating binding from $(RULE_SOURCES)'}":
+# "{'inputs': ['scripts/deprecated_generate_bindings.pl', 'scripts/deprecated_code_generator_v8.pm', 'scripts/deprecated_idl_parser.pm', 'scripts/deprecated_idl_serializer.pm', '../core/scripts/preprocessor.pm', 'scripts/IDLAttributes.txt', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '../modules/filesystem/HTMLInputElementFileSystem.idl', '../core/dom/DocumentFullscreen.idl', '../modules/geolocation/NavigatorGeolocation.idl', '../modules/mediasource/WindowMediaSource.idl', '../modules/filesystem/WindowFileSystem.idl', '../modules/indexeddb/WindowIndexedDatabase.idl', '../modules/navigatorcontentutils/NavigatorContentUtils.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/quota/WindowQuota.idl', '../modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl', '../modules/webmidi/NavigatorWebMIDI.idl', '../modules/notifications/WorkerGlobalScopeNotifications.idl', '../modules/webdatabase/WindowWebDatabase.idl', '../core/page/WindowPagePopup.idl', '../modules/webdatabase/WorkerGlobalScopeWebDatabase.idl', '../modules/mediastream/NavigatorMediaStream.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/crypto/WorkerGlobalScopeCrypto.idl', '../modules/filesystem/DataTransferItemFileSystem.idl', '../modules/gamepad/NavigatorGamepad.idl', '../core/xml/DocumentXPathEvaluator.idl', '../modules/filesystem/WorkerGlobalScopeFileSystem.idl', '../modules/donottrack/NavigatorDoNotTrack.idl', '../modules/notifications/WindowNotifications.idl', '$(gyp_shared_intermediate_dir)/WindowConstructors.idl', '$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl'], 'msvs_cygwin_shell': '0', 'extension': 'idl', 'msvs_external_rule': '1', 'outputs': ['$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.cpp', '$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.h'], 'variables': {'extra_blink_generator_include_dirs%': [], 'generator_include_dirs': ['--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit']}, 'rule_name': 'deprecated_perl_binding', 'rule_sources': ['../core/css/CSS.idl', '../core/css/CSSCharsetRule.idl', '../core/css/CSSFontFaceLoadEvent.idl', '../core/css/CSSFontFaceRule.idl', '../core/css/CSSHostRule.idl', '../core/css/CSSImportRule.idl', '../core/css/CSSMediaRule.idl', '../core/css/CSSPageRule.idl', '../core/css/CSSPrimitiveValue.idl', '../core/css/CSSRule.idl', '../core/css/CSSRuleList.idl', '../core/css/CSSStyleDeclaration.idl', '../core/css/CSSStyleRule.idl', '../core/css/CSSStyleSheet.idl', '../core/css/CSSSupportsRule.idl', '../core/css/CSSValue.idl', '../core/css/CSSValueList.idl', '../core/css/CSSViewportRule.idl', '../core/css/CSSVariablesMap.idl', '../core/css/Counter.idl', '../core/css/FontLoader.idl', '../core/css/MediaList.idl', '../core/css/MediaQueryList.idl', '../core/css/Rect.idl', '../core/css/RGBColor.idl', '../core/css/StyleMedia.idl', '../core/css/StyleSheet.idl', '../core/css/StyleSheetList.idl', '../core/css/WebKitCSSFilterRule.idl', '../core/css/WebKitCSSFilterValue.idl', '../core/css/WebKitCSSKeyframeRule.idl', '../core/css/WebKitCSSKeyframesRule.idl', '../core/css/WebKitCSSMatrix.idl', '../core/css/WebKitCSSMixFunctionValue.idl', '../core/css/WebKitCSSRegionRule.idl', '../core/css/WebKitCSSTransformValue.idl', '../core/dom/Attr.idl', '../core/dom/AutocompleteErrorEvent.idl', '../core/dom/BeforeLoadEvent.idl', '../core/dom/CDATASection.idl', '../core/dom/CharacterData.idl', '../core/dom/ClientRect.idl', '../core/dom/ClientRectList.idl', '../core/dom/Clipboard.idl', '../core/dom/Comment.idl', '../core/dom/CompositionEvent.idl', '../core/dom/CustomEvent.idl', '../core/dom/DOMError.idl', '../core/dom/DOMException.idl', '../core/dom/DOMImplementation.idl', '../core/dom/DOMStringList.idl', '../core/dom/DOMStringMap.idl', '../core/dom/DataTransferItem.idl', '../core/dom/DataTransferItemList.idl', '../core/dom/Document.idl', '../core/dom/DocumentFragment.idl', '../core/dom/DocumentType.idl', '../core/dom/Element.idl', '../core/dom/Entity.idl', '../core/dom/ErrorEvent.idl', '../core/dom/Event.idl', '../core/dom/EventTarget.idl', '../core/dom/FocusEvent.idl', '../core/dom/HashChangeEvent.idl', '../core/dom/KeyboardEvent.idl', '../core/dom/MessageChannel.idl', '../core/dom/MessageEvent.idl', '../core/dom/MessagePort.idl', '../core/dom/MouseEvent.idl', '../core/dom/MutationEvent.idl', '../core/dom/MutationObserver.idl', '../core/dom/MutationRecord.idl', '../core/dom/NamedNodeMap.idl', '../core/dom/Node.idl', '../core/dom/NodeFilter.idl', '../core/dom/NodeIterator.idl', '../core/dom/NodeList.idl', '../core/dom/Notation.idl', '../core/dom/OverflowEvent.idl', '../core/dom/PageTransitionEvent.idl', '../core/dom/PopStateEvent.idl', '../core/dom/ProcessingInstruction.idl', '../core/dom/ProgressEvent.idl', '../core/dom/Promise.idl', '../core/dom/PromiseResolver.idl', '../core/dom/Range.idl', '../core/dom/RequestAnimationFrameCallback.idl', '../core/dom/ResourceProgressEvent.idl', '../core/dom/SecurityPolicyViolationEvent.idl', '../core/dom/StringCallback.idl', '../core/dom/Text.idl', '../core/dom/TextEvent.idl', '../core/dom/Touch.idl', '../core/dom/TouchEvent.idl', '../core/dom/TouchList.idl', '../core/dom/TransitionEvent.idl', '../core/dom/TreeWalker.idl', '../core/dom/UIEvent.idl', '../core/dom/WebKitAnimationEvent.idl', '../core/dom/WebKitNamedFlow.idl', '../core/dom/WebKitNamedFlowCollection.idl', '../core/dom/WheelEvent.idl', '../core/dom/shadow/ShadowRoot.idl', '../core/fileapi/Blob.idl', '../core/fileapi/File.idl', '../core/fileapi/FileError.idl', '../core/fileapi/FileList.idl', '../core/fileapi/FileReader.idl', '../core/fileapi/FileReaderSync.idl', '../core/fileapi/Stream.idl', '../core/html/DOMSettableTokenList.idl', '../core/html/DOMTokenList.idl', '../core/html/FormData.idl', '../core/html/HTMLAllCollection.idl', '../core/html/HTMLAnchorElement.idl', '../core/html/HTMLAppletElement.idl', '../core/html/HTMLAreaElement.idl', '../core/html/HTMLAudioElement.idl', '../core/html/HTMLBRElement.idl', '../core/html/HTMLBaseElement.idl', '../core/html/HTMLBodyElement.idl', '../core/html/HTMLButtonElement.idl', '../core/html/HTMLCanvasElement.idl', '../core/html/HTMLCollection.idl', '../core/html/HTMLDListElement.idl', '../core/html/HTMLDataListElement.idl', '../core/html/HTMLDetailsElement.idl', '../core/html/HTMLDialogElement.idl', '../core/html/HTMLDirectoryElement.idl', '../core/html/HTMLDivElement.idl', '../core/html/HTMLDocument.idl', '../core/html/HTMLElement.idl', '../core/html/HTMLEmbedElement.idl', '../core/html/HTMLFieldSetElement.idl', '../core/html/HTMLFontElement.idl', '../core/html/HTMLFormControlsCollection.idl', '../core/html/HTMLFormElement.idl', '../core/html/HTMLFrameElement.idl', '../core/html/HTMLFrameSetElement.idl', '../core/html/HTMLHRElement.idl', '../core/html/HTMLHeadElement.idl', '../core/html/HTMLHeadingElement.idl', '../core/html/HTMLHtmlElement.idl', '../core/html/HTMLIFrameElement.idl', '../core/html/HTMLImageElement.idl', '../core/html/HTMLInputElement.idl', '../core/html/HTMLKeygenElement.idl', '../core/html/HTMLLIElement.idl', '../core/html/HTMLLabelElement.idl', '../core/html/HTMLLegendElement.idl', '../core/html/HTMLLinkElement.idl', '../core/html/HTMLMapElement.idl', '../core/html/HTMLMarqueeElement.idl', '../core/html/HTMLMediaElement.idl', '../core/html/HTMLMenuElement.idl', '../core/html/HTMLMetaElement.idl', '../core/html/HTMLMeterElement.idl', '../core/html/HTMLModElement.idl', '../core/html/HTMLOListElement.idl', '../core/html/HTMLObjectElement.idl', '../core/html/HTMLOptGroupElement.idl', '../core/html/HTMLOptionElement.idl', '../core/html/HTMLOptionsCollection.idl', '../core/html/HTMLOutputElement.idl', '../core/html/HTMLParagraphElement.idl', '../core/html/HTMLParamElement.idl', '../core/html/HTMLPreElement.idl', '../core/html/HTMLProgressElement.idl', '../core/html/HTMLQuoteElement.idl', '../core/html/HTMLScriptElement.idl', '../core/html/HTMLSelectElement.idl', '../core/html/HTMLSourceElement.idl', '../core/html/HTMLSpanElement.idl', '../core/html/HTMLStyleElement.idl', '../core/html/HTMLTableCaptionElement.idl', '../core/html/HTMLTableCellElement.idl', '../core/html/HTMLTableColElement.idl', '../core/html/HTMLTableElement.idl', '../core/html/HTMLTableRowElement.idl', '../core/html/HTMLTableSectionElement.idl', '../core/html/HTMLTextAreaElement.idl', '../core/html/HTMLTemplateElement.idl', '../core/html/HTMLTitleElement.idl', '../core/html/HTMLTrackElement.idl', '../core/html/HTMLUListElement.idl', '../core/html/HTMLUnknownElement.idl', '../core/html/HTMLVideoElement.idl', '../core/html/ImageData.idl', '../core/html/MediaController.idl', '../core/html/MediaError.idl', '../core/html/MediaKeyError.idl', '../core/html/MediaKeyEvent.idl', '../core/html/RadioNodeList.idl', '../core/html/TextMetrics.idl', '../core/html/TimeRanges.idl', '../core/html/URL.idl', '../core/html/ValidityState.idl', '../core/html/VoidCallback.idl', '../core/html/canvas/ANGLEInstancedArrays.idl', '../core/html/canvas/ArrayBufferView.idl', '../core/html/canvas/CanvasGradient.idl', '../core/html/canvas/CanvasPattern.idl', '../core/html/canvas/CanvasRenderingContext.idl', '../core/html/canvas/CanvasRenderingContext2D.idl', '../core/html/canvas/Canvas2DContextAttributes.idl', '../core/html/canvas/DataView.idl', '../core/html/canvas/EXTFragDepth.idl', '../core/html/canvas/EXTTextureFilterAnisotropic.idl', '../core/html/canvas/Float32Array.idl', '../core/html/canvas/Float64Array.idl', '../core/html/canvas/Int16Array.idl', '../core/html/canvas/Int32Array.idl', '../core/html/canvas/Int8Array.idl', '../core/html/canvas/OESStandardDerivatives.idl', '../core/html/canvas/OESTextureFloat.idl', '../core/html/canvas/OESTextureFloatLinear.idl', '../core/html/canvas/OESTextureHalfFloat.idl', '../core/html/canvas/OESTextureHalfFloatLinear.idl', '../core/html/canvas/OESVertexArrayObject.idl', '../core/html/canvas/OESElementIndexUint.idl', '../core/html/canvas/Path.idl', '../core/html/canvas/Uint16Array.idl', '../core/html/canvas/Uint32Array.idl', '../core/html/canvas/Uint8Array.idl', '../core/html/canvas/Uint8ClampedArray.idl', '../core/html/canvas/WebGLActiveInfo.idl', '../core/html/canvas/WebGLBuffer.idl', '../core/html/canvas/WebGLCompressedTextureATC.idl', '../core/html/canvas/WebGLCompressedTexturePVRTC.idl', '../core/html/canvas/WebGLCompressedTextureS3TC.idl', '../core/html/canvas/WebGLContextAttributes.idl', '../core/html/canvas/WebGLContextEvent.idl', '../core/html/canvas/WebGLDebugRendererInfo.idl', '../core/html/canvas/WebGLDebugShaders.idl', '../core/html/canvas/WebGLDepthTexture.idl', '../core/html/canvas/WebGLDrawBuffers.idl', '../core/html/canvas/WebGLFramebuffer.idl', '../core/html/canvas/WebGLLoseContext.idl', '../core/html/canvas/WebGLProgram.idl', '../core/html/canvas/WebGLRenderbuffer.idl', '../core/html/canvas/WebGLRenderingContext.idl', '../core/html/canvas/WebGLShader.idl', '../core/html/canvas/WebGLShaderPrecisionFormat.idl', '../core/html/canvas/WebGLTexture.idl', '../core/html/canvas/WebGLUniformLocation.idl', '../core/html/canvas/WebGLVertexArrayObjectOES.idl', '../core/html/ime/Composition.idl', '../core/html/ime/InputMethodContext.idl', '../core/html/shadow/HTMLContentElement.idl', '../core/html/shadow/HTMLShadowElement.idl', '../core/html/track/TextTrack.idl', '../core/html/track/TextTrackCue.idl', '../core/html/track/TextTrackCueList.idl', '../core/html/track/TextTrackList.idl', '../core/html/track/TrackEvent.idl', '../core/html/track/TextTrackRegion.idl', '../core/html/track/TextTrackRegionList.idl', '../core/inspector/InjectedScriptHost.idl', '../core/inspector/InspectorFrontendHost.idl', '../core/inspector/InspectorOverlayHost.idl', '../core/inspector/JavaScriptCallFrame.idl', '../core/loader/appcache/DOMApplicationCache.idl', '../core/page/BarProp.idl', '../core/page/Console.idl', '../core/page/EventSource.idl', '../core/page/History.idl', '../core/page/ImageBitmap.idl', '../core/page/ImageBitmapCallback.idl', '../core/page/Location.idl', '../core/page/MemoryInfo.idl', '../core/page/Navigator.idl', '../core/page/PagePopupController.idl', '../core/page/Performance.idl', '../core/page/PerformanceEntry.idl', '../core/page/PerformanceMark.idl', '../core/page/PerformanceMeasure.idl', '../core/page/PerformanceNavigation.idl', '../core/page/PerformanceResourceTiming.idl', '../core/page/PerformanceTiming.idl', '../core/page/Screen.idl', '../core/page/SecurityPolicy.idl', '../core/page/Selection.idl', '../core/page/SpeechInputEvent.idl', '../core/page/SpeechInputResult.idl', '../core/page/SpeechInputResultList.idl', '../core/page/WebKitPoint.idl', '../core/page/Window.idl', '../core/page/WindowBase64.idl', '../core/page/WindowTimers.idl', '../core/page/WorkerNavigator.idl', '../core/plugins/MimeType.idl', '../core/plugins/MimeTypeArray.idl', '../core/plugins/Plugin.idl', '../core/plugins/PluginArray.idl', '../core/storage/Storage.idl', '../core/storage/StorageEvent.idl', '../core/workers/DedicatedWorkerGlobalScope.idl', '../core/workers/SharedWorker.idl', '../core/workers/SharedWorkerGlobalScope.idl', '../core/workers/Worker.idl', '../core/workers/WorkerGlobalScope.idl', '../core/workers/WorkerLocation.idl', '../core/xml/DOMParser.idl', '../core/xml/DocumentXPathEvaluator.idl', '../core/xml/XMLHttpRequest.idl', '../core/xml/XMLHttpRequestProgressEvent.idl', '../core/xml/XMLHttpRequestUpload.idl', '../core/xml/XMLSerializer.idl', '../core/xml/XPathEvaluator.idl', '../core/xml/XPathExpression.idl', '../core/xml/XPathNSResolver.idl', '../core/xml/XPathResult.idl', '../core/xml/XSLTProcessor.idl', '../modules/crypto/AesCbcParams.idl', '../modules/crypto/AesKeyGenParams.idl', '../modules/crypto/Algorithm.idl', '../modules/crypto/Crypto.idl', '../modules/crypto/CryptoOperation.idl', '../modules/crypto/HmacParams.idl', '../modules/crypto/Key.idl', '../modules/crypto/SubtleCrypto.idl', '../modules/crypto/WorkerCrypto.idl', '../modules/device_orientation/DeviceAcceleration.idl', '../modules/device_orientation/DeviceMotionEvent.idl', '../modules/device_orientation/DeviceOrientationEvent.idl', '../modules/device_orientation/DeviceRotationRate.idl', '../modules/encryptedmedia/MediaKeyMessageEvent.idl', '../modules/encryptedmedia/MediaKeyNeededEvent.idl', '../modules/encryptedmedia/MediaKeys.idl', '../modules/encryptedmedia/MediaKeySession.idl', '../modules/filesystem/DOMFileSystem.idl', '../modules/filesystem/DOMFileSystemSync.idl', '../modules/filesystem/DirectoryEntry.idl', '../modules/filesystem/DirectoryEntrySync.idl', '../modules/filesystem/DirectoryReader.idl', '../modules/filesystem/DirectoryReaderSync.idl', '../modules/filesystem/EntriesCallback.idl', '../modules/filesystem/Entry.idl', '../modules/filesystem/EntryArray.idl', '../modules/filesystem/EntryArraySync.idl', '../modules/filesystem/EntryCallback.idl', '../modules/filesystem/EntrySync.idl', '../modules/filesystem/ErrorCallback.idl', '../modules/filesystem/FileCallback.idl', '../modules/filesystem/FileEntry.idl', '../modules/filesystem/FileEntrySync.idl', '../modules/filesystem/FileSystemCallback.idl', '../modules/filesystem/FileWriter.idl', '../modules/filesystem/FileWriterCallback.idl', '../modules/filesystem/FileWriterSync.idl', '../modules/filesystem/Metadata.idl', '../modules/filesystem/MetadataCallback.idl', '../modules/gamepad/Gamepad.idl', '../modules/gamepad/GamepadList.idl', '../modules/geolocation/Coordinates.idl', '../modules/geolocation/Geolocation.idl', '../modules/geolocation/Geoposition.idl', '../modules/geolocation/PositionCallback.idl', '../modules/geolocation/PositionError.idl', '../modules/geolocation/PositionErrorCallback.idl', '../modules/indexeddb/IDBAny.idl', '../modules/indexeddb/IDBCursor.idl', '../modules/indexeddb/IDBCursorWithValue.idl', '../modules/indexeddb/IDBDatabase.idl', '../modules/indexeddb/IDBFactory.idl', '../modules/indexeddb/IDBIndex.idl', '../modules/indexeddb/IDBKeyRange.idl', '../modules/indexeddb/IDBObjectStore.idl', '../modules/indexeddb/IDBOpenDBRequest.idl', '../modules/indexeddb/IDBRequest.idl', '../modules/indexeddb/IDBTransaction.idl', '../modules/indexeddb/IDBVersionChangeEvent.idl', '../modules/mediasource/MediaSource.idl', '../modules/mediasource/SourceBuffer.idl', '../modules/mediasource/SourceBufferList.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/mediasource/WebKitMediaSource.idl', '../modules/mediasource/WebKitSourceBuffer.idl', '../modules/mediasource/WebKitSourceBufferList.idl', '../modules/mediastream/MediaStream.idl', '../modules/mediastream/MediaStreamEvent.idl', '../modules/mediastream/MediaStreamTrack.idl', '../modules/mediastream/MediaStreamTrackEvent.idl', '../modules/mediastream/MediaStreamTrackSourcesCallback.idl', '../modules/mediastream/NavigatorUserMediaError.idl', '../modules/mediastream/NavigatorUserMediaErrorCallback.idl', '../modules/mediastream/NavigatorUserMediaSuccessCallback.idl', '../modules/mediastream/RTCDTMFSender.idl', '../modules/mediastream/RTCDTMFToneChangeEvent.idl', '../modules/mediastream/RTCDataChannel.idl', '../modules/mediastream/RTCDataChannelEvent.idl', '../modules/mediastream/RTCErrorCallback.idl', '../modules/mediastream/RTCIceCandidate.idl', '../modules/mediastream/RTCIceCandidateEvent.idl', '../modules/mediastream/RTCPeerConnection.idl', '../modules/mediastream/RTCSessionDescription.idl', '../modules/mediastream/RTCSessionDescriptionCallback.idl', '../modules/mediastream/RTCStatsCallback.idl', '../modules/mediastream/RTCStatsReport.idl', '../modules/mediastream/RTCStatsResponse.idl', '../modules/mediastream/SourceInfo.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/notifications/Notification.idl', '../modules/notifications/NotificationCenter.idl', '../modules/notifications/NotificationPermissionCallback.idl', '../modules/performance/WorkerPerformance.idl', '../modules/quota/StorageErrorCallback.idl', '../modules/quota/StorageInfo.idl', '../modules/quota/StorageQuota.idl', '../modules/quota/StorageQuotaCallback.idl', '../modules/quota/StorageUsageCallback.idl', '../modules/speech/SpeechGrammar.idl', '../modules/speech/SpeechGrammarList.idl', '../modules/speech/SpeechRecognition.idl', '../modules/speech/SpeechRecognitionAlternative.idl', '../modules/speech/SpeechRecognitionError.idl', '../modules/speech/SpeechRecognitionEvent.idl', '../modules/speech/SpeechRecognitionResult.idl', '../modules/speech/SpeechRecognitionResultList.idl', '../modules/speech/SpeechSynthesis.idl', '../modules/speech/SpeechSynthesisEvent.idl', '../modules/speech/SpeechSynthesisUtterance.idl', '../modules/speech/SpeechSynthesisVoice.idl', '../modules/webaudio/AudioBuffer.idl', '../modules/webaudio/AudioBufferCallback.idl', '../modules/webaudio/AudioBufferSourceNode.idl', '../modules/webaudio/ChannelMergerNode.idl', '../modules/webaudio/ChannelSplitterNode.idl', '../modules/webaudio/AudioContext.idl', '../modules/webaudio/AudioDestinationNode.idl', '../modules/webaudio/GainNode.idl', '../modules/webaudio/AudioListener.idl', '../modules/webaudio/AudioNode.idl', '../modules/webaudio/PannerNode.idl', '../modules/webaudio/AudioParam.idl', '../modules/webaudio/AudioProcessingEvent.idl', '../modules/webaudio/AudioSourceNode.idl', '../modules/webaudio/BiquadFilterNode.idl', '../modules/webaudio/ConvolverNode.idl', '../modules/webaudio/DelayNode.idl', '../modules/webaudio/DynamicsCompressorNode.idl', '../modules/webaudio/ScriptProcessorNode.idl', '../modules/webaudio/MediaElementAudioSourceNode.idl', '../modules/webaudio/MediaStreamAudioDestinationNode.idl', '../modules/webaudio/MediaStreamAudioSourceNode.idl', '../modules/webaudio/OfflineAudioCompletionEvent.idl', '../modules/webaudio/OfflineAudioContext.idl', '../modules/webaudio/OscillatorNode.idl', '../modules/webaudio/PeriodicWave.idl', '../modules/webaudio/AnalyserNode.idl', '../modules/webaudio/WaveShaperNode.idl', '../modules/webdatabase/Database.idl', '../modules/webdatabase/DatabaseCallback.idl', '../modules/webdatabase/DatabaseSync.idl', '../modules/webdatabase/SQLError.idl', '../modules/webdatabase/SQLResultSet.idl', '../modules/webdatabase/SQLResultSetRowList.idl', '../modules/webdatabase/SQLStatementCallback.idl', '../modules/webdatabase/SQLStatementErrorCallback.idl', '../modules/webdatabase/SQLTransaction.idl', '../modules/webdatabase/SQLTransactionCallback.idl', '../modules/webdatabase/SQLTransactionErrorCallback.idl', '../modules/webdatabase/SQLTransactionSync.idl', '../modules/webdatabase/SQLTransactionSyncCallback.idl', '../modules/webmidi/MIDIAccess.idl', '../modules/webmidi/MIDIAccessPromise.idl', '../modules/webmidi/MIDIConnectionEvent.idl', '../modules/webmidi/MIDIErrorCallback.idl', '../modules/webmidi/MIDIInput.idl', '../modules/webmidi/MIDIMessageEvent.idl', '../modules/webmidi/MIDIOutput.idl', '../modules/webmidi/MIDIPort.idl', '../modules/webmidi/MIDISuccessCallback.idl', '../modules/websockets/CloseEvent.idl', '../modules/websockets/WebSocket.idl', '../core/svg/SVGAElement.idl', '../core/svg/SVGAltGlyphElement.idl', '../core/svg/SVGAltGlyphItemElement.idl', '../core/svg/SVGAltGlyphDefElement.idl', '../core/svg/SVGAngle.idl', '../core/svg/SVGAnimateColorElement.idl', '../core/svg/SVGAnimateMotionElement.idl', '../core/svg/SVGAnimateElement.idl', '../core/svg/SVGAnimateTransformElement.idl', '../core/svg/SVGAnimatedAngle.idl', '../core/svg/SVGAnimatedBoolean.idl', '../core/svg/SVGAnimatedEnumeration.idl', '../core/svg/SVGAnimatedInteger.idl', '../core/svg/SVGAnimatedLength.idl', '../core/svg/SVGAnimatedLengthList.idl', '../core/svg/SVGAnimatedNumber.idl', '../core/svg/SVGAnimatedNumberList.idl', '../core/svg/SVGAnimatedPreserveAspectRatio.idl', '../core/svg/SVGAnimatedRect.idl', '../core/svg/SVGAnimatedString.idl', '../core/svg/SVGAnimatedTransformList.idl', '../core/svg/SVGAnimationElement.idl', '../core/svg/SVGCircleElement.idl', '../core/svg/SVGClipPathElement.idl', '../core/svg/SVGColor.idl', '../core/svg/SVGComponentTransferFunctionElement.idl', '../core/svg/SVGCursorElement.idl', '../core/svg/SVGDefsElement.idl', '../core/svg/SVGDescElement.idl', '../core/svg/SVGDocument.idl', '../core/svg/SVGElement.idl', '../core/svg/SVGElementInstance.idl', '../core/svg/SVGElementInstanceList.idl', '../core/svg/SVGEllipseElement.idl', '../core/svg/SVGFEBlendElement.idl', '../core/svg/SVGFEColorMatrixElement.idl', '../core/svg/SVGFEComponentTransferElement.idl', '../core/svg/SVGFECompositeElement.idl', '../core/svg/SVGFEConvolveMatrixElement.idl', '../core/svg/SVGFEDiffuseLightingElement.idl', '../core/svg/SVGFEDisplacementMapElement.idl', '../core/svg/SVGFEDistantLightElement.idl', '../core/svg/SVGFEDropShadowElement.idl', '../core/svg/SVGFEFloodElement.idl', '../core/svg/SVGFEFuncAElement.idl', '../core/svg/SVGFEFuncBElement.idl', '../core/svg/SVGFEFuncGElement.idl', '../core/svg/SVGFEFuncRElement.idl', '../core/svg/SVGFEGaussianBlurElement.idl', '../core/svg/SVGFEImageElement.idl', '../core/svg/SVGFEMergeElement.idl', '../core/svg/SVGFEMergeNodeElement.idl', '../core/svg/SVGFEMorphologyElement.idl', '../core/svg/SVGFEOffsetElement.idl', '../core/svg/SVGFEPointLightElement.idl', '../core/svg/SVGFESpecularLightingElement.idl', '../core/svg/SVGFESpotLightElement.idl', '../core/svg/SVGFETileElement.idl', '../core/svg/SVGFETurbulenceElement.idl', '../core/svg/SVGFilterElement.idl', '../core/svg/SVGFontElement.idl', '../core/svg/SVGFontFaceElement.idl', '../core/svg/SVGFontFaceFormatElement.idl', '../core/svg/SVGFontFaceNameElement.idl', '../core/svg/SVGFontFaceSrcElement.idl', '../core/svg/SVGFontFaceUriElement.idl', '../core/svg/SVGForeignObjectElement.idl', '../core/svg/SVGGElement.idl', '../core/svg/SVGGlyphElement.idl', '../core/svg/SVGGlyphRefElement.idl', '../core/svg/SVGGradientElement.idl', '../core/svg/SVGGraphicsElement.idl', '../core/svg/SVGHKernElement.idl', '../core/svg/SVGImageElement.idl', '../core/svg/SVGLength.idl', '../core/svg/SVGLengthList.idl', '../core/svg/SVGLineElement.idl', '../core/svg/SVGLinearGradientElement.idl', '../core/svg/SVGMarkerElement.idl', '../core/svg/SVGMaskElement.idl', '../core/svg/SVGMatrix.idl', '../core/svg/SVGMetadataElement.idl', '../core/svg/SVGMissingGlyphElement.idl', '../core/svg/SVGMPathElement.idl', '../core/svg/SVGNumber.idl', '../core/svg/SVGNumberList.idl', '../core/svg/SVGPaint.idl', '../core/svg/SVGPathElement.idl', '../core/svg/SVGPathSeg.idl', '../core/svg/SVGPathSegArcAbs.idl', '../core/svg/SVGPathSegArcRel.idl', '../core/svg/SVGPathSegClosePath.idl', '../core/svg/SVGPathSegCurvetoCubicAbs.idl', '../core/svg/SVGPathSegCurvetoCubicRel.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl', '../core/svg/SVGPathSegLinetoAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalRel.idl', '../core/svg/SVGPathSegLinetoRel.idl', '../core/svg/SVGPathSegLinetoVerticalAbs.idl', '../core/svg/SVGPathSegLinetoVerticalRel.idl', '../core/svg/SVGPathSegList.idl', '../core/svg/SVGPathSegMovetoAbs.idl', '../core/svg/SVGPathSegMovetoRel.idl', '../core/svg/SVGPatternElement.idl', '../core/svg/SVGPoint.idl', '../core/svg/SVGPointList.idl', '../core/svg/SVGPolygonElement.idl', '../core/svg/SVGPolylineElement.idl', '../core/svg/SVGPreserveAspectRatio.idl', '../core/svg/SVGRadialGradientElement.idl', '../core/svg/SVGRect.idl', '../core/svg/SVGRectElement.idl', '../core/svg/SVGRenderingIntent.idl', '../core/svg/SVGSVGElement.idl', '../core/svg/SVGScriptElement.idl', '../core/svg/SVGSetElement.idl', '../core/svg/SVGStopElement.idl', '../core/svg/SVGStringList.idl', '../core/svg/SVGStyleElement.idl', '../core/svg/SVGStyledElement.idl', '../core/svg/SVGSwitchElement.idl', '../core/svg/SVGSymbolElement.idl', '../core/svg/SVGTRefElement.idl', '../core/svg/SVGTSpanElement.idl', '../core/svg/SVGTextContentElement.idl', '../core/svg/SVGTextElement.idl', '../core/svg/SVGTextPathElement.idl', '../core/svg/SVGTextPositioningElement.idl', '../core/svg/SVGTitleElement.idl', '../core/svg/SVGTransform.idl', '../core/svg/SVGTransformList.idl', '../core/svg/SVGUnitTypes.idl', '../core/svg/SVGUseElement.idl', '../core/svg/SVGViewElement.idl', '../core/svg/SVGViewSpec.idl', '../core/svg/SVGVKernElement.idl', '../core/svg/SVGZoomEvent.idl', '../core/testing/Internals.idl', '../core/testing/InternalProfilers.idl', '../core/testing/InternalSettings.idl', '../core/testing/LayerRect.idl', '../core/testing/LayerRectList.idl', '../core/testing/MallocStatistics.idl', '../core/testing/TypeConversions.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl'], 'action': ['perl', '-w', '-Iscripts', '-I../core/scripts', '-I../../../../third_party/JSON/out/lib/perl5', 'scripts/deprecated_generate_bindings.pl', '--outputDir', '$(gyp_shared_intermediate_dir)/webkit/bindings', '--idlAttributesFile', 'scripts/IDLAttributes.txt', '--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit', '--interfaceDependenciesFile', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '--additionalIdlFiles', '../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl "$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl" "$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl"', '--preprocessor', '/usr/bin/gcc -E -P -x c++', '--write-file-only-if-changed', '0', '$(RULE_SOURCES)'], 'message': 'Generating binding from $(RULE_SOURCES)'}":
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_local_path := $(LOCAL_PATH)
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
@@ -3516,6 +3516,17 @@
 .PHONY: third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger
 third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger: $(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.cpp
 
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_local_path := $(LOCAL_PATH)
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/HmacParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_generate_bindings.pl $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_code_generator_v8.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_idl_parser.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_idl_serializer.pm $(LOCAL_PATH)/third_party/WebKit/Source/core/scripts/preprocessor.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/IDLAttributes.txt $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(gyp_shared_intermediate_dir)/WindowConstructors.idl $(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl $(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl $(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl $(GYP_TARGET_DEPENDENCIES)
+	mkdir -p $(gyp_shared_intermediate_dir)/webkit/bindings; cd $(gyp_local_path)/third_party/WebKit/Source/bindings; perl -w -Iscripts -I../core/scripts -I../../../../third_party/JSON/out/lib/perl5 scripts/deprecated_generate_bindings.pl --outputDir "$(gyp_shared_intermediate_dir)/webkit/bindings" --idlAttributesFile scripts/IDLAttributes.txt --include ../core --include ../modules --include "$(gyp_shared_intermediate_dir)/webkit" --interfaceDependenciesFile "$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt" --additionalIdlFiles "../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl \"$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl\" \"$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl\"" --preprocessor "/usr/bin/gcc -E -P -x c++" --write-file-only-if-changed 0 ../modules/crypto/HmacParams.idl
+
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.h: $(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp ;
+.PHONY: third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger
+third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger: $(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp
+
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_local_path := $(LOCAL_PATH)
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
@@ -7543,6 +7554,8 @@
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Crypto.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.cpp \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.h \
+	$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp \
+	$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8SubtleCrypto.cpp \
diff --git a/Source/bindings/deprecated_perl_bindings_sources.target.darwin-x86.mk b/Source/bindings/deprecated_perl_bindings_sources.target.darwin-x86.mk
index e9084b7..678d2a0 100644
--- a/Source/bindings/deprecated_perl_bindings_sources.target.darwin-x86.mk
+++ b/Source/bindings/deprecated_perl_bindings_sources.target.darwin-x86.mk
@@ -17,7 +17,7 @@
 
 
 ### Generated for rule "third_party_WebKit_Source_bindings_derived_sources_gyp_deprecated_perl_bindings_sources_target_deprecated_perl_binding":
-# "{'inputs': ['scripts/deprecated_generate_bindings.pl', 'scripts/deprecated_code_generator_v8.pm', 'scripts/deprecated_idl_parser.pm', 'scripts/deprecated_idl_serializer.pm', '../core/scripts/preprocessor.pm', 'scripts/IDLAttributes.txt', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '../modules/filesystem/HTMLInputElementFileSystem.idl', '../core/dom/DocumentFullscreen.idl', '../modules/geolocation/NavigatorGeolocation.idl', '../modules/mediasource/WindowMediaSource.idl', '../modules/filesystem/WindowFileSystem.idl', '../modules/indexeddb/WindowIndexedDatabase.idl', '../modules/navigatorcontentutils/NavigatorContentUtils.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/quota/WindowQuota.idl', '../modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl', '../modules/webmidi/NavigatorWebMIDI.idl', '../modules/notifications/WorkerGlobalScopeNotifications.idl', '../modules/webdatabase/WindowWebDatabase.idl', '../core/page/WindowPagePopup.idl', '../modules/webdatabase/WorkerGlobalScopeWebDatabase.idl', '../modules/mediastream/NavigatorMediaStream.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/crypto/WorkerGlobalScopeCrypto.idl', '../modules/filesystem/DataTransferItemFileSystem.idl', '../modules/gamepad/NavigatorGamepad.idl', '../core/xml/DocumentXPathEvaluator.idl', '../modules/filesystem/WorkerGlobalScopeFileSystem.idl', '../modules/donottrack/NavigatorDoNotTrack.idl', '../modules/notifications/WindowNotifications.idl', '$(gyp_shared_intermediate_dir)/WindowConstructors.idl', '$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl'], 'msvs_cygwin_shell': '0', 'extension': 'idl', 'msvs_external_rule': '1', 'outputs': ['$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.cpp', '$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.h'], 'variables': {'extra_blink_generator_include_dirs%': [], 'generator_include_dirs': ['--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit']}, 'rule_name': 'deprecated_perl_binding', 'rule_sources': ['../core/css/CSS.idl', '../core/css/CSSCharsetRule.idl', '../core/css/CSSFontFaceLoadEvent.idl', '../core/css/CSSFontFaceRule.idl', '../core/css/CSSHostRule.idl', '../core/css/CSSImportRule.idl', '../core/css/CSSMediaRule.idl', '../core/css/CSSPageRule.idl', '../core/css/CSSPrimitiveValue.idl', '../core/css/CSSRule.idl', '../core/css/CSSRuleList.idl', '../core/css/CSSStyleDeclaration.idl', '../core/css/CSSStyleRule.idl', '../core/css/CSSStyleSheet.idl', '../core/css/CSSSupportsRule.idl', '../core/css/CSSValue.idl', '../core/css/CSSValueList.idl', '../core/css/CSSViewportRule.idl', '../core/css/CSSVariablesMap.idl', '../core/css/Counter.idl', '../core/css/FontLoader.idl', '../core/css/MediaList.idl', '../core/css/MediaQueryList.idl', '../core/css/Rect.idl', '../core/css/RGBColor.idl', '../core/css/StyleMedia.idl', '../core/css/StyleSheet.idl', '../core/css/StyleSheetList.idl', '../core/css/WebKitCSSFilterRule.idl', '../core/css/WebKitCSSFilterValue.idl', '../core/css/WebKitCSSKeyframeRule.idl', '../core/css/WebKitCSSKeyframesRule.idl', '../core/css/WebKitCSSMatrix.idl', '../core/css/WebKitCSSMixFunctionValue.idl', '../core/css/WebKitCSSRegionRule.idl', '../core/css/WebKitCSSTransformValue.idl', '../core/dom/Attr.idl', '../core/dom/AutocompleteErrorEvent.idl', '../core/dom/BeforeLoadEvent.idl', '../core/dom/CDATASection.idl', '../core/dom/CharacterData.idl', '../core/dom/ClientRect.idl', '../core/dom/ClientRectList.idl', '../core/dom/Clipboard.idl', '../core/dom/Comment.idl', '../core/dom/CompositionEvent.idl', '../core/dom/CustomEvent.idl', '../core/dom/DOMError.idl', '../core/dom/DOMException.idl', '../core/dom/DOMImplementation.idl', '../core/dom/DOMStringList.idl', '../core/dom/DOMStringMap.idl', '../core/dom/DataTransferItem.idl', '../core/dom/DataTransferItemList.idl', '../core/dom/Document.idl', '../core/dom/DocumentFragment.idl', '../core/dom/DocumentType.idl', '../core/dom/Element.idl', '../core/dom/Entity.idl', '../core/dom/ErrorEvent.idl', '../core/dom/Event.idl', '../core/dom/EventTarget.idl', '../core/dom/FocusEvent.idl', '../core/dom/HashChangeEvent.idl', '../core/dom/KeyboardEvent.idl', '../core/dom/MessageChannel.idl', '../core/dom/MessageEvent.idl', '../core/dom/MessagePort.idl', '../core/dom/MouseEvent.idl', '../core/dom/MutationEvent.idl', '../core/dom/MutationObserver.idl', '../core/dom/MutationRecord.idl', '../core/dom/NamedNodeMap.idl', '../core/dom/Node.idl', '../core/dom/NodeFilter.idl', '../core/dom/NodeIterator.idl', '../core/dom/NodeList.idl', '../core/dom/Notation.idl', '../core/dom/OverflowEvent.idl', '../core/dom/PageTransitionEvent.idl', '../core/dom/PopStateEvent.idl', '../core/dom/ProcessingInstruction.idl', '../core/dom/ProgressEvent.idl', '../core/dom/Promise.idl', '../core/dom/PromiseResolver.idl', '../core/dom/Range.idl', '../core/dom/RequestAnimationFrameCallback.idl', '../core/dom/ResourceProgressEvent.idl', '../core/dom/SecurityPolicyViolationEvent.idl', '../core/dom/StringCallback.idl', '../core/dom/Text.idl', '../core/dom/TextEvent.idl', '../core/dom/Touch.idl', '../core/dom/TouchEvent.idl', '../core/dom/TouchList.idl', '../core/dom/TransitionEvent.idl', '../core/dom/TreeWalker.idl', '../core/dom/UIEvent.idl', '../core/dom/WebKitAnimationEvent.idl', '../core/dom/WebKitNamedFlow.idl', '../core/dom/WebKitNamedFlowCollection.idl', '../core/dom/WheelEvent.idl', '../core/dom/shadow/ShadowRoot.idl', '../core/fileapi/Blob.idl', '../core/fileapi/File.idl', '../core/fileapi/FileError.idl', '../core/fileapi/FileList.idl', '../core/fileapi/FileReader.idl', '../core/fileapi/FileReaderSync.idl', '../core/fileapi/Stream.idl', '../core/html/DOMSettableTokenList.idl', '../core/html/DOMTokenList.idl', '../core/html/FormData.idl', '../core/html/HTMLAllCollection.idl', '../core/html/HTMLAnchorElement.idl', '../core/html/HTMLAppletElement.idl', '../core/html/HTMLAreaElement.idl', '../core/html/HTMLAudioElement.idl', '../core/html/HTMLBRElement.idl', '../core/html/HTMLBaseElement.idl', '../core/html/HTMLBodyElement.idl', '../core/html/HTMLButtonElement.idl', '../core/html/HTMLCanvasElement.idl', '../core/html/HTMLCollection.idl', '../core/html/HTMLDListElement.idl', '../core/html/HTMLDataListElement.idl', '../core/html/HTMLDetailsElement.idl', '../core/html/HTMLDialogElement.idl', '../core/html/HTMLDirectoryElement.idl', '../core/html/HTMLDivElement.idl', '../core/html/HTMLDocument.idl', '../core/html/HTMLElement.idl', '../core/html/HTMLEmbedElement.idl', '../core/html/HTMLFieldSetElement.idl', '../core/html/HTMLFontElement.idl', '../core/html/HTMLFormControlsCollection.idl', '../core/html/HTMLFormElement.idl', '../core/html/HTMLFrameElement.idl', '../core/html/HTMLFrameSetElement.idl', '../core/html/HTMLHRElement.idl', '../core/html/HTMLHeadElement.idl', '../core/html/HTMLHeadingElement.idl', '../core/html/HTMLHtmlElement.idl', '../core/html/HTMLIFrameElement.idl', '../core/html/HTMLImageElement.idl', '../core/html/HTMLInputElement.idl', '../core/html/HTMLKeygenElement.idl', '../core/html/HTMLLIElement.idl', '../core/html/HTMLLabelElement.idl', '../core/html/HTMLLegendElement.idl', '../core/html/HTMLLinkElement.idl', '../core/html/HTMLMapElement.idl', '../core/html/HTMLMarqueeElement.idl', '../core/html/HTMLMediaElement.idl', '../core/html/HTMLMenuElement.idl', '../core/html/HTMLMetaElement.idl', '../core/html/HTMLMeterElement.idl', '../core/html/HTMLModElement.idl', '../core/html/HTMLOListElement.idl', '../core/html/HTMLObjectElement.idl', '../core/html/HTMLOptGroupElement.idl', '../core/html/HTMLOptionElement.idl', '../core/html/HTMLOptionsCollection.idl', '../core/html/HTMLOutputElement.idl', '../core/html/HTMLParagraphElement.idl', '../core/html/HTMLParamElement.idl', '../core/html/HTMLPreElement.idl', '../core/html/HTMLProgressElement.idl', '../core/html/HTMLQuoteElement.idl', '../core/html/HTMLScriptElement.idl', '../core/html/HTMLSelectElement.idl', '../core/html/HTMLSourceElement.idl', '../core/html/HTMLSpanElement.idl', '../core/html/HTMLStyleElement.idl', '../core/html/HTMLTableCaptionElement.idl', '../core/html/HTMLTableCellElement.idl', '../core/html/HTMLTableColElement.idl', '../core/html/HTMLTableElement.idl', '../core/html/HTMLTableRowElement.idl', '../core/html/HTMLTableSectionElement.idl', '../core/html/HTMLTextAreaElement.idl', '../core/html/HTMLTemplateElement.idl', '../core/html/HTMLTitleElement.idl', '../core/html/HTMLTrackElement.idl', '../core/html/HTMLUListElement.idl', '../core/html/HTMLUnknownElement.idl', '../core/html/HTMLVideoElement.idl', '../core/html/ImageData.idl', '../core/html/MediaController.idl', '../core/html/MediaError.idl', '../core/html/MediaKeyError.idl', '../core/html/MediaKeyEvent.idl', '../core/html/RadioNodeList.idl', '../core/html/TextMetrics.idl', '../core/html/TimeRanges.idl', '../core/html/URL.idl', '../core/html/ValidityState.idl', '../core/html/VoidCallback.idl', '../core/html/canvas/ANGLEInstancedArrays.idl', '../core/html/canvas/ArrayBufferView.idl', '../core/html/canvas/CanvasGradient.idl', '../core/html/canvas/CanvasPattern.idl', '../core/html/canvas/CanvasRenderingContext.idl', '../core/html/canvas/CanvasRenderingContext2D.idl', '../core/html/canvas/Canvas2DContextAttributes.idl', '../core/html/canvas/DataView.idl', '../core/html/canvas/EXTFragDepth.idl', '../core/html/canvas/EXTTextureFilterAnisotropic.idl', '../core/html/canvas/Float32Array.idl', '../core/html/canvas/Float64Array.idl', '../core/html/canvas/Int16Array.idl', '../core/html/canvas/Int32Array.idl', '../core/html/canvas/Int8Array.idl', '../core/html/canvas/OESStandardDerivatives.idl', '../core/html/canvas/OESTextureFloat.idl', '../core/html/canvas/OESTextureFloatLinear.idl', '../core/html/canvas/OESTextureHalfFloat.idl', '../core/html/canvas/OESTextureHalfFloatLinear.idl', '../core/html/canvas/OESVertexArrayObject.idl', '../core/html/canvas/OESElementIndexUint.idl', '../core/html/canvas/Path.idl', '../core/html/canvas/Uint16Array.idl', '../core/html/canvas/Uint32Array.idl', '../core/html/canvas/Uint8Array.idl', '../core/html/canvas/Uint8ClampedArray.idl', '../core/html/canvas/WebGLActiveInfo.idl', '../core/html/canvas/WebGLBuffer.idl', '../core/html/canvas/WebGLCompressedTextureATC.idl', '../core/html/canvas/WebGLCompressedTexturePVRTC.idl', '../core/html/canvas/WebGLCompressedTextureS3TC.idl', '../core/html/canvas/WebGLContextAttributes.idl', '../core/html/canvas/WebGLContextEvent.idl', '../core/html/canvas/WebGLDebugRendererInfo.idl', '../core/html/canvas/WebGLDebugShaders.idl', '../core/html/canvas/WebGLDepthTexture.idl', '../core/html/canvas/WebGLDrawBuffers.idl', '../core/html/canvas/WebGLFramebuffer.idl', '../core/html/canvas/WebGLLoseContext.idl', '../core/html/canvas/WebGLProgram.idl', '../core/html/canvas/WebGLRenderbuffer.idl', '../core/html/canvas/WebGLRenderingContext.idl', '../core/html/canvas/WebGLShader.idl', '../core/html/canvas/WebGLShaderPrecisionFormat.idl', '../core/html/canvas/WebGLTexture.idl', '../core/html/canvas/WebGLUniformLocation.idl', '../core/html/canvas/WebGLVertexArrayObjectOES.idl', '../core/html/ime/Composition.idl', '../core/html/ime/InputMethodContext.idl', '../core/html/shadow/HTMLContentElement.idl', '../core/html/shadow/HTMLShadowElement.idl', '../core/html/track/TextTrack.idl', '../core/html/track/TextTrackCue.idl', '../core/html/track/TextTrackCueList.idl', '../core/html/track/TextTrackList.idl', '../core/html/track/TrackEvent.idl', '../core/html/track/TextTrackRegion.idl', '../core/html/track/TextTrackRegionList.idl', '../core/inspector/InjectedScriptHost.idl', '../core/inspector/InspectorFrontendHost.idl', '../core/inspector/InspectorOverlayHost.idl', '../core/inspector/JavaScriptCallFrame.idl', '../core/loader/appcache/DOMApplicationCache.idl', '../core/page/BarProp.idl', '../core/page/Console.idl', '../core/page/EventSource.idl', '../core/page/History.idl', '../core/page/ImageBitmap.idl', '../core/page/ImageBitmapCallback.idl', '../core/page/Location.idl', '../core/page/MemoryInfo.idl', '../core/page/Navigator.idl', '../core/page/PagePopupController.idl', '../core/page/Performance.idl', '../core/page/PerformanceEntry.idl', '../core/page/PerformanceMark.idl', '../core/page/PerformanceMeasure.idl', '../core/page/PerformanceNavigation.idl', '../core/page/PerformanceResourceTiming.idl', '../core/page/PerformanceTiming.idl', '../core/page/Screen.idl', '../core/page/SecurityPolicy.idl', '../core/page/Selection.idl', '../core/page/SpeechInputEvent.idl', '../core/page/SpeechInputResult.idl', '../core/page/SpeechInputResultList.idl', '../core/page/WebKitPoint.idl', '../core/page/Window.idl', '../core/page/WindowBase64.idl', '../core/page/WindowTimers.idl', '../core/page/WorkerNavigator.idl', '../core/plugins/MimeType.idl', '../core/plugins/MimeTypeArray.idl', '../core/plugins/Plugin.idl', '../core/plugins/PluginArray.idl', '../core/storage/Storage.idl', '../core/storage/StorageEvent.idl', '../core/workers/DedicatedWorkerGlobalScope.idl', '../core/workers/SharedWorker.idl', '../core/workers/SharedWorkerGlobalScope.idl', '../core/workers/Worker.idl', '../core/workers/WorkerGlobalScope.idl', '../core/workers/WorkerLocation.idl', '../core/xml/DOMParser.idl', '../core/xml/DocumentXPathEvaluator.idl', '../core/xml/XMLHttpRequest.idl', '../core/xml/XMLHttpRequestProgressEvent.idl', '../core/xml/XMLHttpRequestUpload.idl', '../core/xml/XMLSerializer.idl', '../core/xml/XPathEvaluator.idl', '../core/xml/XPathExpression.idl', '../core/xml/XPathNSResolver.idl', '../core/xml/XPathResult.idl', '../core/xml/XSLTProcessor.idl', '../modules/crypto/AesCbcParams.idl', '../modules/crypto/AesKeyGenParams.idl', '../modules/crypto/Algorithm.idl', '../modules/crypto/Crypto.idl', '../modules/crypto/CryptoOperation.idl', '../modules/crypto/Key.idl', '../modules/crypto/SubtleCrypto.idl', '../modules/crypto/WorkerCrypto.idl', '../modules/device_orientation/DeviceAcceleration.idl', '../modules/device_orientation/DeviceMotionEvent.idl', '../modules/device_orientation/DeviceOrientationEvent.idl', '../modules/device_orientation/DeviceRotationRate.idl', '../modules/encryptedmedia/MediaKeyMessageEvent.idl', '../modules/encryptedmedia/MediaKeyNeededEvent.idl', '../modules/encryptedmedia/MediaKeys.idl', '../modules/encryptedmedia/MediaKeySession.idl', '../modules/filesystem/DOMFileSystem.idl', '../modules/filesystem/DOMFileSystemSync.idl', '../modules/filesystem/DirectoryEntry.idl', '../modules/filesystem/DirectoryEntrySync.idl', '../modules/filesystem/DirectoryReader.idl', '../modules/filesystem/DirectoryReaderSync.idl', '../modules/filesystem/EntriesCallback.idl', '../modules/filesystem/Entry.idl', '../modules/filesystem/EntryArray.idl', '../modules/filesystem/EntryArraySync.idl', '../modules/filesystem/EntryCallback.idl', '../modules/filesystem/EntrySync.idl', '../modules/filesystem/ErrorCallback.idl', '../modules/filesystem/FileCallback.idl', '../modules/filesystem/FileEntry.idl', '../modules/filesystem/FileEntrySync.idl', '../modules/filesystem/FileSystemCallback.idl', '../modules/filesystem/FileWriter.idl', '../modules/filesystem/FileWriterCallback.idl', '../modules/filesystem/FileWriterSync.idl', '../modules/filesystem/Metadata.idl', '../modules/filesystem/MetadataCallback.idl', '../modules/gamepad/Gamepad.idl', '../modules/gamepad/GamepadList.idl', '../modules/geolocation/Coordinates.idl', '../modules/geolocation/Geolocation.idl', '../modules/geolocation/Geoposition.idl', '../modules/geolocation/PositionCallback.idl', '../modules/geolocation/PositionError.idl', '../modules/geolocation/PositionErrorCallback.idl', '../modules/indexeddb/IDBAny.idl', '../modules/indexeddb/IDBCursor.idl', '../modules/indexeddb/IDBCursorWithValue.idl', '../modules/indexeddb/IDBDatabase.idl', '../modules/indexeddb/IDBFactory.idl', '../modules/indexeddb/IDBIndex.idl', '../modules/indexeddb/IDBKeyRange.idl', '../modules/indexeddb/IDBObjectStore.idl', '../modules/indexeddb/IDBOpenDBRequest.idl', '../modules/indexeddb/IDBRequest.idl', '../modules/indexeddb/IDBTransaction.idl', '../modules/indexeddb/IDBVersionChangeEvent.idl', '../modules/mediasource/MediaSource.idl', '../modules/mediasource/SourceBuffer.idl', '../modules/mediasource/SourceBufferList.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/mediasource/WebKitMediaSource.idl', '../modules/mediasource/WebKitSourceBuffer.idl', '../modules/mediasource/WebKitSourceBufferList.idl', '../modules/mediastream/MediaStream.idl', '../modules/mediastream/MediaStreamEvent.idl', '../modules/mediastream/MediaStreamTrack.idl', '../modules/mediastream/MediaStreamTrackEvent.idl', '../modules/mediastream/MediaStreamTrackSourcesCallback.idl', '../modules/mediastream/NavigatorUserMediaError.idl', '../modules/mediastream/NavigatorUserMediaErrorCallback.idl', '../modules/mediastream/NavigatorUserMediaSuccessCallback.idl', '../modules/mediastream/RTCDTMFSender.idl', '../modules/mediastream/RTCDTMFToneChangeEvent.idl', '../modules/mediastream/RTCDataChannel.idl', '../modules/mediastream/RTCDataChannelEvent.idl', '../modules/mediastream/RTCErrorCallback.idl', '../modules/mediastream/RTCIceCandidate.idl', '../modules/mediastream/RTCIceCandidateEvent.idl', '../modules/mediastream/RTCPeerConnection.idl', '../modules/mediastream/RTCSessionDescription.idl', '../modules/mediastream/RTCSessionDescriptionCallback.idl', '../modules/mediastream/RTCStatsCallback.idl', '../modules/mediastream/RTCStatsReport.idl', '../modules/mediastream/RTCStatsResponse.idl', '../modules/mediastream/SourceInfo.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/notifications/Notification.idl', '../modules/notifications/NotificationCenter.idl', '../modules/notifications/NotificationPermissionCallback.idl', '../modules/performance/WorkerPerformance.idl', '../modules/quota/StorageErrorCallback.idl', '../modules/quota/StorageInfo.idl', '../modules/quota/StorageQuota.idl', '../modules/quota/StorageQuotaCallback.idl', '../modules/quota/StorageUsageCallback.idl', '../modules/speech/SpeechGrammar.idl', '../modules/speech/SpeechGrammarList.idl', '../modules/speech/SpeechRecognition.idl', '../modules/speech/SpeechRecognitionAlternative.idl', '../modules/speech/SpeechRecognitionError.idl', '../modules/speech/SpeechRecognitionEvent.idl', '../modules/speech/SpeechRecognitionResult.idl', '../modules/speech/SpeechRecognitionResultList.idl', '../modules/speech/SpeechSynthesis.idl', '../modules/speech/SpeechSynthesisEvent.idl', '../modules/speech/SpeechSynthesisUtterance.idl', '../modules/speech/SpeechSynthesisVoice.idl', '../modules/webaudio/AudioBuffer.idl', '../modules/webaudio/AudioBufferCallback.idl', '../modules/webaudio/AudioBufferSourceNode.idl', '../modules/webaudio/ChannelMergerNode.idl', '../modules/webaudio/ChannelSplitterNode.idl', '../modules/webaudio/AudioContext.idl', '../modules/webaudio/AudioDestinationNode.idl', '../modules/webaudio/GainNode.idl', '../modules/webaudio/AudioListener.idl', '../modules/webaudio/AudioNode.idl', '../modules/webaudio/PannerNode.idl', '../modules/webaudio/AudioParam.idl', '../modules/webaudio/AudioProcessingEvent.idl', '../modules/webaudio/AudioSourceNode.idl', '../modules/webaudio/BiquadFilterNode.idl', '../modules/webaudio/ConvolverNode.idl', '../modules/webaudio/DelayNode.idl', '../modules/webaudio/DynamicsCompressorNode.idl', '../modules/webaudio/ScriptProcessorNode.idl', '../modules/webaudio/MediaElementAudioSourceNode.idl', '../modules/webaudio/MediaStreamAudioDestinationNode.idl', '../modules/webaudio/MediaStreamAudioSourceNode.idl', '../modules/webaudio/OfflineAudioCompletionEvent.idl', '../modules/webaudio/OfflineAudioContext.idl', '../modules/webaudio/OscillatorNode.idl', '../modules/webaudio/PeriodicWave.idl', '../modules/webaudio/AnalyserNode.idl', '../modules/webaudio/WaveShaperNode.idl', '../modules/webdatabase/Database.idl', '../modules/webdatabase/DatabaseCallback.idl', '../modules/webdatabase/DatabaseSync.idl', '../modules/webdatabase/SQLError.idl', '../modules/webdatabase/SQLResultSet.idl', '../modules/webdatabase/SQLResultSetRowList.idl', '../modules/webdatabase/SQLStatementCallback.idl', '../modules/webdatabase/SQLStatementErrorCallback.idl', '../modules/webdatabase/SQLTransaction.idl', '../modules/webdatabase/SQLTransactionCallback.idl', '../modules/webdatabase/SQLTransactionErrorCallback.idl', '../modules/webdatabase/SQLTransactionSync.idl', '../modules/webdatabase/SQLTransactionSyncCallback.idl', '../modules/webmidi/MIDIAccess.idl', '../modules/webmidi/MIDIAccessPromise.idl', '../modules/webmidi/MIDIConnectionEvent.idl', '../modules/webmidi/MIDIErrorCallback.idl', '../modules/webmidi/MIDIInput.idl', '../modules/webmidi/MIDIMessageEvent.idl', '../modules/webmidi/MIDIOutput.idl', '../modules/webmidi/MIDIPort.idl', '../modules/webmidi/MIDISuccessCallback.idl', '../modules/websockets/CloseEvent.idl', '../modules/websockets/WebSocket.idl', '../core/svg/SVGAElement.idl', '../core/svg/SVGAltGlyphElement.idl', '../core/svg/SVGAltGlyphItemElement.idl', '../core/svg/SVGAltGlyphDefElement.idl', '../core/svg/SVGAngle.idl', '../core/svg/SVGAnimateColorElement.idl', '../core/svg/SVGAnimateMotionElement.idl', '../core/svg/SVGAnimateElement.idl', '../core/svg/SVGAnimateTransformElement.idl', '../core/svg/SVGAnimatedAngle.idl', '../core/svg/SVGAnimatedBoolean.idl', '../core/svg/SVGAnimatedEnumeration.idl', '../core/svg/SVGAnimatedInteger.idl', '../core/svg/SVGAnimatedLength.idl', '../core/svg/SVGAnimatedLengthList.idl', '../core/svg/SVGAnimatedNumber.idl', '../core/svg/SVGAnimatedNumberList.idl', '../core/svg/SVGAnimatedPreserveAspectRatio.idl', '../core/svg/SVGAnimatedRect.idl', '../core/svg/SVGAnimatedString.idl', '../core/svg/SVGAnimatedTransformList.idl', '../core/svg/SVGAnimationElement.idl', '../core/svg/SVGCircleElement.idl', '../core/svg/SVGClipPathElement.idl', '../core/svg/SVGColor.idl', '../core/svg/SVGComponentTransferFunctionElement.idl', '../core/svg/SVGCursorElement.idl', '../core/svg/SVGDefsElement.idl', '../core/svg/SVGDescElement.idl', '../core/svg/SVGDocument.idl', '../core/svg/SVGElement.idl', '../core/svg/SVGElementInstance.idl', '../core/svg/SVGElementInstanceList.idl', '../core/svg/SVGEllipseElement.idl', '../core/svg/SVGFEBlendElement.idl', '../core/svg/SVGFEColorMatrixElement.idl', '../core/svg/SVGFEComponentTransferElement.idl', '../core/svg/SVGFECompositeElement.idl', '../core/svg/SVGFEConvolveMatrixElement.idl', '../core/svg/SVGFEDiffuseLightingElement.idl', '../core/svg/SVGFEDisplacementMapElement.idl', '../core/svg/SVGFEDistantLightElement.idl', '../core/svg/SVGFEDropShadowElement.idl', '../core/svg/SVGFEFloodElement.idl', '../core/svg/SVGFEFuncAElement.idl', '../core/svg/SVGFEFuncBElement.idl', '../core/svg/SVGFEFuncGElement.idl', '../core/svg/SVGFEFuncRElement.idl', '../core/svg/SVGFEGaussianBlurElement.idl', '../core/svg/SVGFEImageElement.idl', '../core/svg/SVGFEMergeElement.idl', '../core/svg/SVGFEMergeNodeElement.idl', '../core/svg/SVGFEMorphologyElement.idl', '../core/svg/SVGFEOffsetElement.idl', '../core/svg/SVGFEPointLightElement.idl', '../core/svg/SVGFESpecularLightingElement.idl', '../core/svg/SVGFESpotLightElement.idl', '../core/svg/SVGFETileElement.idl', '../core/svg/SVGFETurbulenceElement.idl', '../core/svg/SVGFilterElement.idl', '../core/svg/SVGFontElement.idl', '../core/svg/SVGFontFaceElement.idl', '../core/svg/SVGFontFaceFormatElement.idl', '../core/svg/SVGFontFaceNameElement.idl', '../core/svg/SVGFontFaceSrcElement.idl', '../core/svg/SVGFontFaceUriElement.idl', '../core/svg/SVGForeignObjectElement.idl', '../core/svg/SVGGElement.idl', '../core/svg/SVGGlyphElement.idl', '../core/svg/SVGGlyphRefElement.idl', '../core/svg/SVGGradientElement.idl', '../core/svg/SVGGraphicsElement.idl', '../core/svg/SVGHKernElement.idl', '../core/svg/SVGImageElement.idl', '../core/svg/SVGLength.idl', '../core/svg/SVGLengthList.idl', '../core/svg/SVGLineElement.idl', '../core/svg/SVGLinearGradientElement.idl', '../core/svg/SVGMarkerElement.idl', '../core/svg/SVGMaskElement.idl', '../core/svg/SVGMatrix.idl', '../core/svg/SVGMetadataElement.idl', '../core/svg/SVGMissingGlyphElement.idl', '../core/svg/SVGMPathElement.idl', '../core/svg/SVGNumber.idl', '../core/svg/SVGNumberList.idl', '../core/svg/SVGPaint.idl', '../core/svg/SVGPathElement.idl', '../core/svg/SVGPathSeg.idl', '../core/svg/SVGPathSegArcAbs.idl', '../core/svg/SVGPathSegArcRel.idl', '../core/svg/SVGPathSegClosePath.idl', '../core/svg/SVGPathSegCurvetoCubicAbs.idl', '../core/svg/SVGPathSegCurvetoCubicRel.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl', '../core/svg/SVGPathSegLinetoAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalRel.idl', '../core/svg/SVGPathSegLinetoRel.idl', '../core/svg/SVGPathSegLinetoVerticalAbs.idl', '../core/svg/SVGPathSegLinetoVerticalRel.idl', '../core/svg/SVGPathSegList.idl', '../core/svg/SVGPathSegMovetoAbs.idl', '../core/svg/SVGPathSegMovetoRel.idl', '../core/svg/SVGPatternElement.idl', '../core/svg/SVGPoint.idl', '../core/svg/SVGPointList.idl', '../core/svg/SVGPolygonElement.idl', '../core/svg/SVGPolylineElement.idl', '../core/svg/SVGPreserveAspectRatio.idl', '../core/svg/SVGRadialGradientElement.idl', '../core/svg/SVGRect.idl', '../core/svg/SVGRectElement.idl', '../core/svg/SVGRenderingIntent.idl', '../core/svg/SVGSVGElement.idl', '../core/svg/SVGScriptElement.idl', '../core/svg/SVGSetElement.idl', '../core/svg/SVGStopElement.idl', '../core/svg/SVGStringList.idl', '../core/svg/SVGStyleElement.idl', '../core/svg/SVGStyledElement.idl', '../core/svg/SVGSwitchElement.idl', '../core/svg/SVGSymbolElement.idl', '../core/svg/SVGTRefElement.idl', '../core/svg/SVGTSpanElement.idl', '../core/svg/SVGTextContentElement.idl', '../core/svg/SVGTextElement.idl', '../core/svg/SVGTextPathElement.idl', '../core/svg/SVGTextPositioningElement.idl', '../core/svg/SVGTitleElement.idl', '../core/svg/SVGTransform.idl', '../core/svg/SVGTransformList.idl', '../core/svg/SVGUnitTypes.idl', '../core/svg/SVGUseElement.idl', '../core/svg/SVGViewElement.idl', '../core/svg/SVGViewSpec.idl', '../core/svg/SVGVKernElement.idl', '../core/svg/SVGZoomEvent.idl', '../core/testing/Internals.idl', '../core/testing/InternalProfilers.idl', '../core/testing/InternalSettings.idl', '../core/testing/LayerRect.idl', '../core/testing/LayerRectList.idl', '../core/testing/MallocStatistics.idl', '../core/testing/TypeConversions.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl'], 'action': ['perl', '-w', '-Iscripts', '-I../core/scripts', '-I../../../../third_party/JSON/out/lib/perl5', 'scripts/deprecated_generate_bindings.pl', '--outputDir', '$(gyp_shared_intermediate_dir)/webkit/bindings', '--idlAttributesFile', 'scripts/IDLAttributes.txt', '--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit', '--interfaceDependenciesFile', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '--additionalIdlFiles', '../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl "$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl" "$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl"', '--preprocessor', '/usr/bin/gcc -E -P -x c++', '--write-file-only-if-changed', '0', '$(RULE_SOURCES)'], 'message': 'Generating binding from $(RULE_SOURCES)'}":
+# "{'inputs': ['scripts/deprecated_generate_bindings.pl', 'scripts/deprecated_code_generator_v8.pm', 'scripts/deprecated_idl_parser.pm', 'scripts/deprecated_idl_serializer.pm', '../core/scripts/preprocessor.pm', 'scripts/IDLAttributes.txt', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '../modules/filesystem/HTMLInputElementFileSystem.idl', '../core/dom/DocumentFullscreen.idl', '../modules/geolocation/NavigatorGeolocation.idl', '../modules/mediasource/WindowMediaSource.idl', '../modules/filesystem/WindowFileSystem.idl', '../modules/indexeddb/WindowIndexedDatabase.idl', '../modules/navigatorcontentutils/NavigatorContentUtils.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/quota/WindowQuota.idl', '../modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl', '../modules/webmidi/NavigatorWebMIDI.idl', '../modules/notifications/WorkerGlobalScopeNotifications.idl', '../modules/webdatabase/WindowWebDatabase.idl', '../core/page/WindowPagePopup.idl', '../modules/webdatabase/WorkerGlobalScopeWebDatabase.idl', '../modules/mediastream/NavigatorMediaStream.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/crypto/WorkerGlobalScopeCrypto.idl', '../modules/filesystem/DataTransferItemFileSystem.idl', '../modules/gamepad/NavigatorGamepad.idl', '../core/xml/DocumentXPathEvaluator.idl', '../modules/filesystem/WorkerGlobalScopeFileSystem.idl', '../modules/donottrack/NavigatorDoNotTrack.idl', '../modules/notifications/WindowNotifications.idl', '$(gyp_shared_intermediate_dir)/WindowConstructors.idl', '$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl'], 'msvs_cygwin_shell': '0', 'extension': 'idl', 'msvs_external_rule': '1', 'outputs': ['$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.cpp', '$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.h'], 'variables': {'extra_blink_generator_include_dirs%': [], 'generator_include_dirs': ['--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit']}, 'rule_name': 'deprecated_perl_binding', 'rule_sources': ['../core/css/CSS.idl', '../core/css/CSSCharsetRule.idl', '../core/css/CSSFontFaceLoadEvent.idl', '../core/css/CSSFontFaceRule.idl', '../core/css/CSSHostRule.idl', '../core/css/CSSImportRule.idl', '../core/css/CSSMediaRule.idl', '../core/css/CSSPageRule.idl', '../core/css/CSSPrimitiveValue.idl', '../core/css/CSSRule.idl', '../core/css/CSSRuleList.idl', '../core/css/CSSStyleDeclaration.idl', '../core/css/CSSStyleRule.idl', '../core/css/CSSStyleSheet.idl', '../core/css/CSSSupportsRule.idl', '../core/css/CSSValue.idl', '../core/css/CSSValueList.idl', '../core/css/CSSViewportRule.idl', '../core/css/CSSVariablesMap.idl', '../core/css/Counter.idl', '../core/css/FontLoader.idl', '../core/css/MediaList.idl', '../core/css/MediaQueryList.idl', '../core/css/Rect.idl', '../core/css/RGBColor.idl', '../core/css/StyleMedia.idl', '../core/css/StyleSheet.idl', '../core/css/StyleSheetList.idl', '../core/css/WebKitCSSFilterRule.idl', '../core/css/WebKitCSSFilterValue.idl', '../core/css/WebKitCSSKeyframeRule.idl', '../core/css/WebKitCSSKeyframesRule.idl', '../core/css/WebKitCSSMatrix.idl', '../core/css/WebKitCSSMixFunctionValue.idl', '../core/css/WebKitCSSRegionRule.idl', '../core/css/WebKitCSSTransformValue.idl', '../core/dom/Attr.idl', '../core/dom/AutocompleteErrorEvent.idl', '../core/dom/BeforeLoadEvent.idl', '../core/dom/CDATASection.idl', '../core/dom/CharacterData.idl', '../core/dom/ClientRect.idl', '../core/dom/ClientRectList.idl', '../core/dom/Clipboard.idl', '../core/dom/Comment.idl', '../core/dom/CompositionEvent.idl', '../core/dom/CustomEvent.idl', '../core/dom/DOMError.idl', '../core/dom/DOMException.idl', '../core/dom/DOMImplementation.idl', '../core/dom/DOMStringList.idl', '../core/dom/DOMStringMap.idl', '../core/dom/DataTransferItem.idl', '../core/dom/DataTransferItemList.idl', '../core/dom/Document.idl', '../core/dom/DocumentFragment.idl', '../core/dom/DocumentType.idl', '../core/dom/Element.idl', '../core/dom/Entity.idl', '../core/dom/ErrorEvent.idl', '../core/dom/Event.idl', '../core/dom/EventTarget.idl', '../core/dom/FocusEvent.idl', '../core/dom/HashChangeEvent.idl', '../core/dom/KeyboardEvent.idl', '../core/dom/MessageChannel.idl', '../core/dom/MessageEvent.idl', '../core/dom/MessagePort.idl', '../core/dom/MouseEvent.idl', '../core/dom/MutationEvent.idl', '../core/dom/MutationObserver.idl', '../core/dom/MutationRecord.idl', '../core/dom/NamedNodeMap.idl', '../core/dom/Node.idl', '../core/dom/NodeFilter.idl', '../core/dom/NodeIterator.idl', '../core/dom/NodeList.idl', '../core/dom/Notation.idl', '../core/dom/OverflowEvent.idl', '../core/dom/PageTransitionEvent.idl', '../core/dom/PopStateEvent.idl', '../core/dom/ProcessingInstruction.idl', '../core/dom/ProgressEvent.idl', '../core/dom/Promise.idl', '../core/dom/PromiseResolver.idl', '../core/dom/Range.idl', '../core/dom/RequestAnimationFrameCallback.idl', '../core/dom/ResourceProgressEvent.idl', '../core/dom/SecurityPolicyViolationEvent.idl', '../core/dom/StringCallback.idl', '../core/dom/Text.idl', '../core/dom/TextEvent.idl', '../core/dom/Touch.idl', '../core/dom/TouchEvent.idl', '../core/dom/TouchList.idl', '../core/dom/TransitionEvent.idl', '../core/dom/TreeWalker.idl', '../core/dom/UIEvent.idl', '../core/dom/WebKitAnimationEvent.idl', '../core/dom/WebKitNamedFlow.idl', '../core/dom/WebKitNamedFlowCollection.idl', '../core/dom/WheelEvent.idl', '../core/dom/shadow/ShadowRoot.idl', '../core/fileapi/Blob.idl', '../core/fileapi/File.idl', '../core/fileapi/FileError.idl', '../core/fileapi/FileList.idl', '../core/fileapi/FileReader.idl', '../core/fileapi/FileReaderSync.idl', '../core/fileapi/Stream.idl', '../core/html/DOMSettableTokenList.idl', '../core/html/DOMTokenList.idl', '../core/html/FormData.idl', '../core/html/HTMLAllCollection.idl', '../core/html/HTMLAnchorElement.idl', '../core/html/HTMLAppletElement.idl', '../core/html/HTMLAreaElement.idl', '../core/html/HTMLAudioElement.idl', '../core/html/HTMLBRElement.idl', '../core/html/HTMLBaseElement.idl', '../core/html/HTMLBodyElement.idl', '../core/html/HTMLButtonElement.idl', '../core/html/HTMLCanvasElement.idl', '../core/html/HTMLCollection.idl', '../core/html/HTMLDListElement.idl', '../core/html/HTMLDataListElement.idl', '../core/html/HTMLDetailsElement.idl', '../core/html/HTMLDialogElement.idl', '../core/html/HTMLDirectoryElement.idl', '../core/html/HTMLDivElement.idl', '../core/html/HTMLDocument.idl', '../core/html/HTMLElement.idl', '../core/html/HTMLEmbedElement.idl', '../core/html/HTMLFieldSetElement.idl', '../core/html/HTMLFontElement.idl', '../core/html/HTMLFormControlsCollection.idl', '../core/html/HTMLFormElement.idl', '../core/html/HTMLFrameElement.idl', '../core/html/HTMLFrameSetElement.idl', '../core/html/HTMLHRElement.idl', '../core/html/HTMLHeadElement.idl', '../core/html/HTMLHeadingElement.idl', '../core/html/HTMLHtmlElement.idl', '../core/html/HTMLIFrameElement.idl', '../core/html/HTMLImageElement.idl', '../core/html/HTMLInputElement.idl', '../core/html/HTMLKeygenElement.idl', '../core/html/HTMLLIElement.idl', '../core/html/HTMLLabelElement.idl', '../core/html/HTMLLegendElement.idl', '../core/html/HTMLLinkElement.idl', '../core/html/HTMLMapElement.idl', '../core/html/HTMLMarqueeElement.idl', '../core/html/HTMLMediaElement.idl', '../core/html/HTMLMenuElement.idl', '../core/html/HTMLMetaElement.idl', '../core/html/HTMLMeterElement.idl', '../core/html/HTMLModElement.idl', '../core/html/HTMLOListElement.idl', '../core/html/HTMLObjectElement.idl', '../core/html/HTMLOptGroupElement.idl', '../core/html/HTMLOptionElement.idl', '../core/html/HTMLOptionsCollection.idl', '../core/html/HTMLOutputElement.idl', '../core/html/HTMLParagraphElement.idl', '../core/html/HTMLParamElement.idl', '../core/html/HTMLPreElement.idl', '../core/html/HTMLProgressElement.idl', '../core/html/HTMLQuoteElement.idl', '../core/html/HTMLScriptElement.idl', '../core/html/HTMLSelectElement.idl', '../core/html/HTMLSourceElement.idl', '../core/html/HTMLSpanElement.idl', '../core/html/HTMLStyleElement.idl', '../core/html/HTMLTableCaptionElement.idl', '../core/html/HTMLTableCellElement.idl', '../core/html/HTMLTableColElement.idl', '../core/html/HTMLTableElement.idl', '../core/html/HTMLTableRowElement.idl', '../core/html/HTMLTableSectionElement.idl', '../core/html/HTMLTextAreaElement.idl', '../core/html/HTMLTemplateElement.idl', '../core/html/HTMLTitleElement.idl', '../core/html/HTMLTrackElement.idl', '../core/html/HTMLUListElement.idl', '../core/html/HTMLUnknownElement.idl', '../core/html/HTMLVideoElement.idl', '../core/html/ImageData.idl', '../core/html/MediaController.idl', '../core/html/MediaError.idl', '../core/html/MediaKeyError.idl', '../core/html/MediaKeyEvent.idl', '../core/html/RadioNodeList.idl', '../core/html/TextMetrics.idl', '../core/html/TimeRanges.idl', '../core/html/URL.idl', '../core/html/ValidityState.idl', '../core/html/VoidCallback.idl', '../core/html/canvas/ANGLEInstancedArrays.idl', '../core/html/canvas/ArrayBufferView.idl', '../core/html/canvas/CanvasGradient.idl', '../core/html/canvas/CanvasPattern.idl', '../core/html/canvas/CanvasRenderingContext.idl', '../core/html/canvas/CanvasRenderingContext2D.idl', '../core/html/canvas/Canvas2DContextAttributes.idl', '../core/html/canvas/DataView.idl', '../core/html/canvas/EXTFragDepth.idl', '../core/html/canvas/EXTTextureFilterAnisotropic.idl', '../core/html/canvas/Float32Array.idl', '../core/html/canvas/Float64Array.idl', '../core/html/canvas/Int16Array.idl', '../core/html/canvas/Int32Array.idl', '../core/html/canvas/Int8Array.idl', '../core/html/canvas/OESStandardDerivatives.idl', '../core/html/canvas/OESTextureFloat.idl', '../core/html/canvas/OESTextureFloatLinear.idl', '../core/html/canvas/OESTextureHalfFloat.idl', '../core/html/canvas/OESTextureHalfFloatLinear.idl', '../core/html/canvas/OESVertexArrayObject.idl', '../core/html/canvas/OESElementIndexUint.idl', '../core/html/canvas/Path.idl', '../core/html/canvas/Uint16Array.idl', '../core/html/canvas/Uint32Array.idl', '../core/html/canvas/Uint8Array.idl', '../core/html/canvas/Uint8ClampedArray.idl', '../core/html/canvas/WebGLActiveInfo.idl', '../core/html/canvas/WebGLBuffer.idl', '../core/html/canvas/WebGLCompressedTextureATC.idl', '../core/html/canvas/WebGLCompressedTexturePVRTC.idl', '../core/html/canvas/WebGLCompressedTextureS3TC.idl', '../core/html/canvas/WebGLContextAttributes.idl', '../core/html/canvas/WebGLContextEvent.idl', '../core/html/canvas/WebGLDebugRendererInfo.idl', '../core/html/canvas/WebGLDebugShaders.idl', '../core/html/canvas/WebGLDepthTexture.idl', '../core/html/canvas/WebGLDrawBuffers.idl', '../core/html/canvas/WebGLFramebuffer.idl', '../core/html/canvas/WebGLLoseContext.idl', '../core/html/canvas/WebGLProgram.idl', '../core/html/canvas/WebGLRenderbuffer.idl', '../core/html/canvas/WebGLRenderingContext.idl', '../core/html/canvas/WebGLShader.idl', '../core/html/canvas/WebGLShaderPrecisionFormat.idl', '../core/html/canvas/WebGLTexture.idl', '../core/html/canvas/WebGLUniformLocation.idl', '../core/html/canvas/WebGLVertexArrayObjectOES.idl', '../core/html/ime/Composition.idl', '../core/html/ime/InputMethodContext.idl', '../core/html/shadow/HTMLContentElement.idl', '../core/html/shadow/HTMLShadowElement.idl', '../core/html/track/TextTrack.idl', '../core/html/track/TextTrackCue.idl', '../core/html/track/TextTrackCueList.idl', '../core/html/track/TextTrackList.idl', '../core/html/track/TrackEvent.idl', '../core/html/track/TextTrackRegion.idl', '../core/html/track/TextTrackRegionList.idl', '../core/inspector/InjectedScriptHost.idl', '../core/inspector/InspectorFrontendHost.idl', '../core/inspector/InspectorOverlayHost.idl', '../core/inspector/JavaScriptCallFrame.idl', '../core/loader/appcache/DOMApplicationCache.idl', '../core/page/BarProp.idl', '../core/page/Console.idl', '../core/page/EventSource.idl', '../core/page/History.idl', '../core/page/ImageBitmap.idl', '../core/page/ImageBitmapCallback.idl', '../core/page/Location.idl', '../core/page/MemoryInfo.idl', '../core/page/Navigator.idl', '../core/page/PagePopupController.idl', '../core/page/Performance.idl', '../core/page/PerformanceEntry.idl', '../core/page/PerformanceMark.idl', '../core/page/PerformanceMeasure.idl', '../core/page/PerformanceNavigation.idl', '../core/page/PerformanceResourceTiming.idl', '../core/page/PerformanceTiming.idl', '../core/page/Screen.idl', '../core/page/SecurityPolicy.idl', '../core/page/Selection.idl', '../core/page/SpeechInputEvent.idl', '../core/page/SpeechInputResult.idl', '../core/page/SpeechInputResultList.idl', '../core/page/WebKitPoint.idl', '../core/page/Window.idl', '../core/page/WindowBase64.idl', '../core/page/WindowTimers.idl', '../core/page/WorkerNavigator.idl', '../core/plugins/MimeType.idl', '../core/plugins/MimeTypeArray.idl', '../core/plugins/Plugin.idl', '../core/plugins/PluginArray.idl', '../core/storage/Storage.idl', '../core/storage/StorageEvent.idl', '../core/workers/DedicatedWorkerGlobalScope.idl', '../core/workers/SharedWorker.idl', '../core/workers/SharedWorkerGlobalScope.idl', '../core/workers/Worker.idl', '../core/workers/WorkerGlobalScope.idl', '../core/workers/WorkerLocation.idl', '../core/xml/DOMParser.idl', '../core/xml/DocumentXPathEvaluator.idl', '../core/xml/XMLHttpRequest.idl', '../core/xml/XMLHttpRequestProgressEvent.idl', '../core/xml/XMLHttpRequestUpload.idl', '../core/xml/XMLSerializer.idl', '../core/xml/XPathEvaluator.idl', '../core/xml/XPathExpression.idl', '../core/xml/XPathNSResolver.idl', '../core/xml/XPathResult.idl', '../core/xml/XSLTProcessor.idl', '../modules/crypto/AesCbcParams.idl', '../modules/crypto/AesKeyGenParams.idl', '../modules/crypto/Algorithm.idl', '../modules/crypto/Crypto.idl', '../modules/crypto/CryptoOperation.idl', '../modules/crypto/HmacParams.idl', '../modules/crypto/Key.idl', '../modules/crypto/SubtleCrypto.idl', '../modules/crypto/WorkerCrypto.idl', '../modules/device_orientation/DeviceAcceleration.idl', '../modules/device_orientation/DeviceMotionEvent.idl', '../modules/device_orientation/DeviceOrientationEvent.idl', '../modules/device_orientation/DeviceRotationRate.idl', '../modules/encryptedmedia/MediaKeyMessageEvent.idl', '../modules/encryptedmedia/MediaKeyNeededEvent.idl', '../modules/encryptedmedia/MediaKeys.idl', '../modules/encryptedmedia/MediaKeySession.idl', '../modules/filesystem/DOMFileSystem.idl', '../modules/filesystem/DOMFileSystemSync.idl', '../modules/filesystem/DirectoryEntry.idl', '../modules/filesystem/DirectoryEntrySync.idl', '../modules/filesystem/DirectoryReader.idl', '../modules/filesystem/DirectoryReaderSync.idl', '../modules/filesystem/EntriesCallback.idl', '../modules/filesystem/Entry.idl', '../modules/filesystem/EntryArray.idl', '../modules/filesystem/EntryArraySync.idl', '../modules/filesystem/EntryCallback.idl', '../modules/filesystem/EntrySync.idl', '../modules/filesystem/ErrorCallback.idl', '../modules/filesystem/FileCallback.idl', '../modules/filesystem/FileEntry.idl', '../modules/filesystem/FileEntrySync.idl', '../modules/filesystem/FileSystemCallback.idl', '../modules/filesystem/FileWriter.idl', '../modules/filesystem/FileWriterCallback.idl', '../modules/filesystem/FileWriterSync.idl', '../modules/filesystem/Metadata.idl', '../modules/filesystem/MetadataCallback.idl', '../modules/gamepad/Gamepad.idl', '../modules/gamepad/GamepadList.idl', '../modules/geolocation/Coordinates.idl', '../modules/geolocation/Geolocation.idl', '../modules/geolocation/Geoposition.idl', '../modules/geolocation/PositionCallback.idl', '../modules/geolocation/PositionError.idl', '../modules/geolocation/PositionErrorCallback.idl', '../modules/indexeddb/IDBAny.idl', '../modules/indexeddb/IDBCursor.idl', '../modules/indexeddb/IDBCursorWithValue.idl', '../modules/indexeddb/IDBDatabase.idl', '../modules/indexeddb/IDBFactory.idl', '../modules/indexeddb/IDBIndex.idl', '../modules/indexeddb/IDBKeyRange.idl', '../modules/indexeddb/IDBObjectStore.idl', '../modules/indexeddb/IDBOpenDBRequest.idl', '../modules/indexeddb/IDBRequest.idl', '../modules/indexeddb/IDBTransaction.idl', '../modules/indexeddb/IDBVersionChangeEvent.idl', '../modules/mediasource/MediaSource.idl', '../modules/mediasource/SourceBuffer.idl', '../modules/mediasource/SourceBufferList.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/mediasource/WebKitMediaSource.idl', '../modules/mediasource/WebKitSourceBuffer.idl', '../modules/mediasource/WebKitSourceBufferList.idl', '../modules/mediastream/MediaStream.idl', '../modules/mediastream/MediaStreamEvent.idl', '../modules/mediastream/MediaStreamTrack.idl', '../modules/mediastream/MediaStreamTrackEvent.idl', '../modules/mediastream/MediaStreamTrackSourcesCallback.idl', '../modules/mediastream/NavigatorUserMediaError.idl', '../modules/mediastream/NavigatorUserMediaErrorCallback.idl', '../modules/mediastream/NavigatorUserMediaSuccessCallback.idl', '../modules/mediastream/RTCDTMFSender.idl', '../modules/mediastream/RTCDTMFToneChangeEvent.idl', '../modules/mediastream/RTCDataChannel.idl', '../modules/mediastream/RTCDataChannelEvent.idl', '../modules/mediastream/RTCErrorCallback.idl', '../modules/mediastream/RTCIceCandidate.idl', '../modules/mediastream/RTCIceCandidateEvent.idl', '../modules/mediastream/RTCPeerConnection.idl', '../modules/mediastream/RTCSessionDescription.idl', '../modules/mediastream/RTCSessionDescriptionCallback.idl', '../modules/mediastream/RTCStatsCallback.idl', '../modules/mediastream/RTCStatsReport.idl', '../modules/mediastream/RTCStatsResponse.idl', '../modules/mediastream/SourceInfo.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/notifications/Notification.idl', '../modules/notifications/NotificationCenter.idl', '../modules/notifications/NotificationPermissionCallback.idl', '../modules/performance/WorkerPerformance.idl', '../modules/quota/StorageErrorCallback.idl', '../modules/quota/StorageInfo.idl', '../modules/quota/StorageQuota.idl', '../modules/quota/StorageQuotaCallback.idl', '../modules/quota/StorageUsageCallback.idl', '../modules/speech/SpeechGrammar.idl', '../modules/speech/SpeechGrammarList.idl', '../modules/speech/SpeechRecognition.idl', '../modules/speech/SpeechRecognitionAlternative.idl', '../modules/speech/SpeechRecognitionError.idl', '../modules/speech/SpeechRecognitionEvent.idl', '../modules/speech/SpeechRecognitionResult.idl', '../modules/speech/SpeechRecognitionResultList.idl', '../modules/speech/SpeechSynthesis.idl', '../modules/speech/SpeechSynthesisEvent.idl', '../modules/speech/SpeechSynthesisUtterance.idl', '../modules/speech/SpeechSynthesisVoice.idl', '../modules/webaudio/AudioBuffer.idl', '../modules/webaudio/AudioBufferCallback.idl', '../modules/webaudio/AudioBufferSourceNode.idl', '../modules/webaudio/ChannelMergerNode.idl', '../modules/webaudio/ChannelSplitterNode.idl', '../modules/webaudio/AudioContext.idl', '../modules/webaudio/AudioDestinationNode.idl', '../modules/webaudio/GainNode.idl', '../modules/webaudio/AudioListener.idl', '../modules/webaudio/AudioNode.idl', '../modules/webaudio/PannerNode.idl', '../modules/webaudio/AudioParam.idl', '../modules/webaudio/AudioProcessingEvent.idl', '../modules/webaudio/AudioSourceNode.idl', '../modules/webaudio/BiquadFilterNode.idl', '../modules/webaudio/ConvolverNode.idl', '../modules/webaudio/DelayNode.idl', '../modules/webaudio/DynamicsCompressorNode.idl', '../modules/webaudio/ScriptProcessorNode.idl', '../modules/webaudio/MediaElementAudioSourceNode.idl', '../modules/webaudio/MediaStreamAudioDestinationNode.idl', '../modules/webaudio/MediaStreamAudioSourceNode.idl', '../modules/webaudio/OfflineAudioCompletionEvent.idl', '../modules/webaudio/OfflineAudioContext.idl', '../modules/webaudio/OscillatorNode.idl', '../modules/webaudio/PeriodicWave.idl', '../modules/webaudio/AnalyserNode.idl', '../modules/webaudio/WaveShaperNode.idl', '../modules/webdatabase/Database.idl', '../modules/webdatabase/DatabaseCallback.idl', '../modules/webdatabase/DatabaseSync.idl', '../modules/webdatabase/SQLError.idl', '../modules/webdatabase/SQLResultSet.idl', '../modules/webdatabase/SQLResultSetRowList.idl', '../modules/webdatabase/SQLStatementCallback.idl', '../modules/webdatabase/SQLStatementErrorCallback.idl', '../modules/webdatabase/SQLTransaction.idl', '../modules/webdatabase/SQLTransactionCallback.idl', '../modules/webdatabase/SQLTransactionErrorCallback.idl', '../modules/webdatabase/SQLTransactionSync.idl', '../modules/webdatabase/SQLTransactionSyncCallback.idl', '../modules/webmidi/MIDIAccess.idl', '../modules/webmidi/MIDIAccessPromise.idl', '../modules/webmidi/MIDIConnectionEvent.idl', '../modules/webmidi/MIDIErrorCallback.idl', '../modules/webmidi/MIDIInput.idl', '../modules/webmidi/MIDIMessageEvent.idl', '../modules/webmidi/MIDIOutput.idl', '../modules/webmidi/MIDIPort.idl', '../modules/webmidi/MIDISuccessCallback.idl', '../modules/websockets/CloseEvent.idl', '../modules/websockets/WebSocket.idl', '../core/svg/SVGAElement.idl', '../core/svg/SVGAltGlyphElement.idl', '../core/svg/SVGAltGlyphItemElement.idl', '../core/svg/SVGAltGlyphDefElement.idl', '../core/svg/SVGAngle.idl', '../core/svg/SVGAnimateColorElement.idl', '../core/svg/SVGAnimateMotionElement.idl', '../core/svg/SVGAnimateElement.idl', '../core/svg/SVGAnimateTransformElement.idl', '../core/svg/SVGAnimatedAngle.idl', '../core/svg/SVGAnimatedBoolean.idl', '../core/svg/SVGAnimatedEnumeration.idl', '../core/svg/SVGAnimatedInteger.idl', '../core/svg/SVGAnimatedLength.idl', '../core/svg/SVGAnimatedLengthList.idl', '../core/svg/SVGAnimatedNumber.idl', '../core/svg/SVGAnimatedNumberList.idl', '../core/svg/SVGAnimatedPreserveAspectRatio.idl', '../core/svg/SVGAnimatedRect.idl', '../core/svg/SVGAnimatedString.idl', '../core/svg/SVGAnimatedTransformList.idl', '../core/svg/SVGAnimationElement.idl', '../core/svg/SVGCircleElement.idl', '../core/svg/SVGClipPathElement.idl', '../core/svg/SVGColor.idl', '../core/svg/SVGComponentTransferFunctionElement.idl', '../core/svg/SVGCursorElement.idl', '../core/svg/SVGDefsElement.idl', '../core/svg/SVGDescElement.idl', '../core/svg/SVGDocument.idl', '../core/svg/SVGElement.idl', '../core/svg/SVGElementInstance.idl', '../core/svg/SVGElementInstanceList.idl', '../core/svg/SVGEllipseElement.idl', '../core/svg/SVGFEBlendElement.idl', '../core/svg/SVGFEColorMatrixElement.idl', '../core/svg/SVGFEComponentTransferElement.idl', '../core/svg/SVGFECompositeElement.idl', '../core/svg/SVGFEConvolveMatrixElement.idl', '../core/svg/SVGFEDiffuseLightingElement.idl', '../core/svg/SVGFEDisplacementMapElement.idl', '../core/svg/SVGFEDistantLightElement.idl', '../core/svg/SVGFEDropShadowElement.idl', '../core/svg/SVGFEFloodElement.idl', '../core/svg/SVGFEFuncAElement.idl', '../core/svg/SVGFEFuncBElement.idl', '../core/svg/SVGFEFuncGElement.idl', '../core/svg/SVGFEFuncRElement.idl', '../core/svg/SVGFEGaussianBlurElement.idl', '../core/svg/SVGFEImageElement.idl', '../core/svg/SVGFEMergeElement.idl', '../core/svg/SVGFEMergeNodeElement.idl', '../core/svg/SVGFEMorphologyElement.idl', '../core/svg/SVGFEOffsetElement.idl', '../core/svg/SVGFEPointLightElement.idl', '../core/svg/SVGFESpecularLightingElement.idl', '../core/svg/SVGFESpotLightElement.idl', '../core/svg/SVGFETileElement.idl', '../core/svg/SVGFETurbulenceElement.idl', '../core/svg/SVGFilterElement.idl', '../core/svg/SVGFontElement.idl', '../core/svg/SVGFontFaceElement.idl', '../core/svg/SVGFontFaceFormatElement.idl', '../core/svg/SVGFontFaceNameElement.idl', '../core/svg/SVGFontFaceSrcElement.idl', '../core/svg/SVGFontFaceUriElement.idl', '../core/svg/SVGForeignObjectElement.idl', '../core/svg/SVGGElement.idl', '../core/svg/SVGGlyphElement.idl', '../core/svg/SVGGlyphRefElement.idl', '../core/svg/SVGGradientElement.idl', '../core/svg/SVGGraphicsElement.idl', '../core/svg/SVGHKernElement.idl', '../core/svg/SVGImageElement.idl', '../core/svg/SVGLength.idl', '../core/svg/SVGLengthList.idl', '../core/svg/SVGLineElement.idl', '../core/svg/SVGLinearGradientElement.idl', '../core/svg/SVGMarkerElement.idl', '../core/svg/SVGMaskElement.idl', '../core/svg/SVGMatrix.idl', '../core/svg/SVGMetadataElement.idl', '../core/svg/SVGMissingGlyphElement.idl', '../core/svg/SVGMPathElement.idl', '../core/svg/SVGNumber.idl', '../core/svg/SVGNumberList.idl', '../core/svg/SVGPaint.idl', '../core/svg/SVGPathElement.idl', '../core/svg/SVGPathSeg.idl', '../core/svg/SVGPathSegArcAbs.idl', '../core/svg/SVGPathSegArcRel.idl', '../core/svg/SVGPathSegClosePath.idl', '../core/svg/SVGPathSegCurvetoCubicAbs.idl', '../core/svg/SVGPathSegCurvetoCubicRel.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl', '../core/svg/SVGPathSegLinetoAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalRel.idl', '../core/svg/SVGPathSegLinetoRel.idl', '../core/svg/SVGPathSegLinetoVerticalAbs.idl', '../core/svg/SVGPathSegLinetoVerticalRel.idl', '../core/svg/SVGPathSegList.idl', '../core/svg/SVGPathSegMovetoAbs.idl', '../core/svg/SVGPathSegMovetoRel.idl', '../core/svg/SVGPatternElement.idl', '../core/svg/SVGPoint.idl', '../core/svg/SVGPointList.idl', '../core/svg/SVGPolygonElement.idl', '../core/svg/SVGPolylineElement.idl', '../core/svg/SVGPreserveAspectRatio.idl', '../core/svg/SVGRadialGradientElement.idl', '../core/svg/SVGRect.idl', '../core/svg/SVGRectElement.idl', '../core/svg/SVGRenderingIntent.idl', '../core/svg/SVGSVGElement.idl', '../core/svg/SVGScriptElement.idl', '../core/svg/SVGSetElement.idl', '../core/svg/SVGStopElement.idl', '../core/svg/SVGStringList.idl', '../core/svg/SVGStyleElement.idl', '../core/svg/SVGStyledElement.idl', '../core/svg/SVGSwitchElement.idl', '../core/svg/SVGSymbolElement.idl', '../core/svg/SVGTRefElement.idl', '../core/svg/SVGTSpanElement.idl', '../core/svg/SVGTextContentElement.idl', '../core/svg/SVGTextElement.idl', '../core/svg/SVGTextPathElement.idl', '../core/svg/SVGTextPositioningElement.idl', '../core/svg/SVGTitleElement.idl', '../core/svg/SVGTransform.idl', '../core/svg/SVGTransformList.idl', '../core/svg/SVGUnitTypes.idl', '../core/svg/SVGUseElement.idl', '../core/svg/SVGViewElement.idl', '../core/svg/SVGViewSpec.idl', '../core/svg/SVGVKernElement.idl', '../core/svg/SVGZoomEvent.idl', '../core/testing/Internals.idl', '../core/testing/InternalProfilers.idl', '../core/testing/InternalSettings.idl', '../core/testing/LayerRect.idl', '../core/testing/LayerRectList.idl', '../core/testing/MallocStatistics.idl', '../core/testing/TypeConversions.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl'], 'action': ['perl', '-w', '-Iscripts', '-I../core/scripts', '-I../../../../third_party/JSON/out/lib/perl5', 'scripts/deprecated_generate_bindings.pl', '--outputDir', '$(gyp_shared_intermediate_dir)/webkit/bindings', '--idlAttributesFile', 'scripts/IDLAttributes.txt', '--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit', '--interfaceDependenciesFile', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '--additionalIdlFiles', '../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl "$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl" "$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl"', '--preprocessor', '/usr/bin/gcc -E -P -x c++', '--write-file-only-if-changed', '0', '$(RULE_SOURCES)'], 'message': 'Generating binding from $(RULE_SOURCES)'}":
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_local_path := $(LOCAL_PATH)
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
@@ -3516,6 +3516,17 @@
 .PHONY: third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger
 third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger: $(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.cpp
 
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_local_path := $(LOCAL_PATH)
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/HmacParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_generate_bindings.pl $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_code_generator_v8.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_idl_parser.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_idl_serializer.pm $(LOCAL_PATH)/third_party/WebKit/Source/core/scripts/preprocessor.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/IDLAttributes.txt $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(gyp_shared_intermediate_dir)/WindowConstructors.idl $(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl $(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl $(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl $(GYP_TARGET_DEPENDENCIES)
+	mkdir -p $(gyp_shared_intermediate_dir)/webkit/bindings; cd $(gyp_local_path)/third_party/WebKit/Source/bindings; perl -w -Iscripts -I../core/scripts -I../../../../third_party/JSON/out/lib/perl5 scripts/deprecated_generate_bindings.pl --outputDir "$(gyp_shared_intermediate_dir)/webkit/bindings" --idlAttributesFile scripts/IDLAttributes.txt --include ../core --include ../modules --include "$(gyp_shared_intermediate_dir)/webkit" --interfaceDependenciesFile "$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt" --additionalIdlFiles "../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl \"$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl\" \"$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl\"" --preprocessor "/usr/bin/gcc -E -P -x c++" --write-file-only-if-changed 0 ../modules/crypto/HmacParams.idl
+
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.h: $(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp ;
+.PHONY: third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger
+third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger: $(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp
+
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_local_path := $(LOCAL_PATH)
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
@@ -7543,6 +7554,8 @@
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Crypto.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.cpp \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.h \
+	$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp \
+	$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8SubtleCrypto.cpp \
diff --git a/Source/bindings/deprecated_perl_bindings_sources.target.linux-arm.mk b/Source/bindings/deprecated_perl_bindings_sources.target.linux-arm.mk
index 0591809..d88d64a 100644
--- a/Source/bindings/deprecated_perl_bindings_sources.target.linux-arm.mk
+++ b/Source/bindings/deprecated_perl_bindings_sources.target.linux-arm.mk
@@ -17,7 +17,7 @@
 
 
 ### Generated for rule "third_party_WebKit_Source_bindings_derived_sources_gyp_deprecated_perl_bindings_sources_target_deprecated_perl_binding":
-# "{'inputs': ['scripts/deprecated_generate_bindings.pl', 'scripts/deprecated_code_generator_v8.pm', 'scripts/deprecated_idl_parser.pm', 'scripts/deprecated_idl_serializer.pm', '../core/scripts/preprocessor.pm', 'scripts/IDLAttributes.txt', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '../modules/filesystem/HTMLInputElementFileSystem.idl', '../core/dom/DocumentFullscreen.idl', '../modules/geolocation/NavigatorGeolocation.idl', '../modules/mediasource/WindowMediaSource.idl', '../modules/filesystem/WindowFileSystem.idl', '../modules/indexeddb/WindowIndexedDatabase.idl', '../modules/navigatorcontentutils/NavigatorContentUtils.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/quota/WindowQuota.idl', '../modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl', '../modules/webmidi/NavigatorWebMIDI.idl', '../modules/notifications/WorkerGlobalScopeNotifications.idl', '../modules/webdatabase/WindowWebDatabase.idl', '../core/page/WindowPagePopup.idl', '../modules/webdatabase/WorkerGlobalScopeWebDatabase.idl', '../modules/mediastream/NavigatorMediaStream.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/crypto/WorkerGlobalScopeCrypto.idl', '../modules/filesystem/DataTransferItemFileSystem.idl', '../modules/gamepad/NavigatorGamepad.idl', '../core/xml/DocumentXPathEvaluator.idl', '../modules/filesystem/WorkerGlobalScopeFileSystem.idl', '../modules/donottrack/NavigatorDoNotTrack.idl', '../modules/notifications/WindowNotifications.idl', '$(gyp_shared_intermediate_dir)/WindowConstructors.idl', '$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl'], 'msvs_cygwin_shell': '0', 'extension': 'idl', 'msvs_external_rule': '1', 'outputs': ['$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.cpp', '$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.h'], 'variables': {'extra_blink_generator_include_dirs%': [], 'generator_include_dirs': ['--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit']}, 'rule_name': 'deprecated_perl_binding', 'rule_sources': ['../core/css/CSS.idl', '../core/css/CSSCharsetRule.idl', '../core/css/CSSFontFaceLoadEvent.idl', '../core/css/CSSFontFaceRule.idl', '../core/css/CSSHostRule.idl', '../core/css/CSSImportRule.idl', '../core/css/CSSMediaRule.idl', '../core/css/CSSPageRule.idl', '../core/css/CSSPrimitiveValue.idl', '../core/css/CSSRule.idl', '../core/css/CSSRuleList.idl', '../core/css/CSSStyleDeclaration.idl', '../core/css/CSSStyleRule.idl', '../core/css/CSSStyleSheet.idl', '../core/css/CSSSupportsRule.idl', '../core/css/CSSValue.idl', '../core/css/CSSValueList.idl', '../core/css/CSSViewportRule.idl', '../core/css/CSSVariablesMap.idl', '../core/css/Counter.idl', '../core/css/FontLoader.idl', '../core/css/MediaList.idl', '../core/css/MediaQueryList.idl', '../core/css/Rect.idl', '../core/css/RGBColor.idl', '../core/css/StyleMedia.idl', '../core/css/StyleSheet.idl', '../core/css/StyleSheetList.idl', '../core/css/WebKitCSSFilterRule.idl', '../core/css/WebKitCSSFilterValue.idl', '../core/css/WebKitCSSKeyframeRule.idl', '../core/css/WebKitCSSKeyframesRule.idl', '../core/css/WebKitCSSMatrix.idl', '../core/css/WebKitCSSMixFunctionValue.idl', '../core/css/WebKitCSSRegionRule.idl', '../core/css/WebKitCSSTransformValue.idl', '../core/dom/Attr.idl', '../core/dom/AutocompleteErrorEvent.idl', '../core/dom/BeforeLoadEvent.idl', '../core/dom/CDATASection.idl', '../core/dom/CharacterData.idl', '../core/dom/ClientRect.idl', '../core/dom/ClientRectList.idl', '../core/dom/Clipboard.idl', '../core/dom/Comment.idl', '../core/dom/CompositionEvent.idl', '../core/dom/CustomEvent.idl', '../core/dom/DOMError.idl', '../core/dom/DOMException.idl', '../core/dom/DOMImplementation.idl', '../core/dom/DOMStringList.idl', '../core/dom/DOMStringMap.idl', '../core/dom/DataTransferItem.idl', '../core/dom/DataTransferItemList.idl', '../core/dom/Document.idl', '../core/dom/DocumentFragment.idl', '../core/dom/DocumentType.idl', '../core/dom/Element.idl', '../core/dom/Entity.idl', '../core/dom/ErrorEvent.idl', '../core/dom/Event.idl', '../core/dom/EventTarget.idl', '../core/dom/FocusEvent.idl', '../core/dom/HashChangeEvent.idl', '../core/dom/KeyboardEvent.idl', '../core/dom/MessageChannel.idl', '../core/dom/MessageEvent.idl', '../core/dom/MessagePort.idl', '../core/dom/MouseEvent.idl', '../core/dom/MutationEvent.idl', '../core/dom/MutationObserver.idl', '../core/dom/MutationRecord.idl', '../core/dom/NamedNodeMap.idl', '../core/dom/Node.idl', '../core/dom/NodeFilter.idl', '../core/dom/NodeIterator.idl', '../core/dom/NodeList.idl', '../core/dom/Notation.idl', '../core/dom/OverflowEvent.idl', '../core/dom/PageTransitionEvent.idl', '../core/dom/PopStateEvent.idl', '../core/dom/ProcessingInstruction.idl', '../core/dom/ProgressEvent.idl', '../core/dom/Promise.idl', '../core/dom/PromiseResolver.idl', '../core/dom/Range.idl', '../core/dom/RequestAnimationFrameCallback.idl', '../core/dom/ResourceProgressEvent.idl', '../core/dom/SecurityPolicyViolationEvent.idl', '../core/dom/StringCallback.idl', '../core/dom/Text.idl', '../core/dom/TextEvent.idl', '../core/dom/Touch.idl', '../core/dom/TouchEvent.idl', '../core/dom/TouchList.idl', '../core/dom/TransitionEvent.idl', '../core/dom/TreeWalker.idl', '../core/dom/UIEvent.idl', '../core/dom/WebKitAnimationEvent.idl', '../core/dom/WebKitNamedFlow.idl', '../core/dom/WebKitNamedFlowCollection.idl', '../core/dom/WheelEvent.idl', '../core/dom/shadow/ShadowRoot.idl', '../core/fileapi/Blob.idl', '../core/fileapi/File.idl', '../core/fileapi/FileError.idl', '../core/fileapi/FileList.idl', '../core/fileapi/FileReader.idl', '../core/fileapi/FileReaderSync.idl', '../core/fileapi/Stream.idl', '../core/html/DOMSettableTokenList.idl', '../core/html/DOMTokenList.idl', '../core/html/FormData.idl', '../core/html/HTMLAllCollection.idl', '../core/html/HTMLAnchorElement.idl', '../core/html/HTMLAppletElement.idl', '../core/html/HTMLAreaElement.idl', '../core/html/HTMLAudioElement.idl', '../core/html/HTMLBRElement.idl', '../core/html/HTMLBaseElement.idl', '../core/html/HTMLBodyElement.idl', '../core/html/HTMLButtonElement.idl', '../core/html/HTMLCanvasElement.idl', '../core/html/HTMLCollection.idl', '../core/html/HTMLDListElement.idl', '../core/html/HTMLDataListElement.idl', '../core/html/HTMLDetailsElement.idl', '../core/html/HTMLDialogElement.idl', '../core/html/HTMLDirectoryElement.idl', '../core/html/HTMLDivElement.idl', '../core/html/HTMLDocument.idl', '../core/html/HTMLElement.idl', '../core/html/HTMLEmbedElement.idl', '../core/html/HTMLFieldSetElement.idl', '../core/html/HTMLFontElement.idl', '../core/html/HTMLFormControlsCollection.idl', '../core/html/HTMLFormElement.idl', '../core/html/HTMLFrameElement.idl', '../core/html/HTMLFrameSetElement.idl', '../core/html/HTMLHRElement.idl', '../core/html/HTMLHeadElement.idl', '../core/html/HTMLHeadingElement.idl', '../core/html/HTMLHtmlElement.idl', '../core/html/HTMLIFrameElement.idl', '../core/html/HTMLImageElement.idl', '../core/html/HTMLInputElement.idl', '../core/html/HTMLKeygenElement.idl', '../core/html/HTMLLIElement.idl', '../core/html/HTMLLabelElement.idl', '../core/html/HTMLLegendElement.idl', '../core/html/HTMLLinkElement.idl', '../core/html/HTMLMapElement.idl', '../core/html/HTMLMarqueeElement.idl', '../core/html/HTMLMediaElement.idl', '../core/html/HTMLMenuElement.idl', '../core/html/HTMLMetaElement.idl', '../core/html/HTMLMeterElement.idl', '../core/html/HTMLModElement.idl', '../core/html/HTMLOListElement.idl', '../core/html/HTMLObjectElement.idl', '../core/html/HTMLOptGroupElement.idl', '../core/html/HTMLOptionElement.idl', '../core/html/HTMLOptionsCollection.idl', '../core/html/HTMLOutputElement.idl', '../core/html/HTMLParagraphElement.idl', '../core/html/HTMLParamElement.idl', '../core/html/HTMLPreElement.idl', '../core/html/HTMLProgressElement.idl', '../core/html/HTMLQuoteElement.idl', '../core/html/HTMLScriptElement.idl', '../core/html/HTMLSelectElement.idl', '../core/html/HTMLSourceElement.idl', '../core/html/HTMLSpanElement.idl', '../core/html/HTMLStyleElement.idl', '../core/html/HTMLTableCaptionElement.idl', '../core/html/HTMLTableCellElement.idl', '../core/html/HTMLTableColElement.idl', '../core/html/HTMLTableElement.idl', '../core/html/HTMLTableRowElement.idl', '../core/html/HTMLTableSectionElement.idl', '../core/html/HTMLTextAreaElement.idl', '../core/html/HTMLTemplateElement.idl', '../core/html/HTMLTitleElement.idl', '../core/html/HTMLTrackElement.idl', '../core/html/HTMLUListElement.idl', '../core/html/HTMLUnknownElement.idl', '../core/html/HTMLVideoElement.idl', '../core/html/ImageData.idl', '../core/html/MediaController.idl', '../core/html/MediaError.idl', '../core/html/MediaKeyError.idl', '../core/html/MediaKeyEvent.idl', '../core/html/RadioNodeList.idl', '../core/html/TextMetrics.idl', '../core/html/TimeRanges.idl', '../core/html/URL.idl', '../core/html/ValidityState.idl', '../core/html/VoidCallback.idl', '../core/html/canvas/ANGLEInstancedArrays.idl', '../core/html/canvas/ArrayBufferView.idl', '../core/html/canvas/CanvasGradient.idl', '../core/html/canvas/CanvasPattern.idl', '../core/html/canvas/CanvasRenderingContext.idl', '../core/html/canvas/CanvasRenderingContext2D.idl', '../core/html/canvas/Canvas2DContextAttributes.idl', '../core/html/canvas/DataView.idl', '../core/html/canvas/EXTFragDepth.idl', '../core/html/canvas/EXTTextureFilterAnisotropic.idl', '../core/html/canvas/Float32Array.idl', '../core/html/canvas/Float64Array.idl', '../core/html/canvas/Int16Array.idl', '../core/html/canvas/Int32Array.idl', '../core/html/canvas/Int8Array.idl', '../core/html/canvas/OESStandardDerivatives.idl', '../core/html/canvas/OESTextureFloat.idl', '../core/html/canvas/OESTextureFloatLinear.idl', '../core/html/canvas/OESTextureHalfFloat.idl', '../core/html/canvas/OESTextureHalfFloatLinear.idl', '../core/html/canvas/OESVertexArrayObject.idl', '../core/html/canvas/OESElementIndexUint.idl', '../core/html/canvas/Path.idl', '../core/html/canvas/Uint16Array.idl', '../core/html/canvas/Uint32Array.idl', '../core/html/canvas/Uint8Array.idl', '../core/html/canvas/Uint8ClampedArray.idl', '../core/html/canvas/WebGLActiveInfo.idl', '../core/html/canvas/WebGLBuffer.idl', '../core/html/canvas/WebGLCompressedTextureATC.idl', '../core/html/canvas/WebGLCompressedTexturePVRTC.idl', '../core/html/canvas/WebGLCompressedTextureS3TC.idl', '../core/html/canvas/WebGLContextAttributes.idl', '../core/html/canvas/WebGLContextEvent.idl', '../core/html/canvas/WebGLDebugRendererInfo.idl', '../core/html/canvas/WebGLDebugShaders.idl', '../core/html/canvas/WebGLDepthTexture.idl', '../core/html/canvas/WebGLDrawBuffers.idl', '../core/html/canvas/WebGLFramebuffer.idl', '../core/html/canvas/WebGLLoseContext.idl', '../core/html/canvas/WebGLProgram.idl', '../core/html/canvas/WebGLRenderbuffer.idl', '../core/html/canvas/WebGLRenderingContext.idl', '../core/html/canvas/WebGLShader.idl', '../core/html/canvas/WebGLShaderPrecisionFormat.idl', '../core/html/canvas/WebGLTexture.idl', '../core/html/canvas/WebGLUniformLocation.idl', '../core/html/canvas/WebGLVertexArrayObjectOES.idl', '../core/html/ime/Composition.idl', '../core/html/ime/InputMethodContext.idl', '../core/html/shadow/HTMLContentElement.idl', '../core/html/shadow/HTMLShadowElement.idl', '../core/html/track/TextTrack.idl', '../core/html/track/TextTrackCue.idl', '../core/html/track/TextTrackCueList.idl', '../core/html/track/TextTrackList.idl', '../core/html/track/TrackEvent.idl', '../core/html/track/TextTrackRegion.idl', '../core/html/track/TextTrackRegionList.idl', '../core/inspector/InjectedScriptHost.idl', '../core/inspector/InspectorFrontendHost.idl', '../core/inspector/InspectorOverlayHost.idl', '../core/inspector/JavaScriptCallFrame.idl', '../core/loader/appcache/DOMApplicationCache.idl', '../core/page/BarProp.idl', '../core/page/Console.idl', '../core/page/EventSource.idl', '../core/page/History.idl', '../core/page/ImageBitmap.idl', '../core/page/ImageBitmapCallback.idl', '../core/page/Location.idl', '../core/page/MemoryInfo.idl', '../core/page/Navigator.idl', '../core/page/PagePopupController.idl', '../core/page/Performance.idl', '../core/page/PerformanceEntry.idl', '../core/page/PerformanceMark.idl', '../core/page/PerformanceMeasure.idl', '../core/page/PerformanceNavigation.idl', '../core/page/PerformanceResourceTiming.idl', '../core/page/PerformanceTiming.idl', '../core/page/Screen.idl', '../core/page/SecurityPolicy.idl', '../core/page/Selection.idl', '../core/page/SpeechInputEvent.idl', '../core/page/SpeechInputResult.idl', '../core/page/SpeechInputResultList.idl', '../core/page/WebKitPoint.idl', '../core/page/Window.idl', '../core/page/WindowBase64.idl', '../core/page/WindowTimers.idl', '../core/page/WorkerNavigator.idl', '../core/plugins/MimeType.idl', '../core/plugins/MimeTypeArray.idl', '../core/plugins/Plugin.idl', '../core/plugins/PluginArray.idl', '../core/storage/Storage.idl', '../core/storage/StorageEvent.idl', '../core/workers/DedicatedWorkerGlobalScope.idl', '../core/workers/SharedWorker.idl', '../core/workers/SharedWorkerGlobalScope.idl', '../core/workers/Worker.idl', '../core/workers/WorkerGlobalScope.idl', '../core/workers/WorkerLocation.idl', '../core/xml/DOMParser.idl', '../core/xml/DocumentXPathEvaluator.idl', '../core/xml/XMLHttpRequest.idl', '../core/xml/XMLHttpRequestProgressEvent.idl', '../core/xml/XMLHttpRequestUpload.idl', '../core/xml/XMLSerializer.idl', '../core/xml/XPathEvaluator.idl', '../core/xml/XPathExpression.idl', '../core/xml/XPathNSResolver.idl', '../core/xml/XPathResult.idl', '../core/xml/XSLTProcessor.idl', '../modules/crypto/AesCbcParams.idl', '../modules/crypto/AesKeyGenParams.idl', '../modules/crypto/Algorithm.idl', '../modules/crypto/Crypto.idl', '../modules/crypto/CryptoOperation.idl', '../modules/crypto/Key.idl', '../modules/crypto/SubtleCrypto.idl', '../modules/crypto/WorkerCrypto.idl', '../modules/device_orientation/DeviceAcceleration.idl', '../modules/device_orientation/DeviceMotionEvent.idl', '../modules/device_orientation/DeviceOrientationEvent.idl', '../modules/device_orientation/DeviceRotationRate.idl', '../modules/encryptedmedia/MediaKeyMessageEvent.idl', '../modules/encryptedmedia/MediaKeyNeededEvent.idl', '../modules/encryptedmedia/MediaKeys.idl', '../modules/encryptedmedia/MediaKeySession.idl', '../modules/filesystem/DOMFileSystem.idl', '../modules/filesystem/DOMFileSystemSync.idl', '../modules/filesystem/DirectoryEntry.idl', '../modules/filesystem/DirectoryEntrySync.idl', '../modules/filesystem/DirectoryReader.idl', '../modules/filesystem/DirectoryReaderSync.idl', '../modules/filesystem/EntriesCallback.idl', '../modules/filesystem/Entry.idl', '../modules/filesystem/EntryArray.idl', '../modules/filesystem/EntryArraySync.idl', '../modules/filesystem/EntryCallback.idl', '../modules/filesystem/EntrySync.idl', '../modules/filesystem/ErrorCallback.idl', '../modules/filesystem/FileCallback.idl', '../modules/filesystem/FileEntry.idl', '../modules/filesystem/FileEntrySync.idl', '../modules/filesystem/FileSystemCallback.idl', '../modules/filesystem/FileWriter.idl', '../modules/filesystem/FileWriterCallback.idl', '../modules/filesystem/FileWriterSync.idl', '../modules/filesystem/Metadata.idl', '../modules/filesystem/MetadataCallback.idl', '../modules/gamepad/Gamepad.idl', '../modules/gamepad/GamepadList.idl', '../modules/geolocation/Coordinates.idl', '../modules/geolocation/Geolocation.idl', '../modules/geolocation/Geoposition.idl', '../modules/geolocation/PositionCallback.idl', '../modules/geolocation/PositionError.idl', '../modules/geolocation/PositionErrorCallback.idl', '../modules/indexeddb/IDBAny.idl', '../modules/indexeddb/IDBCursor.idl', '../modules/indexeddb/IDBCursorWithValue.idl', '../modules/indexeddb/IDBDatabase.idl', '../modules/indexeddb/IDBFactory.idl', '../modules/indexeddb/IDBIndex.idl', '../modules/indexeddb/IDBKeyRange.idl', '../modules/indexeddb/IDBObjectStore.idl', '../modules/indexeddb/IDBOpenDBRequest.idl', '../modules/indexeddb/IDBRequest.idl', '../modules/indexeddb/IDBTransaction.idl', '../modules/indexeddb/IDBVersionChangeEvent.idl', '../modules/mediasource/MediaSource.idl', '../modules/mediasource/SourceBuffer.idl', '../modules/mediasource/SourceBufferList.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/mediasource/WebKitMediaSource.idl', '../modules/mediasource/WebKitSourceBuffer.idl', '../modules/mediasource/WebKitSourceBufferList.idl', '../modules/mediastream/MediaStream.idl', '../modules/mediastream/MediaStreamEvent.idl', '../modules/mediastream/MediaStreamTrack.idl', '../modules/mediastream/MediaStreamTrackEvent.idl', '../modules/mediastream/MediaStreamTrackSourcesCallback.idl', '../modules/mediastream/NavigatorUserMediaError.idl', '../modules/mediastream/NavigatorUserMediaErrorCallback.idl', '../modules/mediastream/NavigatorUserMediaSuccessCallback.idl', '../modules/mediastream/RTCDTMFSender.idl', '../modules/mediastream/RTCDTMFToneChangeEvent.idl', '../modules/mediastream/RTCDataChannel.idl', '../modules/mediastream/RTCDataChannelEvent.idl', '../modules/mediastream/RTCErrorCallback.idl', '../modules/mediastream/RTCIceCandidate.idl', '../modules/mediastream/RTCIceCandidateEvent.idl', '../modules/mediastream/RTCPeerConnection.idl', '../modules/mediastream/RTCSessionDescription.idl', '../modules/mediastream/RTCSessionDescriptionCallback.idl', '../modules/mediastream/RTCStatsCallback.idl', '../modules/mediastream/RTCStatsReport.idl', '../modules/mediastream/RTCStatsResponse.idl', '../modules/mediastream/SourceInfo.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/notifications/Notification.idl', '../modules/notifications/NotificationCenter.idl', '../modules/notifications/NotificationPermissionCallback.idl', '../modules/performance/WorkerPerformance.idl', '../modules/quota/StorageErrorCallback.idl', '../modules/quota/StorageInfo.idl', '../modules/quota/StorageQuota.idl', '../modules/quota/StorageQuotaCallback.idl', '../modules/quota/StorageUsageCallback.idl', '../modules/speech/SpeechGrammar.idl', '../modules/speech/SpeechGrammarList.idl', '../modules/speech/SpeechRecognition.idl', '../modules/speech/SpeechRecognitionAlternative.idl', '../modules/speech/SpeechRecognitionError.idl', '../modules/speech/SpeechRecognitionEvent.idl', '../modules/speech/SpeechRecognitionResult.idl', '../modules/speech/SpeechRecognitionResultList.idl', '../modules/speech/SpeechSynthesis.idl', '../modules/speech/SpeechSynthesisEvent.idl', '../modules/speech/SpeechSynthesisUtterance.idl', '../modules/speech/SpeechSynthesisVoice.idl', '../modules/webaudio/AudioBuffer.idl', '../modules/webaudio/AudioBufferCallback.idl', '../modules/webaudio/AudioBufferSourceNode.idl', '../modules/webaudio/ChannelMergerNode.idl', '../modules/webaudio/ChannelSplitterNode.idl', '../modules/webaudio/AudioContext.idl', '../modules/webaudio/AudioDestinationNode.idl', '../modules/webaudio/GainNode.idl', '../modules/webaudio/AudioListener.idl', '../modules/webaudio/AudioNode.idl', '../modules/webaudio/PannerNode.idl', '../modules/webaudio/AudioParam.idl', '../modules/webaudio/AudioProcessingEvent.idl', '../modules/webaudio/AudioSourceNode.idl', '../modules/webaudio/BiquadFilterNode.idl', '../modules/webaudio/ConvolverNode.idl', '../modules/webaudio/DelayNode.idl', '../modules/webaudio/DynamicsCompressorNode.idl', '../modules/webaudio/ScriptProcessorNode.idl', '../modules/webaudio/MediaElementAudioSourceNode.idl', '../modules/webaudio/MediaStreamAudioDestinationNode.idl', '../modules/webaudio/MediaStreamAudioSourceNode.idl', '../modules/webaudio/OfflineAudioCompletionEvent.idl', '../modules/webaudio/OfflineAudioContext.idl', '../modules/webaudio/OscillatorNode.idl', '../modules/webaudio/PeriodicWave.idl', '../modules/webaudio/AnalyserNode.idl', '../modules/webaudio/WaveShaperNode.idl', '../modules/webdatabase/Database.idl', '../modules/webdatabase/DatabaseCallback.idl', '../modules/webdatabase/DatabaseSync.idl', '../modules/webdatabase/SQLError.idl', '../modules/webdatabase/SQLResultSet.idl', '../modules/webdatabase/SQLResultSetRowList.idl', '../modules/webdatabase/SQLStatementCallback.idl', '../modules/webdatabase/SQLStatementErrorCallback.idl', '../modules/webdatabase/SQLTransaction.idl', '../modules/webdatabase/SQLTransactionCallback.idl', '../modules/webdatabase/SQLTransactionErrorCallback.idl', '../modules/webdatabase/SQLTransactionSync.idl', '../modules/webdatabase/SQLTransactionSyncCallback.idl', '../modules/webmidi/MIDIAccess.idl', '../modules/webmidi/MIDIAccessPromise.idl', '../modules/webmidi/MIDIConnectionEvent.idl', '../modules/webmidi/MIDIErrorCallback.idl', '../modules/webmidi/MIDIInput.idl', '../modules/webmidi/MIDIMessageEvent.idl', '../modules/webmidi/MIDIOutput.idl', '../modules/webmidi/MIDIPort.idl', '../modules/webmidi/MIDISuccessCallback.idl', '../modules/websockets/CloseEvent.idl', '../modules/websockets/WebSocket.idl', '../core/svg/SVGAElement.idl', '../core/svg/SVGAltGlyphElement.idl', '../core/svg/SVGAltGlyphItemElement.idl', '../core/svg/SVGAltGlyphDefElement.idl', '../core/svg/SVGAngle.idl', '../core/svg/SVGAnimateColorElement.idl', '../core/svg/SVGAnimateMotionElement.idl', '../core/svg/SVGAnimateElement.idl', '../core/svg/SVGAnimateTransformElement.idl', '../core/svg/SVGAnimatedAngle.idl', '../core/svg/SVGAnimatedBoolean.idl', '../core/svg/SVGAnimatedEnumeration.idl', '../core/svg/SVGAnimatedInteger.idl', '../core/svg/SVGAnimatedLength.idl', '../core/svg/SVGAnimatedLengthList.idl', '../core/svg/SVGAnimatedNumber.idl', '../core/svg/SVGAnimatedNumberList.idl', '../core/svg/SVGAnimatedPreserveAspectRatio.idl', '../core/svg/SVGAnimatedRect.idl', '../core/svg/SVGAnimatedString.idl', '../core/svg/SVGAnimatedTransformList.idl', '../core/svg/SVGAnimationElement.idl', '../core/svg/SVGCircleElement.idl', '../core/svg/SVGClipPathElement.idl', '../core/svg/SVGColor.idl', '../core/svg/SVGComponentTransferFunctionElement.idl', '../core/svg/SVGCursorElement.idl', '../core/svg/SVGDefsElement.idl', '../core/svg/SVGDescElement.idl', '../core/svg/SVGDocument.idl', '../core/svg/SVGElement.idl', '../core/svg/SVGElementInstance.idl', '../core/svg/SVGElementInstanceList.idl', '../core/svg/SVGEllipseElement.idl', '../core/svg/SVGFEBlendElement.idl', '../core/svg/SVGFEColorMatrixElement.idl', '../core/svg/SVGFEComponentTransferElement.idl', '../core/svg/SVGFECompositeElement.idl', '../core/svg/SVGFEConvolveMatrixElement.idl', '../core/svg/SVGFEDiffuseLightingElement.idl', '../core/svg/SVGFEDisplacementMapElement.idl', '../core/svg/SVGFEDistantLightElement.idl', '../core/svg/SVGFEDropShadowElement.idl', '../core/svg/SVGFEFloodElement.idl', '../core/svg/SVGFEFuncAElement.idl', '../core/svg/SVGFEFuncBElement.idl', '../core/svg/SVGFEFuncGElement.idl', '../core/svg/SVGFEFuncRElement.idl', '../core/svg/SVGFEGaussianBlurElement.idl', '../core/svg/SVGFEImageElement.idl', '../core/svg/SVGFEMergeElement.idl', '../core/svg/SVGFEMergeNodeElement.idl', '../core/svg/SVGFEMorphologyElement.idl', '../core/svg/SVGFEOffsetElement.idl', '../core/svg/SVGFEPointLightElement.idl', '../core/svg/SVGFESpecularLightingElement.idl', '../core/svg/SVGFESpotLightElement.idl', '../core/svg/SVGFETileElement.idl', '../core/svg/SVGFETurbulenceElement.idl', '../core/svg/SVGFilterElement.idl', '../core/svg/SVGFontElement.idl', '../core/svg/SVGFontFaceElement.idl', '../core/svg/SVGFontFaceFormatElement.idl', '../core/svg/SVGFontFaceNameElement.idl', '../core/svg/SVGFontFaceSrcElement.idl', '../core/svg/SVGFontFaceUriElement.idl', '../core/svg/SVGForeignObjectElement.idl', '../core/svg/SVGGElement.idl', '../core/svg/SVGGlyphElement.idl', '../core/svg/SVGGlyphRefElement.idl', '../core/svg/SVGGradientElement.idl', '../core/svg/SVGGraphicsElement.idl', '../core/svg/SVGHKernElement.idl', '../core/svg/SVGImageElement.idl', '../core/svg/SVGLength.idl', '../core/svg/SVGLengthList.idl', '../core/svg/SVGLineElement.idl', '../core/svg/SVGLinearGradientElement.idl', '../core/svg/SVGMarkerElement.idl', '../core/svg/SVGMaskElement.idl', '../core/svg/SVGMatrix.idl', '../core/svg/SVGMetadataElement.idl', '../core/svg/SVGMissingGlyphElement.idl', '../core/svg/SVGMPathElement.idl', '../core/svg/SVGNumber.idl', '../core/svg/SVGNumberList.idl', '../core/svg/SVGPaint.idl', '../core/svg/SVGPathElement.idl', '../core/svg/SVGPathSeg.idl', '../core/svg/SVGPathSegArcAbs.idl', '../core/svg/SVGPathSegArcRel.idl', '../core/svg/SVGPathSegClosePath.idl', '../core/svg/SVGPathSegCurvetoCubicAbs.idl', '../core/svg/SVGPathSegCurvetoCubicRel.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl', '../core/svg/SVGPathSegLinetoAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalRel.idl', '../core/svg/SVGPathSegLinetoRel.idl', '../core/svg/SVGPathSegLinetoVerticalAbs.idl', '../core/svg/SVGPathSegLinetoVerticalRel.idl', '../core/svg/SVGPathSegList.idl', '../core/svg/SVGPathSegMovetoAbs.idl', '../core/svg/SVGPathSegMovetoRel.idl', '../core/svg/SVGPatternElement.idl', '../core/svg/SVGPoint.idl', '../core/svg/SVGPointList.idl', '../core/svg/SVGPolygonElement.idl', '../core/svg/SVGPolylineElement.idl', '../core/svg/SVGPreserveAspectRatio.idl', '../core/svg/SVGRadialGradientElement.idl', '../core/svg/SVGRect.idl', '../core/svg/SVGRectElement.idl', '../core/svg/SVGRenderingIntent.idl', '../core/svg/SVGSVGElement.idl', '../core/svg/SVGScriptElement.idl', '../core/svg/SVGSetElement.idl', '../core/svg/SVGStopElement.idl', '../core/svg/SVGStringList.idl', '../core/svg/SVGStyleElement.idl', '../core/svg/SVGStyledElement.idl', '../core/svg/SVGSwitchElement.idl', '../core/svg/SVGSymbolElement.idl', '../core/svg/SVGTRefElement.idl', '../core/svg/SVGTSpanElement.idl', '../core/svg/SVGTextContentElement.idl', '../core/svg/SVGTextElement.idl', '../core/svg/SVGTextPathElement.idl', '../core/svg/SVGTextPositioningElement.idl', '../core/svg/SVGTitleElement.idl', '../core/svg/SVGTransform.idl', '../core/svg/SVGTransformList.idl', '../core/svg/SVGUnitTypes.idl', '../core/svg/SVGUseElement.idl', '../core/svg/SVGViewElement.idl', '../core/svg/SVGViewSpec.idl', '../core/svg/SVGVKernElement.idl', '../core/svg/SVGZoomEvent.idl', '../core/testing/Internals.idl', '../core/testing/InternalProfilers.idl', '../core/testing/InternalSettings.idl', '../core/testing/LayerRect.idl', '../core/testing/LayerRectList.idl', '../core/testing/MallocStatistics.idl', '../core/testing/TypeConversions.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl'], 'action': ['perl', '-w', '-Iscripts', '-I../core/scripts', '-I../../../../third_party/JSON/out/lib/perl5', 'scripts/deprecated_generate_bindings.pl', '--outputDir', '$(gyp_shared_intermediate_dir)/webkit/bindings', '--idlAttributesFile', 'scripts/IDLAttributes.txt', '--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit', '--interfaceDependenciesFile', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '--additionalIdlFiles', '../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl "$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl" "$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl"', '--preprocessor', '/usr/bin/gcc -E -P -x c++', '--write-file-only-if-changed', '0', '$(RULE_SOURCES)'], 'message': 'Generating binding from $(RULE_SOURCES)'}":
+# "{'inputs': ['scripts/deprecated_generate_bindings.pl', 'scripts/deprecated_code_generator_v8.pm', 'scripts/deprecated_idl_parser.pm', 'scripts/deprecated_idl_serializer.pm', '../core/scripts/preprocessor.pm', 'scripts/IDLAttributes.txt', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '../modules/filesystem/HTMLInputElementFileSystem.idl', '../core/dom/DocumentFullscreen.idl', '../modules/geolocation/NavigatorGeolocation.idl', '../modules/mediasource/WindowMediaSource.idl', '../modules/filesystem/WindowFileSystem.idl', '../modules/indexeddb/WindowIndexedDatabase.idl', '../modules/navigatorcontentutils/NavigatorContentUtils.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/quota/WindowQuota.idl', '../modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl', '../modules/webmidi/NavigatorWebMIDI.idl', '../modules/notifications/WorkerGlobalScopeNotifications.idl', '../modules/webdatabase/WindowWebDatabase.idl', '../core/page/WindowPagePopup.idl', '../modules/webdatabase/WorkerGlobalScopeWebDatabase.idl', '../modules/mediastream/NavigatorMediaStream.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/crypto/WorkerGlobalScopeCrypto.idl', '../modules/filesystem/DataTransferItemFileSystem.idl', '../modules/gamepad/NavigatorGamepad.idl', '../core/xml/DocumentXPathEvaluator.idl', '../modules/filesystem/WorkerGlobalScopeFileSystem.idl', '../modules/donottrack/NavigatorDoNotTrack.idl', '../modules/notifications/WindowNotifications.idl', '$(gyp_shared_intermediate_dir)/WindowConstructors.idl', '$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl'], 'msvs_cygwin_shell': '0', 'extension': 'idl', 'msvs_external_rule': '1', 'outputs': ['$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.cpp', '$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.h'], 'variables': {'extra_blink_generator_include_dirs%': [], 'generator_include_dirs': ['--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit']}, 'rule_name': 'deprecated_perl_binding', 'rule_sources': ['../core/css/CSS.idl', '../core/css/CSSCharsetRule.idl', '../core/css/CSSFontFaceLoadEvent.idl', '../core/css/CSSFontFaceRule.idl', '../core/css/CSSHostRule.idl', '../core/css/CSSImportRule.idl', '../core/css/CSSMediaRule.idl', '../core/css/CSSPageRule.idl', '../core/css/CSSPrimitiveValue.idl', '../core/css/CSSRule.idl', '../core/css/CSSRuleList.idl', '../core/css/CSSStyleDeclaration.idl', '../core/css/CSSStyleRule.idl', '../core/css/CSSStyleSheet.idl', '../core/css/CSSSupportsRule.idl', '../core/css/CSSValue.idl', '../core/css/CSSValueList.idl', '../core/css/CSSViewportRule.idl', '../core/css/CSSVariablesMap.idl', '../core/css/Counter.idl', '../core/css/FontLoader.idl', '../core/css/MediaList.idl', '../core/css/MediaQueryList.idl', '../core/css/Rect.idl', '../core/css/RGBColor.idl', '../core/css/StyleMedia.idl', '../core/css/StyleSheet.idl', '../core/css/StyleSheetList.idl', '../core/css/WebKitCSSFilterRule.idl', '../core/css/WebKitCSSFilterValue.idl', '../core/css/WebKitCSSKeyframeRule.idl', '../core/css/WebKitCSSKeyframesRule.idl', '../core/css/WebKitCSSMatrix.idl', '../core/css/WebKitCSSMixFunctionValue.idl', '../core/css/WebKitCSSRegionRule.idl', '../core/css/WebKitCSSTransformValue.idl', '../core/dom/Attr.idl', '../core/dom/AutocompleteErrorEvent.idl', '../core/dom/BeforeLoadEvent.idl', '../core/dom/CDATASection.idl', '../core/dom/CharacterData.idl', '../core/dom/ClientRect.idl', '../core/dom/ClientRectList.idl', '../core/dom/Clipboard.idl', '../core/dom/Comment.idl', '../core/dom/CompositionEvent.idl', '../core/dom/CustomEvent.idl', '../core/dom/DOMError.idl', '../core/dom/DOMException.idl', '../core/dom/DOMImplementation.idl', '../core/dom/DOMStringList.idl', '../core/dom/DOMStringMap.idl', '../core/dom/DataTransferItem.idl', '../core/dom/DataTransferItemList.idl', '../core/dom/Document.idl', '../core/dom/DocumentFragment.idl', '../core/dom/DocumentType.idl', '../core/dom/Element.idl', '../core/dom/Entity.idl', '../core/dom/ErrorEvent.idl', '../core/dom/Event.idl', '../core/dom/EventTarget.idl', '../core/dom/FocusEvent.idl', '../core/dom/HashChangeEvent.idl', '../core/dom/KeyboardEvent.idl', '../core/dom/MessageChannel.idl', '../core/dom/MessageEvent.idl', '../core/dom/MessagePort.idl', '../core/dom/MouseEvent.idl', '../core/dom/MutationEvent.idl', '../core/dom/MutationObserver.idl', '../core/dom/MutationRecord.idl', '../core/dom/NamedNodeMap.idl', '../core/dom/Node.idl', '../core/dom/NodeFilter.idl', '../core/dom/NodeIterator.idl', '../core/dom/NodeList.idl', '../core/dom/Notation.idl', '../core/dom/OverflowEvent.idl', '../core/dom/PageTransitionEvent.idl', '../core/dom/PopStateEvent.idl', '../core/dom/ProcessingInstruction.idl', '../core/dom/ProgressEvent.idl', '../core/dom/Promise.idl', '../core/dom/PromiseResolver.idl', '../core/dom/Range.idl', '../core/dom/RequestAnimationFrameCallback.idl', '../core/dom/ResourceProgressEvent.idl', '../core/dom/SecurityPolicyViolationEvent.idl', '../core/dom/StringCallback.idl', '../core/dom/Text.idl', '../core/dom/TextEvent.idl', '../core/dom/Touch.idl', '../core/dom/TouchEvent.idl', '../core/dom/TouchList.idl', '../core/dom/TransitionEvent.idl', '../core/dom/TreeWalker.idl', '../core/dom/UIEvent.idl', '../core/dom/WebKitAnimationEvent.idl', '../core/dom/WebKitNamedFlow.idl', '../core/dom/WebKitNamedFlowCollection.idl', '../core/dom/WheelEvent.idl', '../core/dom/shadow/ShadowRoot.idl', '../core/fileapi/Blob.idl', '../core/fileapi/File.idl', '../core/fileapi/FileError.idl', '../core/fileapi/FileList.idl', '../core/fileapi/FileReader.idl', '../core/fileapi/FileReaderSync.idl', '../core/fileapi/Stream.idl', '../core/html/DOMSettableTokenList.idl', '../core/html/DOMTokenList.idl', '../core/html/FormData.idl', '../core/html/HTMLAllCollection.idl', '../core/html/HTMLAnchorElement.idl', '../core/html/HTMLAppletElement.idl', '../core/html/HTMLAreaElement.idl', '../core/html/HTMLAudioElement.idl', '../core/html/HTMLBRElement.idl', '../core/html/HTMLBaseElement.idl', '../core/html/HTMLBodyElement.idl', '../core/html/HTMLButtonElement.idl', '../core/html/HTMLCanvasElement.idl', '../core/html/HTMLCollection.idl', '../core/html/HTMLDListElement.idl', '../core/html/HTMLDataListElement.idl', '../core/html/HTMLDetailsElement.idl', '../core/html/HTMLDialogElement.idl', '../core/html/HTMLDirectoryElement.idl', '../core/html/HTMLDivElement.idl', '../core/html/HTMLDocument.idl', '../core/html/HTMLElement.idl', '../core/html/HTMLEmbedElement.idl', '../core/html/HTMLFieldSetElement.idl', '../core/html/HTMLFontElement.idl', '../core/html/HTMLFormControlsCollection.idl', '../core/html/HTMLFormElement.idl', '../core/html/HTMLFrameElement.idl', '../core/html/HTMLFrameSetElement.idl', '../core/html/HTMLHRElement.idl', '../core/html/HTMLHeadElement.idl', '../core/html/HTMLHeadingElement.idl', '../core/html/HTMLHtmlElement.idl', '../core/html/HTMLIFrameElement.idl', '../core/html/HTMLImageElement.idl', '../core/html/HTMLInputElement.idl', '../core/html/HTMLKeygenElement.idl', '../core/html/HTMLLIElement.idl', '../core/html/HTMLLabelElement.idl', '../core/html/HTMLLegendElement.idl', '../core/html/HTMLLinkElement.idl', '../core/html/HTMLMapElement.idl', '../core/html/HTMLMarqueeElement.idl', '../core/html/HTMLMediaElement.idl', '../core/html/HTMLMenuElement.idl', '../core/html/HTMLMetaElement.idl', '../core/html/HTMLMeterElement.idl', '../core/html/HTMLModElement.idl', '../core/html/HTMLOListElement.idl', '../core/html/HTMLObjectElement.idl', '../core/html/HTMLOptGroupElement.idl', '../core/html/HTMLOptionElement.idl', '../core/html/HTMLOptionsCollection.idl', '../core/html/HTMLOutputElement.idl', '../core/html/HTMLParagraphElement.idl', '../core/html/HTMLParamElement.idl', '../core/html/HTMLPreElement.idl', '../core/html/HTMLProgressElement.idl', '../core/html/HTMLQuoteElement.idl', '../core/html/HTMLScriptElement.idl', '../core/html/HTMLSelectElement.idl', '../core/html/HTMLSourceElement.idl', '../core/html/HTMLSpanElement.idl', '../core/html/HTMLStyleElement.idl', '../core/html/HTMLTableCaptionElement.idl', '../core/html/HTMLTableCellElement.idl', '../core/html/HTMLTableColElement.idl', '../core/html/HTMLTableElement.idl', '../core/html/HTMLTableRowElement.idl', '../core/html/HTMLTableSectionElement.idl', '../core/html/HTMLTextAreaElement.idl', '../core/html/HTMLTemplateElement.idl', '../core/html/HTMLTitleElement.idl', '../core/html/HTMLTrackElement.idl', '../core/html/HTMLUListElement.idl', '../core/html/HTMLUnknownElement.idl', '../core/html/HTMLVideoElement.idl', '../core/html/ImageData.idl', '../core/html/MediaController.idl', '../core/html/MediaError.idl', '../core/html/MediaKeyError.idl', '../core/html/MediaKeyEvent.idl', '../core/html/RadioNodeList.idl', '../core/html/TextMetrics.idl', '../core/html/TimeRanges.idl', '../core/html/URL.idl', '../core/html/ValidityState.idl', '../core/html/VoidCallback.idl', '../core/html/canvas/ANGLEInstancedArrays.idl', '../core/html/canvas/ArrayBufferView.idl', '../core/html/canvas/CanvasGradient.idl', '../core/html/canvas/CanvasPattern.idl', '../core/html/canvas/CanvasRenderingContext.idl', '../core/html/canvas/CanvasRenderingContext2D.idl', '../core/html/canvas/Canvas2DContextAttributes.idl', '../core/html/canvas/DataView.idl', '../core/html/canvas/EXTFragDepth.idl', '../core/html/canvas/EXTTextureFilterAnisotropic.idl', '../core/html/canvas/Float32Array.idl', '../core/html/canvas/Float64Array.idl', '../core/html/canvas/Int16Array.idl', '../core/html/canvas/Int32Array.idl', '../core/html/canvas/Int8Array.idl', '../core/html/canvas/OESStandardDerivatives.idl', '../core/html/canvas/OESTextureFloat.idl', '../core/html/canvas/OESTextureFloatLinear.idl', '../core/html/canvas/OESTextureHalfFloat.idl', '../core/html/canvas/OESTextureHalfFloatLinear.idl', '../core/html/canvas/OESVertexArrayObject.idl', '../core/html/canvas/OESElementIndexUint.idl', '../core/html/canvas/Path.idl', '../core/html/canvas/Uint16Array.idl', '../core/html/canvas/Uint32Array.idl', '../core/html/canvas/Uint8Array.idl', '../core/html/canvas/Uint8ClampedArray.idl', '../core/html/canvas/WebGLActiveInfo.idl', '../core/html/canvas/WebGLBuffer.idl', '../core/html/canvas/WebGLCompressedTextureATC.idl', '../core/html/canvas/WebGLCompressedTexturePVRTC.idl', '../core/html/canvas/WebGLCompressedTextureS3TC.idl', '../core/html/canvas/WebGLContextAttributes.idl', '../core/html/canvas/WebGLContextEvent.idl', '../core/html/canvas/WebGLDebugRendererInfo.idl', '../core/html/canvas/WebGLDebugShaders.idl', '../core/html/canvas/WebGLDepthTexture.idl', '../core/html/canvas/WebGLDrawBuffers.idl', '../core/html/canvas/WebGLFramebuffer.idl', '../core/html/canvas/WebGLLoseContext.idl', '../core/html/canvas/WebGLProgram.idl', '../core/html/canvas/WebGLRenderbuffer.idl', '../core/html/canvas/WebGLRenderingContext.idl', '../core/html/canvas/WebGLShader.idl', '../core/html/canvas/WebGLShaderPrecisionFormat.idl', '../core/html/canvas/WebGLTexture.idl', '../core/html/canvas/WebGLUniformLocation.idl', '../core/html/canvas/WebGLVertexArrayObjectOES.idl', '../core/html/ime/Composition.idl', '../core/html/ime/InputMethodContext.idl', '../core/html/shadow/HTMLContentElement.idl', '../core/html/shadow/HTMLShadowElement.idl', '../core/html/track/TextTrack.idl', '../core/html/track/TextTrackCue.idl', '../core/html/track/TextTrackCueList.idl', '../core/html/track/TextTrackList.idl', '../core/html/track/TrackEvent.idl', '../core/html/track/TextTrackRegion.idl', '../core/html/track/TextTrackRegionList.idl', '../core/inspector/InjectedScriptHost.idl', '../core/inspector/InspectorFrontendHost.idl', '../core/inspector/InspectorOverlayHost.idl', '../core/inspector/JavaScriptCallFrame.idl', '../core/loader/appcache/DOMApplicationCache.idl', '../core/page/BarProp.idl', '../core/page/Console.idl', '../core/page/EventSource.idl', '../core/page/History.idl', '../core/page/ImageBitmap.idl', '../core/page/ImageBitmapCallback.idl', '../core/page/Location.idl', '../core/page/MemoryInfo.idl', '../core/page/Navigator.idl', '../core/page/PagePopupController.idl', '../core/page/Performance.idl', '../core/page/PerformanceEntry.idl', '../core/page/PerformanceMark.idl', '../core/page/PerformanceMeasure.idl', '../core/page/PerformanceNavigation.idl', '../core/page/PerformanceResourceTiming.idl', '../core/page/PerformanceTiming.idl', '../core/page/Screen.idl', '../core/page/SecurityPolicy.idl', '../core/page/Selection.idl', '../core/page/SpeechInputEvent.idl', '../core/page/SpeechInputResult.idl', '../core/page/SpeechInputResultList.idl', '../core/page/WebKitPoint.idl', '../core/page/Window.idl', '../core/page/WindowBase64.idl', '../core/page/WindowTimers.idl', '../core/page/WorkerNavigator.idl', '../core/plugins/MimeType.idl', '../core/plugins/MimeTypeArray.idl', '../core/plugins/Plugin.idl', '../core/plugins/PluginArray.idl', '../core/storage/Storage.idl', '../core/storage/StorageEvent.idl', '../core/workers/DedicatedWorkerGlobalScope.idl', '../core/workers/SharedWorker.idl', '../core/workers/SharedWorkerGlobalScope.idl', '../core/workers/Worker.idl', '../core/workers/WorkerGlobalScope.idl', '../core/workers/WorkerLocation.idl', '../core/xml/DOMParser.idl', '../core/xml/DocumentXPathEvaluator.idl', '../core/xml/XMLHttpRequest.idl', '../core/xml/XMLHttpRequestProgressEvent.idl', '../core/xml/XMLHttpRequestUpload.idl', '../core/xml/XMLSerializer.idl', '../core/xml/XPathEvaluator.idl', '../core/xml/XPathExpression.idl', '../core/xml/XPathNSResolver.idl', '../core/xml/XPathResult.idl', '../core/xml/XSLTProcessor.idl', '../modules/crypto/AesCbcParams.idl', '../modules/crypto/AesKeyGenParams.idl', '../modules/crypto/Algorithm.idl', '../modules/crypto/Crypto.idl', '../modules/crypto/CryptoOperation.idl', '../modules/crypto/HmacParams.idl', '../modules/crypto/Key.idl', '../modules/crypto/SubtleCrypto.idl', '../modules/crypto/WorkerCrypto.idl', '../modules/device_orientation/DeviceAcceleration.idl', '../modules/device_orientation/DeviceMotionEvent.idl', '../modules/device_orientation/DeviceOrientationEvent.idl', '../modules/device_orientation/DeviceRotationRate.idl', '../modules/encryptedmedia/MediaKeyMessageEvent.idl', '../modules/encryptedmedia/MediaKeyNeededEvent.idl', '../modules/encryptedmedia/MediaKeys.idl', '../modules/encryptedmedia/MediaKeySession.idl', '../modules/filesystem/DOMFileSystem.idl', '../modules/filesystem/DOMFileSystemSync.idl', '../modules/filesystem/DirectoryEntry.idl', '../modules/filesystem/DirectoryEntrySync.idl', '../modules/filesystem/DirectoryReader.idl', '../modules/filesystem/DirectoryReaderSync.idl', '../modules/filesystem/EntriesCallback.idl', '../modules/filesystem/Entry.idl', '../modules/filesystem/EntryArray.idl', '../modules/filesystem/EntryArraySync.idl', '../modules/filesystem/EntryCallback.idl', '../modules/filesystem/EntrySync.idl', '../modules/filesystem/ErrorCallback.idl', '../modules/filesystem/FileCallback.idl', '../modules/filesystem/FileEntry.idl', '../modules/filesystem/FileEntrySync.idl', '../modules/filesystem/FileSystemCallback.idl', '../modules/filesystem/FileWriter.idl', '../modules/filesystem/FileWriterCallback.idl', '../modules/filesystem/FileWriterSync.idl', '../modules/filesystem/Metadata.idl', '../modules/filesystem/MetadataCallback.idl', '../modules/gamepad/Gamepad.idl', '../modules/gamepad/GamepadList.idl', '../modules/geolocation/Coordinates.idl', '../modules/geolocation/Geolocation.idl', '../modules/geolocation/Geoposition.idl', '../modules/geolocation/PositionCallback.idl', '../modules/geolocation/PositionError.idl', '../modules/geolocation/PositionErrorCallback.idl', '../modules/indexeddb/IDBAny.idl', '../modules/indexeddb/IDBCursor.idl', '../modules/indexeddb/IDBCursorWithValue.idl', '../modules/indexeddb/IDBDatabase.idl', '../modules/indexeddb/IDBFactory.idl', '../modules/indexeddb/IDBIndex.idl', '../modules/indexeddb/IDBKeyRange.idl', '../modules/indexeddb/IDBObjectStore.idl', '../modules/indexeddb/IDBOpenDBRequest.idl', '../modules/indexeddb/IDBRequest.idl', '../modules/indexeddb/IDBTransaction.idl', '../modules/indexeddb/IDBVersionChangeEvent.idl', '../modules/mediasource/MediaSource.idl', '../modules/mediasource/SourceBuffer.idl', '../modules/mediasource/SourceBufferList.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/mediasource/WebKitMediaSource.idl', '../modules/mediasource/WebKitSourceBuffer.idl', '../modules/mediasource/WebKitSourceBufferList.idl', '../modules/mediastream/MediaStream.idl', '../modules/mediastream/MediaStreamEvent.idl', '../modules/mediastream/MediaStreamTrack.idl', '../modules/mediastream/MediaStreamTrackEvent.idl', '../modules/mediastream/MediaStreamTrackSourcesCallback.idl', '../modules/mediastream/NavigatorUserMediaError.idl', '../modules/mediastream/NavigatorUserMediaErrorCallback.idl', '../modules/mediastream/NavigatorUserMediaSuccessCallback.idl', '../modules/mediastream/RTCDTMFSender.idl', '../modules/mediastream/RTCDTMFToneChangeEvent.idl', '../modules/mediastream/RTCDataChannel.idl', '../modules/mediastream/RTCDataChannelEvent.idl', '../modules/mediastream/RTCErrorCallback.idl', '../modules/mediastream/RTCIceCandidate.idl', '../modules/mediastream/RTCIceCandidateEvent.idl', '../modules/mediastream/RTCPeerConnection.idl', '../modules/mediastream/RTCSessionDescription.idl', '../modules/mediastream/RTCSessionDescriptionCallback.idl', '../modules/mediastream/RTCStatsCallback.idl', '../modules/mediastream/RTCStatsReport.idl', '../modules/mediastream/RTCStatsResponse.idl', '../modules/mediastream/SourceInfo.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/notifications/Notification.idl', '../modules/notifications/NotificationCenter.idl', '../modules/notifications/NotificationPermissionCallback.idl', '../modules/performance/WorkerPerformance.idl', '../modules/quota/StorageErrorCallback.idl', '../modules/quota/StorageInfo.idl', '../modules/quota/StorageQuota.idl', '../modules/quota/StorageQuotaCallback.idl', '../modules/quota/StorageUsageCallback.idl', '../modules/speech/SpeechGrammar.idl', '../modules/speech/SpeechGrammarList.idl', '../modules/speech/SpeechRecognition.idl', '../modules/speech/SpeechRecognitionAlternative.idl', '../modules/speech/SpeechRecognitionError.idl', '../modules/speech/SpeechRecognitionEvent.idl', '../modules/speech/SpeechRecognitionResult.idl', '../modules/speech/SpeechRecognitionResultList.idl', '../modules/speech/SpeechSynthesis.idl', '../modules/speech/SpeechSynthesisEvent.idl', '../modules/speech/SpeechSynthesisUtterance.idl', '../modules/speech/SpeechSynthesisVoice.idl', '../modules/webaudio/AudioBuffer.idl', '../modules/webaudio/AudioBufferCallback.idl', '../modules/webaudio/AudioBufferSourceNode.idl', '../modules/webaudio/ChannelMergerNode.idl', '../modules/webaudio/ChannelSplitterNode.idl', '../modules/webaudio/AudioContext.idl', '../modules/webaudio/AudioDestinationNode.idl', '../modules/webaudio/GainNode.idl', '../modules/webaudio/AudioListener.idl', '../modules/webaudio/AudioNode.idl', '../modules/webaudio/PannerNode.idl', '../modules/webaudio/AudioParam.idl', '../modules/webaudio/AudioProcessingEvent.idl', '../modules/webaudio/AudioSourceNode.idl', '../modules/webaudio/BiquadFilterNode.idl', '../modules/webaudio/ConvolverNode.idl', '../modules/webaudio/DelayNode.idl', '../modules/webaudio/DynamicsCompressorNode.idl', '../modules/webaudio/ScriptProcessorNode.idl', '../modules/webaudio/MediaElementAudioSourceNode.idl', '../modules/webaudio/MediaStreamAudioDestinationNode.idl', '../modules/webaudio/MediaStreamAudioSourceNode.idl', '../modules/webaudio/OfflineAudioCompletionEvent.idl', '../modules/webaudio/OfflineAudioContext.idl', '../modules/webaudio/OscillatorNode.idl', '../modules/webaudio/PeriodicWave.idl', '../modules/webaudio/AnalyserNode.idl', '../modules/webaudio/WaveShaperNode.idl', '../modules/webdatabase/Database.idl', '../modules/webdatabase/DatabaseCallback.idl', '../modules/webdatabase/DatabaseSync.idl', '../modules/webdatabase/SQLError.idl', '../modules/webdatabase/SQLResultSet.idl', '../modules/webdatabase/SQLResultSetRowList.idl', '../modules/webdatabase/SQLStatementCallback.idl', '../modules/webdatabase/SQLStatementErrorCallback.idl', '../modules/webdatabase/SQLTransaction.idl', '../modules/webdatabase/SQLTransactionCallback.idl', '../modules/webdatabase/SQLTransactionErrorCallback.idl', '../modules/webdatabase/SQLTransactionSync.idl', '../modules/webdatabase/SQLTransactionSyncCallback.idl', '../modules/webmidi/MIDIAccess.idl', '../modules/webmidi/MIDIAccessPromise.idl', '../modules/webmidi/MIDIConnectionEvent.idl', '../modules/webmidi/MIDIErrorCallback.idl', '../modules/webmidi/MIDIInput.idl', '../modules/webmidi/MIDIMessageEvent.idl', '../modules/webmidi/MIDIOutput.idl', '../modules/webmidi/MIDIPort.idl', '../modules/webmidi/MIDISuccessCallback.idl', '../modules/websockets/CloseEvent.idl', '../modules/websockets/WebSocket.idl', '../core/svg/SVGAElement.idl', '../core/svg/SVGAltGlyphElement.idl', '../core/svg/SVGAltGlyphItemElement.idl', '../core/svg/SVGAltGlyphDefElement.idl', '../core/svg/SVGAngle.idl', '../core/svg/SVGAnimateColorElement.idl', '../core/svg/SVGAnimateMotionElement.idl', '../core/svg/SVGAnimateElement.idl', '../core/svg/SVGAnimateTransformElement.idl', '../core/svg/SVGAnimatedAngle.idl', '../core/svg/SVGAnimatedBoolean.idl', '../core/svg/SVGAnimatedEnumeration.idl', '../core/svg/SVGAnimatedInteger.idl', '../core/svg/SVGAnimatedLength.idl', '../core/svg/SVGAnimatedLengthList.idl', '../core/svg/SVGAnimatedNumber.idl', '../core/svg/SVGAnimatedNumberList.idl', '../core/svg/SVGAnimatedPreserveAspectRatio.idl', '../core/svg/SVGAnimatedRect.idl', '../core/svg/SVGAnimatedString.idl', '../core/svg/SVGAnimatedTransformList.idl', '../core/svg/SVGAnimationElement.idl', '../core/svg/SVGCircleElement.idl', '../core/svg/SVGClipPathElement.idl', '../core/svg/SVGColor.idl', '../core/svg/SVGComponentTransferFunctionElement.idl', '../core/svg/SVGCursorElement.idl', '../core/svg/SVGDefsElement.idl', '../core/svg/SVGDescElement.idl', '../core/svg/SVGDocument.idl', '../core/svg/SVGElement.idl', '../core/svg/SVGElementInstance.idl', '../core/svg/SVGElementInstanceList.idl', '../core/svg/SVGEllipseElement.idl', '../core/svg/SVGFEBlendElement.idl', '../core/svg/SVGFEColorMatrixElement.idl', '../core/svg/SVGFEComponentTransferElement.idl', '../core/svg/SVGFECompositeElement.idl', '../core/svg/SVGFEConvolveMatrixElement.idl', '../core/svg/SVGFEDiffuseLightingElement.idl', '../core/svg/SVGFEDisplacementMapElement.idl', '../core/svg/SVGFEDistantLightElement.idl', '../core/svg/SVGFEDropShadowElement.idl', '../core/svg/SVGFEFloodElement.idl', '../core/svg/SVGFEFuncAElement.idl', '../core/svg/SVGFEFuncBElement.idl', '../core/svg/SVGFEFuncGElement.idl', '../core/svg/SVGFEFuncRElement.idl', '../core/svg/SVGFEGaussianBlurElement.idl', '../core/svg/SVGFEImageElement.idl', '../core/svg/SVGFEMergeElement.idl', '../core/svg/SVGFEMergeNodeElement.idl', '../core/svg/SVGFEMorphologyElement.idl', '../core/svg/SVGFEOffsetElement.idl', '../core/svg/SVGFEPointLightElement.idl', '../core/svg/SVGFESpecularLightingElement.idl', '../core/svg/SVGFESpotLightElement.idl', '../core/svg/SVGFETileElement.idl', '../core/svg/SVGFETurbulenceElement.idl', '../core/svg/SVGFilterElement.idl', '../core/svg/SVGFontElement.idl', '../core/svg/SVGFontFaceElement.idl', '../core/svg/SVGFontFaceFormatElement.idl', '../core/svg/SVGFontFaceNameElement.idl', '../core/svg/SVGFontFaceSrcElement.idl', '../core/svg/SVGFontFaceUriElement.idl', '../core/svg/SVGForeignObjectElement.idl', '../core/svg/SVGGElement.idl', '../core/svg/SVGGlyphElement.idl', '../core/svg/SVGGlyphRefElement.idl', '../core/svg/SVGGradientElement.idl', '../core/svg/SVGGraphicsElement.idl', '../core/svg/SVGHKernElement.idl', '../core/svg/SVGImageElement.idl', '../core/svg/SVGLength.idl', '../core/svg/SVGLengthList.idl', '../core/svg/SVGLineElement.idl', '../core/svg/SVGLinearGradientElement.idl', '../core/svg/SVGMarkerElement.idl', '../core/svg/SVGMaskElement.idl', '../core/svg/SVGMatrix.idl', '../core/svg/SVGMetadataElement.idl', '../core/svg/SVGMissingGlyphElement.idl', '../core/svg/SVGMPathElement.idl', '../core/svg/SVGNumber.idl', '../core/svg/SVGNumberList.idl', '../core/svg/SVGPaint.idl', '../core/svg/SVGPathElement.idl', '../core/svg/SVGPathSeg.idl', '../core/svg/SVGPathSegArcAbs.idl', '../core/svg/SVGPathSegArcRel.idl', '../core/svg/SVGPathSegClosePath.idl', '../core/svg/SVGPathSegCurvetoCubicAbs.idl', '../core/svg/SVGPathSegCurvetoCubicRel.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl', '../core/svg/SVGPathSegLinetoAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalRel.idl', '../core/svg/SVGPathSegLinetoRel.idl', '../core/svg/SVGPathSegLinetoVerticalAbs.idl', '../core/svg/SVGPathSegLinetoVerticalRel.idl', '../core/svg/SVGPathSegList.idl', '../core/svg/SVGPathSegMovetoAbs.idl', '../core/svg/SVGPathSegMovetoRel.idl', '../core/svg/SVGPatternElement.idl', '../core/svg/SVGPoint.idl', '../core/svg/SVGPointList.idl', '../core/svg/SVGPolygonElement.idl', '../core/svg/SVGPolylineElement.idl', '../core/svg/SVGPreserveAspectRatio.idl', '../core/svg/SVGRadialGradientElement.idl', '../core/svg/SVGRect.idl', '../core/svg/SVGRectElement.idl', '../core/svg/SVGRenderingIntent.idl', '../core/svg/SVGSVGElement.idl', '../core/svg/SVGScriptElement.idl', '../core/svg/SVGSetElement.idl', '../core/svg/SVGStopElement.idl', '../core/svg/SVGStringList.idl', '../core/svg/SVGStyleElement.idl', '../core/svg/SVGStyledElement.idl', '../core/svg/SVGSwitchElement.idl', '../core/svg/SVGSymbolElement.idl', '../core/svg/SVGTRefElement.idl', '../core/svg/SVGTSpanElement.idl', '../core/svg/SVGTextContentElement.idl', '../core/svg/SVGTextElement.idl', '../core/svg/SVGTextPathElement.idl', '../core/svg/SVGTextPositioningElement.idl', '../core/svg/SVGTitleElement.idl', '../core/svg/SVGTransform.idl', '../core/svg/SVGTransformList.idl', '../core/svg/SVGUnitTypes.idl', '../core/svg/SVGUseElement.idl', '../core/svg/SVGViewElement.idl', '../core/svg/SVGViewSpec.idl', '../core/svg/SVGVKernElement.idl', '../core/svg/SVGZoomEvent.idl', '../core/testing/Internals.idl', '../core/testing/InternalProfilers.idl', '../core/testing/InternalSettings.idl', '../core/testing/LayerRect.idl', '../core/testing/LayerRectList.idl', '../core/testing/MallocStatistics.idl', '../core/testing/TypeConversions.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl'], 'action': ['perl', '-w', '-Iscripts', '-I../core/scripts', '-I../../../../third_party/JSON/out/lib/perl5', 'scripts/deprecated_generate_bindings.pl', '--outputDir', '$(gyp_shared_intermediate_dir)/webkit/bindings', '--idlAttributesFile', 'scripts/IDLAttributes.txt', '--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit', '--interfaceDependenciesFile', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '--additionalIdlFiles', '../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl "$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl" "$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl"', '--preprocessor', '/usr/bin/gcc -E -P -x c++', '--write-file-only-if-changed', '0', '$(RULE_SOURCES)'], 'message': 'Generating binding from $(RULE_SOURCES)'}":
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_local_path := $(LOCAL_PATH)
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
@@ -3516,6 +3516,17 @@
 .PHONY: third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger
 third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger: $(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.cpp
 
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_local_path := $(LOCAL_PATH)
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/HmacParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_generate_bindings.pl $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_code_generator_v8.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_idl_parser.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_idl_serializer.pm $(LOCAL_PATH)/third_party/WebKit/Source/core/scripts/preprocessor.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/IDLAttributes.txt $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(gyp_shared_intermediate_dir)/WindowConstructors.idl $(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl $(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl $(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl $(GYP_TARGET_DEPENDENCIES)
+	mkdir -p $(gyp_shared_intermediate_dir)/webkit/bindings; cd $(gyp_local_path)/third_party/WebKit/Source/bindings; perl -w -Iscripts -I../core/scripts -I../../../../third_party/JSON/out/lib/perl5 scripts/deprecated_generate_bindings.pl --outputDir "$(gyp_shared_intermediate_dir)/webkit/bindings" --idlAttributesFile scripts/IDLAttributes.txt --include ../core --include ../modules --include "$(gyp_shared_intermediate_dir)/webkit" --interfaceDependenciesFile "$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt" --additionalIdlFiles "../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl \"$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl\" \"$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl\"" --preprocessor "/usr/bin/gcc -E -P -x c++" --write-file-only-if-changed 0 ../modules/crypto/HmacParams.idl
+
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.h: $(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp ;
+.PHONY: third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger
+third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger: $(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp
+
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_local_path := $(LOCAL_PATH)
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
@@ -7543,6 +7554,8 @@
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Crypto.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.cpp \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.h \
+	$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp \
+	$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8SubtleCrypto.cpp \
diff --git a/Source/bindings/deprecated_perl_bindings_sources.target.linux-mips.mk b/Source/bindings/deprecated_perl_bindings_sources.target.linux-mips.mk
index adc4ac2..dd64c8f 100644
--- a/Source/bindings/deprecated_perl_bindings_sources.target.linux-mips.mk
+++ b/Source/bindings/deprecated_perl_bindings_sources.target.linux-mips.mk
@@ -17,7 +17,7 @@
 
 
 ### Generated for rule "third_party_WebKit_Source_bindings_derived_sources_gyp_deprecated_perl_bindings_sources_target_deprecated_perl_binding":
-# "{'inputs': ['scripts/deprecated_generate_bindings.pl', 'scripts/deprecated_code_generator_v8.pm', 'scripts/deprecated_idl_parser.pm', 'scripts/deprecated_idl_serializer.pm', '../core/scripts/preprocessor.pm', 'scripts/IDLAttributes.txt', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '../modules/filesystem/HTMLInputElementFileSystem.idl', '../core/dom/DocumentFullscreen.idl', '../modules/geolocation/NavigatorGeolocation.idl', '../modules/mediasource/WindowMediaSource.idl', '../modules/filesystem/WindowFileSystem.idl', '../modules/indexeddb/WindowIndexedDatabase.idl', '../modules/navigatorcontentutils/NavigatorContentUtils.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/quota/WindowQuota.idl', '../modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl', '../modules/webmidi/NavigatorWebMIDI.idl', '../modules/notifications/WorkerGlobalScopeNotifications.idl', '../modules/webdatabase/WindowWebDatabase.idl', '../core/page/WindowPagePopup.idl', '../modules/webdatabase/WorkerGlobalScopeWebDatabase.idl', '../modules/mediastream/NavigatorMediaStream.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/crypto/WorkerGlobalScopeCrypto.idl', '../modules/filesystem/DataTransferItemFileSystem.idl', '../modules/gamepad/NavigatorGamepad.idl', '../core/xml/DocumentXPathEvaluator.idl', '../modules/filesystem/WorkerGlobalScopeFileSystem.idl', '../modules/donottrack/NavigatorDoNotTrack.idl', '../modules/notifications/WindowNotifications.idl', '$(gyp_shared_intermediate_dir)/WindowConstructors.idl', '$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl'], 'msvs_cygwin_shell': '0', 'extension': 'idl', 'msvs_external_rule': '1', 'outputs': ['$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.cpp', '$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.h'], 'variables': {'extra_blink_generator_include_dirs%': [], 'generator_include_dirs': ['--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit']}, 'rule_name': 'deprecated_perl_binding', 'rule_sources': ['../core/css/CSS.idl', '../core/css/CSSCharsetRule.idl', '../core/css/CSSFontFaceLoadEvent.idl', '../core/css/CSSFontFaceRule.idl', '../core/css/CSSHostRule.idl', '../core/css/CSSImportRule.idl', '../core/css/CSSMediaRule.idl', '../core/css/CSSPageRule.idl', '../core/css/CSSPrimitiveValue.idl', '../core/css/CSSRule.idl', '../core/css/CSSRuleList.idl', '../core/css/CSSStyleDeclaration.idl', '../core/css/CSSStyleRule.idl', '../core/css/CSSStyleSheet.idl', '../core/css/CSSSupportsRule.idl', '../core/css/CSSValue.idl', '../core/css/CSSValueList.idl', '../core/css/CSSViewportRule.idl', '../core/css/CSSVariablesMap.idl', '../core/css/Counter.idl', '../core/css/FontLoader.idl', '../core/css/MediaList.idl', '../core/css/MediaQueryList.idl', '../core/css/Rect.idl', '../core/css/RGBColor.idl', '../core/css/StyleMedia.idl', '../core/css/StyleSheet.idl', '../core/css/StyleSheetList.idl', '../core/css/WebKitCSSFilterRule.idl', '../core/css/WebKitCSSFilterValue.idl', '../core/css/WebKitCSSKeyframeRule.idl', '../core/css/WebKitCSSKeyframesRule.idl', '../core/css/WebKitCSSMatrix.idl', '../core/css/WebKitCSSMixFunctionValue.idl', '../core/css/WebKitCSSRegionRule.idl', '../core/css/WebKitCSSTransformValue.idl', '../core/dom/Attr.idl', '../core/dom/AutocompleteErrorEvent.idl', '../core/dom/BeforeLoadEvent.idl', '../core/dom/CDATASection.idl', '../core/dom/CharacterData.idl', '../core/dom/ClientRect.idl', '../core/dom/ClientRectList.idl', '../core/dom/Clipboard.idl', '../core/dom/Comment.idl', '../core/dom/CompositionEvent.idl', '../core/dom/CustomEvent.idl', '../core/dom/DOMError.idl', '../core/dom/DOMException.idl', '../core/dom/DOMImplementation.idl', '../core/dom/DOMStringList.idl', '../core/dom/DOMStringMap.idl', '../core/dom/DataTransferItem.idl', '../core/dom/DataTransferItemList.idl', '../core/dom/Document.idl', '../core/dom/DocumentFragment.idl', '../core/dom/DocumentType.idl', '../core/dom/Element.idl', '../core/dom/Entity.idl', '../core/dom/ErrorEvent.idl', '../core/dom/Event.idl', '../core/dom/EventTarget.idl', '../core/dom/FocusEvent.idl', '../core/dom/HashChangeEvent.idl', '../core/dom/KeyboardEvent.idl', '../core/dom/MessageChannel.idl', '../core/dom/MessageEvent.idl', '../core/dom/MessagePort.idl', '../core/dom/MouseEvent.idl', '../core/dom/MutationEvent.idl', '../core/dom/MutationObserver.idl', '../core/dom/MutationRecord.idl', '../core/dom/NamedNodeMap.idl', '../core/dom/Node.idl', '../core/dom/NodeFilter.idl', '../core/dom/NodeIterator.idl', '../core/dom/NodeList.idl', '../core/dom/Notation.idl', '../core/dom/OverflowEvent.idl', '../core/dom/PageTransitionEvent.idl', '../core/dom/PopStateEvent.idl', '../core/dom/ProcessingInstruction.idl', '../core/dom/ProgressEvent.idl', '../core/dom/Promise.idl', '../core/dom/PromiseResolver.idl', '../core/dom/Range.idl', '../core/dom/RequestAnimationFrameCallback.idl', '../core/dom/ResourceProgressEvent.idl', '../core/dom/SecurityPolicyViolationEvent.idl', '../core/dom/StringCallback.idl', '../core/dom/Text.idl', '../core/dom/TextEvent.idl', '../core/dom/Touch.idl', '../core/dom/TouchEvent.idl', '../core/dom/TouchList.idl', '../core/dom/TransitionEvent.idl', '../core/dom/TreeWalker.idl', '../core/dom/UIEvent.idl', '../core/dom/WebKitAnimationEvent.idl', '../core/dom/WebKitNamedFlow.idl', '../core/dom/WebKitNamedFlowCollection.idl', '../core/dom/WheelEvent.idl', '../core/dom/shadow/ShadowRoot.idl', '../core/fileapi/Blob.idl', '../core/fileapi/File.idl', '../core/fileapi/FileError.idl', '../core/fileapi/FileList.idl', '../core/fileapi/FileReader.idl', '../core/fileapi/FileReaderSync.idl', '../core/fileapi/Stream.idl', '../core/html/DOMSettableTokenList.idl', '../core/html/DOMTokenList.idl', '../core/html/FormData.idl', '../core/html/HTMLAllCollection.idl', '../core/html/HTMLAnchorElement.idl', '../core/html/HTMLAppletElement.idl', '../core/html/HTMLAreaElement.idl', '../core/html/HTMLAudioElement.idl', '../core/html/HTMLBRElement.idl', '../core/html/HTMLBaseElement.idl', '../core/html/HTMLBodyElement.idl', '../core/html/HTMLButtonElement.idl', '../core/html/HTMLCanvasElement.idl', '../core/html/HTMLCollection.idl', '../core/html/HTMLDListElement.idl', '../core/html/HTMLDataListElement.idl', '../core/html/HTMLDetailsElement.idl', '../core/html/HTMLDialogElement.idl', '../core/html/HTMLDirectoryElement.idl', '../core/html/HTMLDivElement.idl', '../core/html/HTMLDocument.idl', '../core/html/HTMLElement.idl', '../core/html/HTMLEmbedElement.idl', '../core/html/HTMLFieldSetElement.idl', '../core/html/HTMLFontElement.idl', '../core/html/HTMLFormControlsCollection.idl', '../core/html/HTMLFormElement.idl', '../core/html/HTMLFrameElement.idl', '../core/html/HTMLFrameSetElement.idl', '../core/html/HTMLHRElement.idl', '../core/html/HTMLHeadElement.idl', '../core/html/HTMLHeadingElement.idl', '../core/html/HTMLHtmlElement.idl', '../core/html/HTMLIFrameElement.idl', '../core/html/HTMLImageElement.idl', '../core/html/HTMLInputElement.idl', '../core/html/HTMLKeygenElement.idl', '../core/html/HTMLLIElement.idl', '../core/html/HTMLLabelElement.idl', '../core/html/HTMLLegendElement.idl', '../core/html/HTMLLinkElement.idl', '../core/html/HTMLMapElement.idl', '../core/html/HTMLMarqueeElement.idl', '../core/html/HTMLMediaElement.idl', '../core/html/HTMLMenuElement.idl', '../core/html/HTMLMetaElement.idl', '../core/html/HTMLMeterElement.idl', '../core/html/HTMLModElement.idl', '../core/html/HTMLOListElement.idl', '../core/html/HTMLObjectElement.idl', '../core/html/HTMLOptGroupElement.idl', '../core/html/HTMLOptionElement.idl', '../core/html/HTMLOptionsCollection.idl', '../core/html/HTMLOutputElement.idl', '../core/html/HTMLParagraphElement.idl', '../core/html/HTMLParamElement.idl', '../core/html/HTMLPreElement.idl', '../core/html/HTMLProgressElement.idl', '../core/html/HTMLQuoteElement.idl', '../core/html/HTMLScriptElement.idl', '../core/html/HTMLSelectElement.idl', '../core/html/HTMLSourceElement.idl', '../core/html/HTMLSpanElement.idl', '../core/html/HTMLStyleElement.idl', '../core/html/HTMLTableCaptionElement.idl', '../core/html/HTMLTableCellElement.idl', '../core/html/HTMLTableColElement.idl', '../core/html/HTMLTableElement.idl', '../core/html/HTMLTableRowElement.idl', '../core/html/HTMLTableSectionElement.idl', '../core/html/HTMLTextAreaElement.idl', '../core/html/HTMLTemplateElement.idl', '../core/html/HTMLTitleElement.idl', '../core/html/HTMLTrackElement.idl', '../core/html/HTMLUListElement.idl', '../core/html/HTMLUnknownElement.idl', '../core/html/HTMLVideoElement.idl', '../core/html/ImageData.idl', '../core/html/MediaController.idl', '../core/html/MediaError.idl', '../core/html/MediaKeyError.idl', '../core/html/MediaKeyEvent.idl', '../core/html/RadioNodeList.idl', '../core/html/TextMetrics.idl', '../core/html/TimeRanges.idl', '../core/html/URL.idl', '../core/html/ValidityState.idl', '../core/html/VoidCallback.idl', '../core/html/canvas/ANGLEInstancedArrays.idl', '../core/html/canvas/ArrayBufferView.idl', '../core/html/canvas/CanvasGradient.idl', '../core/html/canvas/CanvasPattern.idl', '../core/html/canvas/CanvasRenderingContext.idl', '../core/html/canvas/CanvasRenderingContext2D.idl', '../core/html/canvas/Canvas2DContextAttributes.idl', '../core/html/canvas/DataView.idl', '../core/html/canvas/EXTFragDepth.idl', '../core/html/canvas/EXTTextureFilterAnisotropic.idl', '../core/html/canvas/Float32Array.idl', '../core/html/canvas/Float64Array.idl', '../core/html/canvas/Int16Array.idl', '../core/html/canvas/Int32Array.idl', '../core/html/canvas/Int8Array.idl', '../core/html/canvas/OESStandardDerivatives.idl', '../core/html/canvas/OESTextureFloat.idl', '../core/html/canvas/OESTextureFloatLinear.idl', '../core/html/canvas/OESTextureHalfFloat.idl', '../core/html/canvas/OESTextureHalfFloatLinear.idl', '../core/html/canvas/OESVertexArrayObject.idl', '../core/html/canvas/OESElementIndexUint.idl', '../core/html/canvas/Path.idl', '../core/html/canvas/Uint16Array.idl', '../core/html/canvas/Uint32Array.idl', '../core/html/canvas/Uint8Array.idl', '../core/html/canvas/Uint8ClampedArray.idl', '../core/html/canvas/WebGLActiveInfo.idl', '../core/html/canvas/WebGLBuffer.idl', '../core/html/canvas/WebGLCompressedTextureATC.idl', '../core/html/canvas/WebGLCompressedTexturePVRTC.idl', '../core/html/canvas/WebGLCompressedTextureS3TC.idl', '../core/html/canvas/WebGLContextAttributes.idl', '../core/html/canvas/WebGLContextEvent.idl', '../core/html/canvas/WebGLDebugRendererInfo.idl', '../core/html/canvas/WebGLDebugShaders.idl', '../core/html/canvas/WebGLDepthTexture.idl', '../core/html/canvas/WebGLDrawBuffers.idl', '../core/html/canvas/WebGLFramebuffer.idl', '../core/html/canvas/WebGLLoseContext.idl', '../core/html/canvas/WebGLProgram.idl', '../core/html/canvas/WebGLRenderbuffer.idl', '../core/html/canvas/WebGLRenderingContext.idl', '../core/html/canvas/WebGLShader.idl', '../core/html/canvas/WebGLShaderPrecisionFormat.idl', '../core/html/canvas/WebGLTexture.idl', '../core/html/canvas/WebGLUniformLocation.idl', '../core/html/canvas/WebGLVertexArrayObjectOES.idl', '../core/html/ime/Composition.idl', '../core/html/ime/InputMethodContext.idl', '../core/html/shadow/HTMLContentElement.idl', '../core/html/shadow/HTMLShadowElement.idl', '../core/html/track/TextTrack.idl', '../core/html/track/TextTrackCue.idl', '../core/html/track/TextTrackCueList.idl', '../core/html/track/TextTrackList.idl', '../core/html/track/TrackEvent.idl', '../core/html/track/TextTrackRegion.idl', '../core/html/track/TextTrackRegionList.idl', '../core/inspector/InjectedScriptHost.idl', '../core/inspector/InspectorFrontendHost.idl', '../core/inspector/InspectorOverlayHost.idl', '../core/inspector/JavaScriptCallFrame.idl', '../core/loader/appcache/DOMApplicationCache.idl', '../core/page/BarProp.idl', '../core/page/Console.idl', '../core/page/EventSource.idl', '../core/page/History.idl', '../core/page/ImageBitmap.idl', '../core/page/ImageBitmapCallback.idl', '../core/page/Location.idl', '../core/page/MemoryInfo.idl', '../core/page/Navigator.idl', '../core/page/PagePopupController.idl', '../core/page/Performance.idl', '../core/page/PerformanceEntry.idl', '../core/page/PerformanceMark.idl', '../core/page/PerformanceMeasure.idl', '../core/page/PerformanceNavigation.idl', '../core/page/PerformanceResourceTiming.idl', '../core/page/PerformanceTiming.idl', '../core/page/Screen.idl', '../core/page/SecurityPolicy.idl', '../core/page/Selection.idl', '../core/page/SpeechInputEvent.idl', '../core/page/SpeechInputResult.idl', '../core/page/SpeechInputResultList.idl', '../core/page/WebKitPoint.idl', '../core/page/Window.idl', '../core/page/WindowBase64.idl', '../core/page/WindowTimers.idl', '../core/page/WorkerNavigator.idl', '../core/plugins/MimeType.idl', '../core/plugins/MimeTypeArray.idl', '../core/plugins/Plugin.idl', '../core/plugins/PluginArray.idl', '../core/storage/Storage.idl', '../core/storage/StorageEvent.idl', '../core/workers/DedicatedWorkerGlobalScope.idl', '../core/workers/SharedWorker.idl', '../core/workers/SharedWorkerGlobalScope.idl', '../core/workers/Worker.idl', '../core/workers/WorkerGlobalScope.idl', '../core/workers/WorkerLocation.idl', '../core/xml/DOMParser.idl', '../core/xml/DocumentXPathEvaluator.idl', '../core/xml/XMLHttpRequest.idl', '../core/xml/XMLHttpRequestProgressEvent.idl', '../core/xml/XMLHttpRequestUpload.idl', '../core/xml/XMLSerializer.idl', '../core/xml/XPathEvaluator.idl', '../core/xml/XPathExpression.idl', '../core/xml/XPathNSResolver.idl', '../core/xml/XPathResult.idl', '../core/xml/XSLTProcessor.idl', '../modules/crypto/AesCbcParams.idl', '../modules/crypto/AesKeyGenParams.idl', '../modules/crypto/Algorithm.idl', '../modules/crypto/Crypto.idl', '../modules/crypto/CryptoOperation.idl', '../modules/crypto/Key.idl', '../modules/crypto/SubtleCrypto.idl', '../modules/crypto/WorkerCrypto.idl', '../modules/device_orientation/DeviceAcceleration.idl', '../modules/device_orientation/DeviceMotionEvent.idl', '../modules/device_orientation/DeviceOrientationEvent.idl', '../modules/device_orientation/DeviceRotationRate.idl', '../modules/encryptedmedia/MediaKeyMessageEvent.idl', '../modules/encryptedmedia/MediaKeyNeededEvent.idl', '../modules/encryptedmedia/MediaKeys.idl', '../modules/encryptedmedia/MediaKeySession.idl', '../modules/filesystem/DOMFileSystem.idl', '../modules/filesystem/DOMFileSystemSync.idl', '../modules/filesystem/DirectoryEntry.idl', '../modules/filesystem/DirectoryEntrySync.idl', '../modules/filesystem/DirectoryReader.idl', '../modules/filesystem/DirectoryReaderSync.idl', '../modules/filesystem/EntriesCallback.idl', '../modules/filesystem/Entry.idl', '../modules/filesystem/EntryArray.idl', '../modules/filesystem/EntryArraySync.idl', '../modules/filesystem/EntryCallback.idl', '../modules/filesystem/EntrySync.idl', '../modules/filesystem/ErrorCallback.idl', '../modules/filesystem/FileCallback.idl', '../modules/filesystem/FileEntry.idl', '../modules/filesystem/FileEntrySync.idl', '../modules/filesystem/FileSystemCallback.idl', '../modules/filesystem/FileWriter.idl', '../modules/filesystem/FileWriterCallback.idl', '../modules/filesystem/FileWriterSync.idl', '../modules/filesystem/Metadata.idl', '../modules/filesystem/MetadataCallback.idl', '../modules/gamepad/Gamepad.idl', '../modules/gamepad/GamepadList.idl', '../modules/geolocation/Coordinates.idl', '../modules/geolocation/Geolocation.idl', '../modules/geolocation/Geoposition.idl', '../modules/geolocation/PositionCallback.idl', '../modules/geolocation/PositionError.idl', '../modules/geolocation/PositionErrorCallback.idl', '../modules/indexeddb/IDBAny.idl', '../modules/indexeddb/IDBCursor.idl', '../modules/indexeddb/IDBCursorWithValue.idl', '../modules/indexeddb/IDBDatabase.idl', '../modules/indexeddb/IDBFactory.idl', '../modules/indexeddb/IDBIndex.idl', '../modules/indexeddb/IDBKeyRange.idl', '../modules/indexeddb/IDBObjectStore.idl', '../modules/indexeddb/IDBOpenDBRequest.idl', '../modules/indexeddb/IDBRequest.idl', '../modules/indexeddb/IDBTransaction.idl', '../modules/indexeddb/IDBVersionChangeEvent.idl', '../modules/mediasource/MediaSource.idl', '../modules/mediasource/SourceBuffer.idl', '../modules/mediasource/SourceBufferList.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/mediasource/WebKitMediaSource.idl', '../modules/mediasource/WebKitSourceBuffer.idl', '../modules/mediasource/WebKitSourceBufferList.idl', '../modules/mediastream/MediaStream.idl', '../modules/mediastream/MediaStreamEvent.idl', '../modules/mediastream/MediaStreamTrack.idl', '../modules/mediastream/MediaStreamTrackEvent.idl', '../modules/mediastream/MediaStreamTrackSourcesCallback.idl', '../modules/mediastream/NavigatorUserMediaError.idl', '../modules/mediastream/NavigatorUserMediaErrorCallback.idl', '../modules/mediastream/NavigatorUserMediaSuccessCallback.idl', '../modules/mediastream/RTCDTMFSender.idl', '../modules/mediastream/RTCDTMFToneChangeEvent.idl', '../modules/mediastream/RTCDataChannel.idl', '../modules/mediastream/RTCDataChannelEvent.idl', '../modules/mediastream/RTCErrorCallback.idl', '../modules/mediastream/RTCIceCandidate.idl', '../modules/mediastream/RTCIceCandidateEvent.idl', '../modules/mediastream/RTCPeerConnection.idl', '../modules/mediastream/RTCSessionDescription.idl', '../modules/mediastream/RTCSessionDescriptionCallback.idl', '../modules/mediastream/RTCStatsCallback.idl', '../modules/mediastream/RTCStatsReport.idl', '../modules/mediastream/RTCStatsResponse.idl', '../modules/mediastream/SourceInfo.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/notifications/Notification.idl', '../modules/notifications/NotificationCenter.idl', '../modules/notifications/NotificationPermissionCallback.idl', '../modules/performance/WorkerPerformance.idl', '../modules/quota/StorageErrorCallback.idl', '../modules/quota/StorageInfo.idl', '../modules/quota/StorageQuota.idl', '../modules/quota/StorageQuotaCallback.idl', '../modules/quota/StorageUsageCallback.idl', '../modules/speech/SpeechGrammar.idl', '../modules/speech/SpeechGrammarList.idl', '../modules/speech/SpeechRecognition.idl', '../modules/speech/SpeechRecognitionAlternative.idl', '../modules/speech/SpeechRecognitionError.idl', '../modules/speech/SpeechRecognitionEvent.idl', '../modules/speech/SpeechRecognitionResult.idl', '../modules/speech/SpeechRecognitionResultList.idl', '../modules/speech/SpeechSynthesis.idl', '../modules/speech/SpeechSynthesisEvent.idl', '../modules/speech/SpeechSynthesisUtterance.idl', '../modules/speech/SpeechSynthesisVoice.idl', '../modules/webaudio/AudioBuffer.idl', '../modules/webaudio/AudioBufferCallback.idl', '../modules/webaudio/AudioBufferSourceNode.idl', '../modules/webaudio/ChannelMergerNode.idl', '../modules/webaudio/ChannelSplitterNode.idl', '../modules/webaudio/AudioContext.idl', '../modules/webaudio/AudioDestinationNode.idl', '../modules/webaudio/GainNode.idl', '../modules/webaudio/AudioListener.idl', '../modules/webaudio/AudioNode.idl', '../modules/webaudio/PannerNode.idl', '../modules/webaudio/AudioParam.idl', '../modules/webaudio/AudioProcessingEvent.idl', '../modules/webaudio/AudioSourceNode.idl', '../modules/webaudio/BiquadFilterNode.idl', '../modules/webaudio/ConvolverNode.idl', '../modules/webaudio/DelayNode.idl', '../modules/webaudio/DynamicsCompressorNode.idl', '../modules/webaudio/ScriptProcessorNode.idl', '../modules/webaudio/MediaElementAudioSourceNode.idl', '../modules/webaudio/MediaStreamAudioDestinationNode.idl', '../modules/webaudio/MediaStreamAudioSourceNode.idl', '../modules/webaudio/OfflineAudioCompletionEvent.idl', '../modules/webaudio/OfflineAudioContext.idl', '../modules/webaudio/OscillatorNode.idl', '../modules/webaudio/PeriodicWave.idl', '../modules/webaudio/AnalyserNode.idl', '../modules/webaudio/WaveShaperNode.idl', '../modules/webdatabase/Database.idl', '../modules/webdatabase/DatabaseCallback.idl', '../modules/webdatabase/DatabaseSync.idl', '../modules/webdatabase/SQLError.idl', '../modules/webdatabase/SQLResultSet.idl', '../modules/webdatabase/SQLResultSetRowList.idl', '../modules/webdatabase/SQLStatementCallback.idl', '../modules/webdatabase/SQLStatementErrorCallback.idl', '../modules/webdatabase/SQLTransaction.idl', '../modules/webdatabase/SQLTransactionCallback.idl', '../modules/webdatabase/SQLTransactionErrorCallback.idl', '../modules/webdatabase/SQLTransactionSync.idl', '../modules/webdatabase/SQLTransactionSyncCallback.idl', '../modules/webmidi/MIDIAccess.idl', '../modules/webmidi/MIDIAccessPromise.idl', '../modules/webmidi/MIDIConnectionEvent.idl', '../modules/webmidi/MIDIErrorCallback.idl', '../modules/webmidi/MIDIInput.idl', '../modules/webmidi/MIDIMessageEvent.idl', '../modules/webmidi/MIDIOutput.idl', '../modules/webmidi/MIDIPort.idl', '../modules/webmidi/MIDISuccessCallback.idl', '../modules/websockets/CloseEvent.idl', '../modules/websockets/WebSocket.idl', '../core/svg/SVGAElement.idl', '../core/svg/SVGAltGlyphElement.idl', '../core/svg/SVGAltGlyphItemElement.idl', '../core/svg/SVGAltGlyphDefElement.idl', '../core/svg/SVGAngle.idl', '../core/svg/SVGAnimateColorElement.idl', '../core/svg/SVGAnimateMotionElement.idl', '../core/svg/SVGAnimateElement.idl', '../core/svg/SVGAnimateTransformElement.idl', '../core/svg/SVGAnimatedAngle.idl', '../core/svg/SVGAnimatedBoolean.idl', '../core/svg/SVGAnimatedEnumeration.idl', '../core/svg/SVGAnimatedInteger.idl', '../core/svg/SVGAnimatedLength.idl', '../core/svg/SVGAnimatedLengthList.idl', '../core/svg/SVGAnimatedNumber.idl', '../core/svg/SVGAnimatedNumberList.idl', '../core/svg/SVGAnimatedPreserveAspectRatio.idl', '../core/svg/SVGAnimatedRect.idl', '../core/svg/SVGAnimatedString.idl', '../core/svg/SVGAnimatedTransformList.idl', '../core/svg/SVGAnimationElement.idl', '../core/svg/SVGCircleElement.idl', '../core/svg/SVGClipPathElement.idl', '../core/svg/SVGColor.idl', '../core/svg/SVGComponentTransferFunctionElement.idl', '../core/svg/SVGCursorElement.idl', '../core/svg/SVGDefsElement.idl', '../core/svg/SVGDescElement.idl', '../core/svg/SVGDocument.idl', '../core/svg/SVGElement.idl', '../core/svg/SVGElementInstance.idl', '../core/svg/SVGElementInstanceList.idl', '../core/svg/SVGEllipseElement.idl', '../core/svg/SVGFEBlendElement.idl', '../core/svg/SVGFEColorMatrixElement.idl', '../core/svg/SVGFEComponentTransferElement.idl', '../core/svg/SVGFECompositeElement.idl', '../core/svg/SVGFEConvolveMatrixElement.idl', '../core/svg/SVGFEDiffuseLightingElement.idl', '../core/svg/SVGFEDisplacementMapElement.idl', '../core/svg/SVGFEDistantLightElement.idl', '../core/svg/SVGFEDropShadowElement.idl', '../core/svg/SVGFEFloodElement.idl', '../core/svg/SVGFEFuncAElement.idl', '../core/svg/SVGFEFuncBElement.idl', '../core/svg/SVGFEFuncGElement.idl', '../core/svg/SVGFEFuncRElement.idl', '../core/svg/SVGFEGaussianBlurElement.idl', '../core/svg/SVGFEImageElement.idl', '../core/svg/SVGFEMergeElement.idl', '../core/svg/SVGFEMergeNodeElement.idl', '../core/svg/SVGFEMorphologyElement.idl', '../core/svg/SVGFEOffsetElement.idl', '../core/svg/SVGFEPointLightElement.idl', '../core/svg/SVGFESpecularLightingElement.idl', '../core/svg/SVGFESpotLightElement.idl', '../core/svg/SVGFETileElement.idl', '../core/svg/SVGFETurbulenceElement.idl', '../core/svg/SVGFilterElement.idl', '../core/svg/SVGFontElement.idl', '../core/svg/SVGFontFaceElement.idl', '../core/svg/SVGFontFaceFormatElement.idl', '../core/svg/SVGFontFaceNameElement.idl', '../core/svg/SVGFontFaceSrcElement.idl', '../core/svg/SVGFontFaceUriElement.idl', '../core/svg/SVGForeignObjectElement.idl', '../core/svg/SVGGElement.idl', '../core/svg/SVGGlyphElement.idl', '../core/svg/SVGGlyphRefElement.idl', '../core/svg/SVGGradientElement.idl', '../core/svg/SVGGraphicsElement.idl', '../core/svg/SVGHKernElement.idl', '../core/svg/SVGImageElement.idl', '../core/svg/SVGLength.idl', '../core/svg/SVGLengthList.idl', '../core/svg/SVGLineElement.idl', '../core/svg/SVGLinearGradientElement.idl', '../core/svg/SVGMarkerElement.idl', '../core/svg/SVGMaskElement.idl', '../core/svg/SVGMatrix.idl', '../core/svg/SVGMetadataElement.idl', '../core/svg/SVGMissingGlyphElement.idl', '../core/svg/SVGMPathElement.idl', '../core/svg/SVGNumber.idl', '../core/svg/SVGNumberList.idl', '../core/svg/SVGPaint.idl', '../core/svg/SVGPathElement.idl', '../core/svg/SVGPathSeg.idl', '../core/svg/SVGPathSegArcAbs.idl', '../core/svg/SVGPathSegArcRel.idl', '../core/svg/SVGPathSegClosePath.idl', '../core/svg/SVGPathSegCurvetoCubicAbs.idl', '../core/svg/SVGPathSegCurvetoCubicRel.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl', '../core/svg/SVGPathSegLinetoAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalRel.idl', '../core/svg/SVGPathSegLinetoRel.idl', '../core/svg/SVGPathSegLinetoVerticalAbs.idl', '../core/svg/SVGPathSegLinetoVerticalRel.idl', '../core/svg/SVGPathSegList.idl', '../core/svg/SVGPathSegMovetoAbs.idl', '../core/svg/SVGPathSegMovetoRel.idl', '../core/svg/SVGPatternElement.idl', '../core/svg/SVGPoint.idl', '../core/svg/SVGPointList.idl', '../core/svg/SVGPolygonElement.idl', '../core/svg/SVGPolylineElement.idl', '../core/svg/SVGPreserveAspectRatio.idl', '../core/svg/SVGRadialGradientElement.idl', '../core/svg/SVGRect.idl', '../core/svg/SVGRectElement.idl', '../core/svg/SVGRenderingIntent.idl', '../core/svg/SVGSVGElement.idl', '../core/svg/SVGScriptElement.idl', '../core/svg/SVGSetElement.idl', '../core/svg/SVGStopElement.idl', '../core/svg/SVGStringList.idl', '../core/svg/SVGStyleElement.idl', '../core/svg/SVGStyledElement.idl', '../core/svg/SVGSwitchElement.idl', '../core/svg/SVGSymbolElement.idl', '../core/svg/SVGTRefElement.idl', '../core/svg/SVGTSpanElement.idl', '../core/svg/SVGTextContentElement.idl', '../core/svg/SVGTextElement.idl', '../core/svg/SVGTextPathElement.idl', '../core/svg/SVGTextPositioningElement.idl', '../core/svg/SVGTitleElement.idl', '../core/svg/SVGTransform.idl', '../core/svg/SVGTransformList.idl', '../core/svg/SVGUnitTypes.idl', '../core/svg/SVGUseElement.idl', '../core/svg/SVGViewElement.idl', '../core/svg/SVGViewSpec.idl', '../core/svg/SVGVKernElement.idl', '../core/svg/SVGZoomEvent.idl', '../core/testing/Internals.idl', '../core/testing/InternalProfilers.idl', '../core/testing/InternalSettings.idl', '../core/testing/LayerRect.idl', '../core/testing/LayerRectList.idl', '../core/testing/MallocStatistics.idl', '../core/testing/TypeConversions.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl'], 'action': ['perl', '-w', '-Iscripts', '-I../core/scripts', '-I../../../../third_party/JSON/out/lib/perl5', 'scripts/deprecated_generate_bindings.pl', '--outputDir', '$(gyp_shared_intermediate_dir)/webkit/bindings', '--idlAttributesFile', 'scripts/IDLAttributes.txt', '--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit', '--interfaceDependenciesFile', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '--additionalIdlFiles', '../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl "$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl" "$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl"', '--preprocessor', '/usr/bin/gcc -E -P -x c++', '--write-file-only-if-changed', '0', '$(RULE_SOURCES)'], 'message': 'Generating binding from $(RULE_SOURCES)'}":
+# "{'inputs': ['scripts/deprecated_generate_bindings.pl', 'scripts/deprecated_code_generator_v8.pm', 'scripts/deprecated_idl_parser.pm', 'scripts/deprecated_idl_serializer.pm', '../core/scripts/preprocessor.pm', 'scripts/IDLAttributes.txt', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '../modules/filesystem/HTMLInputElementFileSystem.idl', '../core/dom/DocumentFullscreen.idl', '../modules/geolocation/NavigatorGeolocation.idl', '../modules/mediasource/WindowMediaSource.idl', '../modules/filesystem/WindowFileSystem.idl', '../modules/indexeddb/WindowIndexedDatabase.idl', '../modules/navigatorcontentutils/NavigatorContentUtils.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/quota/WindowQuota.idl', '../modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl', '../modules/webmidi/NavigatorWebMIDI.idl', '../modules/notifications/WorkerGlobalScopeNotifications.idl', '../modules/webdatabase/WindowWebDatabase.idl', '../core/page/WindowPagePopup.idl', '../modules/webdatabase/WorkerGlobalScopeWebDatabase.idl', '../modules/mediastream/NavigatorMediaStream.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/crypto/WorkerGlobalScopeCrypto.idl', '../modules/filesystem/DataTransferItemFileSystem.idl', '../modules/gamepad/NavigatorGamepad.idl', '../core/xml/DocumentXPathEvaluator.idl', '../modules/filesystem/WorkerGlobalScopeFileSystem.idl', '../modules/donottrack/NavigatorDoNotTrack.idl', '../modules/notifications/WindowNotifications.idl', '$(gyp_shared_intermediate_dir)/WindowConstructors.idl', '$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl'], 'msvs_cygwin_shell': '0', 'extension': 'idl', 'msvs_external_rule': '1', 'outputs': ['$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.cpp', '$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.h'], 'variables': {'extra_blink_generator_include_dirs%': [], 'generator_include_dirs': ['--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit']}, 'rule_name': 'deprecated_perl_binding', 'rule_sources': ['../core/css/CSS.idl', '../core/css/CSSCharsetRule.idl', '../core/css/CSSFontFaceLoadEvent.idl', '../core/css/CSSFontFaceRule.idl', '../core/css/CSSHostRule.idl', '../core/css/CSSImportRule.idl', '../core/css/CSSMediaRule.idl', '../core/css/CSSPageRule.idl', '../core/css/CSSPrimitiveValue.idl', '../core/css/CSSRule.idl', '../core/css/CSSRuleList.idl', '../core/css/CSSStyleDeclaration.idl', '../core/css/CSSStyleRule.idl', '../core/css/CSSStyleSheet.idl', '../core/css/CSSSupportsRule.idl', '../core/css/CSSValue.idl', '../core/css/CSSValueList.idl', '../core/css/CSSViewportRule.idl', '../core/css/CSSVariablesMap.idl', '../core/css/Counter.idl', '../core/css/FontLoader.idl', '../core/css/MediaList.idl', '../core/css/MediaQueryList.idl', '../core/css/Rect.idl', '../core/css/RGBColor.idl', '../core/css/StyleMedia.idl', '../core/css/StyleSheet.idl', '../core/css/StyleSheetList.idl', '../core/css/WebKitCSSFilterRule.idl', '../core/css/WebKitCSSFilterValue.idl', '../core/css/WebKitCSSKeyframeRule.idl', '../core/css/WebKitCSSKeyframesRule.idl', '../core/css/WebKitCSSMatrix.idl', '../core/css/WebKitCSSMixFunctionValue.idl', '../core/css/WebKitCSSRegionRule.idl', '../core/css/WebKitCSSTransformValue.idl', '../core/dom/Attr.idl', '../core/dom/AutocompleteErrorEvent.idl', '../core/dom/BeforeLoadEvent.idl', '../core/dom/CDATASection.idl', '../core/dom/CharacterData.idl', '../core/dom/ClientRect.idl', '../core/dom/ClientRectList.idl', '../core/dom/Clipboard.idl', '../core/dom/Comment.idl', '../core/dom/CompositionEvent.idl', '../core/dom/CustomEvent.idl', '../core/dom/DOMError.idl', '../core/dom/DOMException.idl', '../core/dom/DOMImplementation.idl', '../core/dom/DOMStringList.idl', '../core/dom/DOMStringMap.idl', '../core/dom/DataTransferItem.idl', '../core/dom/DataTransferItemList.idl', '../core/dom/Document.idl', '../core/dom/DocumentFragment.idl', '../core/dom/DocumentType.idl', '../core/dom/Element.idl', '../core/dom/Entity.idl', '../core/dom/ErrorEvent.idl', '../core/dom/Event.idl', '../core/dom/EventTarget.idl', '../core/dom/FocusEvent.idl', '../core/dom/HashChangeEvent.idl', '../core/dom/KeyboardEvent.idl', '../core/dom/MessageChannel.idl', '../core/dom/MessageEvent.idl', '../core/dom/MessagePort.idl', '../core/dom/MouseEvent.idl', '../core/dom/MutationEvent.idl', '../core/dom/MutationObserver.idl', '../core/dom/MutationRecord.idl', '../core/dom/NamedNodeMap.idl', '../core/dom/Node.idl', '../core/dom/NodeFilter.idl', '../core/dom/NodeIterator.idl', '../core/dom/NodeList.idl', '../core/dom/Notation.idl', '../core/dom/OverflowEvent.idl', '../core/dom/PageTransitionEvent.idl', '../core/dom/PopStateEvent.idl', '../core/dom/ProcessingInstruction.idl', '../core/dom/ProgressEvent.idl', '../core/dom/Promise.idl', '../core/dom/PromiseResolver.idl', '../core/dom/Range.idl', '../core/dom/RequestAnimationFrameCallback.idl', '../core/dom/ResourceProgressEvent.idl', '../core/dom/SecurityPolicyViolationEvent.idl', '../core/dom/StringCallback.idl', '../core/dom/Text.idl', '../core/dom/TextEvent.idl', '../core/dom/Touch.idl', '../core/dom/TouchEvent.idl', '../core/dom/TouchList.idl', '../core/dom/TransitionEvent.idl', '../core/dom/TreeWalker.idl', '../core/dom/UIEvent.idl', '../core/dom/WebKitAnimationEvent.idl', '../core/dom/WebKitNamedFlow.idl', '../core/dom/WebKitNamedFlowCollection.idl', '../core/dom/WheelEvent.idl', '../core/dom/shadow/ShadowRoot.idl', '../core/fileapi/Blob.idl', '../core/fileapi/File.idl', '../core/fileapi/FileError.idl', '../core/fileapi/FileList.idl', '../core/fileapi/FileReader.idl', '../core/fileapi/FileReaderSync.idl', '../core/fileapi/Stream.idl', '../core/html/DOMSettableTokenList.idl', '../core/html/DOMTokenList.idl', '../core/html/FormData.idl', '../core/html/HTMLAllCollection.idl', '../core/html/HTMLAnchorElement.idl', '../core/html/HTMLAppletElement.idl', '../core/html/HTMLAreaElement.idl', '../core/html/HTMLAudioElement.idl', '../core/html/HTMLBRElement.idl', '../core/html/HTMLBaseElement.idl', '../core/html/HTMLBodyElement.idl', '../core/html/HTMLButtonElement.idl', '../core/html/HTMLCanvasElement.idl', '../core/html/HTMLCollection.idl', '../core/html/HTMLDListElement.idl', '../core/html/HTMLDataListElement.idl', '../core/html/HTMLDetailsElement.idl', '../core/html/HTMLDialogElement.idl', '../core/html/HTMLDirectoryElement.idl', '../core/html/HTMLDivElement.idl', '../core/html/HTMLDocument.idl', '../core/html/HTMLElement.idl', '../core/html/HTMLEmbedElement.idl', '../core/html/HTMLFieldSetElement.idl', '../core/html/HTMLFontElement.idl', '../core/html/HTMLFormControlsCollection.idl', '../core/html/HTMLFormElement.idl', '../core/html/HTMLFrameElement.idl', '../core/html/HTMLFrameSetElement.idl', '../core/html/HTMLHRElement.idl', '../core/html/HTMLHeadElement.idl', '../core/html/HTMLHeadingElement.idl', '../core/html/HTMLHtmlElement.idl', '../core/html/HTMLIFrameElement.idl', '../core/html/HTMLImageElement.idl', '../core/html/HTMLInputElement.idl', '../core/html/HTMLKeygenElement.idl', '../core/html/HTMLLIElement.idl', '../core/html/HTMLLabelElement.idl', '../core/html/HTMLLegendElement.idl', '../core/html/HTMLLinkElement.idl', '../core/html/HTMLMapElement.idl', '../core/html/HTMLMarqueeElement.idl', '../core/html/HTMLMediaElement.idl', '../core/html/HTMLMenuElement.idl', '../core/html/HTMLMetaElement.idl', '../core/html/HTMLMeterElement.idl', '../core/html/HTMLModElement.idl', '../core/html/HTMLOListElement.idl', '../core/html/HTMLObjectElement.idl', '../core/html/HTMLOptGroupElement.idl', '../core/html/HTMLOptionElement.idl', '../core/html/HTMLOptionsCollection.idl', '../core/html/HTMLOutputElement.idl', '../core/html/HTMLParagraphElement.idl', '../core/html/HTMLParamElement.idl', '../core/html/HTMLPreElement.idl', '../core/html/HTMLProgressElement.idl', '../core/html/HTMLQuoteElement.idl', '../core/html/HTMLScriptElement.idl', '../core/html/HTMLSelectElement.idl', '../core/html/HTMLSourceElement.idl', '../core/html/HTMLSpanElement.idl', '../core/html/HTMLStyleElement.idl', '../core/html/HTMLTableCaptionElement.idl', '../core/html/HTMLTableCellElement.idl', '../core/html/HTMLTableColElement.idl', '../core/html/HTMLTableElement.idl', '../core/html/HTMLTableRowElement.idl', '../core/html/HTMLTableSectionElement.idl', '../core/html/HTMLTextAreaElement.idl', '../core/html/HTMLTemplateElement.idl', '../core/html/HTMLTitleElement.idl', '../core/html/HTMLTrackElement.idl', '../core/html/HTMLUListElement.idl', '../core/html/HTMLUnknownElement.idl', '../core/html/HTMLVideoElement.idl', '../core/html/ImageData.idl', '../core/html/MediaController.idl', '../core/html/MediaError.idl', '../core/html/MediaKeyError.idl', '../core/html/MediaKeyEvent.idl', '../core/html/RadioNodeList.idl', '../core/html/TextMetrics.idl', '../core/html/TimeRanges.idl', '../core/html/URL.idl', '../core/html/ValidityState.idl', '../core/html/VoidCallback.idl', '../core/html/canvas/ANGLEInstancedArrays.idl', '../core/html/canvas/ArrayBufferView.idl', '../core/html/canvas/CanvasGradient.idl', '../core/html/canvas/CanvasPattern.idl', '../core/html/canvas/CanvasRenderingContext.idl', '../core/html/canvas/CanvasRenderingContext2D.idl', '../core/html/canvas/Canvas2DContextAttributes.idl', '../core/html/canvas/DataView.idl', '../core/html/canvas/EXTFragDepth.idl', '../core/html/canvas/EXTTextureFilterAnisotropic.idl', '../core/html/canvas/Float32Array.idl', '../core/html/canvas/Float64Array.idl', '../core/html/canvas/Int16Array.idl', '../core/html/canvas/Int32Array.idl', '../core/html/canvas/Int8Array.idl', '../core/html/canvas/OESStandardDerivatives.idl', '../core/html/canvas/OESTextureFloat.idl', '../core/html/canvas/OESTextureFloatLinear.idl', '../core/html/canvas/OESTextureHalfFloat.idl', '../core/html/canvas/OESTextureHalfFloatLinear.idl', '../core/html/canvas/OESVertexArrayObject.idl', '../core/html/canvas/OESElementIndexUint.idl', '../core/html/canvas/Path.idl', '../core/html/canvas/Uint16Array.idl', '../core/html/canvas/Uint32Array.idl', '../core/html/canvas/Uint8Array.idl', '../core/html/canvas/Uint8ClampedArray.idl', '../core/html/canvas/WebGLActiveInfo.idl', '../core/html/canvas/WebGLBuffer.idl', '../core/html/canvas/WebGLCompressedTextureATC.idl', '../core/html/canvas/WebGLCompressedTexturePVRTC.idl', '../core/html/canvas/WebGLCompressedTextureS3TC.idl', '../core/html/canvas/WebGLContextAttributes.idl', '../core/html/canvas/WebGLContextEvent.idl', '../core/html/canvas/WebGLDebugRendererInfo.idl', '../core/html/canvas/WebGLDebugShaders.idl', '../core/html/canvas/WebGLDepthTexture.idl', '../core/html/canvas/WebGLDrawBuffers.idl', '../core/html/canvas/WebGLFramebuffer.idl', '../core/html/canvas/WebGLLoseContext.idl', '../core/html/canvas/WebGLProgram.idl', '../core/html/canvas/WebGLRenderbuffer.idl', '../core/html/canvas/WebGLRenderingContext.idl', '../core/html/canvas/WebGLShader.idl', '../core/html/canvas/WebGLShaderPrecisionFormat.idl', '../core/html/canvas/WebGLTexture.idl', '../core/html/canvas/WebGLUniformLocation.idl', '../core/html/canvas/WebGLVertexArrayObjectOES.idl', '../core/html/ime/Composition.idl', '../core/html/ime/InputMethodContext.idl', '../core/html/shadow/HTMLContentElement.idl', '../core/html/shadow/HTMLShadowElement.idl', '../core/html/track/TextTrack.idl', '../core/html/track/TextTrackCue.idl', '../core/html/track/TextTrackCueList.idl', '../core/html/track/TextTrackList.idl', '../core/html/track/TrackEvent.idl', '../core/html/track/TextTrackRegion.idl', '../core/html/track/TextTrackRegionList.idl', '../core/inspector/InjectedScriptHost.idl', '../core/inspector/InspectorFrontendHost.idl', '../core/inspector/InspectorOverlayHost.idl', '../core/inspector/JavaScriptCallFrame.idl', '../core/loader/appcache/DOMApplicationCache.idl', '../core/page/BarProp.idl', '../core/page/Console.idl', '../core/page/EventSource.idl', '../core/page/History.idl', '../core/page/ImageBitmap.idl', '../core/page/ImageBitmapCallback.idl', '../core/page/Location.idl', '../core/page/MemoryInfo.idl', '../core/page/Navigator.idl', '../core/page/PagePopupController.idl', '../core/page/Performance.idl', '../core/page/PerformanceEntry.idl', '../core/page/PerformanceMark.idl', '../core/page/PerformanceMeasure.idl', '../core/page/PerformanceNavigation.idl', '../core/page/PerformanceResourceTiming.idl', '../core/page/PerformanceTiming.idl', '../core/page/Screen.idl', '../core/page/SecurityPolicy.idl', '../core/page/Selection.idl', '../core/page/SpeechInputEvent.idl', '../core/page/SpeechInputResult.idl', '../core/page/SpeechInputResultList.idl', '../core/page/WebKitPoint.idl', '../core/page/Window.idl', '../core/page/WindowBase64.idl', '../core/page/WindowTimers.idl', '../core/page/WorkerNavigator.idl', '../core/plugins/MimeType.idl', '../core/plugins/MimeTypeArray.idl', '../core/plugins/Plugin.idl', '../core/plugins/PluginArray.idl', '../core/storage/Storage.idl', '../core/storage/StorageEvent.idl', '../core/workers/DedicatedWorkerGlobalScope.idl', '../core/workers/SharedWorker.idl', '../core/workers/SharedWorkerGlobalScope.idl', '../core/workers/Worker.idl', '../core/workers/WorkerGlobalScope.idl', '../core/workers/WorkerLocation.idl', '../core/xml/DOMParser.idl', '../core/xml/DocumentXPathEvaluator.idl', '../core/xml/XMLHttpRequest.idl', '../core/xml/XMLHttpRequestProgressEvent.idl', '../core/xml/XMLHttpRequestUpload.idl', '../core/xml/XMLSerializer.idl', '../core/xml/XPathEvaluator.idl', '../core/xml/XPathExpression.idl', '../core/xml/XPathNSResolver.idl', '../core/xml/XPathResult.idl', '../core/xml/XSLTProcessor.idl', '../modules/crypto/AesCbcParams.idl', '../modules/crypto/AesKeyGenParams.idl', '../modules/crypto/Algorithm.idl', '../modules/crypto/Crypto.idl', '../modules/crypto/CryptoOperation.idl', '../modules/crypto/HmacParams.idl', '../modules/crypto/Key.idl', '../modules/crypto/SubtleCrypto.idl', '../modules/crypto/WorkerCrypto.idl', '../modules/device_orientation/DeviceAcceleration.idl', '../modules/device_orientation/DeviceMotionEvent.idl', '../modules/device_orientation/DeviceOrientationEvent.idl', '../modules/device_orientation/DeviceRotationRate.idl', '../modules/encryptedmedia/MediaKeyMessageEvent.idl', '../modules/encryptedmedia/MediaKeyNeededEvent.idl', '../modules/encryptedmedia/MediaKeys.idl', '../modules/encryptedmedia/MediaKeySession.idl', '../modules/filesystem/DOMFileSystem.idl', '../modules/filesystem/DOMFileSystemSync.idl', '../modules/filesystem/DirectoryEntry.idl', '../modules/filesystem/DirectoryEntrySync.idl', '../modules/filesystem/DirectoryReader.idl', '../modules/filesystem/DirectoryReaderSync.idl', '../modules/filesystem/EntriesCallback.idl', '../modules/filesystem/Entry.idl', '../modules/filesystem/EntryArray.idl', '../modules/filesystem/EntryArraySync.idl', '../modules/filesystem/EntryCallback.idl', '../modules/filesystem/EntrySync.idl', '../modules/filesystem/ErrorCallback.idl', '../modules/filesystem/FileCallback.idl', '../modules/filesystem/FileEntry.idl', '../modules/filesystem/FileEntrySync.idl', '../modules/filesystem/FileSystemCallback.idl', '../modules/filesystem/FileWriter.idl', '../modules/filesystem/FileWriterCallback.idl', '../modules/filesystem/FileWriterSync.idl', '../modules/filesystem/Metadata.idl', '../modules/filesystem/MetadataCallback.idl', '../modules/gamepad/Gamepad.idl', '../modules/gamepad/GamepadList.idl', '../modules/geolocation/Coordinates.idl', '../modules/geolocation/Geolocation.idl', '../modules/geolocation/Geoposition.idl', '../modules/geolocation/PositionCallback.idl', '../modules/geolocation/PositionError.idl', '../modules/geolocation/PositionErrorCallback.idl', '../modules/indexeddb/IDBAny.idl', '../modules/indexeddb/IDBCursor.idl', '../modules/indexeddb/IDBCursorWithValue.idl', '../modules/indexeddb/IDBDatabase.idl', '../modules/indexeddb/IDBFactory.idl', '../modules/indexeddb/IDBIndex.idl', '../modules/indexeddb/IDBKeyRange.idl', '../modules/indexeddb/IDBObjectStore.idl', '../modules/indexeddb/IDBOpenDBRequest.idl', '../modules/indexeddb/IDBRequest.idl', '../modules/indexeddb/IDBTransaction.idl', '../modules/indexeddb/IDBVersionChangeEvent.idl', '../modules/mediasource/MediaSource.idl', '../modules/mediasource/SourceBuffer.idl', '../modules/mediasource/SourceBufferList.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/mediasource/WebKitMediaSource.idl', '../modules/mediasource/WebKitSourceBuffer.idl', '../modules/mediasource/WebKitSourceBufferList.idl', '../modules/mediastream/MediaStream.idl', '../modules/mediastream/MediaStreamEvent.idl', '../modules/mediastream/MediaStreamTrack.idl', '../modules/mediastream/MediaStreamTrackEvent.idl', '../modules/mediastream/MediaStreamTrackSourcesCallback.idl', '../modules/mediastream/NavigatorUserMediaError.idl', '../modules/mediastream/NavigatorUserMediaErrorCallback.idl', '../modules/mediastream/NavigatorUserMediaSuccessCallback.idl', '../modules/mediastream/RTCDTMFSender.idl', '../modules/mediastream/RTCDTMFToneChangeEvent.idl', '../modules/mediastream/RTCDataChannel.idl', '../modules/mediastream/RTCDataChannelEvent.idl', '../modules/mediastream/RTCErrorCallback.idl', '../modules/mediastream/RTCIceCandidate.idl', '../modules/mediastream/RTCIceCandidateEvent.idl', '../modules/mediastream/RTCPeerConnection.idl', '../modules/mediastream/RTCSessionDescription.idl', '../modules/mediastream/RTCSessionDescriptionCallback.idl', '../modules/mediastream/RTCStatsCallback.idl', '../modules/mediastream/RTCStatsReport.idl', '../modules/mediastream/RTCStatsResponse.idl', '../modules/mediastream/SourceInfo.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/notifications/Notification.idl', '../modules/notifications/NotificationCenter.idl', '../modules/notifications/NotificationPermissionCallback.idl', '../modules/performance/WorkerPerformance.idl', '../modules/quota/StorageErrorCallback.idl', '../modules/quota/StorageInfo.idl', '../modules/quota/StorageQuota.idl', '../modules/quota/StorageQuotaCallback.idl', '../modules/quota/StorageUsageCallback.idl', '../modules/speech/SpeechGrammar.idl', '../modules/speech/SpeechGrammarList.idl', '../modules/speech/SpeechRecognition.idl', '../modules/speech/SpeechRecognitionAlternative.idl', '../modules/speech/SpeechRecognitionError.idl', '../modules/speech/SpeechRecognitionEvent.idl', '../modules/speech/SpeechRecognitionResult.idl', '../modules/speech/SpeechRecognitionResultList.idl', '../modules/speech/SpeechSynthesis.idl', '../modules/speech/SpeechSynthesisEvent.idl', '../modules/speech/SpeechSynthesisUtterance.idl', '../modules/speech/SpeechSynthesisVoice.idl', '../modules/webaudio/AudioBuffer.idl', '../modules/webaudio/AudioBufferCallback.idl', '../modules/webaudio/AudioBufferSourceNode.idl', '../modules/webaudio/ChannelMergerNode.idl', '../modules/webaudio/ChannelSplitterNode.idl', '../modules/webaudio/AudioContext.idl', '../modules/webaudio/AudioDestinationNode.idl', '../modules/webaudio/GainNode.idl', '../modules/webaudio/AudioListener.idl', '../modules/webaudio/AudioNode.idl', '../modules/webaudio/PannerNode.idl', '../modules/webaudio/AudioParam.idl', '../modules/webaudio/AudioProcessingEvent.idl', '../modules/webaudio/AudioSourceNode.idl', '../modules/webaudio/BiquadFilterNode.idl', '../modules/webaudio/ConvolverNode.idl', '../modules/webaudio/DelayNode.idl', '../modules/webaudio/DynamicsCompressorNode.idl', '../modules/webaudio/ScriptProcessorNode.idl', '../modules/webaudio/MediaElementAudioSourceNode.idl', '../modules/webaudio/MediaStreamAudioDestinationNode.idl', '../modules/webaudio/MediaStreamAudioSourceNode.idl', '../modules/webaudio/OfflineAudioCompletionEvent.idl', '../modules/webaudio/OfflineAudioContext.idl', '../modules/webaudio/OscillatorNode.idl', '../modules/webaudio/PeriodicWave.idl', '../modules/webaudio/AnalyserNode.idl', '../modules/webaudio/WaveShaperNode.idl', '../modules/webdatabase/Database.idl', '../modules/webdatabase/DatabaseCallback.idl', '../modules/webdatabase/DatabaseSync.idl', '../modules/webdatabase/SQLError.idl', '../modules/webdatabase/SQLResultSet.idl', '../modules/webdatabase/SQLResultSetRowList.idl', '../modules/webdatabase/SQLStatementCallback.idl', '../modules/webdatabase/SQLStatementErrorCallback.idl', '../modules/webdatabase/SQLTransaction.idl', '../modules/webdatabase/SQLTransactionCallback.idl', '../modules/webdatabase/SQLTransactionErrorCallback.idl', '../modules/webdatabase/SQLTransactionSync.idl', '../modules/webdatabase/SQLTransactionSyncCallback.idl', '../modules/webmidi/MIDIAccess.idl', '../modules/webmidi/MIDIAccessPromise.idl', '../modules/webmidi/MIDIConnectionEvent.idl', '../modules/webmidi/MIDIErrorCallback.idl', '../modules/webmidi/MIDIInput.idl', '../modules/webmidi/MIDIMessageEvent.idl', '../modules/webmidi/MIDIOutput.idl', '../modules/webmidi/MIDIPort.idl', '../modules/webmidi/MIDISuccessCallback.idl', '../modules/websockets/CloseEvent.idl', '../modules/websockets/WebSocket.idl', '../core/svg/SVGAElement.idl', '../core/svg/SVGAltGlyphElement.idl', '../core/svg/SVGAltGlyphItemElement.idl', '../core/svg/SVGAltGlyphDefElement.idl', '../core/svg/SVGAngle.idl', '../core/svg/SVGAnimateColorElement.idl', '../core/svg/SVGAnimateMotionElement.idl', '../core/svg/SVGAnimateElement.idl', '../core/svg/SVGAnimateTransformElement.idl', '../core/svg/SVGAnimatedAngle.idl', '../core/svg/SVGAnimatedBoolean.idl', '../core/svg/SVGAnimatedEnumeration.idl', '../core/svg/SVGAnimatedInteger.idl', '../core/svg/SVGAnimatedLength.idl', '../core/svg/SVGAnimatedLengthList.idl', '../core/svg/SVGAnimatedNumber.idl', '../core/svg/SVGAnimatedNumberList.idl', '../core/svg/SVGAnimatedPreserveAspectRatio.idl', '../core/svg/SVGAnimatedRect.idl', '../core/svg/SVGAnimatedString.idl', '../core/svg/SVGAnimatedTransformList.idl', '../core/svg/SVGAnimationElement.idl', '../core/svg/SVGCircleElement.idl', '../core/svg/SVGClipPathElement.idl', '../core/svg/SVGColor.idl', '../core/svg/SVGComponentTransferFunctionElement.idl', '../core/svg/SVGCursorElement.idl', '../core/svg/SVGDefsElement.idl', '../core/svg/SVGDescElement.idl', '../core/svg/SVGDocument.idl', '../core/svg/SVGElement.idl', '../core/svg/SVGElementInstance.idl', '../core/svg/SVGElementInstanceList.idl', '../core/svg/SVGEllipseElement.idl', '../core/svg/SVGFEBlendElement.idl', '../core/svg/SVGFEColorMatrixElement.idl', '../core/svg/SVGFEComponentTransferElement.idl', '../core/svg/SVGFECompositeElement.idl', '../core/svg/SVGFEConvolveMatrixElement.idl', '../core/svg/SVGFEDiffuseLightingElement.idl', '../core/svg/SVGFEDisplacementMapElement.idl', '../core/svg/SVGFEDistantLightElement.idl', '../core/svg/SVGFEDropShadowElement.idl', '../core/svg/SVGFEFloodElement.idl', '../core/svg/SVGFEFuncAElement.idl', '../core/svg/SVGFEFuncBElement.idl', '../core/svg/SVGFEFuncGElement.idl', '../core/svg/SVGFEFuncRElement.idl', '../core/svg/SVGFEGaussianBlurElement.idl', '../core/svg/SVGFEImageElement.idl', '../core/svg/SVGFEMergeElement.idl', '../core/svg/SVGFEMergeNodeElement.idl', '../core/svg/SVGFEMorphologyElement.idl', '../core/svg/SVGFEOffsetElement.idl', '../core/svg/SVGFEPointLightElement.idl', '../core/svg/SVGFESpecularLightingElement.idl', '../core/svg/SVGFESpotLightElement.idl', '../core/svg/SVGFETileElement.idl', '../core/svg/SVGFETurbulenceElement.idl', '../core/svg/SVGFilterElement.idl', '../core/svg/SVGFontElement.idl', '../core/svg/SVGFontFaceElement.idl', '../core/svg/SVGFontFaceFormatElement.idl', '../core/svg/SVGFontFaceNameElement.idl', '../core/svg/SVGFontFaceSrcElement.idl', '../core/svg/SVGFontFaceUriElement.idl', '../core/svg/SVGForeignObjectElement.idl', '../core/svg/SVGGElement.idl', '../core/svg/SVGGlyphElement.idl', '../core/svg/SVGGlyphRefElement.idl', '../core/svg/SVGGradientElement.idl', '../core/svg/SVGGraphicsElement.idl', '../core/svg/SVGHKernElement.idl', '../core/svg/SVGImageElement.idl', '../core/svg/SVGLength.idl', '../core/svg/SVGLengthList.idl', '../core/svg/SVGLineElement.idl', '../core/svg/SVGLinearGradientElement.idl', '../core/svg/SVGMarkerElement.idl', '../core/svg/SVGMaskElement.idl', '../core/svg/SVGMatrix.idl', '../core/svg/SVGMetadataElement.idl', '../core/svg/SVGMissingGlyphElement.idl', '../core/svg/SVGMPathElement.idl', '../core/svg/SVGNumber.idl', '../core/svg/SVGNumberList.idl', '../core/svg/SVGPaint.idl', '../core/svg/SVGPathElement.idl', '../core/svg/SVGPathSeg.idl', '../core/svg/SVGPathSegArcAbs.idl', '../core/svg/SVGPathSegArcRel.idl', '../core/svg/SVGPathSegClosePath.idl', '../core/svg/SVGPathSegCurvetoCubicAbs.idl', '../core/svg/SVGPathSegCurvetoCubicRel.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl', '../core/svg/SVGPathSegLinetoAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalRel.idl', '../core/svg/SVGPathSegLinetoRel.idl', '../core/svg/SVGPathSegLinetoVerticalAbs.idl', '../core/svg/SVGPathSegLinetoVerticalRel.idl', '../core/svg/SVGPathSegList.idl', '../core/svg/SVGPathSegMovetoAbs.idl', '../core/svg/SVGPathSegMovetoRel.idl', '../core/svg/SVGPatternElement.idl', '../core/svg/SVGPoint.idl', '../core/svg/SVGPointList.idl', '../core/svg/SVGPolygonElement.idl', '../core/svg/SVGPolylineElement.idl', '../core/svg/SVGPreserveAspectRatio.idl', '../core/svg/SVGRadialGradientElement.idl', '../core/svg/SVGRect.idl', '../core/svg/SVGRectElement.idl', '../core/svg/SVGRenderingIntent.idl', '../core/svg/SVGSVGElement.idl', '../core/svg/SVGScriptElement.idl', '../core/svg/SVGSetElement.idl', '../core/svg/SVGStopElement.idl', '../core/svg/SVGStringList.idl', '../core/svg/SVGStyleElement.idl', '../core/svg/SVGStyledElement.idl', '../core/svg/SVGSwitchElement.idl', '../core/svg/SVGSymbolElement.idl', '../core/svg/SVGTRefElement.idl', '../core/svg/SVGTSpanElement.idl', '../core/svg/SVGTextContentElement.idl', '../core/svg/SVGTextElement.idl', '../core/svg/SVGTextPathElement.idl', '../core/svg/SVGTextPositioningElement.idl', '../core/svg/SVGTitleElement.idl', '../core/svg/SVGTransform.idl', '../core/svg/SVGTransformList.idl', '../core/svg/SVGUnitTypes.idl', '../core/svg/SVGUseElement.idl', '../core/svg/SVGViewElement.idl', '../core/svg/SVGViewSpec.idl', '../core/svg/SVGVKernElement.idl', '../core/svg/SVGZoomEvent.idl', '../core/testing/Internals.idl', '../core/testing/InternalProfilers.idl', '../core/testing/InternalSettings.idl', '../core/testing/LayerRect.idl', '../core/testing/LayerRectList.idl', '../core/testing/MallocStatistics.idl', '../core/testing/TypeConversions.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl'], 'action': ['perl', '-w', '-Iscripts', '-I../core/scripts', '-I../../../../third_party/JSON/out/lib/perl5', 'scripts/deprecated_generate_bindings.pl', '--outputDir', '$(gyp_shared_intermediate_dir)/webkit/bindings', '--idlAttributesFile', 'scripts/IDLAttributes.txt', '--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit', '--interfaceDependenciesFile', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '--additionalIdlFiles', '../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl "$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl" "$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl"', '--preprocessor', '/usr/bin/gcc -E -P -x c++', '--write-file-only-if-changed', '0', '$(RULE_SOURCES)'], 'message': 'Generating binding from $(RULE_SOURCES)'}":
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_local_path := $(LOCAL_PATH)
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
@@ -3516,6 +3516,17 @@
 .PHONY: third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger
 third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger: $(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.cpp
 
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_local_path := $(LOCAL_PATH)
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/HmacParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_generate_bindings.pl $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_code_generator_v8.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_idl_parser.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_idl_serializer.pm $(LOCAL_PATH)/third_party/WebKit/Source/core/scripts/preprocessor.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/IDLAttributes.txt $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(gyp_shared_intermediate_dir)/WindowConstructors.idl $(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl $(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl $(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl $(GYP_TARGET_DEPENDENCIES)
+	mkdir -p $(gyp_shared_intermediate_dir)/webkit/bindings; cd $(gyp_local_path)/third_party/WebKit/Source/bindings; perl -w -Iscripts -I../core/scripts -I../../../../third_party/JSON/out/lib/perl5 scripts/deprecated_generate_bindings.pl --outputDir "$(gyp_shared_intermediate_dir)/webkit/bindings" --idlAttributesFile scripts/IDLAttributes.txt --include ../core --include ../modules --include "$(gyp_shared_intermediate_dir)/webkit" --interfaceDependenciesFile "$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt" --additionalIdlFiles "../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl \"$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl\" \"$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl\"" --preprocessor "/usr/bin/gcc -E -P -x c++" --write-file-only-if-changed 0 ../modules/crypto/HmacParams.idl
+
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.h: $(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp ;
+.PHONY: third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger
+third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger: $(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp
+
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_local_path := $(LOCAL_PATH)
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
@@ -7543,6 +7554,8 @@
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Crypto.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.cpp \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.h \
+	$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp \
+	$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8SubtleCrypto.cpp \
diff --git a/Source/bindings/deprecated_perl_bindings_sources.target.linux-x86.mk b/Source/bindings/deprecated_perl_bindings_sources.target.linux-x86.mk
index e9084b7..678d2a0 100644
--- a/Source/bindings/deprecated_perl_bindings_sources.target.linux-x86.mk
+++ b/Source/bindings/deprecated_perl_bindings_sources.target.linux-x86.mk
@@ -17,7 +17,7 @@
 
 
 ### Generated for rule "third_party_WebKit_Source_bindings_derived_sources_gyp_deprecated_perl_bindings_sources_target_deprecated_perl_binding":
-# "{'inputs': ['scripts/deprecated_generate_bindings.pl', 'scripts/deprecated_code_generator_v8.pm', 'scripts/deprecated_idl_parser.pm', 'scripts/deprecated_idl_serializer.pm', '../core/scripts/preprocessor.pm', 'scripts/IDLAttributes.txt', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '../modules/filesystem/HTMLInputElementFileSystem.idl', '../core/dom/DocumentFullscreen.idl', '../modules/geolocation/NavigatorGeolocation.idl', '../modules/mediasource/WindowMediaSource.idl', '../modules/filesystem/WindowFileSystem.idl', '../modules/indexeddb/WindowIndexedDatabase.idl', '../modules/navigatorcontentutils/NavigatorContentUtils.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/quota/WindowQuota.idl', '../modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl', '../modules/webmidi/NavigatorWebMIDI.idl', '../modules/notifications/WorkerGlobalScopeNotifications.idl', '../modules/webdatabase/WindowWebDatabase.idl', '../core/page/WindowPagePopup.idl', '../modules/webdatabase/WorkerGlobalScopeWebDatabase.idl', '../modules/mediastream/NavigatorMediaStream.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/crypto/WorkerGlobalScopeCrypto.idl', '../modules/filesystem/DataTransferItemFileSystem.idl', '../modules/gamepad/NavigatorGamepad.idl', '../core/xml/DocumentXPathEvaluator.idl', '../modules/filesystem/WorkerGlobalScopeFileSystem.idl', '../modules/donottrack/NavigatorDoNotTrack.idl', '../modules/notifications/WindowNotifications.idl', '$(gyp_shared_intermediate_dir)/WindowConstructors.idl', '$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl'], 'msvs_cygwin_shell': '0', 'extension': 'idl', 'msvs_external_rule': '1', 'outputs': ['$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.cpp', '$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.h'], 'variables': {'extra_blink_generator_include_dirs%': [], 'generator_include_dirs': ['--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit']}, 'rule_name': 'deprecated_perl_binding', 'rule_sources': ['../core/css/CSS.idl', '../core/css/CSSCharsetRule.idl', '../core/css/CSSFontFaceLoadEvent.idl', '../core/css/CSSFontFaceRule.idl', '../core/css/CSSHostRule.idl', '../core/css/CSSImportRule.idl', '../core/css/CSSMediaRule.idl', '../core/css/CSSPageRule.idl', '../core/css/CSSPrimitiveValue.idl', '../core/css/CSSRule.idl', '../core/css/CSSRuleList.idl', '../core/css/CSSStyleDeclaration.idl', '../core/css/CSSStyleRule.idl', '../core/css/CSSStyleSheet.idl', '../core/css/CSSSupportsRule.idl', '../core/css/CSSValue.idl', '../core/css/CSSValueList.idl', '../core/css/CSSViewportRule.idl', '../core/css/CSSVariablesMap.idl', '../core/css/Counter.idl', '../core/css/FontLoader.idl', '../core/css/MediaList.idl', '../core/css/MediaQueryList.idl', '../core/css/Rect.idl', '../core/css/RGBColor.idl', '../core/css/StyleMedia.idl', '../core/css/StyleSheet.idl', '../core/css/StyleSheetList.idl', '../core/css/WebKitCSSFilterRule.idl', '../core/css/WebKitCSSFilterValue.idl', '../core/css/WebKitCSSKeyframeRule.idl', '../core/css/WebKitCSSKeyframesRule.idl', '../core/css/WebKitCSSMatrix.idl', '../core/css/WebKitCSSMixFunctionValue.idl', '../core/css/WebKitCSSRegionRule.idl', '../core/css/WebKitCSSTransformValue.idl', '../core/dom/Attr.idl', '../core/dom/AutocompleteErrorEvent.idl', '../core/dom/BeforeLoadEvent.idl', '../core/dom/CDATASection.idl', '../core/dom/CharacterData.idl', '../core/dom/ClientRect.idl', '../core/dom/ClientRectList.idl', '../core/dom/Clipboard.idl', '../core/dom/Comment.idl', '../core/dom/CompositionEvent.idl', '../core/dom/CustomEvent.idl', '../core/dom/DOMError.idl', '../core/dom/DOMException.idl', '../core/dom/DOMImplementation.idl', '../core/dom/DOMStringList.idl', '../core/dom/DOMStringMap.idl', '../core/dom/DataTransferItem.idl', '../core/dom/DataTransferItemList.idl', '../core/dom/Document.idl', '../core/dom/DocumentFragment.idl', '../core/dom/DocumentType.idl', '../core/dom/Element.idl', '../core/dom/Entity.idl', '../core/dom/ErrorEvent.idl', '../core/dom/Event.idl', '../core/dom/EventTarget.idl', '../core/dom/FocusEvent.idl', '../core/dom/HashChangeEvent.idl', '../core/dom/KeyboardEvent.idl', '../core/dom/MessageChannel.idl', '../core/dom/MessageEvent.idl', '../core/dom/MessagePort.idl', '../core/dom/MouseEvent.idl', '../core/dom/MutationEvent.idl', '../core/dom/MutationObserver.idl', '../core/dom/MutationRecord.idl', '../core/dom/NamedNodeMap.idl', '../core/dom/Node.idl', '../core/dom/NodeFilter.idl', '../core/dom/NodeIterator.idl', '../core/dom/NodeList.idl', '../core/dom/Notation.idl', '../core/dom/OverflowEvent.idl', '../core/dom/PageTransitionEvent.idl', '../core/dom/PopStateEvent.idl', '../core/dom/ProcessingInstruction.idl', '../core/dom/ProgressEvent.idl', '../core/dom/Promise.idl', '../core/dom/PromiseResolver.idl', '../core/dom/Range.idl', '../core/dom/RequestAnimationFrameCallback.idl', '../core/dom/ResourceProgressEvent.idl', '../core/dom/SecurityPolicyViolationEvent.idl', '../core/dom/StringCallback.idl', '../core/dom/Text.idl', '../core/dom/TextEvent.idl', '../core/dom/Touch.idl', '../core/dom/TouchEvent.idl', '../core/dom/TouchList.idl', '../core/dom/TransitionEvent.idl', '../core/dom/TreeWalker.idl', '../core/dom/UIEvent.idl', '../core/dom/WebKitAnimationEvent.idl', '../core/dom/WebKitNamedFlow.idl', '../core/dom/WebKitNamedFlowCollection.idl', '../core/dom/WheelEvent.idl', '../core/dom/shadow/ShadowRoot.idl', '../core/fileapi/Blob.idl', '../core/fileapi/File.idl', '../core/fileapi/FileError.idl', '../core/fileapi/FileList.idl', '../core/fileapi/FileReader.idl', '../core/fileapi/FileReaderSync.idl', '../core/fileapi/Stream.idl', '../core/html/DOMSettableTokenList.idl', '../core/html/DOMTokenList.idl', '../core/html/FormData.idl', '../core/html/HTMLAllCollection.idl', '../core/html/HTMLAnchorElement.idl', '../core/html/HTMLAppletElement.idl', '../core/html/HTMLAreaElement.idl', '../core/html/HTMLAudioElement.idl', '../core/html/HTMLBRElement.idl', '../core/html/HTMLBaseElement.idl', '../core/html/HTMLBodyElement.idl', '../core/html/HTMLButtonElement.idl', '../core/html/HTMLCanvasElement.idl', '../core/html/HTMLCollection.idl', '../core/html/HTMLDListElement.idl', '../core/html/HTMLDataListElement.idl', '../core/html/HTMLDetailsElement.idl', '../core/html/HTMLDialogElement.idl', '../core/html/HTMLDirectoryElement.idl', '../core/html/HTMLDivElement.idl', '../core/html/HTMLDocument.idl', '../core/html/HTMLElement.idl', '../core/html/HTMLEmbedElement.idl', '../core/html/HTMLFieldSetElement.idl', '../core/html/HTMLFontElement.idl', '../core/html/HTMLFormControlsCollection.idl', '../core/html/HTMLFormElement.idl', '../core/html/HTMLFrameElement.idl', '../core/html/HTMLFrameSetElement.idl', '../core/html/HTMLHRElement.idl', '../core/html/HTMLHeadElement.idl', '../core/html/HTMLHeadingElement.idl', '../core/html/HTMLHtmlElement.idl', '../core/html/HTMLIFrameElement.idl', '../core/html/HTMLImageElement.idl', '../core/html/HTMLInputElement.idl', '../core/html/HTMLKeygenElement.idl', '../core/html/HTMLLIElement.idl', '../core/html/HTMLLabelElement.idl', '../core/html/HTMLLegendElement.idl', '../core/html/HTMLLinkElement.idl', '../core/html/HTMLMapElement.idl', '../core/html/HTMLMarqueeElement.idl', '../core/html/HTMLMediaElement.idl', '../core/html/HTMLMenuElement.idl', '../core/html/HTMLMetaElement.idl', '../core/html/HTMLMeterElement.idl', '../core/html/HTMLModElement.idl', '../core/html/HTMLOListElement.idl', '../core/html/HTMLObjectElement.idl', '../core/html/HTMLOptGroupElement.idl', '../core/html/HTMLOptionElement.idl', '../core/html/HTMLOptionsCollection.idl', '../core/html/HTMLOutputElement.idl', '../core/html/HTMLParagraphElement.idl', '../core/html/HTMLParamElement.idl', '../core/html/HTMLPreElement.idl', '../core/html/HTMLProgressElement.idl', '../core/html/HTMLQuoteElement.idl', '../core/html/HTMLScriptElement.idl', '../core/html/HTMLSelectElement.idl', '../core/html/HTMLSourceElement.idl', '../core/html/HTMLSpanElement.idl', '../core/html/HTMLStyleElement.idl', '../core/html/HTMLTableCaptionElement.idl', '../core/html/HTMLTableCellElement.idl', '../core/html/HTMLTableColElement.idl', '../core/html/HTMLTableElement.idl', '../core/html/HTMLTableRowElement.idl', '../core/html/HTMLTableSectionElement.idl', '../core/html/HTMLTextAreaElement.idl', '../core/html/HTMLTemplateElement.idl', '../core/html/HTMLTitleElement.idl', '../core/html/HTMLTrackElement.idl', '../core/html/HTMLUListElement.idl', '../core/html/HTMLUnknownElement.idl', '../core/html/HTMLVideoElement.idl', '../core/html/ImageData.idl', '../core/html/MediaController.idl', '../core/html/MediaError.idl', '../core/html/MediaKeyError.idl', '../core/html/MediaKeyEvent.idl', '../core/html/RadioNodeList.idl', '../core/html/TextMetrics.idl', '../core/html/TimeRanges.idl', '../core/html/URL.idl', '../core/html/ValidityState.idl', '../core/html/VoidCallback.idl', '../core/html/canvas/ANGLEInstancedArrays.idl', '../core/html/canvas/ArrayBufferView.idl', '../core/html/canvas/CanvasGradient.idl', '../core/html/canvas/CanvasPattern.idl', '../core/html/canvas/CanvasRenderingContext.idl', '../core/html/canvas/CanvasRenderingContext2D.idl', '../core/html/canvas/Canvas2DContextAttributes.idl', '../core/html/canvas/DataView.idl', '../core/html/canvas/EXTFragDepth.idl', '../core/html/canvas/EXTTextureFilterAnisotropic.idl', '../core/html/canvas/Float32Array.idl', '../core/html/canvas/Float64Array.idl', '../core/html/canvas/Int16Array.idl', '../core/html/canvas/Int32Array.idl', '../core/html/canvas/Int8Array.idl', '../core/html/canvas/OESStandardDerivatives.idl', '../core/html/canvas/OESTextureFloat.idl', '../core/html/canvas/OESTextureFloatLinear.idl', '../core/html/canvas/OESTextureHalfFloat.idl', '../core/html/canvas/OESTextureHalfFloatLinear.idl', '../core/html/canvas/OESVertexArrayObject.idl', '../core/html/canvas/OESElementIndexUint.idl', '../core/html/canvas/Path.idl', '../core/html/canvas/Uint16Array.idl', '../core/html/canvas/Uint32Array.idl', '../core/html/canvas/Uint8Array.idl', '../core/html/canvas/Uint8ClampedArray.idl', '../core/html/canvas/WebGLActiveInfo.idl', '../core/html/canvas/WebGLBuffer.idl', '../core/html/canvas/WebGLCompressedTextureATC.idl', '../core/html/canvas/WebGLCompressedTexturePVRTC.idl', '../core/html/canvas/WebGLCompressedTextureS3TC.idl', '../core/html/canvas/WebGLContextAttributes.idl', '../core/html/canvas/WebGLContextEvent.idl', '../core/html/canvas/WebGLDebugRendererInfo.idl', '../core/html/canvas/WebGLDebugShaders.idl', '../core/html/canvas/WebGLDepthTexture.idl', '../core/html/canvas/WebGLDrawBuffers.idl', '../core/html/canvas/WebGLFramebuffer.idl', '../core/html/canvas/WebGLLoseContext.idl', '../core/html/canvas/WebGLProgram.idl', '../core/html/canvas/WebGLRenderbuffer.idl', '../core/html/canvas/WebGLRenderingContext.idl', '../core/html/canvas/WebGLShader.idl', '../core/html/canvas/WebGLShaderPrecisionFormat.idl', '../core/html/canvas/WebGLTexture.idl', '../core/html/canvas/WebGLUniformLocation.idl', '../core/html/canvas/WebGLVertexArrayObjectOES.idl', '../core/html/ime/Composition.idl', '../core/html/ime/InputMethodContext.idl', '../core/html/shadow/HTMLContentElement.idl', '../core/html/shadow/HTMLShadowElement.idl', '../core/html/track/TextTrack.idl', '../core/html/track/TextTrackCue.idl', '../core/html/track/TextTrackCueList.idl', '../core/html/track/TextTrackList.idl', '../core/html/track/TrackEvent.idl', '../core/html/track/TextTrackRegion.idl', '../core/html/track/TextTrackRegionList.idl', '../core/inspector/InjectedScriptHost.idl', '../core/inspector/InspectorFrontendHost.idl', '../core/inspector/InspectorOverlayHost.idl', '../core/inspector/JavaScriptCallFrame.idl', '../core/loader/appcache/DOMApplicationCache.idl', '../core/page/BarProp.idl', '../core/page/Console.idl', '../core/page/EventSource.idl', '../core/page/History.idl', '../core/page/ImageBitmap.idl', '../core/page/ImageBitmapCallback.idl', '../core/page/Location.idl', '../core/page/MemoryInfo.idl', '../core/page/Navigator.idl', '../core/page/PagePopupController.idl', '../core/page/Performance.idl', '../core/page/PerformanceEntry.idl', '../core/page/PerformanceMark.idl', '../core/page/PerformanceMeasure.idl', '../core/page/PerformanceNavigation.idl', '../core/page/PerformanceResourceTiming.idl', '../core/page/PerformanceTiming.idl', '../core/page/Screen.idl', '../core/page/SecurityPolicy.idl', '../core/page/Selection.idl', '../core/page/SpeechInputEvent.idl', '../core/page/SpeechInputResult.idl', '../core/page/SpeechInputResultList.idl', '../core/page/WebKitPoint.idl', '../core/page/Window.idl', '../core/page/WindowBase64.idl', '../core/page/WindowTimers.idl', '../core/page/WorkerNavigator.idl', '../core/plugins/MimeType.idl', '../core/plugins/MimeTypeArray.idl', '../core/plugins/Plugin.idl', '../core/plugins/PluginArray.idl', '../core/storage/Storage.idl', '../core/storage/StorageEvent.idl', '../core/workers/DedicatedWorkerGlobalScope.idl', '../core/workers/SharedWorker.idl', '../core/workers/SharedWorkerGlobalScope.idl', '../core/workers/Worker.idl', '../core/workers/WorkerGlobalScope.idl', '../core/workers/WorkerLocation.idl', '../core/xml/DOMParser.idl', '../core/xml/DocumentXPathEvaluator.idl', '../core/xml/XMLHttpRequest.idl', '../core/xml/XMLHttpRequestProgressEvent.idl', '../core/xml/XMLHttpRequestUpload.idl', '../core/xml/XMLSerializer.idl', '../core/xml/XPathEvaluator.idl', '../core/xml/XPathExpression.idl', '../core/xml/XPathNSResolver.idl', '../core/xml/XPathResult.idl', '../core/xml/XSLTProcessor.idl', '../modules/crypto/AesCbcParams.idl', '../modules/crypto/AesKeyGenParams.idl', '../modules/crypto/Algorithm.idl', '../modules/crypto/Crypto.idl', '../modules/crypto/CryptoOperation.idl', '../modules/crypto/Key.idl', '../modules/crypto/SubtleCrypto.idl', '../modules/crypto/WorkerCrypto.idl', '../modules/device_orientation/DeviceAcceleration.idl', '../modules/device_orientation/DeviceMotionEvent.idl', '../modules/device_orientation/DeviceOrientationEvent.idl', '../modules/device_orientation/DeviceRotationRate.idl', '../modules/encryptedmedia/MediaKeyMessageEvent.idl', '../modules/encryptedmedia/MediaKeyNeededEvent.idl', '../modules/encryptedmedia/MediaKeys.idl', '../modules/encryptedmedia/MediaKeySession.idl', '../modules/filesystem/DOMFileSystem.idl', '../modules/filesystem/DOMFileSystemSync.idl', '../modules/filesystem/DirectoryEntry.idl', '../modules/filesystem/DirectoryEntrySync.idl', '../modules/filesystem/DirectoryReader.idl', '../modules/filesystem/DirectoryReaderSync.idl', '../modules/filesystem/EntriesCallback.idl', '../modules/filesystem/Entry.idl', '../modules/filesystem/EntryArray.idl', '../modules/filesystem/EntryArraySync.idl', '../modules/filesystem/EntryCallback.idl', '../modules/filesystem/EntrySync.idl', '../modules/filesystem/ErrorCallback.idl', '../modules/filesystem/FileCallback.idl', '../modules/filesystem/FileEntry.idl', '../modules/filesystem/FileEntrySync.idl', '../modules/filesystem/FileSystemCallback.idl', '../modules/filesystem/FileWriter.idl', '../modules/filesystem/FileWriterCallback.idl', '../modules/filesystem/FileWriterSync.idl', '../modules/filesystem/Metadata.idl', '../modules/filesystem/MetadataCallback.idl', '../modules/gamepad/Gamepad.idl', '../modules/gamepad/GamepadList.idl', '../modules/geolocation/Coordinates.idl', '../modules/geolocation/Geolocation.idl', '../modules/geolocation/Geoposition.idl', '../modules/geolocation/PositionCallback.idl', '../modules/geolocation/PositionError.idl', '../modules/geolocation/PositionErrorCallback.idl', '../modules/indexeddb/IDBAny.idl', '../modules/indexeddb/IDBCursor.idl', '../modules/indexeddb/IDBCursorWithValue.idl', '../modules/indexeddb/IDBDatabase.idl', '../modules/indexeddb/IDBFactory.idl', '../modules/indexeddb/IDBIndex.idl', '../modules/indexeddb/IDBKeyRange.idl', '../modules/indexeddb/IDBObjectStore.idl', '../modules/indexeddb/IDBOpenDBRequest.idl', '../modules/indexeddb/IDBRequest.idl', '../modules/indexeddb/IDBTransaction.idl', '../modules/indexeddb/IDBVersionChangeEvent.idl', '../modules/mediasource/MediaSource.idl', '../modules/mediasource/SourceBuffer.idl', '../modules/mediasource/SourceBufferList.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/mediasource/WebKitMediaSource.idl', '../modules/mediasource/WebKitSourceBuffer.idl', '../modules/mediasource/WebKitSourceBufferList.idl', '../modules/mediastream/MediaStream.idl', '../modules/mediastream/MediaStreamEvent.idl', '../modules/mediastream/MediaStreamTrack.idl', '../modules/mediastream/MediaStreamTrackEvent.idl', '../modules/mediastream/MediaStreamTrackSourcesCallback.idl', '../modules/mediastream/NavigatorUserMediaError.idl', '../modules/mediastream/NavigatorUserMediaErrorCallback.idl', '../modules/mediastream/NavigatorUserMediaSuccessCallback.idl', '../modules/mediastream/RTCDTMFSender.idl', '../modules/mediastream/RTCDTMFToneChangeEvent.idl', '../modules/mediastream/RTCDataChannel.idl', '../modules/mediastream/RTCDataChannelEvent.idl', '../modules/mediastream/RTCErrorCallback.idl', '../modules/mediastream/RTCIceCandidate.idl', '../modules/mediastream/RTCIceCandidateEvent.idl', '../modules/mediastream/RTCPeerConnection.idl', '../modules/mediastream/RTCSessionDescription.idl', '../modules/mediastream/RTCSessionDescriptionCallback.idl', '../modules/mediastream/RTCStatsCallback.idl', '../modules/mediastream/RTCStatsReport.idl', '../modules/mediastream/RTCStatsResponse.idl', '../modules/mediastream/SourceInfo.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/notifications/Notification.idl', '../modules/notifications/NotificationCenter.idl', '../modules/notifications/NotificationPermissionCallback.idl', '../modules/performance/WorkerPerformance.idl', '../modules/quota/StorageErrorCallback.idl', '../modules/quota/StorageInfo.idl', '../modules/quota/StorageQuota.idl', '../modules/quota/StorageQuotaCallback.idl', '../modules/quota/StorageUsageCallback.idl', '../modules/speech/SpeechGrammar.idl', '../modules/speech/SpeechGrammarList.idl', '../modules/speech/SpeechRecognition.idl', '../modules/speech/SpeechRecognitionAlternative.idl', '../modules/speech/SpeechRecognitionError.idl', '../modules/speech/SpeechRecognitionEvent.idl', '../modules/speech/SpeechRecognitionResult.idl', '../modules/speech/SpeechRecognitionResultList.idl', '../modules/speech/SpeechSynthesis.idl', '../modules/speech/SpeechSynthesisEvent.idl', '../modules/speech/SpeechSynthesisUtterance.idl', '../modules/speech/SpeechSynthesisVoice.idl', '../modules/webaudio/AudioBuffer.idl', '../modules/webaudio/AudioBufferCallback.idl', '../modules/webaudio/AudioBufferSourceNode.idl', '../modules/webaudio/ChannelMergerNode.idl', '../modules/webaudio/ChannelSplitterNode.idl', '../modules/webaudio/AudioContext.idl', '../modules/webaudio/AudioDestinationNode.idl', '../modules/webaudio/GainNode.idl', '../modules/webaudio/AudioListener.idl', '../modules/webaudio/AudioNode.idl', '../modules/webaudio/PannerNode.idl', '../modules/webaudio/AudioParam.idl', '../modules/webaudio/AudioProcessingEvent.idl', '../modules/webaudio/AudioSourceNode.idl', '../modules/webaudio/BiquadFilterNode.idl', '../modules/webaudio/ConvolverNode.idl', '../modules/webaudio/DelayNode.idl', '../modules/webaudio/DynamicsCompressorNode.idl', '../modules/webaudio/ScriptProcessorNode.idl', '../modules/webaudio/MediaElementAudioSourceNode.idl', '../modules/webaudio/MediaStreamAudioDestinationNode.idl', '../modules/webaudio/MediaStreamAudioSourceNode.idl', '../modules/webaudio/OfflineAudioCompletionEvent.idl', '../modules/webaudio/OfflineAudioContext.idl', '../modules/webaudio/OscillatorNode.idl', '../modules/webaudio/PeriodicWave.idl', '../modules/webaudio/AnalyserNode.idl', '../modules/webaudio/WaveShaperNode.idl', '../modules/webdatabase/Database.idl', '../modules/webdatabase/DatabaseCallback.idl', '../modules/webdatabase/DatabaseSync.idl', '../modules/webdatabase/SQLError.idl', '../modules/webdatabase/SQLResultSet.idl', '../modules/webdatabase/SQLResultSetRowList.idl', '../modules/webdatabase/SQLStatementCallback.idl', '../modules/webdatabase/SQLStatementErrorCallback.idl', '../modules/webdatabase/SQLTransaction.idl', '../modules/webdatabase/SQLTransactionCallback.idl', '../modules/webdatabase/SQLTransactionErrorCallback.idl', '../modules/webdatabase/SQLTransactionSync.idl', '../modules/webdatabase/SQLTransactionSyncCallback.idl', '../modules/webmidi/MIDIAccess.idl', '../modules/webmidi/MIDIAccessPromise.idl', '../modules/webmidi/MIDIConnectionEvent.idl', '../modules/webmidi/MIDIErrorCallback.idl', '../modules/webmidi/MIDIInput.idl', '../modules/webmidi/MIDIMessageEvent.idl', '../modules/webmidi/MIDIOutput.idl', '../modules/webmidi/MIDIPort.idl', '../modules/webmidi/MIDISuccessCallback.idl', '../modules/websockets/CloseEvent.idl', '../modules/websockets/WebSocket.idl', '../core/svg/SVGAElement.idl', '../core/svg/SVGAltGlyphElement.idl', '../core/svg/SVGAltGlyphItemElement.idl', '../core/svg/SVGAltGlyphDefElement.idl', '../core/svg/SVGAngle.idl', '../core/svg/SVGAnimateColorElement.idl', '../core/svg/SVGAnimateMotionElement.idl', '../core/svg/SVGAnimateElement.idl', '../core/svg/SVGAnimateTransformElement.idl', '../core/svg/SVGAnimatedAngle.idl', '../core/svg/SVGAnimatedBoolean.idl', '../core/svg/SVGAnimatedEnumeration.idl', '../core/svg/SVGAnimatedInteger.idl', '../core/svg/SVGAnimatedLength.idl', '../core/svg/SVGAnimatedLengthList.idl', '../core/svg/SVGAnimatedNumber.idl', '../core/svg/SVGAnimatedNumberList.idl', '../core/svg/SVGAnimatedPreserveAspectRatio.idl', '../core/svg/SVGAnimatedRect.idl', '../core/svg/SVGAnimatedString.idl', '../core/svg/SVGAnimatedTransformList.idl', '../core/svg/SVGAnimationElement.idl', '../core/svg/SVGCircleElement.idl', '../core/svg/SVGClipPathElement.idl', '../core/svg/SVGColor.idl', '../core/svg/SVGComponentTransferFunctionElement.idl', '../core/svg/SVGCursorElement.idl', '../core/svg/SVGDefsElement.idl', '../core/svg/SVGDescElement.idl', '../core/svg/SVGDocument.idl', '../core/svg/SVGElement.idl', '../core/svg/SVGElementInstance.idl', '../core/svg/SVGElementInstanceList.idl', '../core/svg/SVGEllipseElement.idl', '../core/svg/SVGFEBlendElement.idl', '../core/svg/SVGFEColorMatrixElement.idl', '../core/svg/SVGFEComponentTransferElement.idl', '../core/svg/SVGFECompositeElement.idl', '../core/svg/SVGFEConvolveMatrixElement.idl', '../core/svg/SVGFEDiffuseLightingElement.idl', '../core/svg/SVGFEDisplacementMapElement.idl', '../core/svg/SVGFEDistantLightElement.idl', '../core/svg/SVGFEDropShadowElement.idl', '../core/svg/SVGFEFloodElement.idl', '../core/svg/SVGFEFuncAElement.idl', '../core/svg/SVGFEFuncBElement.idl', '../core/svg/SVGFEFuncGElement.idl', '../core/svg/SVGFEFuncRElement.idl', '../core/svg/SVGFEGaussianBlurElement.idl', '../core/svg/SVGFEImageElement.idl', '../core/svg/SVGFEMergeElement.idl', '../core/svg/SVGFEMergeNodeElement.idl', '../core/svg/SVGFEMorphologyElement.idl', '../core/svg/SVGFEOffsetElement.idl', '../core/svg/SVGFEPointLightElement.idl', '../core/svg/SVGFESpecularLightingElement.idl', '../core/svg/SVGFESpotLightElement.idl', '../core/svg/SVGFETileElement.idl', '../core/svg/SVGFETurbulenceElement.idl', '../core/svg/SVGFilterElement.idl', '../core/svg/SVGFontElement.idl', '../core/svg/SVGFontFaceElement.idl', '../core/svg/SVGFontFaceFormatElement.idl', '../core/svg/SVGFontFaceNameElement.idl', '../core/svg/SVGFontFaceSrcElement.idl', '../core/svg/SVGFontFaceUriElement.idl', '../core/svg/SVGForeignObjectElement.idl', '../core/svg/SVGGElement.idl', '../core/svg/SVGGlyphElement.idl', '../core/svg/SVGGlyphRefElement.idl', '../core/svg/SVGGradientElement.idl', '../core/svg/SVGGraphicsElement.idl', '../core/svg/SVGHKernElement.idl', '../core/svg/SVGImageElement.idl', '../core/svg/SVGLength.idl', '../core/svg/SVGLengthList.idl', '../core/svg/SVGLineElement.idl', '../core/svg/SVGLinearGradientElement.idl', '../core/svg/SVGMarkerElement.idl', '../core/svg/SVGMaskElement.idl', '../core/svg/SVGMatrix.idl', '../core/svg/SVGMetadataElement.idl', '../core/svg/SVGMissingGlyphElement.idl', '../core/svg/SVGMPathElement.idl', '../core/svg/SVGNumber.idl', '../core/svg/SVGNumberList.idl', '../core/svg/SVGPaint.idl', '../core/svg/SVGPathElement.idl', '../core/svg/SVGPathSeg.idl', '../core/svg/SVGPathSegArcAbs.idl', '../core/svg/SVGPathSegArcRel.idl', '../core/svg/SVGPathSegClosePath.idl', '../core/svg/SVGPathSegCurvetoCubicAbs.idl', '../core/svg/SVGPathSegCurvetoCubicRel.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl', '../core/svg/SVGPathSegLinetoAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalRel.idl', '../core/svg/SVGPathSegLinetoRel.idl', '../core/svg/SVGPathSegLinetoVerticalAbs.idl', '../core/svg/SVGPathSegLinetoVerticalRel.idl', '../core/svg/SVGPathSegList.idl', '../core/svg/SVGPathSegMovetoAbs.idl', '../core/svg/SVGPathSegMovetoRel.idl', '../core/svg/SVGPatternElement.idl', '../core/svg/SVGPoint.idl', '../core/svg/SVGPointList.idl', '../core/svg/SVGPolygonElement.idl', '../core/svg/SVGPolylineElement.idl', '../core/svg/SVGPreserveAspectRatio.idl', '../core/svg/SVGRadialGradientElement.idl', '../core/svg/SVGRect.idl', '../core/svg/SVGRectElement.idl', '../core/svg/SVGRenderingIntent.idl', '../core/svg/SVGSVGElement.idl', '../core/svg/SVGScriptElement.idl', '../core/svg/SVGSetElement.idl', '../core/svg/SVGStopElement.idl', '../core/svg/SVGStringList.idl', '../core/svg/SVGStyleElement.idl', '../core/svg/SVGStyledElement.idl', '../core/svg/SVGSwitchElement.idl', '../core/svg/SVGSymbolElement.idl', '../core/svg/SVGTRefElement.idl', '../core/svg/SVGTSpanElement.idl', '../core/svg/SVGTextContentElement.idl', '../core/svg/SVGTextElement.idl', '../core/svg/SVGTextPathElement.idl', '../core/svg/SVGTextPositioningElement.idl', '../core/svg/SVGTitleElement.idl', '../core/svg/SVGTransform.idl', '../core/svg/SVGTransformList.idl', '../core/svg/SVGUnitTypes.idl', '../core/svg/SVGUseElement.idl', '../core/svg/SVGViewElement.idl', '../core/svg/SVGViewSpec.idl', '../core/svg/SVGVKernElement.idl', '../core/svg/SVGZoomEvent.idl', '../core/testing/Internals.idl', '../core/testing/InternalProfilers.idl', '../core/testing/InternalSettings.idl', '../core/testing/LayerRect.idl', '../core/testing/LayerRectList.idl', '../core/testing/MallocStatistics.idl', '../core/testing/TypeConversions.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl'], 'action': ['perl', '-w', '-Iscripts', '-I../core/scripts', '-I../../../../third_party/JSON/out/lib/perl5', 'scripts/deprecated_generate_bindings.pl', '--outputDir', '$(gyp_shared_intermediate_dir)/webkit/bindings', '--idlAttributesFile', 'scripts/IDLAttributes.txt', '--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit', '--interfaceDependenciesFile', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '--additionalIdlFiles', '../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl "$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl" "$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl"', '--preprocessor', '/usr/bin/gcc -E -P -x c++', '--write-file-only-if-changed', '0', '$(RULE_SOURCES)'], 'message': 'Generating binding from $(RULE_SOURCES)'}":
+# "{'inputs': ['scripts/deprecated_generate_bindings.pl', 'scripts/deprecated_code_generator_v8.pm', 'scripts/deprecated_idl_parser.pm', 'scripts/deprecated_idl_serializer.pm', '../core/scripts/preprocessor.pm', 'scripts/IDLAttributes.txt', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '../modules/filesystem/HTMLInputElementFileSystem.idl', '../core/dom/DocumentFullscreen.idl', '../modules/geolocation/NavigatorGeolocation.idl', '../modules/mediasource/WindowMediaSource.idl', '../modules/filesystem/WindowFileSystem.idl', '../modules/indexeddb/WindowIndexedDatabase.idl', '../modules/navigatorcontentutils/NavigatorContentUtils.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/quota/WindowQuota.idl', '../modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl', '../modules/webmidi/NavigatorWebMIDI.idl', '../modules/notifications/WorkerGlobalScopeNotifications.idl', '../modules/webdatabase/WindowWebDatabase.idl', '../core/page/WindowPagePopup.idl', '../modules/webdatabase/WorkerGlobalScopeWebDatabase.idl', '../modules/mediastream/NavigatorMediaStream.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/crypto/WorkerGlobalScopeCrypto.idl', '../modules/filesystem/DataTransferItemFileSystem.idl', '../modules/gamepad/NavigatorGamepad.idl', '../core/xml/DocumentXPathEvaluator.idl', '../modules/filesystem/WorkerGlobalScopeFileSystem.idl', '../modules/donottrack/NavigatorDoNotTrack.idl', '../modules/notifications/WindowNotifications.idl', '$(gyp_shared_intermediate_dir)/WindowConstructors.idl', '$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl', '$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl'], 'msvs_cygwin_shell': '0', 'extension': 'idl', 'msvs_external_rule': '1', 'outputs': ['$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.cpp', '$(gyp_shared_intermediate_dir)/webkit/bindings/V8%(INPUT_ROOT)s.h'], 'variables': {'extra_blink_generator_include_dirs%': [], 'generator_include_dirs': ['--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit']}, 'rule_name': 'deprecated_perl_binding', 'rule_sources': ['../core/css/CSS.idl', '../core/css/CSSCharsetRule.idl', '../core/css/CSSFontFaceLoadEvent.idl', '../core/css/CSSFontFaceRule.idl', '../core/css/CSSHostRule.idl', '../core/css/CSSImportRule.idl', '../core/css/CSSMediaRule.idl', '../core/css/CSSPageRule.idl', '../core/css/CSSPrimitiveValue.idl', '../core/css/CSSRule.idl', '../core/css/CSSRuleList.idl', '../core/css/CSSStyleDeclaration.idl', '../core/css/CSSStyleRule.idl', '../core/css/CSSStyleSheet.idl', '../core/css/CSSSupportsRule.idl', '../core/css/CSSValue.idl', '../core/css/CSSValueList.idl', '../core/css/CSSViewportRule.idl', '../core/css/CSSVariablesMap.idl', '../core/css/Counter.idl', '../core/css/FontLoader.idl', '../core/css/MediaList.idl', '../core/css/MediaQueryList.idl', '../core/css/Rect.idl', '../core/css/RGBColor.idl', '../core/css/StyleMedia.idl', '../core/css/StyleSheet.idl', '../core/css/StyleSheetList.idl', '../core/css/WebKitCSSFilterRule.idl', '../core/css/WebKitCSSFilterValue.idl', '../core/css/WebKitCSSKeyframeRule.idl', '../core/css/WebKitCSSKeyframesRule.idl', '../core/css/WebKitCSSMatrix.idl', '../core/css/WebKitCSSMixFunctionValue.idl', '../core/css/WebKitCSSRegionRule.idl', '../core/css/WebKitCSSTransformValue.idl', '../core/dom/Attr.idl', '../core/dom/AutocompleteErrorEvent.idl', '../core/dom/BeforeLoadEvent.idl', '../core/dom/CDATASection.idl', '../core/dom/CharacterData.idl', '../core/dom/ClientRect.idl', '../core/dom/ClientRectList.idl', '../core/dom/Clipboard.idl', '../core/dom/Comment.idl', '../core/dom/CompositionEvent.idl', '../core/dom/CustomEvent.idl', '../core/dom/DOMError.idl', '../core/dom/DOMException.idl', '../core/dom/DOMImplementation.idl', '../core/dom/DOMStringList.idl', '../core/dom/DOMStringMap.idl', '../core/dom/DataTransferItem.idl', '../core/dom/DataTransferItemList.idl', '../core/dom/Document.idl', '../core/dom/DocumentFragment.idl', '../core/dom/DocumentType.idl', '../core/dom/Element.idl', '../core/dom/Entity.idl', '../core/dom/ErrorEvent.idl', '../core/dom/Event.idl', '../core/dom/EventTarget.idl', '../core/dom/FocusEvent.idl', '../core/dom/HashChangeEvent.idl', '../core/dom/KeyboardEvent.idl', '../core/dom/MessageChannel.idl', '../core/dom/MessageEvent.idl', '../core/dom/MessagePort.idl', '../core/dom/MouseEvent.idl', '../core/dom/MutationEvent.idl', '../core/dom/MutationObserver.idl', '../core/dom/MutationRecord.idl', '../core/dom/NamedNodeMap.idl', '../core/dom/Node.idl', '../core/dom/NodeFilter.idl', '../core/dom/NodeIterator.idl', '../core/dom/NodeList.idl', '../core/dom/Notation.idl', '../core/dom/OverflowEvent.idl', '../core/dom/PageTransitionEvent.idl', '../core/dom/PopStateEvent.idl', '../core/dom/ProcessingInstruction.idl', '../core/dom/ProgressEvent.idl', '../core/dom/Promise.idl', '../core/dom/PromiseResolver.idl', '../core/dom/Range.idl', '../core/dom/RequestAnimationFrameCallback.idl', '../core/dom/ResourceProgressEvent.idl', '../core/dom/SecurityPolicyViolationEvent.idl', '../core/dom/StringCallback.idl', '../core/dom/Text.idl', '../core/dom/TextEvent.idl', '../core/dom/Touch.idl', '../core/dom/TouchEvent.idl', '../core/dom/TouchList.idl', '../core/dom/TransitionEvent.idl', '../core/dom/TreeWalker.idl', '../core/dom/UIEvent.idl', '../core/dom/WebKitAnimationEvent.idl', '../core/dom/WebKitNamedFlow.idl', '../core/dom/WebKitNamedFlowCollection.idl', '../core/dom/WheelEvent.idl', '../core/dom/shadow/ShadowRoot.idl', '../core/fileapi/Blob.idl', '../core/fileapi/File.idl', '../core/fileapi/FileError.idl', '../core/fileapi/FileList.idl', '../core/fileapi/FileReader.idl', '../core/fileapi/FileReaderSync.idl', '../core/fileapi/Stream.idl', '../core/html/DOMSettableTokenList.idl', '../core/html/DOMTokenList.idl', '../core/html/FormData.idl', '../core/html/HTMLAllCollection.idl', '../core/html/HTMLAnchorElement.idl', '../core/html/HTMLAppletElement.idl', '../core/html/HTMLAreaElement.idl', '../core/html/HTMLAudioElement.idl', '../core/html/HTMLBRElement.idl', '../core/html/HTMLBaseElement.idl', '../core/html/HTMLBodyElement.idl', '../core/html/HTMLButtonElement.idl', '../core/html/HTMLCanvasElement.idl', '../core/html/HTMLCollection.idl', '../core/html/HTMLDListElement.idl', '../core/html/HTMLDataListElement.idl', '../core/html/HTMLDetailsElement.idl', '../core/html/HTMLDialogElement.idl', '../core/html/HTMLDirectoryElement.idl', '../core/html/HTMLDivElement.idl', '../core/html/HTMLDocument.idl', '../core/html/HTMLElement.idl', '../core/html/HTMLEmbedElement.idl', '../core/html/HTMLFieldSetElement.idl', '../core/html/HTMLFontElement.idl', '../core/html/HTMLFormControlsCollection.idl', '../core/html/HTMLFormElement.idl', '../core/html/HTMLFrameElement.idl', '../core/html/HTMLFrameSetElement.idl', '../core/html/HTMLHRElement.idl', '../core/html/HTMLHeadElement.idl', '../core/html/HTMLHeadingElement.idl', '../core/html/HTMLHtmlElement.idl', '../core/html/HTMLIFrameElement.idl', '../core/html/HTMLImageElement.idl', '../core/html/HTMLInputElement.idl', '../core/html/HTMLKeygenElement.idl', '../core/html/HTMLLIElement.idl', '../core/html/HTMLLabelElement.idl', '../core/html/HTMLLegendElement.idl', '../core/html/HTMLLinkElement.idl', '../core/html/HTMLMapElement.idl', '../core/html/HTMLMarqueeElement.idl', '../core/html/HTMLMediaElement.idl', '../core/html/HTMLMenuElement.idl', '../core/html/HTMLMetaElement.idl', '../core/html/HTMLMeterElement.idl', '../core/html/HTMLModElement.idl', '../core/html/HTMLOListElement.idl', '../core/html/HTMLObjectElement.idl', '../core/html/HTMLOptGroupElement.idl', '../core/html/HTMLOptionElement.idl', '../core/html/HTMLOptionsCollection.idl', '../core/html/HTMLOutputElement.idl', '../core/html/HTMLParagraphElement.idl', '../core/html/HTMLParamElement.idl', '../core/html/HTMLPreElement.idl', '../core/html/HTMLProgressElement.idl', '../core/html/HTMLQuoteElement.idl', '../core/html/HTMLScriptElement.idl', '../core/html/HTMLSelectElement.idl', '../core/html/HTMLSourceElement.idl', '../core/html/HTMLSpanElement.idl', '../core/html/HTMLStyleElement.idl', '../core/html/HTMLTableCaptionElement.idl', '../core/html/HTMLTableCellElement.idl', '../core/html/HTMLTableColElement.idl', '../core/html/HTMLTableElement.idl', '../core/html/HTMLTableRowElement.idl', '../core/html/HTMLTableSectionElement.idl', '../core/html/HTMLTextAreaElement.idl', '../core/html/HTMLTemplateElement.idl', '../core/html/HTMLTitleElement.idl', '../core/html/HTMLTrackElement.idl', '../core/html/HTMLUListElement.idl', '../core/html/HTMLUnknownElement.idl', '../core/html/HTMLVideoElement.idl', '../core/html/ImageData.idl', '../core/html/MediaController.idl', '../core/html/MediaError.idl', '../core/html/MediaKeyError.idl', '../core/html/MediaKeyEvent.idl', '../core/html/RadioNodeList.idl', '../core/html/TextMetrics.idl', '../core/html/TimeRanges.idl', '../core/html/URL.idl', '../core/html/ValidityState.idl', '../core/html/VoidCallback.idl', '../core/html/canvas/ANGLEInstancedArrays.idl', '../core/html/canvas/ArrayBufferView.idl', '../core/html/canvas/CanvasGradient.idl', '../core/html/canvas/CanvasPattern.idl', '../core/html/canvas/CanvasRenderingContext.idl', '../core/html/canvas/CanvasRenderingContext2D.idl', '../core/html/canvas/Canvas2DContextAttributes.idl', '../core/html/canvas/DataView.idl', '../core/html/canvas/EXTFragDepth.idl', '../core/html/canvas/EXTTextureFilterAnisotropic.idl', '../core/html/canvas/Float32Array.idl', '../core/html/canvas/Float64Array.idl', '../core/html/canvas/Int16Array.idl', '../core/html/canvas/Int32Array.idl', '../core/html/canvas/Int8Array.idl', '../core/html/canvas/OESStandardDerivatives.idl', '../core/html/canvas/OESTextureFloat.idl', '../core/html/canvas/OESTextureFloatLinear.idl', '../core/html/canvas/OESTextureHalfFloat.idl', '../core/html/canvas/OESTextureHalfFloatLinear.idl', '../core/html/canvas/OESVertexArrayObject.idl', '../core/html/canvas/OESElementIndexUint.idl', '../core/html/canvas/Path.idl', '../core/html/canvas/Uint16Array.idl', '../core/html/canvas/Uint32Array.idl', '../core/html/canvas/Uint8Array.idl', '../core/html/canvas/Uint8ClampedArray.idl', '../core/html/canvas/WebGLActiveInfo.idl', '../core/html/canvas/WebGLBuffer.idl', '../core/html/canvas/WebGLCompressedTextureATC.idl', '../core/html/canvas/WebGLCompressedTexturePVRTC.idl', '../core/html/canvas/WebGLCompressedTextureS3TC.idl', '../core/html/canvas/WebGLContextAttributes.idl', '../core/html/canvas/WebGLContextEvent.idl', '../core/html/canvas/WebGLDebugRendererInfo.idl', '../core/html/canvas/WebGLDebugShaders.idl', '../core/html/canvas/WebGLDepthTexture.idl', '../core/html/canvas/WebGLDrawBuffers.idl', '../core/html/canvas/WebGLFramebuffer.idl', '../core/html/canvas/WebGLLoseContext.idl', '../core/html/canvas/WebGLProgram.idl', '../core/html/canvas/WebGLRenderbuffer.idl', '../core/html/canvas/WebGLRenderingContext.idl', '../core/html/canvas/WebGLShader.idl', '../core/html/canvas/WebGLShaderPrecisionFormat.idl', '../core/html/canvas/WebGLTexture.idl', '../core/html/canvas/WebGLUniformLocation.idl', '../core/html/canvas/WebGLVertexArrayObjectOES.idl', '../core/html/ime/Composition.idl', '../core/html/ime/InputMethodContext.idl', '../core/html/shadow/HTMLContentElement.idl', '../core/html/shadow/HTMLShadowElement.idl', '../core/html/track/TextTrack.idl', '../core/html/track/TextTrackCue.idl', '../core/html/track/TextTrackCueList.idl', '../core/html/track/TextTrackList.idl', '../core/html/track/TrackEvent.idl', '../core/html/track/TextTrackRegion.idl', '../core/html/track/TextTrackRegionList.idl', '../core/inspector/InjectedScriptHost.idl', '../core/inspector/InspectorFrontendHost.idl', '../core/inspector/InspectorOverlayHost.idl', '../core/inspector/JavaScriptCallFrame.idl', '../core/loader/appcache/DOMApplicationCache.idl', '../core/page/BarProp.idl', '../core/page/Console.idl', '../core/page/EventSource.idl', '../core/page/History.idl', '../core/page/ImageBitmap.idl', '../core/page/ImageBitmapCallback.idl', '../core/page/Location.idl', '../core/page/MemoryInfo.idl', '../core/page/Navigator.idl', '../core/page/PagePopupController.idl', '../core/page/Performance.idl', '../core/page/PerformanceEntry.idl', '../core/page/PerformanceMark.idl', '../core/page/PerformanceMeasure.idl', '../core/page/PerformanceNavigation.idl', '../core/page/PerformanceResourceTiming.idl', '../core/page/PerformanceTiming.idl', '../core/page/Screen.idl', '../core/page/SecurityPolicy.idl', '../core/page/Selection.idl', '../core/page/SpeechInputEvent.idl', '../core/page/SpeechInputResult.idl', '../core/page/SpeechInputResultList.idl', '../core/page/WebKitPoint.idl', '../core/page/Window.idl', '../core/page/WindowBase64.idl', '../core/page/WindowTimers.idl', '../core/page/WorkerNavigator.idl', '../core/plugins/MimeType.idl', '../core/plugins/MimeTypeArray.idl', '../core/plugins/Plugin.idl', '../core/plugins/PluginArray.idl', '../core/storage/Storage.idl', '../core/storage/StorageEvent.idl', '../core/workers/DedicatedWorkerGlobalScope.idl', '../core/workers/SharedWorker.idl', '../core/workers/SharedWorkerGlobalScope.idl', '../core/workers/Worker.idl', '../core/workers/WorkerGlobalScope.idl', '../core/workers/WorkerLocation.idl', '../core/xml/DOMParser.idl', '../core/xml/DocumentXPathEvaluator.idl', '../core/xml/XMLHttpRequest.idl', '../core/xml/XMLHttpRequestProgressEvent.idl', '../core/xml/XMLHttpRequestUpload.idl', '../core/xml/XMLSerializer.idl', '../core/xml/XPathEvaluator.idl', '../core/xml/XPathExpression.idl', '../core/xml/XPathNSResolver.idl', '../core/xml/XPathResult.idl', '../core/xml/XSLTProcessor.idl', '../modules/crypto/AesCbcParams.idl', '../modules/crypto/AesKeyGenParams.idl', '../modules/crypto/Algorithm.idl', '../modules/crypto/Crypto.idl', '../modules/crypto/CryptoOperation.idl', '../modules/crypto/HmacParams.idl', '../modules/crypto/Key.idl', '../modules/crypto/SubtleCrypto.idl', '../modules/crypto/WorkerCrypto.idl', '../modules/device_orientation/DeviceAcceleration.idl', '../modules/device_orientation/DeviceMotionEvent.idl', '../modules/device_orientation/DeviceOrientationEvent.idl', '../modules/device_orientation/DeviceRotationRate.idl', '../modules/encryptedmedia/MediaKeyMessageEvent.idl', '../modules/encryptedmedia/MediaKeyNeededEvent.idl', '../modules/encryptedmedia/MediaKeys.idl', '../modules/encryptedmedia/MediaKeySession.idl', '../modules/filesystem/DOMFileSystem.idl', '../modules/filesystem/DOMFileSystemSync.idl', '../modules/filesystem/DirectoryEntry.idl', '../modules/filesystem/DirectoryEntrySync.idl', '../modules/filesystem/DirectoryReader.idl', '../modules/filesystem/DirectoryReaderSync.idl', '../modules/filesystem/EntriesCallback.idl', '../modules/filesystem/Entry.idl', '../modules/filesystem/EntryArray.idl', '../modules/filesystem/EntryArraySync.idl', '../modules/filesystem/EntryCallback.idl', '../modules/filesystem/EntrySync.idl', '../modules/filesystem/ErrorCallback.idl', '../modules/filesystem/FileCallback.idl', '../modules/filesystem/FileEntry.idl', '../modules/filesystem/FileEntrySync.idl', '../modules/filesystem/FileSystemCallback.idl', '../modules/filesystem/FileWriter.idl', '../modules/filesystem/FileWriterCallback.idl', '../modules/filesystem/FileWriterSync.idl', '../modules/filesystem/Metadata.idl', '../modules/filesystem/MetadataCallback.idl', '../modules/gamepad/Gamepad.idl', '../modules/gamepad/GamepadList.idl', '../modules/geolocation/Coordinates.idl', '../modules/geolocation/Geolocation.idl', '../modules/geolocation/Geoposition.idl', '../modules/geolocation/PositionCallback.idl', '../modules/geolocation/PositionError.idl', '../modules/geolocation/PositionErrorCallback.idl', '../modules/indexeddb/IDBAny.idl', '../modules/indexeddb/IDBCursor.idl', '../modules/indexeddb/IDBCursorWithValue.idl', '../modules/indexeddb/IDBDatabase.idl', '../modules/indexeddb/IDBFactory.idl', '../modules/indexeddb/IDBIndex.idl', '../modules/indexeddb/IDBKeyRange.idl', '../modules/indexeddb/IDBObjectStore.idl', '../modules/indexeddb/IDBOpenDBRequest.idl', '../modules/indexeddb/IDBRequest.idl', '../modules/indexeddb/IDBTransaction.idl', '../modules/indexeddb/IDBVersionChangeEvent.idl', '../modules/mediasource/MediaSource.idl', '../modules/mediasource/SourceBuffer.idl', '../modules/mediasource/SourceBufferList.idl', '../modules/mediasource/URLMediaSource.idl', '../modules/mediasource/WebKitMediaSource.idl', '../modules/mediasource/WebKitSourceBuffer.idl', '../modules/mediasource/WebKitSourceBufferList.idl', '../modules/mediastream/MediaStream.idl', '../modules/mediastream/MediaStreamEvent.idl', '../modules/mediastream/MediaStreamTrack.idl', '../modules/mediastream/MediaStreamTrackEvent.idl', '../modules/mediastream/MediaStreamTrackSourcesCallback.idl', '../modules/mediastream/NavigatorUserMediaError.idl', '../modules/mediastream/NavigatorUserMediaErrorCallback.idl', '../modules/mediastream/NavigatorUserMediaSuccessCallback.idl', '../modules/mediastream/RTCDTMFSender.idl', '../modules/mediastream/RTCDTMFToneChangeEvent.idl', '../modules/mediastream/RTCDataChannel.idl', '../modules/mediastream/RTCDataChannelEvent.idl', '../modules/mediastream/RTCErrorCallback.idl', '../modules/mediastream/RTCIceCandidate.idl', '../modules/mediastream/RTCIceCandidateEvent.idl', '../modules/mediastream/RTCPeerConnection.idl', '../modules/mediastream/RTCSessionDescription.idl', '../modules/mediastream/RTCSessionDescriptionCallback.idl', '../modules/mediastream/RTCStatsCallback.idl', '../modules/mediastream/RTCStatsReport.idl', '../modules/mediastream/RTCStatsResponse.idl', '../modules/mediastream/SourceInfo.idl', '../modules/mediastream/URLMediaStream.idl', '../modules/notifications/Notification.idl', '../modules/notifications/NotificationCenter.idl', '../modules/notifications/NotificationPermissionCallback.idl', '../modules/performance/WorkerPerformance.idl', '../modules/quota/StorageErrorCallback.idl', '../modules/quota/StorageInfo.idl', '../modules/quota/StorageQuota.idl', '../modules/quota/StorageQuotaCallback.idl', '../modules/quota/StorageUsageCallback.idl', '../modules/speech/SpeechGrammar.idl', '../modules/speech/SpeechGrammarList.idl', '../modules/speech/SpeechRecognition.idl', '../modules/speech/SpeechRecognitionAlternative.idl', '../modules/speech/SpeechRecognitionError.idl', '../modules/speech/SpeechRecognitionEvent.idl', '../modules/speech/SpeechRecognitionResult.idl', '../modules/speech/SpeechRecognitionResultList.idl', '../modules/speech/SpeechSynthesis.idl', '../modules/speech/SpeechSynthesisEvent.idl', '../modules/speech/SpeechSynthesisUtterance.idl', '../modules/speech/SpeechSynthesisVoice.idl', '../modules/webaudio/AudioBuffer.idl', '../modules/webaudio/AudioBufferCallback.idl', '../modules/webaudio/AudioBufferSourceNode.idl', '../modules/webaudio/ChannelMergerNode.idl', '../modules/webaudio/ChannelSplitterNode.idl', '../modules/webaudio/AudioContext.idl', '../modules/webaudio/AudioDestinationNode.idl', '../modules/webaudio/GainNode.idl', '../modules/webaudio/AudioListener.idl', '../modules/webaudio/AudioNode.idl', '../modules/webaudio/PannerNode.idl', '../modules/webaudio/AudioParam.idl', '../modules/webaudio/AudioProcessingEvent.idl', '../modules/webaudio/AudioSourceNode.idl', '../modules/webaudio/BiquadFilterNode.idl', '../modules/webaudio/ConvolverNode.idl', '../modules/webaudio/DelayNode.idl', '../modules/webaudio/DynamicsCompressorNode.idl', '../modules/webaudio/ScriptProcessorNode.idl', '../modules/webaudio/MediaElementAudioSourceNode.idl', '../modules/webaudio/MediaStreamAudioDestinationNode.idl', '../modules/webaudio/MediaStreamAudioSourceNode.idl', '../modules/webaudio/OfflineAudioCompletionEvent.idl', '../modules/webaudio/OfflineAudioContext.idl', '../modules/webaudio/OscillatorNode.idl', '../modules/webaudio/PeriodicWave.idl', '../modules/webaudio/AnalyserNode.idl', '../modules/webaudio/WaveShaperNode.idl', '../modules/webdatabase/Database.idl', '../modules/webdatabase/DatabaseCallback.idl', '../modules/webdatabase/DatabaseSync.idl', '../modules/webdatabase/SQLError.idl', '../modules/webdatabase/SQLResultSet.idl', '../modules/webdatabase/SQLResultSetRowList.idl', '../modules/webdatabase/SQLStatementCallback.idl', '../modules/webdatabase/SQLStatementErrorCallback.idl', '../modules/webdatabase/SQLTransaction.idl', '../modules/webdatabase/SQLTransactionCallback.idl', '../modules/webdatabase/SQLTransactionErrorCallback.idl', '../modules/webdatabase/SQLTransactionSync.idl', '../modules/webdatabase/SQLTransactionSyncCallback.idl', '../modules/webmidi/MIDIAccess.idl', '../modules/webmidi/MIDIAccessPromise.idl', '../modules/webmidi/MIDIConnectionEvent.idl', '../modules/webmidi/MIDIErrorCallback.idl', '../modules/webmidi/MIDIInput.idl', '../modules/webmidi/MIDIMessageEvent.idl', '../modules/webmidi/MIDIOutput.idl', '../modules/webmidi/MIDIPort.idl', '../modules/webmidi/MIDISuccessCallback.idl', '../modules/websockets/CloseEvent.idl', '../modules/websockets/WebSocket.idl', '../core/svg/SVGAElement.idl', '../core/svg/SVGAltGlyphElement.idl', '../core/svg/SVGAltGlyphItemElement.idl', '../core/svg/SVGAltGlyphDefElement.idl', '../core/svg/SVGAngle.idl', '../core/svg/SVGAnimateColorElement.idl', '../core/svg/SVGAnimateMotionElement.idl', '../core/svg/SVGAnimateElement.idl', '../core/svg/SVGAnimateTransformElement.idl', '../core/svg/SVGAnimatedAngle.idl', '../core/svg/SVGAnimatedBoolean.idl', '../core/svg/SVGAnimatedEnumeration.idl', '../core/svg/SVGAnimatedInteger.idl', '../core/svg/SVGAnimatedLength.idl', '../core/svg/SVGAnimatedLengthList.idl', '../core/svg/SVGAnimatedNumber.idl', '../core/svg/SVGAnimatedNumberList.idl', '../core/svg/SVGAnimatedPreserveAspectRatio.idl', '../core/svg/SVGAnimatedRect.idl', '../core/svg/SVGAnimatedString.idl', '../core/svg/SVGAnimatedTransformList.idl', '../core/svg/SVGAnimationElement.idl', '../core/svg/SVGCircleElement.idl', '../core/svg/SVGClipPathElement.idl', '../core/svg/SVGColor.idl', '../core/svg/SVGComponentTransferFunctionElement.idl', '../core/svg/SVGCursorElement.idl', '../core/svg/SVGDefsElement.idl', '../core/svg/SVGDescElement.idl', '../core/svg/SVGDocument.idl', '../core/svg/SVGElement.idl', '../core/svg/SVGElementInstance.idl', '../core/svg/SVGElementInstanceList.idl', '../core/svg/SVGEllipseElement.idl', '../core/svg/SVGFEBlendElement.idl', '../core/svg/SVGFEColorMatrixElement.idl', '../core/svg/SVGFEComponentTransferElement.idl', '../core/svg/SVGFECompositeElement.idl', '../core/svg/SVGFEConvolveMatrixElement.idl', '../core/svg/SVGFEDiffuseLightingElement.idl', '../core/svg/SVGFEDisplacementMapElement.idl', '../core/svg/SVGFEDistantLightElement.idl', '../core/svg/SVGFEDropShadowElement.idl', '../core/svg/SVGFEFloodElement.idl', '../core/svg/SVGFEFuncAElement.idl', '../core/svg/SVGFEFuncBElement.idl', '../core/svg/SVGFEFuncGElement.idl', '../core/svg/SVGFEFuncRElement.idl', '../core/svg/SVGFEGaussianBlurElement.idl', '../core/svg/SVGFEImageElement.idl', '../core/svg/SVGFEMergeElement.idl', '../core/svg/SVGFEMergeNodeElement.idl', '../core/svg/SVGFEMorphologyElement.idl', '../core/svg/SVGFEOffsetElement.idl', '../core/svg/SVGFEPointLightElement.idl', '../core/svg/SVGFESpecularLightingElement.idl', '../core/svg/SVGFESpotLightElement.idl', '../core/svg/SVGFETileElement.idl', '../core/svg/SVGFETurbulenceElement.idl', '../core/svg/SVGFilterElement.idl', '../core/svg/SVGFontElement.idl', '../core/svg/SVGFontFaceElement.idl', '../core/svg/SVGFontFaceFormatElement.idl', '../core/svg/SVGFontFaceNameElement.idl', '../core/svg/SVGFontFaceSrcElement.idl', '../core/svg/SVGFontFaceUriElement.idl', '../core/svg/SVGForeignObjectElement.idl', '../core/svg/SVGGElement.idl', '../core/svg/SVGGlyphElement.idl', '../core/svg/SVGGlyphRefElement.idl', '../core/svg/SVGGradientElement.idl', '../core/svg/SVGGraphicsElement.idl', '../core/svg/SVGHKernElement.idl', '../core/svg/SVGImageElement.idl', '../core/svg/SVGLength.idl', '../core/svg/SVGLengthList.idl', '../core/svg/SVGLineElement.idl', '../core/svg/SVGLinearGradientElement.idl', '../core/svg/SVGMarkerElement.idl', '../core/svg/SVGMaskElement.idl', '../core/svg/SVGMatrix.idl', '../core/svg/SVGMetadataElement.idl', '../core/svg/SVGMissingGlyphElement.idl', '../core/svg/SVGMPathElement.idl', '../core/svg/SVGNumber.idl', '../core/svg/SVGNumberList.idl', '../core/svg/SVGPaint.idl', '../core/svg/SVGPathElement.idl', '../core/svg/SVGPathSeg.idl', '../core/svg/SVGPathSegArcAbs.idl', '../core/svg/SVGPathSegArcRel.idl', '../core/svg/SVGPathSegClosePath.idl', '../core/svg/SVGPathSegCurvetoCubicAbs.idl', '../core/svg/SVGPathSegCurvetoCubicRel.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoCubicSmoothRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticRel.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl', '../core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl', '../core/svg/SVGPathSegLinetoAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalAbs.idl', '../core/svg/SVGPathSegLinetoHorizontalRel.idl', '../core/svg/SVGPathSegLinetoRel.idl', '../core/svg/SVGPathSegLinetoVerticalAbs.idl', '../core/svg/SVGPathSegLinetoVerticalRel.idl', '../core/svg/SVGPathSegList.idl', '../core/svg/SVGPathSegMovetoAbs.idl', '../core/svg/SVGPathSegMovetoRel.idl', '../core/svg/SVGPatternElement.idl', '../core/svg/SVGPoint.idl', '../core/svg/SVGPointList.idl', '../core/svg/SVGPolygonElement.idl', '../core/svg/SVGPolylineElement.idl', '../core/svg/SVGPreserveAspectRatio.idl', '../core/svg/SVGRadialGradientElement.idl', '../core/svg/SVGRect.idl', '../core/svg/SVGRectElement.idl', '../core/svg/SVGRenderingIntent.idl', '../core/svg/SVGSVGElement.idl', '../core/svg/SVGScriptElement.idl', '../core/svg/SVGSetElement.idl', '../core/svg/SVGStopElement.idl', '../core/svg/SVGStringList.idl', '../core/svg/SVGStyleElement.idl', '../core/svg/SVGStyledElement.idl', '../core/svg/SVGSwitchElement.idl', '../core/svg/SVGSymbolElement.idl', '../core/svg/SVGTRefElement.idl', '../core/svg/SVGTSpanElement.idl', '../core/svg/SVGTextContentElement.idl', '../core/svg/SVGTextElement.idl', '../core/svg/SVGTextPathElement.idl', '../core/svg/SVGTextPositioningElement.idl', '../core/svg/SVGTitleElement.idl', '../core/svg/SVGTransform.idl', '../core/svg/SVGTransformList.idl', '../core/svg/SVGUnitTypes.idl', '../core/svg/SVGUseElement.idl', '../core/svg/SVGViewElement.idl', '../core/svg/SVGViewSpec.idl', '../core/svg/SVGVKernElement.idl', '../core/svg/SVGZoomEvent.idl', '../core/testing/Internals.idl', '../core/testing/InternalProfilers.idl', '../core/testing/InternalSettings.idl', '../core/testing/LayerRect.idl', '../core/testing/LayerRectList.idl', '../core/testing/MallocStatistics.idl', '../core/testing/TypeConversions.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl', '$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl'], 'action': ['perl', '-w', '-Iscripts', '-I../core/scripts', '-I../../../../third_party/JSON/out/lib/perl5', 'scripts/deprecated_generate_bindings.pl', '--outputDir', '$(gyp_shared_intermediate_dir)/webkit/bindings', '--idlAttributesFile', 'scripts/IDLAttributes.txt', '--include', '../core', '--include', '../modules', '--include', '$(gyp_shared_intermediate_dir)/webkit', '--interfaceDependenciesFile', '$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt', '--additionalIdlFiles', '../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl "$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl" "$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl"', '--preprocessor', '/usr/bin/gcc -E -P -x c++', '--write-file-only-if-changed', '0', '$(RULE_SOURCES)'], 'message': 'Generating binding from $(RULE_SOURCES)'}":
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_local_path := $(LOCAL_PATH)
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8CSS.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
@@ -3516,6 +3516,17 @@
 .PHONY: third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger
 third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger: $(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.cpp
 
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_local_path := $(LOCAL_PATH)
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp: $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/HmacParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_generate_bindings.pl $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_code_generator_v8.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_idl_parser.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/deprecated_idl_serializer.pm $(LOCAL_PATH)/third_party/WebKit/Source/core/scripts/preprocessor.pm $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/IDLAttributes.txt $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(gyp_shared_intermediate_dir)/WindowConstructors.idl $(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl $(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl $(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl $(GYP_TARGET_DEPENDENCIES)
+	mkdir -p $(gyp_shared_intermediate_dir)/webkit/bindings; cd $(gyp_local_path)/third_party/WebKit/Source/bindings; perl -w -Iscripts -I../core/scripts -I../../../../third_party/JSON/out/lib/perl5 scripts/deprecated_generate_bindings.pl --outputDir "$(gyp_shared_intermediate_dir)/webkit/bindings" --idlAttributesFile scripts/IDLAttributes.txt --include ../core --include ../modules --include "$(gyp_shared_intermediate_dir)/webkit" --interfaceDependenciesFile "$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt" --additionalIdlFiles "../core/testing/Internals.idl ../core/testing/InternalProfilers.idl ../core/testing/InternalSettings.idl ../core/testing/LayerRect.idl ../core/testing/LayerRectList.idl ../core/testing/MallocStatistics.idl ../core/testing/TypeConversions.idl \"$(gyp_shared_intermediate_dir)/webkit/InternalSettingsGenerated.idl\" \"$(gyp_shared_intermediate_dir)/webkit/InternalRuntimeFlags.idl\"" --preprocessor "/usr/bin/gcc -E -P -x c++" --write-file-only-if-changed 0 ../modules/crypto/HmacParams.idl
+
+$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.h: $(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp ;
+.PHONY: third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger
+third_party_WebKit_Source_bindings_deprecated_perl_bindings_sources_gyp_rule_trigger: $(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp
+
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_local_path := $(LOCAL_PATH)
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
@@ -7543,6 +7554,8 @@
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Crypto.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.cpp \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8CryptoOperation.h \
+	$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.cpp \
+	$(gyp_shared_intermediate_dir)/webkit/bindings/V8HmacParams.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.cpp \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8Key.h \
 	$(gyp_shared_intermediate_dir)/webkit/bindings/V8SubtleCrypto.cpp \
diff --git a/Source/bindings/idl_files_list.tmp b/Source/bindings/idl_files_list.tmp
index af61584..c9a6158 100644
--- a/Source/bindings/idl_files_list.tmp
+++ b/Source/bindings/idl_files_list.tmp
@@ -316,6 +316,7 @@
 ../modules/crypto/Algorithm.idl
 ../modules/crypto/Crypto.idl
 ../modules/crypto/CryptoOperation.idl
+../modules/crypto/HmacParams.idl
 ../modules/crypto/Key.idl
 ../modules/crypto/SubtleCrypto.idl
 ../modules/crypto/WorkerCrypto.idl
diff --git a/Source/bindings/interface_dependencies.target.darwin-arm.mk b/Source/bindings/interface_dependencies.target.darwin-arm.mk
index 7903387..0b6ed1a 100644
--- a/Source/bindings/interface_dependencies.target.darwin-arm.mk
+++ b/Source/bindings/interface_dependencies.target.darwin-arm.mk
@@ -18,7 +18,7 @@
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
-$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/compute_dependencies.py $(LOCAL_PATH)/third_party/WebKit/Source/bindings/idl_files_list.tmp $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSS.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSCharsetRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSHostRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSImportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSMediaRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPageRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPrimitiveValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRuleList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleDeclaration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSSupportsRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSViewportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSVariablesMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Counter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/FontLoader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaQueryList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Rect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/RGBColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleMedia.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheetList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframeRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframesRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMixFunctionValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSRegionRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSTransformValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Attr.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/AutocompleteErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/BeforeLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CDATASection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CharacterData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRectList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Clipboard.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Comment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CompositionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CustomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMException.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMImplementation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItemList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Document.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFragment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Element.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Entity.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Event.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/EventTarget.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/FocusEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/HashChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/KeyboardEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessagePort.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MouseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationObserver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationRecord.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NamedNodeMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Node.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeFilter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeIterator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Notation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/OverflowEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PageTransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PopStateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProcessingInstruction.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Promise.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PromiseResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Range.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/RequestAnimationFrameCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ResourceProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/SecurityPolicyViolationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/StringCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Text.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Touch.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TreeWalker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/UIEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitAnimationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlow.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlowCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WheelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Blob.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/File.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Stream.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMSettableTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/FormData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAllCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAnchorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAppletElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAudioElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBaseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBodyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLButtonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCanvasElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDataListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDetailsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDialogElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDirectoryElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDivElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLEmbedElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFieldSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormControlsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHtmlElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLIFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLInputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLKeygenElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLIElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLabelElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLegendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLinkElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMarqueeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMediaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMenuElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMetaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMeterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLModElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptGroupElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOutputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParagraphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParamElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLPreElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLProgressElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLQuoteElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSelectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSourceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCaptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCellElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableColElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableRowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableSectionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTextAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTemplateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTrackElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUnknownElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLVideoElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ImageData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/RadioNodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TextMetrics.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TimeRanges.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/URL.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ValidityState.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/VoidCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ANGLEInstancedArrays.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ArrayBufferView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasGradient.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasPattern.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext2D.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Canvas2DContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/DataView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTFragDepth.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTTextureFilterAnisotropic.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float64Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESStandardDerivatives.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESVertexArrayObject.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESElementIndexUint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Path.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8ClampedArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLActiveInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureATC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTexturePVRTC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureS3TC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugRendererInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugShaders.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDepthTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDrawBuffers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLFramebuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLLoseContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLProgram.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderbuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShaderPrecisionFormat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLUniformLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/Composition.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/InputMethodContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegion.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegionList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InjectedScriptHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorFrontendHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorOverlayHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/JavaScriptCallFrame.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/loader/appcache/DOMApplicationCache.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/BarProp.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Console.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/EventSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/History.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmapCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Location.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/MemoryInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Navigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PagePopupController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Performance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMark.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMeasure.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceNavigation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceResourceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Screen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SecurityPolicy.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Selection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WebKitPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Window.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowBase64.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowTimers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WorkerNavigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeTypeArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/Plugin.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/PluginArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/Storage.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/StorageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/Worker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DOMParser.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestUpload.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLSerializer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathExpression.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathNSResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XSLTProcessor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesCbcParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesKeyGenParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Algorithm.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Crypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/CryptoOperation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Key.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceAcceleration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceMotionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceOrientationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceRotationRate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeys.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeySession.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystemSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntriesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Entry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArraySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/ErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileSystemCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Metadata.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/MetadataCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/Gamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/GamepadList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Coordinates.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geoposition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBAny.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursorWithValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBKeyRange.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBVersionChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/MediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackSourcesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaSuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFToneChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescription.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescriptionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsReport.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsResponse.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/SourceInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/Notification.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationCenter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationPermissionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerPerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuotaCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageUsageCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammar.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammarList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionAlternative.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisUtterance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisVoice.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/GainNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioListener.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PannerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioParam.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioProcessingEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/BiquadFilterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ConvolverNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DelayNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DynamicsCompressorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ScriptProcessorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioCompletionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OscillatorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PeriodicWave.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AnalyserNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/WaveShaperNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/Database.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSet.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSetRowList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSyncCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccess.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccessPromise.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIConnectionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIInput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIOutput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIPort.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDISuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/CloseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/WebSocket.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphItemElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphDefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateColorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateMotionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateTransformElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedBoolean.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedEnumeration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedInteger.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedString.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimationElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCircleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGClipPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGComponentTransferFunctionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCursorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDefsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDescElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstanceList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGEllipseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEBlendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEColorMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEComponentTransferElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFECompositeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEConvolveMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDiffuseLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDisplacementMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDistantLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDropShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFloodElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncBElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEGaussianBlurElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeNodeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMorphologyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEOffsetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEPointLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpecularLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpotLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETileElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETurbulenceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceFormatElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceNameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceSrcElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceUriElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGForeignObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGraphicsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGHKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLinearGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMarkerElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMaskElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMetadataElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMissingGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPaint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSeg.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegClosePath.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPatternElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPointList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolygonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolylineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRadialGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRenderingIntent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStopElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyledElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSwitchElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSymbolElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPositioningElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransform.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUnitTypes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewSpec.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGVKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ChildNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ParentNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/AbstractWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WindowCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerGlobalScopePerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/NavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WorkerNavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/WindowSpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGExternalResourcesRequired.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFitToViewBox.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTests.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGURIReference.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomAndPan.idl $(GYP_TARGET_DEPENDENCIES)
+$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/compute_dependencies.py $(LOCAL_PATH)/third_party/WebKit/Source/bindings/idl_files_list.tmp $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSS.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSCharsetRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSHostRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSImportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSMediaRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPageRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPrimitiveValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRuleList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleDeclaration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSSupportsRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSViewportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSVariablesMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Counter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/FontLoader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaQueryList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Rect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/RGBColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleMedia.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheetList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframeRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframesRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMixFunctionValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSRegionRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSTransformValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Attr.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/AutocompleteErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/BeforeLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CDATASection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CharacterData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRectList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Clipboard.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Comment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CompositionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CustomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMException.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMImplementation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItemList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Document.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFragment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Element.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Entity.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Event.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/EventTarget.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/FocusEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/HashChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/KeyboardEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessagePort.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MouseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationObserver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationRecord.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NamedNodeMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Node.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeFilter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeIterator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Notation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/OverflowEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PageTransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PopStateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProcessingInstruction.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Promise.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PromiseResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Range.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/RequestAnimationFrameCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ResourceProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/SecurityPolicyViolationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/StringCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Text.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Touch.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TreeWalker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/UIEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitAnimationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlow.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlowCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WheelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Blob.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/File.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Stream.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMSettableTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/FormData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAllCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAnchorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAppletElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAudioElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBaseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBodyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLButtonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCanvasElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDataListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDetailsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDialogElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDirectoryElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDivElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLEmbedElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFieldSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormControlsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHtmlElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLIFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLInputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLKeygenElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLIElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLabelElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLegendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLinkElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMarqueeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMediaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMenuElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMetaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMeterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLModElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptGroupElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOutputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParagraphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParamElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLPreElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLProgressElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLQuoteElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSelectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSourceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCaptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCellElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableColElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableRowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableSectionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTextAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTemplateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTrackElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUnknownElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLVideoElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ImageData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/RadioNodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TextMetrics.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TimeRanges.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/URL.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ValidityState.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/VoidCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ANGLEInstancedArrays.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ArrayBufferView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasGradient.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasPattern.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext2D.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Canvas2DContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/DataView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTFragDepth.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTTextureFilterAnisotropic.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float64Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESStandardDerivatives.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESVertexArrayObject.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESElementIndexUint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Path.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8ClampedArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLActiveInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureATC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTexturePVRTC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureS3TC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugRendererInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugShaders.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDepthTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDrawBuffers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLFramebuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLLoseContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLProgram.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderbuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShaderPrecisionFormat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLUniformLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/Composition.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/InputMethodContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegion.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegionList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InjectedScriptHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorFrontendHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorOverlayHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/JavaScriptCallFrame.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/loader/appcache/DOMApplicationCache.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/BarProp.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Console.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/EventSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/History.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmapCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Location.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/MemoryInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Navigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PagePopupController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Performance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMark.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMeasure.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceNavigation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceResourceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Screen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SecurityPolicy.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Selection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WebKitPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Window.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowBase64.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowTimers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WorkerNavigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeTypeArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/Plugin.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/PluginArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/Storage.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/StorageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/Worker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DOMParser.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestUpload.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLSerializer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathExpression.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathNSResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XSLTProcessor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesCbcParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesKeyGenParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Algorithm.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Crypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/CryptoOperation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/HmacParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Key.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceAcceleration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceMotionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceOrientationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceRotationRate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeys.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeySession.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystemSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntriesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Entry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArraySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/ErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileSystemCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Metadata.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/MetadataCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/Gamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/GamepadList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Coordinates.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geoposition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBAny.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursorWithValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBKeyRange.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBVersionChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/MediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackSourcesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaSuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFToneChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescription.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescriptionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsReport.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsResponse.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/SourceInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/Notification.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationCenter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationPermissionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerPerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuotaCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageUsageCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammar.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammarList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionAlternative.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisUtterance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisVoice.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/GainNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioListener.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PannerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioParam.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioProcessingEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/BiquadFilterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ConvolverNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DelayNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DynamicsCompressorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ScriptProcessorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioCompletionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OscillatorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PeriodicWave.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AnalyserNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/WaveShaperNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/Database.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSet.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSetRowList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSyncCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccess.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccessPromise.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIConnectionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIInput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIOutput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIPort.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDISuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/CloseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/WebSocket.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphItemElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphDefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateColorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateMotionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateTransformElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedBoolean.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedEnumeration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedInteger.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedString.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimationElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCircleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGClipPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGComponentTransferFunctionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCursorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDefsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDescElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstanceList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGEllipseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEBlendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEColorMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEComponentTransferElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFECompositeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEConvolveMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDiffuseLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDisplacementMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDistantLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDropShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFloodElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncBElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEGaussianBlurElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeNodeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMorphologyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEOffsetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEPointLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpecularLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpotLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETileElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETurbulenceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceFormatElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceNameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceSrcElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceUriElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGForeignObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGraphicsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGHKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLinearGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMarkerElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMaskElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMetadataElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMissingGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPaint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSeg.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegClosePath.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPatternElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPointList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolygonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolylineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRadialGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRenderingIntent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStopElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyledElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSwitchElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSymbolElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPositioningElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransform.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUnitTypes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewSpec.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGVKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ChildNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ParentNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/AbstractWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WindowCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerGlobalScopePerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/NavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WorkerNavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/WindowSpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGExternalResourcesRequired.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFitToViewBox.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTests.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGURIReference.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomAndPan.idl $(GYP_TARGET_DEPENDENCIES)
 	@echo "Gyp action: Resolving partial interfaces dependencies in all IDL files ($@)"
 	$(hide)cd $(gyp_local_path)/third_party/WebKit/Source/bindings; mkdir -p $(gyp_shared_intermediate_dir); python scripts/compute_dependencies.py --idl-files-list idl_files_list.tmp --interface-dependencies-file "$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt" --window-constructors-file "$(gyp_shared_intermediate_dir)/WindowConstructors.idl" --workerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl" --sharedworkerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl" --dedicatedworkerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl" --event-names-file "$(gyp_shared_intermediate_dir)/EventNames.in" --write-file-only-if-changed 0
 
diff --git a/Source/bindings/interface_dependencies.target.darwin-mips.mk b/Source/bindings/interface_dependencies.target.darwin-mips.mk
index 7903387..0b6ed1a 100644
--- a/Source/bindings/interface_dependencies.target.darwin-mips.mk
+++ b/Source/bindings/interface_dependencies.target.darwin-mips.mk
@@ -18,7 +18,7 @@
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
-$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/compute_dependencies.py $(LOCAL_PATH)/third_party/WebKit/Source/bindings/idl_files_list.tmp $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSS.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSCharsetRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSHostRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSImportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSMediaRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPageRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPrimitiveValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRuleList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleDeclaration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSSupportsRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSViewportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSVariablesMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Counter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/FontLoader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaQueryList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Rect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/RGBColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleMedia.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheetList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframeRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframesRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMixFunctionValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSRegionRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSTransformValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Attr.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/AutocompleteErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/BeforeLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CDATASection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CharacterData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRectList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Clipboard.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Comment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CompositionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CustomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMException.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMImplementation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItemList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Document.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFragment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Element.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Entity.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Event.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/EventTarget.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/FocusEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/HashChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/KeyboardEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessagePort.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MouseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationObserver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationRecord.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NamedNodeMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Node.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeFilter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeIterator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Notation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/OverflowEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PageTransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PopStateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProcessingInstruction.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Promise.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PromiseResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Range.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/RequestAnimationFrameCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ResourceProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/SecurityPolicyViolationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/StringCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Text.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Touch.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TreeWalker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/UIEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitAnimationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlow.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlowCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WheelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Blob.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/File.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Stream.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMSettableTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/FormData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAllCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAnchorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAppletElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAudioElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBaseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBodyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLButtonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCanvasElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDataListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDetailsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDialogElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDirectoryElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDivElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLEmbedElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFieldSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormControlsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHtmlElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLIFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLInputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLKeygenElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLIElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLabelElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLegendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLinkElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMarqueeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMediaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMenuElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMetaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMeterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLModElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptGroupElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOutputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParagraphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParamElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLPreElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLProgressElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLQuoteElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSelectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSourceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCaptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCellElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableColElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableRowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableSectionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTextAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTemplateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTrackElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUnknownElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLVideoElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ImageData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/RadioNodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TextMetrics.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TimeRanges.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/URL.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ValidityState.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/VoidCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ANGLEInstancedArrays.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ArrayBufferView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasGradient.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasPattern.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext2D.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Canvas2DContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/DataView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTFragDepth.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTTextureFilterAnisotropic.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float64Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESStandardDerivatives.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESVertexArrayObject.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESElementIndexUint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Path.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8ClampedArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLActiveInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureATC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTexturePVRTC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureS3TC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugRendererInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugShaders.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDepthTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDrawBuffers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLFramebuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLLoseContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLProgram.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderbuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShaderPrecisionFormat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLUniformLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/Composition.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/InputMethodContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegion.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegionList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InjectedScriptHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorFrontendHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorOverlayHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/JavaScriptCallFrame.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/loader/appcache/DOMApplicationCache.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/BarProp.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Console.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/EventSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/History.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmapCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Location.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/MemoryInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Navigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PagePopupController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Performance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMark.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMeasure.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceNavigation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceResourceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Screen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SecurityPolicy.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Selection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WebKitPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Window.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowBase64.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowTimers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WorkerNavigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeTypeArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/Plugin.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/PluginArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/Storage.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/StorageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/Worker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DOMParser.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestUpload.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLSerializer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathExpression.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathNSResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XSLTProcessor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesCbcParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesKeyGenParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Algorithm.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Crypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/CryptoOperation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Key.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceAcceleration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceMotionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceOrientationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceRotationRate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeys.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeySession.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystemSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntriesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Entry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArraySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/ErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileSystemCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Metadata.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/MetadataCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/Gamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/GamepadList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Coordinates.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geoposition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBAny.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursorWithValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBKeyRange.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBVersionChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/MediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackSourcesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaSuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFToneChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescription.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescriptionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsReport.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsResponse.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/SourceInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/Notification.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationCenter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationPermissionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerPerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuotaCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageUsageCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammar.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammarList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionAlternative.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisUtterance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisVoice.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/GainNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioListener.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PannerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioParam.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioProcessingEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/BiquadFilterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ConvolverNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DelayNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DynamicsCompressorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ScriptProcessorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioCompletionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OscillatorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PeriodicWave.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AnalyserNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/WaveShaperNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/Database.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSet.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSetRowList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSyncCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccess.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccessPromise.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIConnectionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIInput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIOutput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIPort.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDISuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/CloseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/WebSocket.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphItemElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphDefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateColorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateMotionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateTransformElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedBoolean.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedEnumeration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedInteger.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedString.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimationElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCircleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGClipPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGComponentTransferFunctionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCursorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDefsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDescElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstanceList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGEllipseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEBlendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEColorMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEComponentTransferElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFECompositeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEConvolveMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDiffuseLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDisplacementMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDistantLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDropShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFloodElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncBElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEGaussianBlurElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeNodeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMorphologyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEOffsetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEPointLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpecularLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpotLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETileElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETurbulenceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceFormatElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceNameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceSrcElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceUriElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGForeignObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGraphicsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGHKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLinearGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMarkerElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMaskElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMetadataElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMissingGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPaint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSeg.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegClosePath.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPatternElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPointList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolygonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolylineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRadialGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRenderingIntent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStopElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyledElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSwitchElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSymbolElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPositioningElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransform.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUnitTypes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewSpec.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGVKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ChildNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ParentNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/AbstractWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WindowCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerGlobalScopePerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/NavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WorkerNavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/WindowSpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGExternalResourcesRequired.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFitToViewBox.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTests.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGURIReference.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomAndPan.idl $(GYP_TARGET_DEPENDENCIES)
+$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/compute_dependencies.py $(LOCAL_PATH)/third_party/WebKit/Source/bindings/idl_files_list.tmp $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSS.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSCharsetRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSHostRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSImportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSMediaRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPageRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPrimitiveValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRuleList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleDeclaration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSSupportsRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSViewportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSVariablesMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Counter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/FontLoader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaQueryList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Rect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/RGBColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleMedia.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheetList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframeRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframesRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMixFunctionValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSRegionRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSTransformValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Attr.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/AutocompleteErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/BeforeLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CDATASection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CharacterData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRectList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Clipboard.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Comment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CompositionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CustomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMException.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMImplementation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItemList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Document.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFragment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Element.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Entity.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Event.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/EventTarget.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/FocusEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/HashChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/KeyboardEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessagePort.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MouseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationObserver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationRecord.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NamedNodeMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Node.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeFilter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeIterator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Notation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/OverflowEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PageTransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PopStateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProcessingInstruction.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Promise.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PromiseResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Range.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/RequestAnimationFrameCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ResourceProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/SecurityPolicyViolationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/StringCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Text.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Touch.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TreeWalker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/UIEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitAnimationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlow.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlowCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WheelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Blob.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/File.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Stream.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMSettableTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/FormData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAllCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAnchorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAppletElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAudioElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBaseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBodyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLButtonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCanvasElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDataListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDetailsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDialogElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDirectoryElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDivElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLEmbedElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFieldSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormControlsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHtmlElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLIFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLInputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLKeygenElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLIElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLabelElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLegendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLinkElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMarqueeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMediaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMenuElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMetaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMeterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLModElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptGroupElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOutputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParagraphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParamElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLPreElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLProgressElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLQuoteElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSelectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSourceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCaptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCellElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableColElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableRowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableSectionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTextAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTemplateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTrackElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUnknownElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLVideoElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ImageData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/RadioNodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TextMetrics.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TimeRanges.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/URL.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ValidityState.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/VoidCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ANGLEInstancedArrays.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ArrayBufferView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasGradient.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasPattern.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext2D.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Canvas2DContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/DataView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTFragDepth.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTTextureFilterAnisotropic.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float64Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESStandardDerivatives.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESVertexArrayObject.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESElementIndexUint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Path.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8ClampedArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLActiveInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureATC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTexturePVRTC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureS3TC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugRendererInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugShaders.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDepthTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDrawBuffers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLFramebuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLLoseContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLProgram.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderbuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShaderPrecisionFormat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLUniformLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/Composition.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/InputMethodContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegion.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegionList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InjectedScriptHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorFrontendHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorOverlayHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/JavaScriptCallFrame.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/loader/appcache/DOMApplicationCache.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/BarProp.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Console.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/EventSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/History.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmapCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Location.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/MemoryInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Navigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PagePopupController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Performance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMark.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMeasure.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceNavigation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceResourceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Screen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SecurityPolicy.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Selection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WebKitPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Window.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowBase64.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowTimers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WorkerNavigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeTypeArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/Plugin.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/PluginArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/Storage.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/StorageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/Worker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DOMParser.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestUpload.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLSerializer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathExpression.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathNSResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XSLTProcessor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesCbcParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesKeyGenParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Algorithm.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Crypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/CryptoOperation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/HmacParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Key.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceAcceleration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceMotionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceOrientationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceRotationRate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeys.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeySession.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystemSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntriesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Entry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArraySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/ErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileSystemCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Metadata.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/MetadataCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/Gamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/GamepadList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Coordinates.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geoposition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBAny.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursorWithValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBKeyRange.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBVersionChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/MediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackSourcesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaSuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFToneChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescription.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescriptionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsReport.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsResponse.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/SourceInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/Notification.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationCenter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationPermissionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerPerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuotaCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageUsageCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammar.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammarList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionAlternative.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisUtterance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisVoice.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/GainNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioListener.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PannerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioParam.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioProcessingEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/BiquadFilterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ConvolverNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DelayNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DynamicsCompressorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ScriptProcessorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioCompletionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OscillatorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PeriodicWave.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AnalyserNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/WaveShaperNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/Database.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSet.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSetRowList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSyncCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccess.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccessPromise.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIConnectionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIInput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIOutput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIPort.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDISuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/CloseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/WebSocket.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphItemElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphDefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateColorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateMotionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateTransformElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedBoolean.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedEnumeration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedInteger.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedString.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimationElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCircleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGClipPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGComponentTransferFunctionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCursorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDefsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDescElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstanceList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGEllipseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEBlendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEColorMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEComponentTransferElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFECompositeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEConvolveMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDiffuseLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDisplacementMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDistantLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDropShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFloodElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncBElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEGaussianBlurElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeNodeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMorphologyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEOffsetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEPointLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpecularLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpotLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETileElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETurbulenceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceFormatElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceNameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceSrcElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceUriElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGForeignObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGraphicsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGHKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLinearGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMarkerElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMaskElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMetadataElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMissingGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPaint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSeg.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegClosePath.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPatternElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPointList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolygonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolylineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRadialGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRenderingIntent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStopElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyledElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSwitchElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSymbolElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPositioningElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransform.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUnitTypes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewSpec.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGVKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ChildNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ParentNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/AbstractWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WindowCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerGlobalScopePerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/NavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WorkerNavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/WindowSpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGExternalResourcesRequired.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFitToViewBox.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTests.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGURIReference.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomAndPan.idl $(GYP_TARGET_DEPENDENCIES)
 	@echo "Gyp action: Resolving partial interfaces dependencies in all IDL files ($@)"
 	$(hide)cd $(gyp_local_path)/third_party/WebKit/Source/bindings; mkdir -p $(gyp_shared_intermediate_dir); python scripts/compute_dependencies.py --idl-files-list idl_files_list.tmp --interface-dependencies-file "$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt" --window-constructors-file "$(gyp_shared_intermediate_dir)/WindowConstructors.idl" --workerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl" --sharedworkerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl" --dedicatedworkerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl" --event-names-file "$(gyp_shared_intermediate_dir)/EventNames.in" --write-file-only-if-changed 0
 
diff --git a/Source/bindings/interface_dependencies.target.darwin-x86.mk b/Source/bindings/interface_dependencies.target.darwin-x86.mk
index 7903387..0b6ed1a 100644
--- a/Source/bindings/interface_dependencies.target.darwin-x86.mk
+++ b/Source/bindings/interface_dependencies.target.darwin-x86.mk
@@ -18,7 +18,7 @@
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
-$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/compute_dependencies.py $(LOCAL_PATH)/third_party/WebKit/Source/bindings/idl_files_list.tmp $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSS.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSCharsetRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSHostRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSImportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSMediaRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPageRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPrimitiveValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRuleList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleDeclaration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSSupportsRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSViewportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSVariablesMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Counter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/FontLoader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaQueryList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Rect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/RGBColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleMedia.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheetList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframeRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframesRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMixFunctionValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSRegionRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSTransformValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Attr.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/AutocompleteErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/BeforeLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CDATASection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CharacterData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRectList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Clipboard.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Comment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CompositionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CustomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMException.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMImplementation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItemList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Document.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFragment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Element.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Entity.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Event.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/EventTarget.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/FocusEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/HashChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/KeyboardEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessagePort.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MouseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationObserver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationRecord.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NamedNodeMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Node.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeFilter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeIterator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Notation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/OverflowEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PageTransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PopStateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProcessingInstruction.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Promise.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PromiseResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Range.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/RequestAnimationFrameCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ResourceProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/SecurityPolicyViolationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/StringCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Text.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Touch.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TreeWalker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/UIEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitAnimationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlow.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlowCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WheelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Blob.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/File.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Stream.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMSettableTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/FormData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAllCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAnchorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAppletElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAudioElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBaseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBodyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLButtonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCanvasElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDataListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDetailsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDialogElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDirectoryElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDivElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLEmbedElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFieldSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormControlsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHtmlElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLIFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLInputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLKeygenElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLIElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLabelElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLegendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLinkElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMarqueeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMediaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMenuElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMetaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMeterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLModElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptGroupElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOutputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParagraphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParamElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLPreElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLProgressElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLQuoteElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSelectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSourceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCaptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCellElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableColElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableRowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableSectionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTextAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTemplateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTrackElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUnknownElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLVideoElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ImageData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/RadioNodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TextMetrics.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TimeRanges.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/URL.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ValidityState.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/VoidCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ANGLEInstancedArrays.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ArrayBufferView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasGradient.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasPattern.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext2D.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Canvas2DContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/DataView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTFragDepth.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTTextureFilterAnisotropic.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float64Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESStandardDerivatives.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESVertexArrayObject.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESElementIndexUint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Path.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8ClampedArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLActiveInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureATC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTexturePVRTC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureS3TC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugRendererInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugShaders.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDepthTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDrawBuffers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLFramebuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLLoseContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLProgram.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderbuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShaderPrecisionFormat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLUniformLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/Composition.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/InputMethodContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegion.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegionList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InjectedScriptHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorFrontendHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorOverlayHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/JavaScriptCallFrame.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/loader/appcache/DOMApplicationCache.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/BarProp.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Console.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/EventSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/History.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmapCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Location.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/MemoryInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Navigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PagePopupController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Performance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMark.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMeasure.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceNavigation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceResourceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Screen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SecurityPolicy.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Selection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WebKitPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Window.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowBase64.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowTimers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WorkerNavigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeTypeArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/Plugin.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/PluginArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/Storage.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/StorageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/Worker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DOMParser.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestUpload.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLSerializer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathExpression.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathNSResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XSLTProcessor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesCbcParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesKeyGenParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Algorithm.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Crypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/CryptoOperation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Key.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceAcceleration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceMotionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceOrientationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceRotationRate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeys.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeySession.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystemSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntriesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Entry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArraySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/ErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileSystemCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Metadata.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/MetadataCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/Gamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/GamepadList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Coordinates.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geoposition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBAny.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursorWithValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBKeyRange.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBVersionChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/MediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackSourcesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaSuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFToneChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescription.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescriptionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsReport.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsResponse.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/SourceInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/Notification.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationCenter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationPermissionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerPerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuotaCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageUsageCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammar.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammarList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionAlternative.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisUtterance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisVoice.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/GainNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioListener.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PannerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioParam.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioProcessingEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/BiquadFilterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ConvolverNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DelayNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DynamicsCompressorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ScriptProcessorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioCompletionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OscillatorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PeriodicWave.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AnalyserNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/WaveShaperNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/Database.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSet.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSetRowList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSyncCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccess.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccessPromise.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIConnectionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIInput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIOutput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIPort.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDISuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/CloseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/WebSocket.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphItemElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphDefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateColorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateMotionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateTransformElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedBoolean.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedEnumeration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedInteger.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedString.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimationElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCircleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGClipPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGComponentTransferFunctionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCursorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDefsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDescElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstanceList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGEllipseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEBlendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEColorMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEComponentTransferElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFECompositeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEConvolveMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDiffuseLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDisplacementMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDistantLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDropShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFloodElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncBElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEGaussianBlurElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeNodeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMorphologyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEOffsetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEPointLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpecularLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpotLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETileElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETurbulenceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceFormatElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceNameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceSrcElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceUriElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGForeignObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGraphicsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGHKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLinearGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMarkerElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMaskElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMetadataElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMissingGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPaint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSeg.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegClosePath.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPatternElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPointList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolygonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolylineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRadialGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRenderingIntent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStopElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyledElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSwitchElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSymbolElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPositioningElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransform.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUnitTypes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewSpec.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGVKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ChildNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ParentNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/AbstractWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WindowCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerGlobalScopePerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/NavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WorkerNavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/WindowSpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGExternalResourcesRequired.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFitToViewBox.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTests.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGURIReference.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomAndPan.idl $(GYP_TARGET_DEPENDENCIES)
+$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/compute_dependencies.py $(LOCAL_PATH)/third_party/WebKit/Source/bindings/idl_files_list.tmp $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSS.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSCharsetRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSHostRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSImportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSMediaRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPageRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPrimitiveValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRuleList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleDeclaration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSSupportsRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSViewportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSVariablesMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Counter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/FontLoader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaQueryList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Rect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/RGBColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleMedia.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheetList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframeRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframesRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMixFunctionValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSRegionRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSTransformValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Attr.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/AutocompleteErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/BeforeLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CDATASection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CharacterData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRectList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Clipboard.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Comment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CompositionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CustomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMException.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMImplementation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItemList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Document.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFragment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Element.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Entity.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Event.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/EventTarget.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/FocusEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/HashChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/KeyboardEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessagePort.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MouseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationObserver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationRecord.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NamedNodeMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Node.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeFilter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeIterator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Notation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/OverflowEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PageTransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PopStateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProcessingInstruction.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Promise.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PromiseResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Range.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/RequestAnimationFrameCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ResourceProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/SecurityPolicyViolationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/StringCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Text.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Touch.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TreeWalker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/UIEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitAnimationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlow.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlowCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WheelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Blob.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/File.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Stream.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMSettableTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/FormData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAllCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAnchorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAppletElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAudioElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBaseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBodyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLButtonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCanvasElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDataListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDetailsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDialogElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDirectoryElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDivElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLEmbedElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFieldSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormControlsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHtmlElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLIFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLInputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLKeygenElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLIElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLabelElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLegendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLinkElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMarqueeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMediaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMenuElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMetaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMeterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLModElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptGroupElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOutputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParagraphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParamElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLPreElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLProgressElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLQuoteElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSelectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSourceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCaptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCellElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableColElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableRowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableSectionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTextAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTemplateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTrackElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUnknownElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLVideoElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ImageData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/RadioNodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TextMetrics.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TimeRanges.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/URL.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ValidityState.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/VoidCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ANGLEInstancedArrays.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ArrayBufferView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasGradient.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasPattern.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext2D.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Canvas2DContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/DataView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTFragDepth.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTTextureFilterAnisotropic.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float64Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESStandardDerivatives.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESVertexArrayObject.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESElementIndexUint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Path.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8ClampedArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLActiveInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureATC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTexturePVRTC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureS3TC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugRendererInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugShaders.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDepthTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDrawBuffers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLFramebuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLLoseContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLProgram.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderbuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShaderPrecisionFormat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLUniformLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/Composition.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/InputMethodContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegion.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegionList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InjectedScriptHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorFrontendHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorOverlayHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/JavaScriptCallFrame.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/loader/appcache/DOMApplicationCache.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/BarProp.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Console.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/EventSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/History.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmapCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Location.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/MemoryInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Navigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PagePopupController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Performance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMark.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMeasure.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceNavigation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceResourceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Screen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SecurityPolicy.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Selection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WebKitPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Window.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowBase64.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowTimers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WorkerNavigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeTypeArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/Plugin.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/PluginArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/Storage.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/StorageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/Worker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DOMParser.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestUpload.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLSerializer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathExpression.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathNSResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XSLTProcessor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesCbcParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesKeyGenParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Algorithm.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Crypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/CryptoOperation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/HmacParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Key.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceAcceleration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceMotionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceOrientationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceRotationRate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeys.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeySession.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystemSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntriesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Entry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArraySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/ErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileSystemCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Metadata.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/MetadataCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/Gamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/GamepadList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Coordinates.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geoposition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBAny.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursorWithValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBKeyRange.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBVersionChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/MediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackSourcesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaSuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFToneChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescription.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescriptionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsReport.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsResponse.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/SourceInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/Notification.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationCenter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationPermissionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerPerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuotaCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageUsageCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammar.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammarList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionAlternative.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisUtterance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisVoice.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/GainNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioListener.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PannerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioParam.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioProcessingEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/BiquadFilterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ConvolverNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DelayNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DynamicsCompressorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ScriptProcessorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioCompletionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OscillatorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PeriodicWave.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AnalyserNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/WaveShaperNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/Database.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSet.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSetRowList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSyncCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccess.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccessPromise.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIConnectionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIInput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIOutput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIPort.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDISuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/CloseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/WebSocket.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphItemElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphDefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateColorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateMotionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateTransformElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedBoolean.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedEnumeration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedInteger.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedString.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimationElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCircleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGClipPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGComponentTransferFunctionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCursorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDefsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDescElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstanceList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGEllipseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEBlendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEColorMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEComponentTransferElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFECompositeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEConvolveMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDiffuseLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDisplacementMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDistantLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDropShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFloodElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncBElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEGaussianBlurElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeNodeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMorphologyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEOffsetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEPointLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpecularLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpotLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETileElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETurbulenceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceFormatElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceNameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceSrcElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceUriElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGForeignObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGraphicsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGHKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLinearGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMarkerElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMaskElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMetadataElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMissingGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPaint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSeg.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegClosePath.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPatternElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPointList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolygonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolylineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRadialGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRenderingIntent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStopElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyledElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSwitchElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSymbolElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPositioningElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransform.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUnitTypes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewSpec.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGVKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ChildNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ParentNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/AbstractWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WindowCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerGlobalScopePerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/NavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WorkerNavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/WindowSpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGExternalResourcesRequired.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFitToViewBox.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTests.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGURIReference.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomAndPan.idl $(GYP_TARGET_DEPENDENCIES)
 	@echo "Gyp action: Resolving partial interfaces dependencies in all IDL files ($@)"
 	$(hide)cd $(gyp_local_path)/third_party/WebKit/Source/bindings; mkdir -p $(gyp_shared_intermediate_dir); python scripts/compute_dependencies.py --idl-files-list idl_files_list.tmp --interface-dependencies-file "$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt" --window-constructors-file "$(gyp_shared_intermediate_dir)/WindowConstructors.idl" --workerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl" --sharedworkerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl" --dedicatedworkerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl" --event-names-file "$(gyp_shared_intermediate_dir)/EventNames.in" --write-file-only-if-changed 0
 
diff --git a/Source/bindings/interface_dependencies.target.linux-arm.mk b/Source/bindings/interface_dependencies.target.linux-arm.mk
index 7903387..0b6ed1a 100644
--- a/Source/bindings/interface_dependencies.target.linux-arm.mk
+++ b/Source/bindings/interface_dependencies.target.linux-arm.mk
@@ -18,7 +18,7 @@
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
-$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/compute_dependencies.py $(LOCAL_PATH)/third_party/WebKit/Source/bindings/idl_files_list.tmp $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSS.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSCharsetRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSHostRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSImportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSMediaRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPageRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPrimitiveValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRuleList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleDeclaration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSSupportsRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSViewportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSVariablesMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Counter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/FontLoader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaQueryList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Rect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/RGBColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleMedia.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheetList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframeRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframesRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMixFunctionValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSRegionRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSTransformValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Attr.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/AutocompleteErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/BeforeLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CDATASection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CharacterData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRectList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Clipboard.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Comment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CompositionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CustomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMException.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMImplementation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItemList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Document.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFragment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Element.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Entity.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Event.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/EventTarget.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/FocusEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/HashChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/KeyboardEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessagePort.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MouseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationObserver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationRecord.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NamedNodeMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Node.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeFilter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeIterator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Notation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/OverflowEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PageTransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PopStateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProcessingInstruction.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Promise.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PromiseResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Range.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/RequestAnimationFrameCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ResourceProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/SecurityPolicyViolationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/StringCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Text.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Touch.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TreeWalker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/UIEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitAnimationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlow.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlowCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WheelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Blob.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/File.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Stream.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMSettableTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/FormData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAllCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAnchorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAppletElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAudioElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBaseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBodyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLButtonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCanvasElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDataListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDetailsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDialogElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDirectoryElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDivElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLEmbedElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFieldSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormControlsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHtmlElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLIFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLInputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLKeygenElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLIElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLabelElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLegendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLinkElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMarqueeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMediaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMenuElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMetaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMeterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLModElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptGroupElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOutputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParagraphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParamElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLPreElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLProgressElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLQuoteElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSelectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSourceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCaptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCellElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableColElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableRowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableSectionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTextAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTemplateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTrackElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUnknownElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLVideoElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ImageData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/RadioNodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TextMetrics.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TimeRanges.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/URL.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ValidityState.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/VoidCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ANGLEInstancedArrays.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ArrayBufferView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasGradient.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasPattern.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext2D.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Canvas2DContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/DataView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTFragDepth.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTTextureFilterAnisotropic.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float64Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESStandardDerivatives.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESVertexArrayObject.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESElementIndexUint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Path.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8ClampedArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLActiveInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureATC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTexturePVRTC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureS3TC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugRendererInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugShaders.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDepthTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDrawBuffers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLFramebuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLLoseContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLProgram.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderbuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShaderPrecisionFormat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLUniformLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/Composition.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/InputMethodContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegion.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegionList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InjectedScriptHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorFrontendHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorOverlayHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/JavaScriptCallFrame.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/loader/appcache/DOMApplicationCache.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/BarProp.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Console.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/EventSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/History.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmapCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Location.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/MemoryInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Navigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PagePopupController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Performance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMark.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMeasure.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceNavigation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceResourceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Screen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SecurityPolicy.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Selection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WebKitPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Window.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowBase64.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowTimers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WorkerNavigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeTypeArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/Plugin.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/PluginArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/Storage.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/StorageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/Worker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DOMParser.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestUpload.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLSerializer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathExpression.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathNSResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XSLTProcessor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesCbcParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesKeyGenParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Algorithm.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Crypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/CryptoOperation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Key.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceAcceleration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceMotionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceOrientationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceRotationRate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeys.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeySession.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystemSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntriesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Entry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArraySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/ErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileSystemCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Metadata.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/MetadataCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/Gamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/GamepadList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Coordinates.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geoposition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBAny.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursorWithValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBKeyRange.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBVersionChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/MediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackSourcesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaSuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFToneChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescription.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescriptionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsReport.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsResponse.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/SourceInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/Notification.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationCenter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationPermissionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerPerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuotaCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageUsageCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammar.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammarList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionAlternative.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisUtterance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisVoice.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/GainNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioListener.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PannerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioParam.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioProcessingEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/BiquadFilterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ConvolverNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DelayNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DynamicsCompressorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ScriptProcessorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioCompletionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OscillatorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PeriodicWave.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AnalyserNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/WaveShaperNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/Database.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSet.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSetRowList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSyncCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccess.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccessPromise.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIConnectionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIInput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIOutput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIPort.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDISuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/CloseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/WebSocket.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphItemElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphDefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateColorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateMotionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateTransformElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedBoolean.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedEnumeration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedInteger.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedString.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimationElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCircleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGClipPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGComponentTransferFunctionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCursorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDefsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDescElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstanceList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGEllipseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEBlendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEColorMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEComponentTransferElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFECompositeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEConvolveMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDiffuseLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDisplacementMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDistantLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDropShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFloodElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncBElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEGaussianBlurElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeNodeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMorphologyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEOffsetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEPointLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpecularLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpotLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETileElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETurbulenceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceFormatElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceNameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceSrcElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceUriElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGForeignObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGraphicsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGHKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLinearGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMarkerElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMaskElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMetadataElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMissingGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPaint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSeg.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegClosePath.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPatternElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPointList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolygonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolylineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRadialGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRenderingIntent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStopElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyledElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSwitchElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSymbolElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPositioningElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransform.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUnitTypes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewSpec.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGVKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ChildNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ParentNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/AbstractWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WindowCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerGlobalScopePerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/NavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WorkerNavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/WindowSpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGExternalResourcesRequired.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFitToViewBox.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTests.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGURIReference.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomAndPan.idl $(GYP_TARGET_DEPENDENCIES)
+$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/compute_dependencies.py $(LOCAL_PATH)/third_party/WebKit/Source/bindings/idl_files_list.tmp $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSS.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSCharsetRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSHostRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSImportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSMediaRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPageRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPrimitiveValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRuleList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleDeclaration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSSupportsRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSViewportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSVariablesMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Counter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/FontLoader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaQueryList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Rect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/RGBColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleMedia.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheetList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframeRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframesRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMixFunctionValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSRegionRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSTransformValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Attr.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/AutocompleteErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/BeforeLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CDATASection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CharacterData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRectList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Clipboard.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Comment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CompositionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CustomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMException.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMImplementation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItemList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Document.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFragment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Element.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Entity.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Event.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/EventTarget.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/FocusEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/HashChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/KeyboardEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessagePort.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MouseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationObserver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationRecord.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NamedNodeMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Node.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeFilter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeIterator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Notation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/OverflowEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PageTransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PopStateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProcessingInstruction.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Promise.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PromiseResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Range.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/RequestAnimationFrameCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ResourceProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/SecurityPolicyViolationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/StringCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Text.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Touch.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TreeWalker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/UIEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitAnimationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlow.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlowCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WheelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Blob.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/File.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Stream.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMSettableTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/FormData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAllCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAnchorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAppletElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAudioElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBaseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBodyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLButtonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCanvasElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDataListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDetailsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDialogElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDirectoryElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDivElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLEmbedElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFieldSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormControlsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHtmlElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLIFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLInputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLKeygenElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLIElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLabelElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLegendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLinkElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMarqueeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMediaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMenuElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMetaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMeterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLModElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptGroupElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOutputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParagraphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParamElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLPreElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLProgressElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLQuoteElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSelectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSourceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCaptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCellElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableColElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableRowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableSectionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTextAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTemplateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTrackElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUnknownElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLVideoElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ImageData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/RadioNodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TextMetrics.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TimeRanges.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/URL.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ValidityState.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/VoidCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ANGLEInstancedArrays.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ArrayBufferView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasGradient.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasPattern.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext2D.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Canvas2DContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/DataView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTFragDepth.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTTextureFilterAnisotropic.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float64Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESStandardDerivatives.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESVertexArrayObject.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESElementIndexUint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Path.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8ClampedArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLActiveInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureATC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTexturePVRTC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureS3TC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugRendererInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugShaders.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDepthTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDrawBuffers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLFramebuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLLoseContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLProgram.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderbuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShaderPrecisionFormat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLUniformLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/Composition.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/InputMethodContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegion.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegionList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InjectedScriptHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorFrontendHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorOverlayHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/JavaScriptCallFrame.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/loader/appcache/DOMApplicationCache.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/BarProp.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Console.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/EventSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/History.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmapCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Location.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/MemoryInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Navigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PagePopupController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Performance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMark.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMeasure.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceNavigation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceResourceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Screen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SecurityPolicy.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Selection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WebKitPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Window.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowBase64.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowTimers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WorkerNavigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeTypeArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/Plugin.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/PluginArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/Storage.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/StorageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/Worker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DOMParser.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestUpload.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLSerializer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathExpression.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathNSResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XSLTProcessor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesCbcParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesKeyGenParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Algorithm.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Crypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/CryptoOperation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/HmacParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Key.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceAcceleration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceMotionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceOrientationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceRotationRate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeys.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeySession.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystemSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntriesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Entry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArraySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/ErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileSystemCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Metadata.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/MetadataCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/Gamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/GamepadList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Coordinates.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geoposition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBAny.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursorWithValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBKeyRange.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBVersionChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/MediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackSourcesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaSuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFToneChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescription.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescriptionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsReport.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsResponse.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/SourceInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/Notification.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationCenter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationPermissionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerPerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuotaCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageUsageCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammar.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammarList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionAlternative.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisUtterance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisVoice.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/GainNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioListener.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PannerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioParam.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioProcessingEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/BiquadFilterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ConvolverNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DelayNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DynamicsCompressorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ScriptProcessorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioCompletionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OscillatorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PeriodicWave.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AnalyserNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/WaveShaperNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/Database.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSet.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSetRowList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSyncCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccess.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccessPromise.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIConnectionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIInput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIOutput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIPort.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDISuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/CloseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/WebSocket.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphItemElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphDefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateColorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateMotionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateTransformElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedBoolean.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedEnumeration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedInteger.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedString.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimationElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCircleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGClipPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGComponentTransferFunctionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCursorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDefsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDescElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstanceList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGEllipseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEBlendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEColorMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEComponentTransferElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFECompositeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEConvolveMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDiffuseLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDisplacementMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDistantLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDropShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFloodElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncBElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEGaussianBlurElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeNodeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMorphologyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEOffsetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEPointLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpecularLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpotLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETileElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETurbulenceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceFormatElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceNameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceSrcElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceUriElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGForeignObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGraphicsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGHKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLinearGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMarkerElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMaskElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMetadataElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMissingGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPaint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSeg.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegClosePath.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPatternElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPointList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolygonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolylineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRadialGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRenderingIntent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStopElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyledElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSwitchElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSymbolElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPositioningElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransform.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUnitTypes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewSpec.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGVKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ChildNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ParentNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/AbstractWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WindowCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerGlobalScopePerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/NavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WorkerNavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/WindowSpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGExternalResourcesRequired.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFitToViewBox.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTests.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGURIReference.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomAndPan.idl $(GYP_TARGET_DEPENDENCIES)
 	@echo "Gyp action: Resolving partial interfaces dependencies in all IDL files ($@)"
 	$(hide)cd $(gyp_local_path)/third_party/WebKit/Source/bindings; mkdir -p $(gyp_shared_intermediate_dir); python scripts/compute_dependencies.py --idl-files-list idl_files_list.tmp --interface-dependencies-file "$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt" --window-constructors-file "$(gyp_shared_intermediate_dir)/WindowConstructors.idl" --workerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl" --sharedworkerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl" --dedicatedworkerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl" --event-names-file "$(gyp_shared_intermediate_dir)/EventNames.in" --write-file-only-if-changed 0
 
diff --git a/Source/bindings/interface_dependencies.target.linux-mips.mk b/Source/bindings/interface_dependencies.target.linux-mips.mk
index 7903387..0b6ed1a 100644
--- a/Source/bindings/interface_dependencies.target.linux-mips.mk
+++ b/Source/bindings/interface_dependencies.target.linux-mips.mk
@@ -18,7 +18,7 @@
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
-$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/compute_dependencies.py $(LOCAL_PATH)/third_party/WebKit/Source/bindings/idl_files_list.tmp $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSS.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSCharsetRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSHostRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSImportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSMediaRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPageRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPrimitiveValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRuleList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleDeclaration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSSupportsRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSViewportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSVariablesMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Counter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/FontLoader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaQueryList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Rect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/RGBColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleMedia.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheetList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframeRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframesRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMixFunctionValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSRegionRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSTransformValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Attr.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/AutocompleteErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/BeforeLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CDATASection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CharacterData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRectList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Clipboard.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Comment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CompositionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CustomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMException.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMImplementation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItemList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Document.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFragment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Element.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Entity.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Event.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/EventTarget.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/FocusEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/HashChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/KeyboardEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessagePort.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MouseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationObserver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationRecord.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NamedNodeMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Node.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeFilter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeIterator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Notation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/OverflowEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PageTransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PopStateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProcessingInstruction.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Promise.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PromiseResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Range.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/RequestAnimationFrameCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ResourceProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/SecurityPolicyViolationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/StringCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Text.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Touch.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TreeWalker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/UIEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitAnimationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlow.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlowCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WheelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Blob.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/File.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Stream.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMSettableTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/FormData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAllCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAnchorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAppletElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAudioElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBaseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBodyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLButtonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCanvasElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDataListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDetailsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDialogElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDirectoryElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDivElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLEmbedElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFieldSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormControlsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHtmlElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLIFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLInputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLKeygenElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLIElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLabelElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLegendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLinkElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMarqueeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMediaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMenuElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMetaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMeterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLModElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptGroupElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOutputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParagraphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParamElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLPreElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLProgressElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLQuoteElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSelectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSourceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCaptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCellElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableColElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableRowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableSectionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTextAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTemplateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTrackElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUnknownElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLVideoElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ImageData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/RadioNodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TextMetrics.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TimeRanges.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/URL.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ValidityState.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/VoidCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ANGLEInstancedArrays.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ArrayBufferView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasGradient.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasPattern.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext2D.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Canvas2DContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/DataView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTFragDepth.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTTextureFilterAnisotropic.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float64Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESStandardDerivatives.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESVertexArrayObject.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESElementIndexUint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Path.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8ClampedArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLActiveInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureATC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTexturePVRTC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureS3TC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugRendererInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugShaders.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDepthTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDrawBuffers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLFramebuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLLoseContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLProgram.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderbuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShaderPrecisionFormat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLUniformLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/Composition.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/InputMethodContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegion.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegionList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InjectedScriptHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorFrontendHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorOverlayHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/JavaScriptCallFrame.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/loader/appcache/DOMApplicationCache.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/BarProp.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Console.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/EventSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/History.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmapCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Location.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/MemoryInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Navigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PagePopupController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Performance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMark.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMeasure.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceNavigation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceResourceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Screen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SecurityPolicy.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Selection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WebKitPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Window.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowBase64.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowTimers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WorkerNavigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeTypeArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/Plugin.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/PluginArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/Storage.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/StorageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/Worker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DOMParser.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestUpload.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLSerializer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathExpression.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathNSResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XSLTProcessor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesCbcParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesKeyGenParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Algorithm.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Crypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/CryptoOperation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Key.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceAcceleration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceMotionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceOrientationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceRotationRate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeys.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeySession.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystemSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntriesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Entry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArraySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/ErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileSystemCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Metadata.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/MetadataCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/Gamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/GamepadList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Coordinates.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geoposition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBAny.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursorWithValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBKeyRange.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBVersionChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/MediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackSourcesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaSuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFToneChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescription.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescriptionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsReport.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsResponse.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/SourceInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/Notification.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationCenter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationPermissionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerPerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuotaCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageUsageCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammar.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammarList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionAlternative.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisUtterance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisVoice.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/GainNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioListener.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PannerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioParam.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioProcessingEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/BiquadFilterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ConvolverNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DelayNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DynamicsCompressorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ScriptProcessorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioCompletionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OscillatorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PeriodicWave.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AnalyserNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/WaveShaperNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/Database.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSet.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSetRowList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSyncCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccess.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccessPromise.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIConnectionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIInput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIOutput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIPort.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDISuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/CloseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/WebSocket.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphItemElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphDefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateColorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateMotionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateTransformElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedBoolean.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedEnumeration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedInteger.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedString.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimationElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCircleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGClipPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGComponentTransferFunctionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCursorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDefsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDescElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstanceList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGEllipseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEBlendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEColorMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEComponentTransferElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFECompositeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEConvolveMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDiffuseLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDisplacementMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDistantLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDropShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFloodElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncBElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEGaussianBlurElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeNodeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMorphologyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEOffsetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEPointLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpecularLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpotLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETileElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETurbulenceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceFormatElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceNameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceSrcElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceUriElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGForeignObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGraphicsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGHKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLinearGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMarkerElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMaskElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMetadataElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMissingGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPaint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSeg.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegClosePath.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPatternElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPointList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolygonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolylineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRadialGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRenderingIntent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStopElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyledElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSwitchElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSymbolElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPositioningElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransform.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUnitTypes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewSpec.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGVKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ChildNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ParentNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/AbstractWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WindowCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerGlobalScopePerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/NavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WorkerNavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/WindowSpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGExternalResourcesRequired.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFitToViewBox.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTests.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGURIReference.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomAndPan.idl $(GYP_TARGET_DEPENDENCIES)
+$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/compute_dependencies.py $(LOCAL_PATH)/third_party/WebKit/Source/bindings/idl_files_list.tmp $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSS.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSCharsetRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSHostRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSImportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSMediaRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPageRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPrimitiveValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRuleList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleDeclaration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSSupportsRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSViewportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSVariablesMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Counter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/FontLoader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaQueryList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Rect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/RGBColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleMedia.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheetList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframeRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframesRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMixFunctionValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSRegionRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSTransformValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Attr.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/AutocompleteErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/BeforeLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CDATASection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CharacterData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRectList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Clipboard.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Comment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CompositionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CustomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMException.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMImplementation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItemList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Document.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFragment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Element.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Entity.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Event.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/EventTarget.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/FocusEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/HashChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/KeyboardEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessagePort.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MouseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationObserver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationRecord.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NamedNodeMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Node.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeFilter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeIterator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Notation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/OverflowEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PageTransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PopStateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProcessingInstruction.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Promise.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PromiseResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Range.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/RequestAnimationFrameCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ResourceProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/SecurityPolicyViolationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/StringCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Text.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Touch.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TreeWalker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/UIEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitAnimationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlow.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlowCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WheelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Blob.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/File.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Stream.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMSettableTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/FormData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAllCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAnchorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAppletElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAudioElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBaseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBodyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLButtonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCanvasElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDataListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDetailsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDialogElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDirectoryElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDivElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLEmbedElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFieldSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormControlsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHtmlElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLIFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLInputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLKeygenElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLIElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLabelElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLegendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLinkElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMarqueeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMediaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMenuElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMetaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMeterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLModElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptGroupElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOutputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParagraphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParamElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLPreElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLProgressElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLQuoteElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSelectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSourceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCaptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCellElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableColElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableRowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableSectionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTextAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTemplateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTrackElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUnknownElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLVideoElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ImageData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/RadioNodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TextMetrics.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TimeRanges.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/URL.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ValidityState.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/VoidCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ANGLEInstancedArrays.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ArrayBufferView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasGradient.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasPattern.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext2D.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Canvas2DContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/DataView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTFragDepth.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTTextureFilterAnisotropic.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float64Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESStandardDerivatives.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESVertexArrayObject.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESElementIndexUint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Path.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8ClampedArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLActiveInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureATC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTexturePVRTC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureS3TC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugRendererInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugShaders.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDepthTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDrawBuffers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLFramebuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLLoseContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLProgram.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderbuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShaderPrecisionFormat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLUniformLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/Composition.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/InputMethodContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegion.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegionList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InjectedScriptHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorFrontendHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorOverlayHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/JavaScriptCallFrame.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/loader/appcache/DOMApplicationCache.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/BarProp.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Console.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/EventSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/History.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmapCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Location.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/MemoryInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Navigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PagePopupController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Performance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMark.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMeasure.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceNavigation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceResourceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Screen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SecurityPolicy.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Selection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WebKitPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Window.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowBase64.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowTimers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WorkerNavigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeTypeArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/Plugin.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/PluginArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/Storage.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/StorageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/Worker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DOMParser.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestUpload.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLSerializer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathExpression.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathNSResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XSLTProcessor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesCbcParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesKeyGenParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Algorithm.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Crypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/CryptoOperation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/HmacParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Key.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceAcceleration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceMotionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceOrientationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceRotationRate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeys.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeySession.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystemSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntriesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Entry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArraySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/ErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileSystemCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Metadata.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/MetadataCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/Gamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/GamepadList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Coordinates.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geoposition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBAny.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursorWithValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBKeyRange.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBVersionChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/MediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackSourcesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaSuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFToneChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescription.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescriptionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsReport.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsResponse.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/SourceInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/Notification.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationCenter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationPermissionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerPerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuotaCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageUsageCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammar.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammarList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionAlternative.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisUtterance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisVoice.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/GainNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioListener.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PannerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioParam.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioProcessingEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/BiquadFilterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ConvolverNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DelayNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DynamicsCompressorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ScriptProcessorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioCompletionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OscillatorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PeriodicWave.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AnalyserNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/WaveShaperNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/Database.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSet.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSetRowList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSyncCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccess.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccessPromise.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIConnectionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIInput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIOutput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIPort.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDISuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/CloseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/WebSocket.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphItemElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphDefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateColorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateMotionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateTransformElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedBoolean.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedEnumeration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedInteger.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedString.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimationElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCircleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGClipPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGComponentTransferFunctionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCursorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDefsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDescElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstanceList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGEllipseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEBlendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEColorMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEComponentTransferElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFECompositeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEConvolveMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDiffuseLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDisplacementMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDistantLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDropShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFloodElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncBElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEGaussianBlurElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeNodeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMorphologyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEOffsetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEPointLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpecularLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpotLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETileElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETurbulenceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceFormatElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceNameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceSrcElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceUriElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGForeignObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGraphicsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGHKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLinearGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMarkerElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMaskElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMetadataElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMissingGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPaint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSeg.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegClosePath.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPatternElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPointList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolygonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolylineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRadialGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRenderingIntent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStopElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyledElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSwitchElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSymbolElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPositioningElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransform.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUnitTypes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewSpec.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGVKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ChildNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ParentNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/AbstractWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WindowCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerGlobalScopePerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/NavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WorkerNavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/WindowSpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGExternalResourcesRequired.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFitToViewBox.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTests.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGURIReference.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomAndPan.idl $(GYP_TARGET_DEPENDENCIES)
 	@echo "Gyp action: Resolving partial interfaces dependencies in all IDL files ($@)"
 	$(hide)cd $(gyp_local_path)/third_party/WebKit/Source/bindings; mkdir -p $(gyp_shared_intermediate_dir); python scripts/compute_dependencies.py --idl-files-list idl_files_list.tmp --interface-dependencies-file "$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt" --window-constructors-file "$(gyp_shared_intermediate_dir)/WindowConstructors.idl" --workerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl" --sharedworkerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl" --dedicatedworkerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl" --event-names-file "$(gyp_shared_intermediate_dir)/EventNames.in" --write-file-only-if-changed 0
 
diff --git a/Source/bindings/interface_dependencies.target.linux-x86.mk b/Source/bindings/interface_dependencies.target.linux-x86.mk
index 7903387..0b6ed1a 100644
--- a/Source/bindings/interface_dependencies.target.linux-x86.mk
+++ b/Source/bindings/interface_dependencies.target.linux-x86.mk
@@ -18,7 +18,7 @@
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: gyp_intermediate_dir := $(abspath $(gyp_intermediate_dir))
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: gyp_shared_intermediate_dir := $(abspath $(gyp_shared_intermediate_dir))
 $(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: export PATH := $(subst $(ANDROID_BUILD_PATHS),,$(PATH))
-$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/compute_dependencies.py $(LOCAL_PATH)/third_party/WebKit/Source/bindings/idl_files_list.tmp $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSS.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSCharsetRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSHostRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSImportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSMediaRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPageRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPrimitiveValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRuleList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleDeclaration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSSupportsRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSViewportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSVariablesMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Counter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/FontLoader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaQueryList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Rect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/RGBColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleMedia.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheetList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframeRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframesRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMixFunctionValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSRegionRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSTransformValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Attr.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/AutocompleteErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/BeforeLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CDATASection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CharacterData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRectList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Clipboard.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Comment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CompositionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CustomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMException.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMImplementation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItemList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Document.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFragment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Element.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Entity.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Event.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/EventTarget.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/FocusEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/HashChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/KeyboardEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessagePort.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MouseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationObserver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationRecord.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NamedNodeMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Node.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeFilter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeIterator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Notation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/OverflowEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PageTransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PopStateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProcessingInstruction.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Promise.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PromiseResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Range.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/RequestAnimationFrameCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ResourceProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/SecurityPolicyViolationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/StringCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Text.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Touch.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TreeWalker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/UIEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitAnimationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlow.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlowCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WheelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Blob.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/File.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Stream.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMSettableTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/FormData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAllCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAnchorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAppletElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAudioElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBaseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBodyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLButtonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCanvasElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDataListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDetailsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDialogElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDirectoryElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDivElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLEmbedElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFieldSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormControlsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHtmlElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLIFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLInputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLKeygenElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLIElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLabelElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLegendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLinkElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMarqueeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMediaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMenuElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMetaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMeterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLModElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptGroupElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOutputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParagraphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParamElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLPreElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLProgressElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLQuoteElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSelectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSourceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCaptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCellElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableColElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableRowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableSectionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTextAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTemplateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTrackElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUnknownElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLVideoElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ImageData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/RadioNodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TextMetrics.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TimeRanges.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/URL.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ValidityState.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/VoidCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ANGLEInstancedArrays.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ArrayBufferView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasGradient.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasPattern.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext2D.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Canvas2DContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/DataView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTFragDepth.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTTextureFilterAnisotropic.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float64Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESStandardDerivatives.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESVertexArrayObject.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESElementIndexUint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Path.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8ClampedArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLActiveInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureATC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTexturePVRTC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureS3TC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugRendererInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugShaders.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDepthTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDrawBuffers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLFramebuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLLoseContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLProgram.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderbuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShaderPrecisionFormat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLUniformLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/Composition.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/InputMethodContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegion.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegionList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InjectedScriptHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorFrontendHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorOverlayHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/JavaScriptCallFrame.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/loader/appcache/DOMApplicationCache.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/BarProp.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Console.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/EventSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/History.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmapCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Location.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/MemoryInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Navigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PagePopupController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Performance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMark.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMeasure.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceNavigation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceResourceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Screen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SecurityPolicy.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Selection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WebKitPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Window.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowBase64.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowTimers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WorkerNavigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeTypeArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/Plugin.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/PluginArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/Storage.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/StorageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/Worker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DOMParser.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestUpload.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLSerializer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathExpression.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathNSResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XSLTProcessor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesCbcParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesKeyGenParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Algorithm.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Crypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/CryptoOperation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Key.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceAcceleration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceMotionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceOrientationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceRotationRate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeys.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeySession.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystemSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntriesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Entry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArraySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/ErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileSystemCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Metadata.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/MetadataCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/Gamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/GamepadList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Coordinates.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geoposition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBAny.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursorWithValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBKeyRange.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBVersionChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/MediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackSourcesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaSuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFToneChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescription.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescriptionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsReport.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsResponse.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/SourceInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/Notification.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationCenter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationPermissionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerPerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuotaCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageUsageCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammar.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammarList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionAlternative.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisUtterance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisVoice.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/GainNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioListener.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PannerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioParam.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioProcessingEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/BiquadFilterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ConvolverNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DelayNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DynamicsCompressorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ScriptProcessorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioCompletionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OscillatorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PeriodicWave.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AnalyserNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/WaveShaperNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/Database.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSet.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSetRowList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSyncCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccess.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccessPromise.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIConnectionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIInput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIOutput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIPort.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDISuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/CloseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/WebSocket.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphItemElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphDefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateColorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateMotionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateTransformElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedBoolean.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedEnumeration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedInteger.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedString.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimationElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCircleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGClipPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGComponentTransferFunctionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCursorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDefsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDescElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstanceList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGEllipseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEBlendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEColorMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEComponentTransferElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFECompositeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEConvolveMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDiffuseLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDisplacementMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDistantLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDropShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFloodElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncBElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEGaussianBlurElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeNodeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMorphologyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEOffsetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEPointLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpecularLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpotLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETileElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETurbulenceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceFormatElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceNameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceSrcElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceUriElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGForeignObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGraphicsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGHKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLinearGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMarkerElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMaskElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMetadataElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMissingGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPaint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSeg.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegClosePath.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPatternElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPointList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolygonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolylineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRadialGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRenderingIntent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStopElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyledElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSwitchElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSymbolElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPositioningElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransform.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUnitTypes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewSpec.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGVKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ChildNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ParentNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/AbstractWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WindowCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerGlobalScopePerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/NavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WorkerNavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/WindowSpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGExternalResourcesRequired.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFitToViewBox.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTests.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGURIReference.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomAndPan.idl $(GYP_TARGET_DEPENDENCIES)
+$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt: $(LOCAL_PATH)/third_party/WebKit/Source/bindings/scripts/compute_dependencies.py $(LOCAL_PATH)/third_party/WebKit/Source/bindings/idl_files_list.tmp $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSS.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSCharsetRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSFontFaceRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSHostRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSImportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSMediaRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPageRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSPrimitiveValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSRuleList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleDeclaration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSStyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSSupportsRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSValueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSViewportRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/CSSVariablesMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Counter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/FontLoader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/MediaQueryList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/Rect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/RGBColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleMedia.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheet.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/StyleSheetList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSFilterValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframeRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSKeyframesRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSMixFunctionValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSRegionRule.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/css/WebKitCSSTransformValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Attr.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/AutocompleteErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/BeforeLoadEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CDATASection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CharacterData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ClientRectList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Clipboard.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Comment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CompositionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/CustomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMException.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMImplementation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DOMStringMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItem.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DataTransferItemList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Document.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFragment.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Element.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Entity.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ErrorEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Event.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/EventTarget.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/FocusEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/HashChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/KeyboardEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MessagePort.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MouseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationObserver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/MutationRecord.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NamedNodeMap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Node.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeFilter.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeIterator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/NodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Notation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/OverflowEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PageTransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PopStateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProcessingInstruction.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Promise.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/PromiseResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Range.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/RequestAnimationFrameCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ResourceProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/SecurityPolicyViolationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/StringCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Text.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/Touch.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TouchList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TransitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/TreeWalker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/UIEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitAnimationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlow.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WebKitNamedFlowCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/WheelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/shadow/ShadowRoot.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Blob.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/File.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/FileReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/fileapi/Stream.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMSettableTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/DOMTokenList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/FormData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAllCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAnchorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAppletElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLAudioElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBaseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLBodyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLButtonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCanvasElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDataListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDetailsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDialogElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDirectoryElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDivElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLEmbedElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFieldSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormControlsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFormElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLFrameSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHeadingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLHtmlElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLIFrameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLInputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLKeygenElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLIElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLabelElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLegendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLLinkElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMarqueeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMediaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMenuElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMetaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLMeterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLModElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptGroupElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOptionsCollection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLOutputElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParagraphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLParamElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLPreElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLProgressElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLQuoteElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSelectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSourceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCaptionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableCellElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableColElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableRowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTableSectionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTextAreaElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTemplateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLTrackElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUListElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLUnknownElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/HTMLVideoElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ImageData.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyError.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/MediaKeyEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/RadioNodeList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TextMetrics.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/TimeRanges.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/URL.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ValidityState.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/VoidCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ANGLEInstancedArrays.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/ArrayBufferView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasGradient.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasPattern.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext2D.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Canvas2DContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/DataView.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTFragDepth.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/EXTTextureFilterAnisotropic.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Float64Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Int8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESStandardDerivatives.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESTextureHalfFloatLinear.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESVertexArrayObject.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/OESElementIndexUint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Path.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint16Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint32Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8Array.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/Uint8ClampedArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLActiveInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureATC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTexturePVRTC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLCompressedTextureS3TC.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLContextEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugRendererInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDebugShaders.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDepthTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLDrawBuffers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLFramebuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLLoseContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLProgram.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderbuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLRenderingContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShader.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLShaderPrecisionFormat.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLTexture.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLUniformLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/Composition.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/ime/InputMethodContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/shadow/HTMLShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCue.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackCueList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegion.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/html/track/TextTrackRegionList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InjectedScriptHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorFrontendHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/InspectorOverlayHost.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/inspector/JavaScriptCallFrame.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/loader/appcache/DOMApplicationCache.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/BarProp.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Console.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/EventSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/History.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmap.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/ImageBitmapCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Location.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/MemoryInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Navigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PagePopupController.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Performance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMark.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceMeasure.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceNavigation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceResourceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/PerformanceTiming.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Screen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SecurityPolicy.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Selection.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/SpeechInputResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WebKitPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/Window.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowBase64.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowTimers.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WorkerNavigator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeType.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/MimeTypeArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/Plugin.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/plugins/PluginArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/Storage.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/storage/StorageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/DedicatedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/SharedWorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/Worker.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerGlobalScope.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/WorkerLocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DOMParser.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/DocumentXPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestProgressEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLHttpRequestUpload.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XMLSerializer.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathEvaluator.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathExpression.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathNSResolver.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XPathResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/xml/XSLTProcessor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesCbcParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/AesKeyGenParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Algorithm.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Crypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/CryptoOperation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/HmacParams.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/Key.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceAcceleration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceMotionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceOrientationEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/device_orientation/DeviceRotationRate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeys.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/encryptedmedia/MediaKeySession.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DOMFileSystemSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReader.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DirectoryReaderSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntriesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Entry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArray.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryArraySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntryCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/EntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/ErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntry.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileEntrySync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileSystemCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/FileWriterSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/Metadata.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/MetadataCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/Gamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/GamepadList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Coordinates.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/Geoposition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/PositionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBAny.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursor.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBCursorWithValue.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBFactory.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBIndex.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBKeyRange.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBRequest.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/IDBVersionChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/MediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/SourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/URLMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WebKitSourceBufferList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/MediaStreamTrackSourcesCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorUserMediaSuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFSender.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDTMFToneChangeEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannel.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCDataChannelEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidate.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCIceCandidateEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCPeerConnection.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescription.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCSessionDescriptionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsReport.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/RTCStatsResponse.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/SourceInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/URLMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/Notification.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationCenter.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/NotificationPermissionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerPerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageInfo.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageQuotaCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/StorageUsageCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammar.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechGrammarList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognition.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionAlternative.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResult.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechRecognitionResultList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisUtterance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/SpeechSynthesisVoice.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBuffer.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioBufferSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/GainNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioListener.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PannerNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioParam.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioProcessingEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/BiquadFilterNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ConvolverNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DelayNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/DynamicsCompressorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/ScriptProcessorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioDestinationNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioCompletionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OfflineAudioContext.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/OscillatorNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/PeriodicWave.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/AnalyserNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webaudio/WaveShaperNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/Database.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/DatabaseSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLError.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSet.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLResultSetRowList.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLStatementErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransaction.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSync.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/SQLTransactionSyncCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccess.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIAccessPromise.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIConnectionEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIErrorCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIInput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIMessageEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIOutput.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDIPort.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/MIDISuccessCallback.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/CloseEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/websockets/WebSocket.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphItemElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAltGlyphDefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateColorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateMotionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimateTransformElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedAngle.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedBoolean.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedEnumeration.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedInteger.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedString.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimatedTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGAnimationElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCircleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGClipPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGColor.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGComponentTransferFunctionElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGCursorElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDefsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDescElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGDocument.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstance.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGElementInstanceList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGEllipseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEBlendElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEColorMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEComponentTransferElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFECompositeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEConvolveMatrixElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDiffuseLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDisplacementMapElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDistantLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEDropShadowElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFloodElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncAElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncBElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEFuncRElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEGaussianBlurElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMergeNodeElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEMorphologyElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEOffsetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFEPointLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpecularLightingElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFESpotLightElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETileElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFETurbulenceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceFormatElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceNameElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceSrcElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFontFaceUriElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGForeignObjectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGlyphRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGGraphicsElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGHKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGImageElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLength.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLengthList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGLinearGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMarkerElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMaskElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMatrix.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMetadataElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMissingGlyphElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGMPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumber.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGNumberList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPaint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSeg.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegArcRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegClosePath.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegLinetoVerticalRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoAbs.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPathSegMovetoRel.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPatternElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPoint.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPointList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolygonElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPolylineElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRadialGradientElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRect.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRectElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGRenderingIntent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSVGElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGScriptElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSetElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStopElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStringList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGStyledElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSwitchElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGSymbolElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTRefElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTSpanElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextContentElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPathElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTextPositioningElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTitleElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransform.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTransformList.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUnitTypes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGUseElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGViewSpec.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGVKernElement.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomEvent.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ChildNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/DocumentFullscreen.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/dom/ParentNode.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/page/WindowPagePopup.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/workers/AbstractWorker.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WindowCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/crypto/WorkerGlobalScopeCrypto.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/donottrack/NavigatorDoNotTrack.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/DataTransferItemFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/HTMLInputElementFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WindowFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/gamepad/NavigatorGamepad.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/geolocation/NavigatorGeolocation.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WindowIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediasource/WindowMediaSource.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/mediastream/NavigatorMediaStream.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/navigatorcontentutils/NavigatorContentUtils.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WindowNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/notifications/WorkerGlobalScopeNotifications.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/performance/WorkerGlobalScopePerformance.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/NavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WindowQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/quota/WorkerNavigatorStorageQuota.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/speech/WindowSpeechSynthesis.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/vibration/NavigatorVibration.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WindowWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webdatabase/WorkerGlobalScopeWebDatabase.idl $(LOCAL_PATH)/third_party/WebKit/Source/modules/webmidi/NavigatorWebMIDI.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGExternalResourcesRequired.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGFitToViewBox.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGTests.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGURIReference.idl $(LOCAL_PATH)/third_party/WebKit/Source/core/svg/SVGZoomAndPan.idl $(GYP_TARGET_DEPENDENCIES)
 	@echo "Gyp action: Resolving partial interfaces dependencies in all IDL files ($@)"
 	$(hide)cd $(gyp_local_path)/third_party/WebKit/Source/bindings; mkdir -p $(gyp_shared_intermediate_dir); python scripts/compute_dependencies.py --idl-files-list idl_files_list.tmp --interface-dependencies-file "$(gyp_shared_intermediate_dir)/InterfaceDependencies.txt" --window-constructors-file "$(gyp_shared_intermediate_dir)/WindowConstructors.idl" --workerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/WorkerGlobalScopeConstructors.idl" --sharedworkerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/SharedWorkerGlobalScopeConstructors.idl" --dedicatedworkerglobalscope-constructors-file "$(gyp_shared_intermediate_dir)/DedicatedWorkerGlobalScopeConstructors.idl" --event-names-file "$(gyp_shared_intermediate_dir)/EventNames.in" --write-file-only-if-changed 0
 
diff --git a/Source/bindings/scripts/compute_dependencies.py b/Source/bindings/scripts/compute_dependencies.py
index ee11ccd..8c3e3a2 100755
--- a/Source/bindings/scripts/compute_dependencies.py
+++ b/Source/bindings/scripts/compute_dependencies.py
@@ -287,7 +287,7 @@
 
     # An IDL file's dependencies are partial interface files that extend it,
     # and files for other interfaces that this interfaces implements.
-    for idl_file_path, others in dependencies.iteritems():
+    for idl_file_path in dependencies.iterkeys():
         interface_name, _ = os.path.splitext(os.path.basename(idl_file_path))
         implemented_interfaces = implements_interfaces[interface_name]
         try:
diff --git a/Source/bindings/scripts/deprecated_code_generator_v8.pm b/Source/bindings/scripts/deprecated_code_generator_v8.pm
index cd82aff..c080b2b 100644
--- a/Source/bindings/scripts/deprecated_code_generator_v8.pm
+++ b/Source/bindings/scripts/deprecated_code_generator_v8.pm
@@ -5162,7 +5162,7 @@
             AddToImplIncludes("V8${arrayOrSequenceType}.h");
             return "(toRefPtrNativeArray<${arrayOrSequenceType}, V8${arrayOrSequenceType}>($value, $getIsolate))";
         }
-        return "toNativeArray<" . GetNativeType($arrayOrSequenceType) . ">($value)";
+        return "toNativeArray<" . GetNativeType($arrayOrSequenceType) . ">($value, $getIsolate)";
     }
 
     AddIncludesForType($type);
@@ -5462,7 +5462,6 @@
     AddIncludesForType($type);
 
     if ($type eq "SerializedScriptValue") {
-        AddToImplIncludes("$type.h");
         my $returnValue = "$nativeValue ? $nativeValue->deserialize() : v8::Handle<v8::Value>(v8::Null($getIsolate))";
         return "${indent}v8SetReturnValue(${getCallbackInfo}, $returnValue);" if $isReturnValue;
         return "$indent$receiver $returnValue;";
diff --git a/Source/bindings/scripts/deprecated_idl_parser.pm b/Source/bindings/scripts/deprecated_idl_parser.pm
index a202778..9148d72 100644
--- a/Source/bindings/scripts/deprecated_idl_parser.pm
+++ b/Source/bindings/scripts/deprecated_idl_parser.pm
@@ -226,6 +226,10 @@
             die "Unrecognized IDL definition kind: \"" . ref($definition) . "\"";
         }
     }
+    # Sort so output independent of order in IDL file (e.g., for JSON output)
+    @{$document->callbackFunctions} = sort {$a->name cmp $b->name} @{$document->callbackFunctions};
+    @{$document->enumerations} = sort {$a->name cmp $b->name} @{$document->enumerations};
+    @{$document->interfaces} = sort {$a->name cmp $b->name} @{$document->interfaces};
     return $document;
 }
 
diff --git a/Source/bindings/scripts/idl_compiler.py b/Source/bindings/scripts/idl_compiler.py
index 7400b06..e47843d 100755
--- a/Source/bindings/scripts/idl_compiler.py
+++ b/Source/bindings/scripts/idl_compiler.py
@@ -97,18 +97,20 @@
     idl_filename = options.idl_filename
     basename = os.path.basename(idl_filename)
     interface_name, _ = os.path.splitext(basename)
+    output_directory = options.output_directory
     verbose = options.verbose
     if verbose:
         print idl_filename
 
-    definitions = idl_reader.read_idl_definitions(idl_filename, options.interface_dependencies_file, options.additional_idl_files, options.idl_attributes_file, verbose=options.verbose, outputdir=options.output_directory)
+    reader = idl_reader.IdlReader(options.interface_dependencies_file, options.additional_idl_files, options.idl_attributes_file, output_directory, verbose)
+    definitions = reader.read_idl_definitions(idl_filename)
     if not definitions:
         # We generate dummy .h and .cpp files just to tell build scripts
         # that outputs have been created.
-        code_generator_v8.generate_dummy_header_and_cpp(interface_name, options.output_directory)
+        code_generator_v8.generate_dummy_header_and_cpp(interface_name, output_directory)
         return
     if options.dump_json_and_pickle:
-        write_json_and_pickle(definitions, interface_name, options.output_directory)
+        write_json_and_pickle(definitions, interface_name, output_directory)
         return
     # FIXME: turn on code generator
     # Currently definitions must be None (so dummy .h and .cpp files are
diff --git a/Source/bindings/scripts/idl_reader.py b/Source/bindings/scripts/idl_reader.py
index 022bf9a..31cbb0d 100644
--- a/Source/bindings/scripts/idl_reader.py
+++ b/Source/bindings/scripts/idl_reader.py
@@ -36,22 +36,42 @@
 import interface_dependency_resolver
 
 
-def read_idl_definitions(idl_filename, interface_dependencies_filename, additional_idl_filenames, idl_attributes_filename, verbose=False, outputdir=''):
-    """Returns an IdlDefinitions object for an IDL file, including all dependencies."""
-    basename = os.path.basename(idl_filename)
+class IdlReader:
+    def __init__(self, interface_dependencies_filename=None, additional_idl_filenames=None, idl_attributes_filename=None, outputdir='', verbose=False):
+        if idl_attributes_filename:
+            self.extended_attribute_validator = idl_validator.IDLExtendedAttributeValidator(idl_attributes_filename)
+        else:
+            self.extended_attribute_validator = None
 
-    definitions = read_idl_file(idl_filename, outputdir=outputdir)
-    if interface_dependencies_filename:
-        should_generate_bindings = interface_dependency_resolver.resolve_dependencies(definitions, idl_filename, interface_dependencies_filename, additional_idl_filenames, verbose=verbose, outputdir=outputdir)
-        if not should_generate_bindings:
-            return None
-    if idl_attributes_filename:
-        idl_validator.validate_extended_attributes(definitions, basename, idl_attributes_filename)
-    return definitions
+        if interface_dependencies_filename:
+            self.interface_dependency_resolver = interface_dependency_resolver.InterfaceDependencyResolver(interface_dependencies_filename, additional_idl_filenames, self)
+        else:
+            self.interface_dependency_resolver = None
 
+        self.parser = blink_idl_parser.BlinkIDLParser(outputdir=outputdir, verbose=verbose)
 
-def read_idl_file(idl_filename, verbose=False, outputdir=''):
-    """Returns an IdlDefinitions object for an IDL file, without any dependencies."""
-    parser = blink_idl_parser.BlinkIDLParser(verbose=verbose, outputdir=outputdir)
-    ast = blink_idl_parser.parse_file(parser, idl_filename)
-    return idl_definitions_builder.build_idl_definitions_from_ast(ast)
+    def read_idl_definitions(self, idl_filename):
+        """Returns an IdlDefinitions object for an IDL file, including all dependencies."""
+        basename = os.path.basename(idl_filename)
+        interface_name, _ = os.path.splitext(basename)
+        definitions = self.read_idl_file(idl_filename)
+        if self.interface_dependency_resolver:
+            should_generate_bindings = self.interface_dependency_resolver.resolve_dependencies(definitions, interface_name)
+            if not should_generate_bindings:
+                return None
+        return definitions
+
+    def read_idl_file(self, idl_filename):
+        """Returns an IdlDefinitions object for an IDL file, without any dependencies."""
+        ast = blink_idl_parser.parse_file(self.parser, idl_filename)
+        definitions = idl_definitions_builder.build_idl_definitions_from_ast(ast)
+        if self.extended_attribute_validator:
+            try:
+                self.extended_attribute_validator.validate_extended_attributes(definitions)
+            except idl_validator.IDLInvalidExtendedAttributeError, error:
+                raise idl_validator.IDLInvalidExtendedAttributeError("""IDL ATTRIBUTE ERROR in file %s:
+    %s
+    If you want to add a new IDL extended attribute, please add it to bindings/scripts/IDLAttributes.txt and add an explanation to the Blink IDL document at http://chromium.org/blink/webidl
+    """ % (idl_filename, str(error)))
+
+        return definitions
diff --git a/Source/bindings/scripts/idl_validator.py b/Source/bindings/scripts/idl_validator.py
index 4e60fb8..0b4872f 100644
--- a/Source/bindings/scripts/idl_validator.py
+++ b/Source/bindings/scripts/idl_validator.py
@@ -40,9 +40,40 @@
     pass
 
 
-def validate_extended_attributes(definitions, basename, idl_attributes_filename):
-    extended_attribute_validator = IDLExtendedAttributeValidator(idl_attributes_filename)
-    extended_attribute_validator.validate_extended_attributes(definitions, basename)
+class IDLExtendedAttributeValidator:
+    def __init__(self, extended_attributes_filename):
+        self.valid_extended_attributes = read_extended_attributes_file(extended_attributes_filename)
+
+    def validate_extended_attributes(self, definitions):
+        # FIXME: this should be done when parsing the file, rather than after.
+        for interface in definitions.interfaces.itervalues():
+            self.validate_extended_attributes_node(interface)
+            for attribute in interface.attributes:
+                self.validate_extended_attributes_node(attribute)
+            for operation in interface.operations:
+                self.validate_extended_attributes_node(operation)
+                for argument in operation.arguments:
+                    self.validate_extended_attributes_node(argument)
+
+    def validate_extended_attributes_node(self, node):
+        for name, values_string in node.extended_attributes.iteritems():
+            self.validate_name_values_string(name, values_string)
+
+    def validate_name_values_string(self, name, values_string):
+        if name == 'ImplementedBy':  # attribute added when merging interfaces
+            return
+        if name not in self.valid_extended_attributes:
+            raise IDLInvalidExtendedAttributeError('Unknown extended attribute [%s]' % name)
+        valid_values = self.valid_extended_attributes[name]
+        if '*' in valid_values:  # wildcard, any value ok
+            return
+        if values_string is None:
+            value_list = [None]
+        else:
+            value_list = re.split('[|&]', values_string)
+        for value in value_list:
+            if value not in valid_values:
+                raise IDLInvalidExtendedAttributeError('Invalid value "%s" found in extended attribute [%s=%s]' % (value, name, values_string))
 
 
 def read_extended_attributes_file(extended_attributes_filename):
@@ -66,45 +97,3 @@
                     value = None
                 valid_extended_attributes[name].add(value)
     return valid_extended_attributes
-
-
-class IDLExtendedAttributeValidator:
-    def __init__(self, extended_attributes_filename):
-        self.valid_extended_attributes = read_extended_attributes_file(extended_attributes_filename)
-
-    def validate_extended_attributes(self, definitions, idl_filename):
-        # FIXME: this should be done when parsing the file, rather than after.
-        try:
-            for interface in definitions.interfaces.itervalues():
-                self.validate_extended_attributes_node(interface)
-                for attribute in interface.attributes:
-                    self.validate_extended_attributes_node(attribute)
-                for operation in interface.operations:
-                    self.validate_extended_attributes_node(operation)
-                    for argument in operation.arguments:
-                        self.validate_extended_attributes_node(argument)
-        except IDLInvalidExtendedAttributeError, error:
-            raise IDLInvalidExtendedAttributeError("""IDL ATTRIBUTE ERROR in file %s:
-%s
-If you want to add a new IDL extended attribute, please add it to bindings/scripts/IDLAttributes.txt and add an explanation to the Blink IDL document at http://chromium.org/blink/webidl
-""" % (idl_filename, str(error)))
-
-    def validate_extended_attributes_node(self, node):
-        for name, values_string in node.extended_attributes.iteritems():
-            self.validate_name_values_string(name, values_string)
-
-    def validate_name_values_string(self, name, values_string):
-        if name == 'ImplementedBy':  # attribute added when merging interfaces
-            return
-        if name not in self.valid_extended_attributes:
-            raise IDLInvalidExtendedAttributeError('Unknown extended attribute [%s]' % name)
-        valid_values = self.valid_extended_attributes[name]
-        if '*' in valid_values:  # wildcard, any value ok
-            return
-        if values_string is None:
-            value_list = [None]
-        else:
-            value_list = re.split('[|&]', values_string)
-        for value in value_list:
-            if value not in valid_values:
-                raise IDLInvalidExtendedAttributeError('Invalid value "%s" found in extended attribute [%s=%s]' % (value, name, values_string))
diff --git a/Source/bindings/scripts/interface_dependency_resolver.py b/Source/bindings/scripts/interface_dependency_resolver.py
index 8bbf30a..3b15bc0 100644
--- a/Source/bindings/scripts/interface_dependency_resolver.py
+++ b/Source/bindings/scripts/interface_dependency_resolver.py
@@ -39,8 +39,6 @@
 
 import os.path
 
-import idl_reader
-
 
 class InterfaceNotFoundError(Exception):
     """Raised if (partial) interface not found in target IDL file."""
@@ -52,91 +50,127 @@
     pass
 
 
-def resolve_dependencies(definitions, idl_filename, interface_dependencies_filename, additional_idl_filenames, verbose=False, outputdir=''):
-    """Resolves dependencies, merging them into IDL definitions of main file.
+class InterfaceDependencyResolver:
+    def __init__(self, interface_dependencies_filename, additional_idl_filenames, reader):
+        """Inits dependency resolver.
 
-    Dependencies consist of 'partial interface' for the same interface as in the
-    main file, and other interfaces that this interface 'implements'.
+        Args:
+            interface_dependencies_filename:
+                filename of dependencies file (produced by
+                compute_dependencies.py)
+            additional_idl_filenames:
+                list of additional files, not listed in
+                interface_dependencies_file, for which bindings should
+                nonetheless be generated
+            reader:
+                IdlReader, used for reading dependency files
+        """
+        self.interface_dependencies = read_interface_dependencies_file(interface_dependencies_filename)
+        self.additional_interfaces = set()
+        for filename in additional_idl_filenames:
+            basename = os.path.basename(filename)
+            interface_name, _ = os.path.splitext(basename)
+            self.additional_interfaces.add(interface_name)
+        self.reader = reader
 
-    Modifies definitions in place by adding parsed dependencies, and checks
-    whether bindings should be generated, returning bool.
+    def resolve_dependencies(self, definitions, interface_name):
+        """Resolves dependencies, merging them into IDL definitions of main file.
 
-    Arguments:
-        definitions: IdlDefinitions object, modified in place
-        idl_filename: filename of main IDL file for the interface
-        interface_dependencies_file: filename of dependencies file (produced by compute_dependencies.py)
-        additional_idl_files: list of additional files, not listed in interface_dependencies_file, for which bindings should nonetheless be generated
-    Returns:
-        bool, whether bindings should be generated or not.
-    """
-    basename = os.path.basename(idl_filename)
-    interface_name, _ = os.path.splitext(basename)
+        Dependencies consist of 'partial interface' for the same interface as
+        in the main file, and other interfaces that this interface 'implements'.
 
-    dependency_idl_filenames = compute_dependency_idl_files(basename, interface_dependencies_filename, additional_idl_filenames)
-    if dependency_idl_filenames is None:
-        return False
-    # The Blink IDL filenaming convention is that the file <interface_name>.idl
-    # MUST contain the interface "interface_name" or exception "interface_name".
-    if interface_name in definitions.exceptions:
-        # Exceptions do not have dependencies, so no merging necessary
+        Modifies definitions in place by adding parsed dependencies, and checks
+        whether bindings should be generated, returning bool.
+
+        Args:
+            definitions: IdlDefinitions object, modified in place
+            idl_filename: filename of main IDL file for the interface
+        Returns:
+            bool, whether bindings should be generated or not.
+        """
+        dependency_idl_filenames = self.compute_dependency_idl_files(interface_name)
+        if dependency_idl_filenames is None:
+            return False
+        # The Blink IDL filenaming convention is that the file
+        # <interface_name>.idl MUST contain the interface "interface_name" or
+        # exception "interface_name", unless it is a dependency (e.g.,
+        # 'partial interface Foo' can be in FooBar.idl).
+        if interface_name in definitions.exceptions:
+            # Exceptions do not have dependencies, so no merging necessary
+            return definitions
+        try:
+            target_interface = definitions.interfaces[interface_name]
+        except KeyError:
+            raise InterfaceNotFoundError('Could not find interface or exception "{0}" in {0}.idl'.format(interface_name))
+        merge_interface_dependencies(target_interface, dependency_idl_filenames, self.reader)
+
         return definitions
-    try:
-        target_interface = definitions.interfaces[interface_name]
-    except KeyError:
-        raise InterfaceNotFoundError('Could not find interface or exception "%s" in %s' % (interface_name, basename))
-    merge_interface_dependencies(target_interface, idl_filename, dependency_idl_filenames, verbose=verbose, outputdir=outputdir)
 
-    return definitions
+    def compute_dependency_idl_files(self, target_interface_name):
+        """Returns list of IDL file dependencies for a given main IDL file.
+
+        - Returns a list of IDL files on which a given IDL file depends,
+          possibly empty.
+          Dependencies consist of partial interface files and files for other
+          interfaces that the given interface implements.
+        - Returns an empty list also if the given IDL file is an additional IDL
+          file.
+        - Otherwise, return None. This happens when the given IDL file is a
+          dependency, for which we don't want to generate bindings.
+        """
+        if target_interface_name in self.interface_dependencies:
+            return self.interface_dependencies[target_interface_name]
+
+        # additional_interfaces is a list of interfaces that should not be
+        # included in DerivedSources*.cpp, and hence are not listed in the
+        # interface dependencies file, but for which we should generate .cpp
+        # and .h files.
+        if target_interface_name in self.additional_interfaces:
+            return []
+
+        return None
 
 
-def compute_dependency_idl_files(target_idl_basename, interface_dependencies_filename, additional_idl_filenames):
-    """Returns list of IDL file dependencies for a given main IDL file.
+def read_interface_dependencies_file(interface_dependencies_filename):
+    """Reads the interface dependencies file, returns a dict for resolving dependencies.
 
-    - Returns a list of IDL files on which a given IDL file depends,
-      possibly empty.
-      Dependencies consist of partial interface files and files for other
-      interfaces that the given interface implements.
-    - Returns an empty list also if the given IDL file is an additional IDL
-      file.
-    - Otherwise, return None. This happens when the given IDL file is a
-      dependency, for which we don't want to generate bindings.
+    The format of the interface dependencies file is:
+
+    Document.idl P.idl
+    Event.idl
+    Window.idl Q.idl R.idl S.idl
+    ...
+
+    The above indicates that:
+    Document.idl depends on P.idl,
+    Event.idl depends on no other IDL files, and
+    Window.idl depends on Q.idl, R.idl, and S.idl.
+
+    The head entries (first IDL file on a line) are the files that should
+    have bindings generated.
+
+    An IDL file that is a dependency of another IDL file (e.g., P.idl in the
+    above example) does not have its own line in the dependency file:
+    dependencies do not have bindings generated, and do not have their
+    own dependencies.
+
+    Args:
+        interface_dependencies_filename: filename of file in above format
+    Returns:
+        dict of interface_name -> dependency_filenames
     """
-    # The format of the interface dependencies file is:
-    #
-    # Document.idl P.idl
-    # Event.idl
-    # Window.idl Q.idl R.idl S.idl
-    # ...
-    #
-    # The above indicates that:
-    # Document.idl depends on P.idl,
-    # Event.idl depends on no other IDL files, and
-    # Window.idl depends on Q.idl, R.idl, and S.idl.
-    #
-    # The head entries (first IDL file on a line) are the files that should
-    # have bindings generated.
-    #
-    # An IDL file that is a dependency of another IDL file (e.g., P.idl in the
-    # above example) does not have its own line in the dependency file:
-    # dependencies do not have bindings generated, and do not have their
-    # own dependencies.
+    interface_dependencies = {}
     with open(interface_dependencies_filename) as interface_dependencies_file:
         for line in interface_dependencies_file:
-            idl_filename, _, dependency_filenames = line.partition(' ')
-            if os.path.basename(idl_filename) == target_idl_basename:
-                return dependency_filenames.split()
-
-    # additional_idl_files is a list of IDL files which should not be included
-    # in DerivedSources*.cpp, and hence are not listed in the interface
-    # dependencies file, but for which we should generate .cpp and .h files.
-    additional_idl_basenames = set(map(os.path.basename, additional_idl_filenames))
-    if target_idl_basename in additional_idl_basenames:
-        return []
-
-    return None
+            idl_filename, _, dependency_filenames_string = line.partition(' ')
+            idl_basename = os.path.basename(idl_filename)
+            interface_name, _ = os.path.splitext(idl_basename)
+            dependency_filenames = dependency_filenames_string.split()
+            interface_dependencies[interface_name] = dependency_filenames
+    return interface_dependencies
 
 
-def merge_interface_dependencies(target_interface, idl_filename, dependency_idl_filenames, verbose=False, outputdir=''):
+def merge_interface_dependencies(target_interface, dependency_idl_filenames, reader):
     """Merge dependencies ('partial interface' and 'implements') in dependency_idl_filenames into target_interface.
 
     No return: modifies target_document in place.
@@ -144,7 +178,7 @@
     # Sort so order consistent, so can compare output from run to run.
     for dependency_idl_filename in sorted(dependency_idl_filenames):
         dependency_interface_name, _ = os.path.splitext(os.path.basename(dependency_idl_filename))
-        definitions = idl_reader.read_idl_file(dependency_idl_filename, verbose=verbose, outputdir=outputdir)
+        definitions = reader.read_idl_file(dependency_idl_filename)
 
         for dependency_interface in definitions.interfaces.itervalues():
             # Dependency files contain either partial interfaces for
@@ -152,7 +186,7 @@
             # must agree, or interfaces that are implemented by the target
             # interface, in which case the interface names differ.
             if dependency_interface.is_partial and dependency_interface.name != target_interface.name:
-                raise InvalidPartialInterfaceError('%s is not a partial interface of %s. There maybe a bug in the the dependency generator (compute_depedencies.py).' % (dependency_idl_filename, idl_filename))
+                raise InvalidPartialInterfaceError('%s is not a partial interface of %s. There maybe a bug in the the dependency generator (compute_depedencies.py).' % (dependency_idl_filename, target_interface.name))
             if 'ImplementedAs' in dependency_interface.extended_attributes:
                 del dependency_interface.extended_attributes['ImplementedAs']
             merge_dependency_interface(target_interface, dependency_interface, dependency_interface_name)
@@ -165,7 +199,9 @@
     """
     def merge_lists(source_list, target_list):
         for element in source_list:
-            if dependency_interface.is_partial:
+            # FIXME: remove check for LegacyImplementedInBaseClass when this
+            # attribute is removed
+            if dependency_interface.is_partial and not target_interface.extended_attributes.get('LegacyImplementedInBaseClass'):
                 element.extended_attributes['ImplementedBy'] = dependency_interface_name
             element.extended_attributes.update(dependency_interface.extended_attributes)
             target_list.append(element)
diff --git a/Source/bindings/tests/idls/TestCustomAccessors.idl b/Source/bindings/tests/idls/TestCustomAccessors.idl
index f7aa6f1..28f2bd6 100644
--- a/Source/bindings/tests/idls/TestCustomAccessors.idl
+++ b/Source/bindings/tests/idls/TestCustomAccessors.idl
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/bindings/tests/idls/TestObject.idl b/Source/bindings/tests/idls/TestObject.idl
index 61d4dfa..8152b66 100644
--- a/Source/bindings/tests/idls/TestObject.idl
+++ b/Source/bindings/tests/idls/TestObject.idl
@@ -108,11 +108,11 @@
     [Custom, MeasureAs=CustomTestFeature] void customMethod();
     [Custom] void customMethodWithArgs(long longArg, DOMString strArg, TestObject objArg);
 
-    void addEventListener(DOMString type, 
-                          EventListener listener, 
+    void addEventListener(DOMString type,
+                          EventListener listener,
                           optional boolean useCapture);
-    void removeEventListener(DOMString type, 
-                             EventListener listener, 
+    void removeEventListener(DOMString type,
+                             EventListener listener,
                              optional boolean useCapture);
 
     // 'CallWith' extended attribute
@@ -184,7 +184,7 @@
 
     readonly attribute any cachedAttribute1;
     readonly attribute any cachedAttribute2;
-    
+
     attribute any anyAttribute;
 
     attribute TestCallbackFunction callbackFunctionAttribute;
diff --git a/Source/bindings/tests/idls/TestTypedefs.idl b/Source/bindings/tests/idls/TestTypedefs.idl
index 2f32c4d..ae3e58c 100644
--- a/Source/bindings/tests/idls/TestTypedefs.idl
+++ b/Source/bindings/tests/idls/TestTypedefs.idl
@@ -37,7 +37,7 @@
     attribute ULONGLONG unsignedLongLongAttr;
 
     [Immutable] attribute SCRIPT_VALUE immutableSerializedScriptValue;
-    
+
     static readonly attribute T TestSubObj;
 
     [StrictTypeChecking] void func(optional ARRAY_OF_LONGS x);
diff --git a/Source/bindings/tests/results/V8TestObject.cpp b/Source/bindings/tests/results/V8TestObject.cpp
index 4760653..7551278 100644
--- a/Source/bindings/tests/results/V8TestObject.cpp
+++ b/Source/bindings/tests/results/V8TestObject.cpp
@@ -1839,7 +1839,7 @@
 static void floatArrayAttrSetter(v8::Local<v8::String> name, v8::Local<v8::Value> value, const v8::PropertyCallbackInfo<void>& info)
 {
     TestObj* imp = V8TestObject::toNative(info.Holder());
-    V8TRYCATCH_VOID(Vector<float>, v, toNativeArray<float>(value));
+    V8TRYCATCH_VOID(Vector<float>, v, toNativeArray<float>(value, info.GetIsolate()));
     imp->setFloatArray(v);
     return;
 }
@@ -1868,7 +1868,7 @@
 static void doubleArrayAttrSetter(v8::Local<v8::String> name, v8::Local<v8::Value> value, const v8::PropertyCallbackInfo<void>& info)
 {
     TestObj* imp = V8TestObject::toNative(info.Holder());
-    V8TRYCATCH_VOID(Vector<double>, v, toNativeArray<double>(value));
+    V8TRYCATCH_VOID(Vector<double>, v, toNativeArray<double>(value, info.GetIsolate()));
     imp->setDoubleArray(v);
     return;
 }
@@ -4094,7 +4094,7 @@
         return;
     }
     TestObj* imp = V8TestObject::toNative(args.Holder());
-    V8TRYCATCH_VOID(Vector<String>, arrayArg, toNativeArray<String>(args[0]));
+    V8TRYCATCH_VOID(Vector<String>, arrayArg, toNativeArray<String>(args[0], args.GetIsolate()));
     imp->overloadedMethod(arrayArg);
 
     return;
@@ -4120,7 +4120,7 @@
         return;
     }
     TestObj* imp = V8TestObject::toNative(args.Holder());
-    V8TRYCATCH_VOID(Vector<String>, arrayArg, toNativeArray<String>(args[0]));
+    V8TRYCATCH_VOID(Vector<String>, arrayArg, toNativeArray<String>(args[0], args.GetIsolate()));
     imp->overloadedMethod(arrayArg);
 
     return;
@@ -4133,7 +4133,7 @@
         return;
     }
     TestObj* imp = V8TestObject::toNative(args.Holder());
-    V8TRYCATCH_VOID(Vector<unsigned>, arrayArg, toNativeArray<unsigned>(args[0]));
+    V8TRYCATCH_VOID(Vector<unsigned>, arrayArg, toNativeArray<unsigned>(args[0], args.GetIsolate()));
     imp->overloadedMethod(arrayArg);
 
     return;
@@ -4429,7 +4429,7 @@
         return;
     }
     TestObj* imp = V8TestObject::toNative(args.Holder());
-    V8TRYCATCH_VOID(Vector<unsigned>, unsignedLongSequence, toNativeArray<unsigned>(args[0]));
+    V8TRYCATCH_VOID(Vector<unsigned>, unsignedLongSequence, toNativeArray<unsigned>(args[0], args.GetIsolate()));
     imp->methodWithUnsignedLongSequence(unsignedLongSequence);
 
     return;
@@ -4450,7 +4450,7 @@
     }
     TestObj* imp = V8TestObject::toNative(args.Holder());
     ExceptionState es(args.GetIsolate());
-    V8TRYCATCH_VOID(Vector<String>, values, toNativeArray<String>(args[0]));
+    V8TRYCATCH_VOID(Vector<String>, values, toNativeArray<String>(args[0], args.GetIsolate()));
     Vector<String> result = imp->stringArrayFunction(values, es);
     if (es.throwIfNeeded())
         return;
diff --git a/Source/bindings/tests/results/V8TestTypedefs.cpp b/Source/bindings/tests/results/V8TestTypedefs.cpp
index 45c2c40..9115620 100644
--- a/Source/bindings/tests/results/V8TestTypedefs.cpp
+++ b/Source/bindings/tests/results/V8TestTypedefs.cpp
@@ -282,7 +282,7 @@
 
         return;
     }
-    V8TRYCATCH_VOID(Vector<int>, x, toNativeArray<int>(args[0]));
+    V8TRYCATCH_VOID(Vector<int>, x, toNativeArray<int>(args[0], args.GetIsolate()));
     imp->func(x);
 
     return;
@@ -355,7 +355,7 @@
         return;
     }
     TestTypedefs* imp = V8TestTypedefs::toNative(args.Holder());
-    V8TRYCATCH_VOID(Vector<String>, arrayArg, toNativeArray<String>(args[0]));
+    V8TRYCATCH_VOID(Vector<String>, arrayArg, toNativeArray<String>(args[0], args.GetIsolate()));
     imp->nullableArrayArg(arrayArg);
 
     return;
@@ -422,7 +422,7 @@
     }
     TestTypedefs* imp = V8TestTypedefs::toNative(args.Holder());
     ExceptionState es(args.GetIsolate());
-    V8TRYCATCH_VOID(Vector<String>, values, toNativeArray<String>(args[0]));
+    V8TRYCATCH_VOID(Vector<String>, values, toNativeArray<String>(args[0], args.GetIsolate()));
     Vector<String> result = imp->stringArrayFunction(values, es);
     if (es.throwIfNeeded())
         return;
@@ -445,7 +445,7 @@
     }
     TestTypedefs* imp = V8TestTypedefs::toNative(args.Holder());
     ExceptionState es(args.GetIsolate());
-    V8TRYCATCH_VOID(Vector<String>, values, toNativeArray<String>(args[0]));
+    V8TRYCATCH_VOID(Vector<String>, values, toNativeArray<String>(args[0], args.GetIsolate()));
     Vector<String> result = imp->stringArrayFunction2(values, es);
     if (es.throwIfNeeded())
         return;
diff --git a/Source/bindings/v8/BindingSecurity.cpp b/Source/bindings/v8/BindingSecurity.cpp
index 92f0f10..0c7c0d1 100644
--- a/Source/bindings/v8/BindingSecurity.cpp
+++ b/Source/bindings/v8/BindingSecurity.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/BindingSecurity.h b/Source/bindings/v8/BindingSecurity.h
index c8cb741..dedd2f1 100644
--- a/Source/bindings/v8/BindingSecurity.h
+++ b/Source/bindings/v8/BindingSecurity.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/CustomElementConstructorBuilder.cpp b/Source/bindings/v8/CustomElementConstructorBuilder.cpp
index 1ba1e5b..02fd927 100644
--- a/Source/bindings/v8/CustomElementConstructorBuilder.cpp
+++ b/Source/bindings/v8/CustomElementConstructorBuilder.cpp
@@ -42,7 +42,6 @@
 #include "bindings/v8/ExceptionState.h"
 #include "bindings/v8/UnsafePersistent.h"
 #include "bindings/v8/V8Binding.h"
-#include "bindings/v8/V8CustomElementLifecycleCallbacks.h"
 #include "bindings/v8/V8HiddenPropertyName.h"
 #include "bindings/v8/V8PerContextData.h"
 #include "core/dom/CustomElementCallbackDispatcher.h"
@@ -50,7 +49,6 @@
 #include "core/dom/CustomElementDescriptor.h"
 #include "core/dom/Document.h"
 #include "wtf/Assertions.h"
-#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
@@ -145,11 +143,11 @@
     return false;
 }
 
-PassRefPtr<CustomElementLifecycleCallbacks> CustomElementConstructorBuilder::createCallbacks(Document* document)
+PassRefPtr<CustomElementLifecycleCallbacks> CustomElementConstructorBuilder::createCallbacks()
 {
     ASSERT(!m_prototype.IsEmpty());
 
-    RefPtr<Document> protect(document);
+    RefPtr<ScriptExecutionContext> scriptExecutionContext(toScriptExecutionContext(m_context));
 
     v8::TryCatch exceptionCatcher;
     exceptionCatcher.SetVerbose(true);
@@ -160,7 +158,8 @@
     v8::Handle<v8::Function> leftDocument = retrieveCallback(isolate, "leftDocumentCallback");
     v8::Handle<v8::Function> attributeChanged = retrieveCallback(isolate, "attributeChangedCallback");
 
-    return V8CustomElementLifecycleCallbacks::create(document, m_prototype, created, enteredDocument, leftDocument, attributeChanged);
+    m_callbacks = V8CustomElementLifecycleCallbacks::create(scriptExecutionContext.get(), m_prototype, created, enteredDocument, leftDocument, attributeChanged);
+    return m_callbacks.get();
 }
 
 v8::Handle<v8::Function> CustomElementConstructorBuilder::retrieveCallback(v8::Isolate* isolate, const char* name)
@@ -240,14 +239,7 @@
 {
     ASSERT(!m_constructor.IsEmpty());
 
-    V8PerContextData* perContextData = V8PerContextData::from(m_context);
-    if (!perContextData)
-        return false;
-
-    // Bindings retrieve the prototype when needed from per-context data.
-    perContextData->addCustomElementBinding(definition->descriptor().type(), CustomElementBinding::create(m_context->GetIsolate(), m_prototype, m_wrapperType));
-
-    return true;
+    return m_callbacks->setBinding(definition, CustomElementBinding::create(m_context->GetIsolate(), m_prototype, m_wrapperType));
 }
 
 ScriptValue CustomElementConstructorBuilder::bindingsReturnValue() const
diff --git a/Source/bindings/v8/CustomElementConstructorBuilder.h b/Source/bindings/v8/CustomElementConstructorBuilder.h
index 83d5e25..354fd12 100644
--- a/Source/bindings/v8/CustomElementConstructorBuilder.h
+++ b/Source/bindings/v8/CustomElementConstructorBuilder.h
@@ -32,10 +32,12 @@
 #define CustomElementConstructorBuilder_h
 
 #include "bindings/v8/ScriptValue.h"
+#include "bindings/v8/V8CustomElementLifecycleCallbacks.h"
 #include "core/dom/CustomElementLifecycleCallbacks.h"
 #include "core/dom/QualifiedName.h"
 #include "wtf/Noncopyable.h"
 #include "wtf/PassRefPtr.h"
+#include "wtf/RefPtr.h"
 #include "wtf/text/AtomicString.h"
 #include <v8.h>
 
@@ -66,7 +68,7 @@
     bool isFeatureAllowed() const;
     bool validateOptions();
     bool findTagName(const AtomicString& customElementType, QualifiedName& tagName);
-    PassRefPtr<CustomElementLifecycleCallbacks> createCallbacks(Document*);
+    PassRefPtr<CustomElementLifecycleCallbacks> createCallbacks();
     bool createConstructor(Document*, CustomElementDefinition*);
     bool didRegisterDefinition(CustomElementDefinition*) const;
 
@@ -87,6 +89,7 @@
     WrapperTypeInfo* m_wrapperType;
     AtomicString m_namespaceURI;
     v8::Handle<v8::Function> m_constructor;
+    RefPtr<V8CustomElementLifecycleCallbacks> m_callbacks;
 };
 
 }
diff --git a/Source/bindings/v8/CustomElementWrapper.cpp b/Source/bindings/v8/CustomElementWrapper.cpp
index 19868dd..3aca235 100644
--- a/Source/bindings/v8/CustomElementWrapper.cpp
+++ b/Source/bindings/v8/CustomElementWrapper.cpp
@@ -37,6 +37,7 @@
 #include "V8SVGElementWrapperFactory.h"
 #include "bindings/v8/DOMDataStore.h"
 #include "bindings/v8/V8PerContextData.h"
+#include "core/dom/CustomElement.h"
 #include "core/dom/CustomElementRegistrationContext.h"
 #include "core/html/HTMLElement.h"
 #include "core/html/HTMLUnknownElement.h"
@@ -101,9 +102,7 @@
     if (!perContextData)
         return v8::Handle<v8::Object>();
 
-    CustomElementDescriptor descriptor = CustomElementRegistrationContext::describe(element.get());
-    CustomElementBinding* binding = perContextData->customElementBinding(descriptor.type());
-
+    CustomElementBinding* binding = perContextData->customElementBinding(CustomElement::definitionFor(element.get()));
     v8::Handle<v8::Object> wrapper = V8DOMWrapper::createWrapper(creationContext, binding->wrapperType(), element.get(), isolate);
     if (wrapper.IsEmpty())
         return v8::Handle<v8::Object>();
diff --git a/Source/bindings/v8/DOMWrapperWorld.cpp b/Source/bindings/v8/DOMWrapperWorld.cpp
index 9127964..bb77bf1 100644
--- a/Source/bindings/v8/DOMWrapperWorld.cpp
+++ b/Source/bindings/v8/DOMWrapperWorld.cpp
@@ -223,7 +223,7 @@
     isolatedWorldContentSecurityPolicies().remove(worldID);
 }
 
-typedef HashMap<int, OwnPtr<V8DOMActivityLogger>, WTF::IntHash<int>, WTF::UnsignedWithZeroKeyHashTraits<int> > DOMActivityLoggerMap; 
+typedef HashMap<int, OwnPtr<V8DOMActivityLogger>, WTF::IntHash<int>, WTF::UnsignedWithZeroKeyHashTraits<int> > DOMActivityLoggerMap;
 static DOMActivityLoggerMap& domActivityLoggers()
 {
     ASSERT(isMainThread());
@@ -234,13 +234,13 @@
 void DOMWrapperWorld::setActivityLogger(int worldId, PassOwnPtr<V8DOMActivityLogger> logger)
 {
     domActivityLoggers().set(worldId, logger);
-} 
+}
 
 V8DOMActivityLogger* DOMWrapperWorld::activityLogger(int worldId)
 {
     DOMActivityLoggerMap& loggers = domActivityLoggers();
-    DOMActivityLoggerMap::iterator it = loggers.find(worldId);   
+    DOMActivityLoggerMap::iterator it = loggers.find(worldId);
     return it == loggers.end() ? 0 : it->value.get();
-} 
+}
 
 } // namespace WebCore
diff --git a/Source/bindings/v8/DOMWrapperWorld.h b/Source/bindings/v8/DOMWrapperWorld.h
index 22128c6..849b865 100644
--- a/Source/bindings/v8/DOMWrapperWorld.h
+++ b/Source/bindings/v8/DOMWrapperWorld.h
@@ -88,7 +88,7 @@
     bool isolatedWorldHasContentSecurityPolicy();
 
     // Associate a logger with the world identified by worldId (worlId may be 0
-    // identifying the main world).  
+    // identifying the main world).
     static void setActivityLogger(int worldId, PassOwnPtr<V8DOMActivityLogger>);
     static V8DOMActivityLogger* activityLogger(int worldId);
 
diff --git a/Source/bindings/v8/DateExtension.cpp b/Source/bindings/v8/DateExtension.cpp
index 58d9e1d..d06983b 100644
--- a/Source/bindings/v8/DateExtension.cpp
+++ b/Source/bindings/v8/DateExtension.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/DateExtension.h b/Source/bindings/v8/DateExtension.h
index 647f32a..daa98b2 100644
--- a/Source/bindings/v8/DateExtension.h
+++ b/Source/bindings/v8/DateExtension.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/NPV8Object.cpp b/Source/bindings/v8/NPV8Object.cpp
index 621a99c..80f29f6 100644
--- a/Source/bindings/v8/NPV8Object.cpp
+++ b/Source/bindings/v8/NPV8Object.cpp
@@ -111,7 +111,7 @@
 
 NPObject* v8ObjectToNPObject(v8::Handle<v8::Object> object)
 {
-    return reinterpret_cast<NPObject*>(object->GetAlignedPointerFromInternalField(v8DOMWrapperObjectIndex)); 
+    return reinterpret_cast<NPObject*>(object->GetAlignedPointerFromInternalField(v8DOMWrapperObjectIndex));
 }
 
 NPObject* npCreateV8ScriptObject(NPP npp, v8::Handle<v8::Object> object, DOMWindow* root)
@@ -382,7 +382,7 @@
 
         v8::Handle<v8::Object> obj = v8::Local<v8::Object>::New(isolate, object->v8Object);
         v8::Local<v8::Value> v8result = obj->Get(npIdentifierToV8Identifier(propertyName));
-        
+
         if (v8result.IsEmpty())
             return false;
 
diff --git a/Source/bindings/v8/PageScriptDebugServer.h b/Source/bindings/v8/PageScriptDebugServer.h
index 96a98a1..4ffbb76 100644
--- a/Source/bindings/v8/PageScriptDebugServer.h
+++ b/Source/bindings/v8/PageScriptDebugServer.h
@@ -62,7 +62,7 @@
 private:
     PageScriptDebugServer();
     virtual ~PageScriptDebugServer() { }
-    
+
     virtual ScriptDebugListener* getDebugListenerForContext(v8::Handle<v8::Context>);
     virtual void runMessageLoopOnPause(v8::Handle<v8::Context>);
     virtual void quitMessageLoopOnPause();
diff --git a/Source/bindings/v8/RetainedDOMInfo.cpp b/Source/bindings/v8/RetainedDOMInfo.cpp
index 01b3448..15a83f2 100644
--- a/Source/bindings/v8/RetainedDOMInfo.cpp
+++ b/Source/bindings/v8/RetainedDOMInfo.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2011 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -65,7 +65,7 @@
 {
     return PtrHash<void*>::hash(m_root);
 }
-    
+
 const char* RetainedDOMInfo::GetGroupLabel()
 {
     return m_root->inDocument() ? "(Document DOM trees)" : "(Detached DOM trees)";
diff --git a/Source/bindings/v8/RetainedDOMInfo.h b/Source/bindings/v8/RetainedDOMInfo.h
index 6cdae5d..5270999 100644
--- a/Source/bindings/v8/RetainedDOMInfo.h
+++ b/Source/bindings/v8/RetainedDOMInfo.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2011 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -49,7 +49,7 @@
     virtual const char* GetLabel();
     virtual intptr_t GetElementCount();
     virtual intptr_t GetEquivalenceClass();
-    
+
 private:
     // V8 guarantees to keep RetainedObjectInfos alive only during a GC or heap snapshotting round, when renderer
     // doesn't get control. This allows us to use raw pointers.
diff --git a/Source/bindings/v8/RetainedObjectInfo.h b/Source/bindings/v8/RetainedObjectInfo.h
index 0368fb1..6593bfd 100644
--- a/Source/bindings/v8/RetainedObjectInfo.h
+++ b/Source/bindings/v8/RetainedObjectInfo.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2011 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/ScriptCallStackFactory.cpp b/Source/bindings/v8/ScriptCallStackFactory.cpp
index d6c9d62..22de5f8 100644
--- a/Source/bindings/v8/ScriptCallStackFactory.cpp
+++ b/Source/bindings/v8/ScriptCallStackFactory.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2010 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/ScriptCallStackFactory.h b/Source/bindings/v8/ScriptCallStackFactory.h
index c729cc2..54ae6fa 100644
--- a/Source/bindings/v8/ScriptCallStackFactory.h
+++ b/Source/bindings/v8/ScriptCallStackFactory.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2010 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/ScriptController.cpp b/Source/bindings/v8/ScriptController.cpp
index 18e21cc..396b022 100644
--- a/Source/bindings/v8/ScriptController.cpp
+++ b/Source/bindings/v8/ScriptController.cpp
@@ -649,7 +649,7 @@
 
     if (!locationChangeBefore && m_frame->navigationScheduler()->locationChangePending())
         return true;
-        
+
     // DocumentWriter::replaceDocument can cause the DocumentLoader to get deref'ed and possible destroyed,
     // so protect it with a RefPtr.
     if (RefPtr<DocumentLoader> loader = m_frame->document()->loader())
diff --git a/Source/bindings/v8/ScriptDebugServer.cpp b/Source/bindings/v8/ScriptDebugServer.cpp
index 7ed6fcc..b78118b 100644
--- a/Source/bindings/v8/ScriptDebugServer.cpp
+++ b/Source/bindings/v8/ScriptDebugServer.cpp
@@ -416,7 +416,7 @@
 void ScriptDebugServer::breakProgramCallback(const v8::FunctionCallbackInfo<v8::Value>& args)
 {
     ASSERT(2 == args.Length());
-    
+
     ScriptDebugServer* thisPtr = toScriptDebugServer(args.Data());
     v8::Handle<v8::Value> exception;
     v8::Handle<v8::Array> hitBreakpoints;
diff --git a/Source/bindings/v8/ScriptDebugServer.h b/Source/bindings/v8/ScriptDebugServer.h
index dd8189e..0b188da 100644
--- a/Source/bindings/v8/ScriptDebugServer.h
+++ b/Source/bindings/v8/ScriptDebugServer.h
@@ -103,7 +103,7 @@
 protected:
     explicit ScriptDebugServer(v8::Isolate*);
     virtual ~ScriptDebugServer();
-    
+
     ScriptValue currentCallFrame();
 
     virtual ScriptDebugListener* getDebugListenerForContext(v8::Handle<v8::Context>) = 0;
@@ -133,7 +133,7 @@
     ScopedPersistent<v8::FunctionTemplate> m_breakProgramCallbackTemplate;
     HashMap<String, OwnPtr<ScopedPersistent<v8::Script> > > m_compiledScripts;
     v8::Isolate* m_isolate;
-    
+
 private:
     PassRefPtr<JavaScriptCallFrame> wrapCallFrames(v8::Handle<v8::Object> executionState, int maximumLimit);
 
diff --git a/Source/bindings/v8/ScriptGCEvent.cpp b/Source/bindings/v8/ScriptGCEvent.cpp
index 189a074..50b2d8f 100644
--- a/Source/bindings/v8/ScriptGCEvent.cpp
+++ b/Source/bindings/v8/ScriptGCEvent.cpp
@@ -106,6 +106,6 @@
         (*i)->didGC(gcEventData->startTime(), endTime, collectedBytes);
     gcEventData->clear();
 }
-    
+
 } // namespace WebCore
 
diff --git a/Source/bindings/v8/ScriptInstance.cpp b/Source/bindings/v8/ScriptInstance.cpp
index 8248fa4..961e4a9 100644
--- a/Source/bindings/v8/ScriptInstance.cpp
+++ b/Source/bindings/v8/ScriptInstance.cpp
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/ScriptInstance.h b/Source/bindings/v8/ScriptInstance.h
index 2fee44c..0b8fc98 100644
--- a/Source/bindings/v8/ScriptInstance.h
+++ b/Source/bindings/v8/ScriptInstance.h
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/ScriptSourceCode.h b/Source/bindings/v8/ScriptSourceCode.h
index cff6050..4e69421 100644
--- a/Source/bindings/v8/ScriptSourceCode.h
+++ b/Source/bindings/v8/ScriptSourceCode.h
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/ScriptState.h b/Source/bindings/v8/ScriptState.h
index a48122e..16a4a4a 100644
--- a/Source/bindings/v8/ScriptState.h
+++ b/Source/bindings/v8/ScriptState.h
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/ScriptValue.cpp b/Source/bindings/v8/ScriptValue.cpp
index 6ac72a1..dd41b0d 100644
--- a/Source/bindings/v8/ScriptValue.cpp
+++ b/Source/bindings/v8/ScriptValue.cpp
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/ScriptValue.h b/Source/bindings/v8/ScriptValue.h
index 7fc2a09..bfbc636 100644
--- a/Source/bindings/v8/ScriptValue.h
+++ b/Source/bindings/v8/ScriptValue.h
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -39,8 +39,8 @@
 #include "wtf/Vector.h"
 #include "wtf/text/WTFString.h"
 
-#ifndef NDEBUG 
-#include "bindings/v8/V8GCController.h" 
+#ifndef NDEBUG
+#include "bindings/v8/V8GCController.h"
 #endif
 
 namespace WTF {
@@ -72,7 +72,7 @@
 
     static ScriptValue createNull() { return ScriptValue(v8::Null()); }
 
-    ScriptValue& operator=(const ScriptValue& value) 
+    ScriptValue& operator=(const ScriptValue& value)
     {
         if (this != &value)
             m_value = value.m_value;
diff --git a/Source/bindings/v8/ScriptWrappable.h b/Source/bindings/v8/ScriptWrappable.h
index 2a77062..6832a61 100644
--- a/Source/bindings/v8/ScriptWrappable.h
+++ b/Source/bindings/v8/ScriptWrappable.h
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/SerializedScriptValue.cpp b/Source/bindings/v8/SerializedScriptValue.cpp
index 1ba1558..2b5400d 100644
--- a/Source/bindings/v8/SerializedScriptValue.cpp
+++ b/Source/bindings/v8/SerializedScriptValue.cpp
@@ -76,6 +76,7 @@
 #include "wtf/Uint8Array.h"
 #include "wtf/Uint8ClampedArray.h"
 #include "wtf/Vector.h"
+#include "wtf/text/StringBuffer.h"
 #include "wtf/text/StringUTF8Adaptor.h"
 
 // FIXME: consider crashing in debug mode on deserialization errors
@@ -2250,9 +2251,9 @@
     // Decode wire data from big endian to host byte order.
     ASSERT(!(data.size() % sizeof(UChar)));
     size_t length = data.size() / sizeof(UChar);
-    Vector<UChar> buffer(length);
+    StringBuffer<UChar> buffer(length);
     const UChar* src = reinterpret_cast<const UChar*>(data.data());
-    UChar* dst = buffer.data();
+    UChar* dst = buffer.characters();
     for (size_t i = 0; i < length; i++)
         dst[i] = ntohs(src[i]);
 
diff --git a/Source/bindings/v8/V8Binding.cpp b/Source/bindings/v8/V8Binding.cpp
index 59dde88..fcbc7de 100644
--- a/Source/bindings/v8/V8Binding.cpp
+++ b/Source/bindings/v8/V8Binding.cpp
@@ -373,7 +373,7 @@
     v8::HandleScope scope(isolate);
     v8::Local<v8::FunctionTemplate> result = v8::FunctionTemplate::New(V8ObjectConstructor::isValidConstructorMode);
     return scope.Close(result);
-}        
+}
 
 PassRefPtr<DOMStringList> toDOMStringList(v8::Handle<v8::Value> value, v8::Isolate* isolate)
 {
diff --git a/Source/bindings/v8/V8Binding.h b/Source/bindings/v8/V8Binding.h
index 0acf81a..7a0ae8c 100644
--- a/Source/bindings/v8/V8Binding.h
+++ b/Source/bindings/v8/V8Binding.h
@@ -75,6 +75,8 @@
 
     v8::ArrayBuffer::Allocator* v8ArrayBufferAllocator();
 
+    v8::Handle<v8::Value> toV8Sequence(v8::Handle<v8::Value>, uint32_t& length, v8::Isolate*);
+
     inline v8::Handle<v8::Value> argumentOrNull(const v8::FunctionCallbackInfo<v8::Value>& args, int index)
     {
         return index >= args.Length() ? v8::Local<v8::Value>() : args[index];
@@ -402,25 +404,29 @@
         }
     };
 
+    // Converts a JavaScript value to an array as per the Web IDL specification:
+    // http://www.w3.org/TR/2012/CR-WebIDL-20120419/#es-array
     template <class T, class V8T>
     Vector<RefPtr<T> > toRefPtrNativeArray(v8::Handle<v8::Value> value, v8::Isolate* isolate, bool* success = 0)
     {
         if (success)
             *success = true;
 
-        if (!value->IsArray())
+        v8::Local<v8::Value> v8Value(v8::Local<v8::Value>::New(isolate, value));
+        uint32_t length = 0;
+        if (value->IsArray())
+            length = v8::Local<v8::Array>::Cast(v8Value)->Length();
+        else if (toV8Sequence(value, length, isolate).IsEmpty())
             return Vector<RefPtr<T> >();
 
         Vector<RefPtr<T> > result;
-        v8::Local<v8::Value> v8Value(v8::Local<v8::Value>::New(value));
-        v8::Local<v8::Array> array = v8::Local<v8::Array>::Cast(v8Value);
-        size_t length = array->Length();
-        for (size_t i = 0; i < length; ++i) {
-            v8::Handle<v8::Value> element = array->Get(i);
+        v8::Local<v8::Object> object = v8::Local<v8::Object>::Cast(v8Value);
+        for (uint32_t i = 0; i < length; ++i) {
+            v8::Handle<v8::Value> element = object->Get(i);
 
             if (V8T::HasInstance(element, isolate, worldType(isolate))) {
-                v8::Handle<v8::Object> object = v8::Handle<v8::Object>::Cast(element);
-                result.append(V8T::toNative(object));
+                v8::Handle<v8::Object> elementObject = v8::Handle<v8::Object>::Cast(element);
+                result.append(V8T::toNative(elementObject));
             } else {
                 if (success)
                     *success = false;
@@ -431,19 +437,23 @@
         return result;
     }
 
+    // Converts a JavaScript value to an array as per the Web IDL specification:
+    // http://www.w3.org/TR/2012/CR-WebIDL-20120419/#es-array
     template <class T>
-    Vector<T> toNativeArray(v8::Handle<v8::Value> value)
+    Vector<T> toNativeArray(v8::Handle<v8::Value> value, v8::Isolate* isolate)
     {
-        if (!value->IsArray())
+        v8::Local<v8::Value> v8Value(v8::Local<v8::Value>::New(isolate, value));
+        uint32_t length = 0;
+        if (value->IsArray())
+            length = v8::Local<v8::Array>::Cast(v8Value)->Length();
+        else if (toV8Sequence(value, length, isolate).IsEmpty())
             return Vector<T>();
 
         Vector<T> result;
         typedef NativeValueTraits<T> TraitsType;
-        v8::Local<v8::Value> v8Value(v8::Local<v8::Value>::New(value));
-        v8::Local<v8::Array> array = v8::Local<v8::Array>::Cast(v8Value);
-        size_t length = array->Length();
-        for (size_t i = 0; i < length; ++i)
-            result.append(TraitsType::nativeValue(array->Get(i)));
+        v8::Local<v8::Object> object = v8::Local<v8::Object>::Cast(v8Value);
+        for (uint32_t i = 0; i < length; ++i)
+            result.append(TraitsType::nativeValue(object->Get(i)));
         return result;
     }
 
@@ -462,17 +472,25 @@
     Vector<v8::Handle<v8::Value> > toVectorOfArguments(const v8::FunctionCallbackInfo<v8::Value>& args);
 
     // Validates that the passed object is a sequence type per WebIDL spec
-    // http://www.w3.org/TR/2012/WD-WebIDL-20120207/#es-sequence
+    // http://www.w3.org/TR/2012/CR-WebIDL-20120419/#es-sequence
     inline v8::Handle<v8::Value> toV8Sequence(v8::Handle<v8::Value> value, uint32_t& length, v8::Isolate* isolate)
     {
-        if (!value->IsObject()) {
+        // Attempt converting to a sequence if the value is not already an array but is
+        // any kind of object except for a native Date object or a native RegExp object.
+        ASSERT(!value->IsArray());
+        // FIXME: Do we really need to special case Date and RegExp object?
+        // https://www.w3.org/Bugs/Public/show_bug.cgi?id=22806
+        if (!value->IsObject() || value->IsDate() || value->IsRegExp()) {
             throwTypeError(isolate);
             return v8Undefined();
         }
 
-        v8::Local<v8::Value> v8Value(v8::Local<v8::Value>::New(value));
+        v8::Local<v8::Value> v8Value(v8::Local<v8::Value>::New(isolate, value));
         v8::Local<v8::Object> object = v8::Local<v8::Object>::Cast(v8Value);
 
+        // FIXME: The specification states that the length property should be used as fallback, if value
+        // is not a platform object that supports indexed properties. If it supports indexed properties,
+        // length should actually be one greater than value’s maximum indexed property index.
         V8TRYCATCH(v8::Local<v8::Value>, lengthValue, object->Get(v8::String::NewSymbol("length")));
 
         if (lengthValue->IsUndefined() || lengthValue->IsNull()) {
diff --git a/Source/bindings/v8/V8CustomElementLifecycleCallbacks.cpp b/Source/bindings/v8/V8CustomElementLifecycleCallbacks.cpp
index 070f9e9..c733f8d 100644
--- a/Source/bindings/v8/V8CustomElementLifecycleCallbacks.cpp
+++ b/Source/bindings/v8/V8CustomElementLifecycleCallbacks.cpp
@@ -32,12 +32,14 @@
 #include "bindings/v8/V8CustomElementLifecycleCallbacks.h"
 
 #include "V8Element.h"
+#include "bindings/v8/CustomElementBinding.h"
 #include "bindings/v8/DOMDataStore.h"
 #include "bindings/v8/ScriptController.h"
 #include "bindings/v8/V8Binding.h"
 #include "bindings/v8/V8HiddenPropertyName.h"
+#include "bindings/v8/V8PerContextData.h"
 #include "core/dom/ScriptExecutionContext.h"
-#include "wtf/PassRefPtr.h"
+#include "wtf/PassOwnPtr.h"
 
 namespace WebCore {
 
@@ -94,6 +96,7 @@
     , m_enteredDocument(enteredDocument)
     , m_leftDocument(leftDocument)
     , m_attributeChanged(attributeChanged)
+    , m_owner(0)
 {
     m_prototype.makeWeak(&m_prototype, weakCallback<v8::Object>);
 
@@ -105,6 +108,44 @@
 #undef MAKE_WEAK
 }
 
+V8PerContextData* V8CustomElementLifecycleCallbacks::creationContextData()
+{
+    if (!scriptExecutionContext())
+        return 0;
+
+    v8::Handle<v8::Context> context = toV8Context(scriptExecutionContext(), m_world.get());
+    if (context.IsEmpty())
+        return 0;
+
+    return V8PerContextData::from(context);
+}
+
+V8CustomElementLifecycleCallbacks::~V8CustomElementLifecycleCallbacks()
+{
+    if (!m_owner)
+        return;
+
+    v8::HandleScope handleScope;
+    if (V8PerContextData* perContextData = creationContextData())
+        perContextData->clearCustomElementBinding(m_owner);
+}
+
+bool V8CustomElementLifecycleCallbacks::setBinding(CustomElementDefinition* owner, PassOwnPtr<CustomElementBinding> binding)
+{
+    ASSERT(!m_owner);
+
+    V8PerContextData* perContextData = creationContextData();
+    if (!perContextData)
+        return false;
+
+    m_owner = owner;
+
+    // Bindings retrieve the prototype when needed from per-context data.
+    perContextData->addCustomElementBinding(owner, binding);
+
+    return true;
+}
+
 void V8CustomElementLifecycleCallbacks::created(Element* element)
 {
     if (!canInvokeCallback())
diff --git a/Source/bindings/v8/V8CustomElementLifecycleCallbacks.h b/Source/bindings/v8/V8CustomElementLifecycleCallbacks.h
index 81264c5..71313ee 100644
--- a/Source/bindings/v8/V8CustomElementLifecycleCallbacks.h
+++ b/Source/bindings/v8/V8CustomElementLifecycleCallbacks.h
@@ -35,18 +35,24 @@
 #include "bindings/v8/DOMWrapperWorld.h"
 #include "bindings/v8/ScopedPersistent.h"
 #include "core/dom/CustomElementLifecycleCallbacks.h"
+#include "wtf/PassOwnPtr.h"
+#include "wtf/PassRefPtr.h"
 #include <v8.h>
 
 namespace WebCore {
 
+class CustomElementLifecycleCallbacks;
 class Element;
 class ScriptExecutionContext;
+class V8PerContextData;
 
 class V8CustomElementLifecycleCallbacks : public CustomElementLifecycleCallbacks, ActiveDOMCallback {
 public:
     static PassRefPtr<V8CustomElementLifecycleCallbacks> create(ScriptExecutionContext*, v8::Handle<v8::Object> prototype, v8::Handle<v8::Function> created, v8::Handle<v8::Function> enteredDocument, v8::Handle<v8::Function> leftDocument, v8::Handle<v8::Function> attributeChanged);
 
-    virtual ~V8CustomElementLifecycleCallbacks() { }
+    virtual ~V8CustomElementLifecycleCallbacks();
+
+    bool setBinding(CustomElementDefinition* owner, PassOwnPtr<CustomElementBinding>);
 
 private:
     V8CustomElementLifecycleCallbacks(ScriptExecutionContext*, v8::Handle<v8::Object> prototype, v8::Handle<v8::Function> created, v8::Handle<v8::Function> enteredDocument, v8::Handle<v8::Function> leftDocument, v8::Handle<v8::Function> attributeChanged);
@@ -58,6 +64,9 @@
 
     void call(const ScopedPersistent<v8::Function>& weakCallback, Element*);
 
+    V8PerContextData* creationContextData();
+
+    CustomElementDefinition* m_owner;
     RefPtr<DOMWrapperWorld> m_world;
     ScopedPersistent<v8::Object> m_prototype;
     ScopedPersistent<v8::Function> m_created;
diff --git a/Source/bindings/v8/V8DOMActivityLogger.h b/Source/bindings/v8/V8DOMActivityLogger.h
index bfb7e75..93915a6 100644
--- a/Source/bindings/v8/V8DOMActivityLogger.h
+++ b/Source/bindings/v8/V8DOMActivityLogger.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/V8DOMWrapper.h b/Source/bindings/v8/V8DOMWrapper.h
index 8fbfe9c..035524e 100644
--- a/Source/bindings/v8/V8DOMWrapper.h
+++ b/Source/bindings/v8/V8DOMWrapper.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/V8GCController.cpp b/Source/bindings/v8/V8GCController.cpp
index 568ebdb..95a5751 100644
--- a/Source/bindings/v8/V8GCController.cpp
+++ b/Source/bindings/v8/V8GCController.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/V8GCController.h b/Source/bindings/v8/V8GCController.h
index e53258b..b0aa802 100644
--- a/Source/bindings/v8/V8GCController.h
+++ b/Source/bindings/v8/V8GCController.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/V8GCForContextDispose.cpp b/Source/bindings/v8/V8GCForContextDispose.cpp
index 1ad8aba..a4c58fd 100644
--- a/Source/bindings/v8/V8GCForContextDispose.cpp
+++ b/Source/bindings/v8/V8GCForContextDispose.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2010 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/V8GCForContextDispose.h b/Source/bindings/v8/V8GCForContextDispose.h
index 2bf8fb2..ae338a6 100644
--- a/Source/bindings/v8/V8GCForContextDispose.h
+++ b/Source/bindings/v8/V8GCForContextDispose.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2010 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/V8HiddenPropertyName.cpp b/Source/bindings/v8/V8HiddenPropertyName.cpp
index dd53f10..2da72d3 100644
--- a/Source/bindings/v8/V8HiddenPropertyName.cpp
+++ b/Source/bindings/v8/V8HiddenPropertyName.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/V8Initializer.h b/Source/bindings/v8/V8Initializer.h
index a73cb7d..5ff4ecd 100644
--- a/Source/bindings/v8/V8Initializer.h
+++ b/Source/bindings/v8/V8Initializer.h
@@ -35,7 +35,7 @@
     static void initializeMainThreadIfNeeded(v8::Isolate*);
     static void initializeWorker(v8::Isolate*);
 };
-    
+
 } // namespace WebCore
 
 #endif // V8Initializer_h
diff --git a/Source/bindings/v8/V8ObjectConstructor.cpp b/Source/bindings/v8/V8ObjectConstructor.cpp
index 9b20421..be00a83 100644
--- a/Source/bindings/v8/V8ObjectConstructor.cpp
+++ b/Source/bindings/v8/V8ObjectConstructor.cpp
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2012 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
@@ -9,7 +9,7 @@
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
  *     documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
diff --git a/Source/bindings/v8/V8PerContextData.cpp b/Source/bindings/v8/V8PerContextData.cpp
index 509013a..9edbdbc 100644
--- a/Source/bindings/v8/V8PerContextData.cpp
+++ b/Source/bindings/v8/V8PerContextData.cpp
@@ -131,27 +131,34 @@
     return function;
 }
 
-void V8PerContextData::addCustomElementBinding(const AtomicString& type, PassOwnPtr<CustomElementBinding> binding)
+void V8PerContextData::addCustomElementBinding(CustomElementDefinition* definition, PassOwnPtr<CustomElementBinding> binding)
 {
-    ASSERT(!m_customElementBindings->contains(type));
-    m_customElementBindings->add(type, binding);
+    ASSERT(!m_customElementBindings->contains(definition));
+    m_customElementBindings->add(definition, binding);
 }
 
-CustomElementBinding* V8PerContextData::customElementBinding(const AtomicString& type)
+void V8PerContextData::clearCustomElementBinding(CustomElementDefinition* definition)
 {
-    CustomElementBindingMap::const_iterator it = m_customElementBindings->find(type);
+    CustomElementBindingMap::iterator it = m_customElementBindings->find(definition);
+    ASSERT(it != m_customElementBindings->end());
+    m_customElementBindings->remove(it);
+}
+
+CustomElementBinding* V8PerContextData::customElementBinding(CustomElementDefinition* definition)
+{
+    CustomElementBindingMap::const_iterator it = m_customElementBindings->find(definition);
     ASSERT(it != m_customElementBindings->end());
     return it->value.get();
 }
 
 
-static v8::Handle<v8::Value> createDebugData(const char* worldName, int debugId) 
+static v8::Handle<v8::Value> createDebugData(const char* worldName, int debugId)
 {
     char buffer[32];
     unsigned wanted;
     if (debugId == -1)
         wanted = snprintf(buffer, sizeof(buffer), "%s", worldName);
-    else 
+    else
         wanted = snprintf(buffer, sizeof(buffer), "%s,%d", worldName, debugId);
 
     if (wanted < sizeof(buffer))
@@ -172,7 +179,7 @@
     context->SetEmbedderData(v8ContextDebugIdIndex, value);
 }
 
-bool V8PerContextDebugData::setContextDebugData(v8::Handle<v8::Context> context, const char* worldName, int debugId) 
+bool V8PerContextDebugData::setContextDebugData(v8::Handle<v8::Context> context, const char* worldName, int debugId)
 {
     if (!debugData(context)->IsUndefined())
         return false;
@@ -182,7 +189,7 @@
     return true;
 }
 
-int V8PerContextDebugData::contextDebugId(v8::Handle<v8::Context> context) 
+int V8PerContextDebugData::contextDebugId(v8::Handle<v8::Context> context)
 {
     v8::HandleScope scope;
     v8::Handle<v8::Value> data = debugData(context);
diff --git a/Source/bindings/v8/V8PerContextData.h b/Source/bindings/v8/V8PerContextData.h
index af9357d..c342ac4 100644
--- a/Source/bindings/v8/V8PerContextData.h
+++ b/Source/bindings/v8/V8PerContextData.h
@@ -45,6 +45,7 @@
 
 namespace WebCore {
 
+class CustomElementDefinition;
 struct V8NPObject;
 typedef WTF::Vector<V8NPObject*> V8NPObjectVector;
 typedef WTF::HashMap<int, V8NPObjectVector> V8NPObjectMap;
@@ -108,8 +109,9 @@
         m_activityLogger = logger;
     }
 
-    void addCustomElementBinding(const AtomicString& type, PassOwnPtr<CustomElementBinding>);
-    CustomElementBinding* customElementBinding(const AtomicString& type);
+    void addCustomElementBinding(CustomElementDefinition*, PassOwnPtr<CustomElementBinding>);
+    void clearCustomElementBinding(CustomElementDefinition*);
+    CustomElementBinding* customElementBinding(CustomElementDefinition*);
 
 private:
     explicit V8PerContextData(v8::Handle<v8::Context> context)
@@ -142,7 +144,7 @@
     v8::Persistent<v8::Context> m_context;
     ScopedPersistent<v8::Value> m_errorPrototype;
 
-    typedef WTF::HashMap<AtomicString, OwnPtr<CustomElementBinding> > CustomElementBindingMap;
+    typedef WTF::HashMap<CustomElementDefinition*, OwnPtr<CustomElementBinding> > CustomElementBindingMap;
     OwnPtr<CustomElementBindingMap> m_customElementBindings;
 };
 
diff --git a/Source/bindings/v8/V8PerIsolateData.cpp b/Source/bindings/v8/V8PerIsolateData.cpp
index c563200..11bb709 100644
--- a/Source/bindings/v8/V8PerIsolateData.cpp
+++ b/Source/bindings/v8/V8PerIsolateData.cpp
@@ -64,10 +64,10 @@
     return data;
 }
 
-void V8PerIsolateData::ensureInitialized(v8::Isolate* isolate) 
+void V8PerIsolateData::ensureInitialized(v8::Isolate* isolate)
 {
     ASSERT(isolate);
-    if (!isolate->GetData()) 
+    if (!isolate->GetData())
         create(isolate);
 }
 
diff --git a/Source/bindings/v8/V8PerIsolateData.h b/Source/bindings/v8/V8PerIsolateData.h
index 5423e7d..830ae6e 100644
--- a/Source/bindings/v8/V8PerIsolateData.h
+++ b/Source/bindings/v8/V8PerIsolateData.h
@@ -59,7 +59,7 @@
     {
         ASSERT(isolate);
         ASSERT(isolate->GetData());
-        return static_cast<V8PerIsolateData*>(isolate->GetData()); 
+        return static_cast<V8PerIsolateData*>(isolate->GetData());
     }
     static void dispose(v8::Isolate*);
 
@@ -94,7 +94,7 @@
 
     V8HiddenPropertyName* hiddenPropertyName() { return m_hiddenPropertyName.get(); }
 
-    void registerDOMDataStore(DOMDataStore* domDataStore) 
+    void registerDOMDataStore(DOMDataStore* domDataStore)
     {
         ASSERT(m_domDataList.find(domDataStore) == notFound);
         m_domDataList.append(domDataStore);
diff --git a/Source/bindings/v8/V8StringResource.h b/Source/bindings/v8/V8StringResource.h
index a54b86d..31f1781 100644
--- a/Source/bindings/v8/V8StringResource.h
+++ b/Source/bindings/v8/V8StringResource.h
@@ -251,7 +251,7 @@
     }
     return prepareBase();
 }
-    
+
 } // namespace WebCore
 
 #endif // V8StringResource_h
diff --git a/Source/bindings/v8/V8ThrowException.cpp b/Source/bindings/v8/V8ThrowException.cpp
index 507507b..5533108 100644
--- a/Source/bindings/v8/V8ThrowException.cpp
+++ b/Source/bindings/v8/V8ThrowException.cpp
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
@@ -9,7 +9,7 @@
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
  *     documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
diff --git a/Source/bindings/v8/V8ThrowException.h b/Source/bindings/v8/V8ThrowException.h
index ea12306..6f3ed2d 100644
--- a/Source/bindings/v8/V8ThrowException.h
+++ b/Source/bindings/v8/V8ThrowException.h
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
@@ -9,7 +9,7 @@
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
  *     documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
diff --git a/Source/bindings/v8/V8Utilities.cpp b/Source/bindings/v8/V8Utilities.cpp
index 33c07f1..9978fc5 100644
--- a/Source/bindings/v8/V8Utilities.cpp
+++ b/Source/bindings/v8/V8Utilities.cpp
@@ -138,7 +138,7 @@
         }
     }
 }
-    
+
 void transferHiddenDependency(v8::Handle<v8::Object> object, EventListener* oldValue, v8::Local<v8::Value> newValue, int cacheIndex, v8::Isolate* isolate)
 {
     if (oldValue) {
diff --git a/Source/bindings/v8/V8Utilities.h b/Source/bindings/v8/V8Utilities.h
index b7f272e..425df2d 100644
--- a/Source/bindings/v8/V8Utilities.h
+++ b/Source/bindings/v8/V8Utilities.h
@@ -57,10 +57,10 @@
     typedef WTF::Vector<RefPtr<ArrayBuffer>, 1> ArrayBufferArray;
 
     // Helper function which pulls the values out of a JS sequence and into a MessagePortArray.
-    // Also validates the elements per sections 4.1.13 and 4.1.15 of the WebIDL spec and section 8.3.3 
+    // Also validates the elements per sections 4.1.13 and 4.1.15 of the WebIDL spec and section 8.3.3
     // of the HTML5 spec and generates exceptions as appropriate.
     // Returns true if the array was filled, or false if the passed value was not of an appropriate type.
-    bool extractTransferables(v8::Local<v8::Value>, MessagePortArray&, ArrayBufferArray&, v8::Isolate*); 
+    bool extractTransferables(v8::Local<v8::Value>, MessagePortArray&, ArrayBufferArray&, v8::Isolate*);
     bool getMessagePortArray(v8::Local<v8::Value>, MessagePortArray&, v8::Isolate*);
 
 } // namespace WebCore
diff --git a/Source/bindings/v8/V8ValueCache.cpp b/Source/bindings/v8/V8ValueCache.cpp
index 7e20131..8c2be0f 100644
--- a/Source/bindings/v8/V8ValueCache.cpp
+++ b/Source/bindings/v8/V8ValueCache.cpp
@@ -56,7 +56,7 @@
     stringImpl->deref();
 }
 
-void StringCache::remove(StringImpl* stringImpl) 
+void StringCache::remove(StringImpl* stringImpl)
 {
     ASSERT(m_stringCache.contains(stringImpl));
     m_stringCache.remove(stringImpl);
diff --git a/Source/bindings/v8/V8ValueCache.h b/Source/bindings/v8/V8ValueCache.h
index e7eb52d..69123a6 100644
--- a/Source/bindings/v8/V8ValueCache.h
+++ b/Source/bindings/v8/V8ValueCache.h
@@ -56,7 +56,7 @@
             setReturnValueFromStringSlow(info, stringImpl, isolate);
     }
 
-    void clearOnGC() 
+    void clearOnGC()
     {
         m_lastStringImpl = 0;
         m_lastV8String.clear();
diff --git a/Source/bindings/v8/WorkerScriptDebugServer.cpp b/Source/bindings/v8/WorkerScriptDebugServer.cpp
index c2aaa0d..73a085f 100644
--- a/Source/bindings/v8/WorkerScriptDebugServer.cpp
+++ b/Source/bindings/v8/WorkerScriptDebugServer.cpp
@@ -64,7 +64,7 @@
     v8::Local<v8::Object> debuggerScript = m_debuggerScript.newLocal(m_isolate);
     ASSERT(!debuggerScript->IsUndefined());
     v8::Debug::SetDebugEventListener2(&WorkerScriptDebugServer::v8DebugEventCallback, v8::External::New(this));
-    
+
     v8::Handle<v8::Function> getScriptsFunction = v8::Local<v8::Function>::Cast(debuggerScript->Get(v8::String::NewSymbol("getWorkerScripts")));
     v8::Handle<v8::Value> value = V8ScriptRunner::callInternalFunction(getScriptsFunction, debuggerScript, 0, 0, m_isolate);
     if (value.IsEmpty())
@@ -101,7 +101,7 @@
         result = m_workerGlobalScope->thread()->runLoop().runInMode(m_workerGlobalScope, m_debuggerTaskMode);
     // Keep waiting until execution is resumed.
     } while (result == MessageQueueMessageReceived && isPaused());
-    
+
     // The listener may have been removed in the nested loop.
     if (m_listener)
         m_listener->didContinue();
diff --git a/Source/bindings/v8/WrapperTypeInfo.h b/Source/bindings/v8/WrapperTypeInfo.h
index 3999eca..5d7fd15 100644
--- a/Source/bindings/v8/WrapperTypeInfo.h
+++ b/Source/bindings/v8/WrapperTypeInfo.h
@@ -34,7 +34,7 @@
 #include <v8.h>
 
 namespace WebCore {
-    
+
     class ActiveDOMObject;
     class DOMDataStore;
     class EventTarget;
@@ -76,8 +76,8 @@
         {
             return reinterpret_cast<WrapperTypeInfo*>(v8::External::Cast(*typeInfoWrapper)->Value());
         }
-        
-        
+
+
         bool equals(const WrapperTypeInfo* that) const
         {
             return this == that;
@@ -92,15 +92,15 @@
 
             return false;
         }
-        
+
         v8::Handle<v8::FunctionTemplate> getTemplate(v8::Isolate* isolate, WrapperWorldType worldType) { return getTemplateFunction(isolate, worldType); }
-        
+
         void derefObject(void* object)
         {
-            if (derefObjectFunction) 
+            if (derefObjectFunction)
                 derefObjectFunction(object);
         }
-        
+
         void installPerContextPrototypeProperties(v8::Handle<v8::Object> proto, v8::Isolate* isolate)
         {
             if (installPerContextPrototypePropertiesFunction)
diff --git a/Source/bindings/v8/custom/V8AlgorithmCustom.cpp b/Source/bindings/v8/custom/V8AlgorithmCustom.cpp
index 172abb3..f230838 100644
--- a/Source/bindings/v8/custom/V8AlgorithmCustom.cpp
+++ b/Source/bindings/v8/custom/V8AlgorithmCustom.cpp
@@ -33,6 +33,7 @@
 
 #include "V8AesCbcParams.h"
 #include "V8AesKeyGenParams.h"
+#include "V8HmacParams.h"
 #include "bindings/v8/V8Binding.h"
 
 namespace WebCore {
@@ -49,6 +50,8 @@
         return wrap(static_cast<AesCbcParams*>(impl), creationContext, isolate);
     case WebKit::WebCryptoAlgorithmParamsTypeAesKeyGenParams:
         return wrap(static_cast<AesKeyGenParams*>(impl), creationContext, isolate);
+    case WebKit::WebCryptoAlgorithmParamsTypeHmacParams:
+        return wrap(static_cast<HmacParams*>(impl), creationContext, isolate);
     }
 
     ASSERT_NOT_REACHED();
diff --git a/Source/bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp b/Source/bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp
index d15ab4d..b5ede7c 100644
--- a/Source/bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp
+++ b/Source/bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp
@@ -48,7 +48,7 @@
             return;
         }
     }
-    
+
     if (!buffer) {
         throwTypeError("Value is not of type AudioBuffer", info.GetIsolate());
         return;
diff --git a/Source/bindings/v8/custom/V8AudioContextCustom.cpp b/Source/bindings/v8/custom/V8AudioContextCustom.cpp
index b9c84ff..99c8174 100644
--- a/Source/bindings/v8/custom/V8AudioContextCustom.cpp
+++ b/Source/bindings/v8/custom/V8AudioContextCustom.cpp
@@ -46,7 +46,7 @@
     Document* document = currentDocument();
 
     RefPtr<AudioContext> audioContext;
-    
+
     if (!args.Length()) {
         // Constructor for default AudioContext which talks to audio hardware.
         audioContext = AudioContext::create(document);
@@ -68,7 +68,7 @@
         throwError(v8SyntaxError, "Error creating AudioContext", args.GetIsolate());
         return;
     }
-    
+
     // Transform the holder into a wrapper object for the audio context.
     v8::Handle<v8::Object> wrapper = args.Holder();
     V8DOMWrapper::associateObjectWithWrapper<V8AudioContext>(audioContext.release(), &info, wrapper, args.GetIsolate(), WrapperConfiguration::Dependent);
diff --git a/Source/bindings/v8/custom/V8BiquadFilterNodeCustom.cpp b/Source/bindings/v8/custom/V8BiquadFilterNodeCustom.cpp
index ccd5c35..a72e5a2 100644
--- a/Source/bindings/v8/custom/V8BiquadFilterNodeCustom.cpp
+++ b/Source/bindings/v8/custom/V8BiquadFilterNodeCustom.cpp
@@ -53,7 +53,7 @@
             return;
         }
     }
-    
+
     throwTypeError("Illegal BiquadFilterNode type", info.GetIsolate());
 }
 
diff --git a/Source/bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp b/Source/bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp
index a079037..8166350 100644
--- a/Source/bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp
+++ b/Source/bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp b/Source/bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp
index 2d9fa2e..78f8e99 100644
--- a/Source/bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp
+++ b/Source/bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2009, 2012 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8CustomXPathNSResolver.h b/Source/bindings/v8/custom/V8CustomXPathNSResolver.h
index 21531d8..3ddceae 100644
--- a/Source/bindings/v8/custom/V8CustomXPathNSResolver.h
+++ b/Source/bindings/v8/custom/V8CustomXPathNSResolver.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8HTMLAllCollectionCustom.cpp b/Source/bindings/v8/custom/V8HTMLAllCollectionCustom.cpp
index 71d75c5..0327c01 100644
--- a/Source/bindings/v8/custom/V8HTMLAllCollectionCustom.cpp
+++ b/Source/bindings/v8/custom/V8HTMLAllCollectionCustom.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8HTMLCollectionCustom.cpp b/Source/bindings/v8/custom/V8HTMLCollectionCustom.cpp
index b03ed2b..33fd4ca 100644
--- a/Source/bindings/v8/custom/V8HTMLCollectionCustom.cpp
+++ b/Source/bindings/v8/custom/V8HTMLCollectionCustom.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8HTMLFormControlsCollectionCustom.cpp b/Source/bindings/v8/custom/V8HTMLFormControlsCollectionCustom.cpp
index f2e5af5..4710333 100644
--- a/Source/bindings/v8/custom/V8HTMLFormControlsCollectionCustom.cpp
+++ b/Source/bindings/v8/custom/V8HTMLFormControlsCollectionCustom.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8HTMLFrameElementCustom.cpp b/Source/bindings/v8/custom/V8HTMLFrameElementCustom.cpp
index 689d6a0..f589ef9 100644
--- a/Source/bindings/v8/custom/V8HTMLFrameElementCustom.cpp
+++ b/Source/bindings/v8/custom/V8HTMLFrameElementCustom.cpp
@@ -38,7 +38,7 @@
 
 namespace WebCore {
 
-using namespace HTMLNames; 
+using namespace HTMLNames;
 
 void V8HTMLFrameElement::locationAttrSetterCustom(v8::Local<v8::String> name, v8::Local<v8::Value> value, const v8::PropertyCallbackInfo<void>& info)
 {
diff --git a/Source/bindings/v8/custom/V8HTMLLinkElementCustom.cpp b/Source/bindings/v8/custom/V8HTMLLinkElementCustom.cpp
index b305380..c3b1f4e 100644
--- a/Source/bindings/v8/custom/V8HTMLLinkElementCustom.cpp
+++ b/Source/bindings/v8/custom/V8HTMLLinkElementCustom.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2011 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8HTMLMediaElementCustom.cpp b/Source/bindings/v8/custom/V8HTMLMediaElementCustom.cpp
index eb2c91e..089253d 100644
--- a/Source/bindings/v8/custom/V8HTMLMediaElementCustom.cpp
+++ b/Source/bindings/v8/custom/V8HTMLMediaElementCustom.cpp
@@ -43,7 +43,7 @@
     }
 
     // 4.8.10.11.2 Media controllers: controller attribute.
-    // On setting, it must first remove the element's mediagroup attribute, if any, 
+    // On setting, it must first remove the element's mediagroup attribute, if any,
     HTMLMediaElement* imp = V8HTMLMediaElement::toNative(info.Holder());
     imp->setMediaGroup(String());
     // and then set the current media controller to the given value.
diff --git a/Source/bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp b/Source/bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp
index 7392172..90607e6 100644
--- a/Source/bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp
+++ b/Source/bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8HTMLPlugInElementCustom.cpp b/Source/bindings/v8/custom/V8HTMLPlugInElementCustom.cpp
index 44db801..2eb0188 100644
--- a/Source/bindings/v8/custom/V8HTMLPlugInElementCustom.cpp
+++ b/Source/bindings/v8/custom/V8HTMLPlugInElementCustom.cpp
@@ -1,10 +1,10 @@
 /*
 * Copyright (C) 2009 Google Inc. All rights reserved.
-* 
+*
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are
 * met:
-* 
+*
 *     * Redistributions of source code must retain the above copyright
 * notice, this list of conditions and the following disclaimer.
 *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
 *     * Neither the name of Google Inc. nor the names of its
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
-* 
+*
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8HTMLSelectElementCustom.cpp b/Source/bindings/v8/custom/V8HTMLSelectElementCustom.cpp
index aee1ff5..7a1b3d9 100644
--- a/Source/bindings/v8/custom/V8HTMLSelectElementCustom.cpp
+++ b/Source/bindings/v8/custom/V8HTMLSelectElementCustom.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8HTMLSelectElementCustom.h b/Source/bindings/v8/custom/V8HTMLSelectElementCustom.h
index daaf224..9f29386 100644
--- a/Source/bindings/v8/custom/V8HTMLSelectElementCustom.h
+++ b/Source/bindings/v8/custom/V8HTMLSelectElementCustom.h
@@ -1,11 +1,11 @@
 /*
  * Copyright (c) 2008, 2009 Google Inc.
  * All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -15,7 +15,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8MessageChannelCustom.cpp b/Source/bindings/v8/custom/V8MessageChannelCustom.cpp
index e865215..3d2364a 100644
--- a/Source/bindings/v8/custom/V8MessageChannelCustom.cpp
+++ b/Source/bindings/v8/custom/V8MessageChannelCustom.cpp
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8NodeListCustom.cpp b/Source/bindings/v8/custom/V8NodeListCustom.cpp
index c80d847..efb9208 100644
--- a/Source/bindings/v8/custom/V8NodeListCustom.cpp
+++ b/Source/bindings/v8/custom/V8NodeListCustom.cpp
@@ -29,7 +29,7 @@
  */
 
 #include "config.h"
-#include "V8NodeList.h" 
+#include "V8NodeList.h"
 
 #include "V8Node.h"
 #include "bindings/v8/V8Binding.h"
diff --git a/Source/bindings/v8/custom/V8OscillatorNodeCustom.cpp b/Source/bindings/v8/custom/V8OscillatorNodeCustom.cpp
index c1e892b..f98ddab 100644
--- a/Source/bindings/v8/custom/V8OscillatorNodeCustom.cpp
+++ b/Source/bindings/v8/custom/V8OscillatorNodeCustom.cpp
@@ -53,7 +53,7 @@
             return;
         }
     }
-    
+
     throwTypeError("Illegal OscillatorNode type", info.GetIsolate());
 }
 
diff --git a/Source/bindings/v8/custom/V8PannerNodeCustom.cpp b/Source/bindings/v8/custom/V8PannerNodeCustom.cpp
index 00b9c62..66f89a9 100644
--- a/Source/bindings/v8/custom/V8PannerNodeCustom.cpp
+++ b/Source/bindings/v8/custom/V8PannerNodeCustom.cpp
@@ -53,7 +53,7 @@
             return;
         }
     }
-    
+
     throwTypeError("Illegal panningModel", info.GetIsolate());
 }
 
@@ -77,7 +77,7 @@
             return;
         }
     }
-    
+
     throwTypeError("Illegal distanceModel", info.GetIsolate());
 }
 
diff --git a/Source/bindings/v8/custom/V8SQLResultSetRowListCustom.cpp b/Source/bindings/v8/custom/V8SQLResultSetRowListCustom.cpp
index 821948c..01c452c 100644
--- a/Source/bindings/v8/custom/V8SQLResultSetRowListCustom.cpp
+++ b/Source/bindings/v8/custom/V8SQLResultSetRowListCustom.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/bindings/v8/custom/V8SVGLengthCustom.cpp b/Source/bindings/v8/custom/V8SVGLengthCustom.cpp
index 24f7524..ec2f771 100644
--- a/Source/bindings/v8/custom/V8SVGLengthCustom.cpp
+++ b/Source/bindings/v8/custom/V8SVGLengthCustom.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -27,7 +27,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #include "config.h"
 #include "V8SVGLength.h"
 
diff --git a/Source/bindings/v8/custom/V8TrackEventCustom.cpp b/Source/bindings/v8/custom/V8TrackEventCustom.cpp
index 8cd482f..b853ddd 100644
--- a/Source/bindings/v8/custom/V8TrackEventCustom.cpp
+++ b/Source/bindings/v8/custom/V8TrackEventCustom.cpp
@@ -42,7 +42,7 @@
 {
     TrackEvent* trackEvent = V8TrackEvent::toNative(info.Holder());
     TrackBase* track = trackEvent->track();
-    
+
     if (!track) {
         v8SetReturnValueNull(info);
         return;
@@ -53,7 +53,7 @@
         // This should never happen.
         ASSERT_NOT_REACHED();
         break;
-        
+
     case TrackBase::TextTrack:
         v8SetReturnValue(info, toV8Fast(static_cast<TextTrack*>(track), info, trackEvent));
         return;
diff --git a/Source/bindings/v8/custom/V8WebGLRenderingContextCustom.cpp b/Source/bindings/v8/custom/V8WebGLRenderingContextCustom.cpp
index fa3532e..8b0783e 100644
--- a/Source/bindings/v8/custom/V8WebGLRenderingContextCustom.cpp
+++ b/Source/bindings/v8/custom/V8WebGLRenderingContextCustom.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -729,7 +729,7 @@
     }
     bool ok = false;
     WebGLUniformLocation* location = toWebGLUniformLocation(args[0], ok, args.GetIsolate());
-    
+
     bool transpose = args[1]->BooleanValue();
     if (V8Float32Array::HasInstance(args[2], args.GetIsolate(), worldType(args.GetIsolate()))) {
         Float32Array* array = V8Float32Array::toNative(args[2]->ToObject());
diff --git a/Source/bindings/v8/custom/V8XMLHttpRequestCustom.cpp b/Source/bindings/v8/custom/V8XMLHttpRequestCustom.cpp
index a5196e7..4302221 100644
--- a/Source/bindings/v8/custom/V8XMLHttpRequestCustom.cpp
+++ b/Source/bindings/v8/custom/V8XMLHttpRequestCustom.cpp
@@ -154,7 +154,7 @@
 
         if (args.Length() >= 4 && !args[3]->IsUndefined()) {
             String user = toWebCoreStringWithNullCheck(args[3]);
-            
+
             if (args.Length() >= 5 && !args[4]->IsUndefined()) {
                 String passwd = toWebCoreStringWithNullCheck(args[4]);
                 xmlHttpRequest->open(method, url, async, user, passwd, es);
diff --git a/Source/bindings/v8/custom/V8XSLTProcessorCustom.cpp b/Source/bindings/v8/custom/V8XSLTProcessorCustom.cpp
index 509c504..46b40ff 100644
--- a/Source/bindings/v8/custom/V8XSLTProcessorCustom.cpp
+++ b/Source/bindings/v8/custom/V8XSLTProcessorCustom.cpp
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/config.h b/Source/config.h
index ea83ceb..1e70840 100644
--- a/Source/config.h
+++ b/Source/config.h
@@ -17,7 +17,7 @@
  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
  * Boston, MA 02110-1301, USA.
  *
- */ 
+ */
 
 #include <wtf/Platform.h>
 
diff --git a/Source/core/OWNERS b/Source/core/OWNERS
index 409b33b..3e99180 100644
--- a/Source/core/OWNERS
+++ b/Source/core/OWNERS
@@ -41,6 +41,7 @@
 tkent@chromium.org
 tony@chromium.org
 tonyg@chromium.org
+vollick@chromium.org
 vsevik@chromium.org
 yurys@chromium.org
 yutak@chromium.org
diff --git a/Source/core/WebCorePrefixMac.h b/Source/core/WebCorePrefixMac.h
index 2c93fc6..6d32da3 100644
--- a/Source/core/WebCorePrefixMac.h
+++ b/Source/core/WebCorePrefixMac.h
@@ -91,8 +91,8 @@
 #endif
 
 #ifdef __cplusplus
-#define new ("if you use new/delete make sure to include config.h at the top of the file"()) 
-#define delete ("if you use new/delete make sure to include config.h at the top of the file"()) 
+#define new ("if you use new/delete make sure to include config.h at the top of the file"())
+#define delete ("if you use new/delete make sure to include config.h at the top of the file"())
 #endif
 
 /* When C++ exceptions are disabled, the C++ library defines |try| and |catch|
diff --git a/Source/core/accessibility/AXObjectCache.cpp b/Source/core/accessibility/AXObjectCache.cpp
index 08b19d0..3854fb5 100644
--- a/Source/core/accessibility/AXObjectCache.cpp
+++ b/Source/core/accessibility/AXObjectCache.cpp
@@ -98,7 +98,7 @@
         m_idMapping.set(id, attributes);
     }
 }
-    
+
 bool AXObjectCache::gAccessibilityEnabled = false;
 
 AXObjectCache::AXObjectCache(const Document* doc)
@@ -126,29 +126,29 @@
     // in the list of children for its corresponding image.
     if (!areaElement)
         return 0;
-    
+
     HTMLImageElement* imageElement = areaElement->imageElement();
     if (!imageElement)
         return 0;
-    
+
     AccessibilityObject* axRenderImage = areaElement->document()->axObjectCache()->getOrCreate(imageElement);
     if (!axRenderImage)
         return 0;
-    
+
     AccessibilityObject::AccessibilityChildrenVector imageChildren = axRenderImage->children();
     unsigned count = imageChildren.size();
     for (unsigned k = 0; k < count; ++k) {
         AccessibilityObject* child = imageChildren[k].get();
         if (!child->isImageMapLink())
             continue;
-        
+
         if (static_cast<AccessibilityImageMapLink*>(child)->areaElement() == areaElement)
             return child;
-    }    
-    
+    }
+
     return 0;
 }
-    
+
 AccessibilityObject* AXObjectCache::focusedUIElementForPage(const Page* page)
 {
     if (!gAccessibilityEnabled)
@@ -183,20 +183,20 @@
 {
     if (!widget)
         return 0;
-        
+
     AXID axID = m_widgetObjectMapping.get(widget);
     ASSERT(!HashTraits<AXID>::isDeletedValue(axID));
     if (!axID)
         return 0;
-    
+
     return m_objects.get(axID);
 }
-    
+
 AccessibilityObject* AXObjectCache::get(RenderObject* renderer)
 {
     if (!renderer)
         return 0;
-    
+
     AXID axID = m_renderObjectMapping.get(renderer);
     ASSERT(!HashTraits<AXID>::isDeletedValue(axID));
     if (!axID)
@@ -308,7 +308,7 @@
 
     if (AccessibilityObject* obj = get(widget))
         return obj;
-    
+
     RefPtr<AccessibilityObject> newObj = 0;
     if (widget->isFrameView())
         newObj = AccessibilityScrollView::create(static_cast<ScrollView*>(widget));
@@ -317,11 +317,11 @@
 
     // Will crash later if we have two objects for the same widget.
     ASSERT(!get(widget));
-        
+
     getAXID(newObj.get());
-    
+
     m_widgetObjectMapping.set(widget, newObj->axObjectID());
-    m_objects.set(newObj->axObjectID(), newObj);    
+    m_objects.set(newObj->axObjectID(), newObj);
     newObj->init();
     attachWrapper(newObj.get());
     return newObj.get();
@@ -340,7 +340,7 @@
 
     if (!node->parentElement())
         return 0;
-    
+
     // It's only allowed to create an AccessibilityObject from a Node if it's in a canvas subtree.
     // Or if it's a hidden element, but we still want to expose it because of other ARIA attributes.
     bool inCanvasSubtree = node->parentElement()->isInCanvasSubtree();
@@ -387,19 +387,19 @@
 
     return newObj.get();
 }
-    
+
 AccessibilityObject* AXObjectCache::rootObject()
 {
     if (!gAccessibilityEnabled)
         return 0;
-    
+
     return getOrCreate(m_document->view());
 }
 
 AccessibilityObject* AXObjectCache::getOrCreate(AccessibilityRole role)
 {
     RefPtr<AccessibilityObject> obj = 0;
-    
+
     // will be filled in...
     switch (role) {
     case ListBoxOptionRole:
@@ -410,10 +410,10 @@
         break;
     case ColumnRole:
         obj = AccessibilityTableColumn::create();
-        break;            
+        break;
     case TableHeaderContainerRole:
         obj = AccessibilityTableHeaderContainer::create();
-        break;   
+        break;
     case SliderThumbRole:
         obj = AccessibilitySliderThumb::create();
         break;
@@ -432,13 +432,13 @@
     default:
         obj = 0;
     }
-    
+
     if (obj)
         getAXID(obj.get());
     else
         return 0;
 
-    m_objects.set(obj->axObjectID(), obj);    
+    m_objects.set(obj->axObjectID(), obj);
     obj->init();
     attachWrapper(obj.get());
     return obj.get();
@@ -448,28 +448,28 @@
 {
     if (!axID)
         return;
-    
-    // first fetch object to operate some cleanup functions on it 
+
+    // first fetch object to operate some cleanup functions on it
     AccessibilityObject* obj = m_objects.get(axID);
     if (!obj)
         return;
-    
+
     detachWrapper(obj);
     obj->detach();
     removeAXID(obj);
-    
+
     // finally remove the object
     if (!m_objects.take(axID))
         return;
-    
-    ASSERT(m_objects.size() >= m_idsInUse.size());    
+
+    ASSERT(m_objects.size() >= m_idsInUse.size());
 }
-    
+
 void AXObjectCache::remove(RenderObject* renderer)
 {
     if (!renderer)
         return;
-    
+
     AXID axID = m_renderObjectMapping.get(renderer);
     remove(axID);
     m_renderObjectMapping.remove(renderer);
@@ -497,13 +497,13 @@
 {
     if (!view)
         return;
-        
+
     AXID axID = m_widgetObjectMapping.get(view);
     remove(axID);
     m_widgetObjectMapping.remove(view);
 }
-    
-    
+
+
 AXID AXObjectCache::platformGenerateAXID() const
 {
     static AXID lastUsedID = 0;
@@ -532,7 +532,7 @@
 
     m_idsInUse.add(objID);
     obj->setAXObjectID(objID);
-    
+
     return objID;
 }
 
@@ -540,7 +540,7 @@
 {
     if (!object)
         return;
-    
+
     AXID objID = object->axObjectID();
     if (!objID)
         return;
@@ -609,7 +609,7 @@
 
     obj->childrenChanged();
 }
-    
+
 void AXObjectCache::notificationPostTimerFired(Timer<AXObjectCache>*)
 {
     RefPtr<Document> protectorForCacheOwner(m_document);
@@ -635,22 +635,22 @@
                 ASSERT(!renderer->view()->layoutState());
         }
 #endif
-        
+
         AXNotification notification = m_notificationsToPost[i].second;
         postPlatformNotification(obj, notification);
 
         if (notification == AXChildrenChanged && obj->parentObjectIfExists() && obj->lastKnownIsIgnoredValue() != obj->accessibilityIsIgnored())
             childrenChanged(obj->parentObject());
     }
-    
+
     m_notificationsToPost.clear();
 }
-    
+
 void AXObjectCache::postNotification(RenderObject* renderer, AXNotification notification, bool postToElement, PostType postType)
 {
     if (!renderer)
         return;
-    
+
     stopCachingComputedObjectAttributes();
 
     // Get an accessibility object that already exists. One should not be created here
@@ -658,12 +658,12 @@
     RefPtr<AccessibilityObject> object = get(renderer);
     while (!object && renderer) {
         renderer = renderer->parent();
-        object = get(renderer); 
+        object = get(renderer);
     }
-    
+
     if (!renderer)
         return;
-    
+
     postNotification(object.get(), renderer->document(), notification, postToElement, postType);
 }
 
@@ -671,7 +671,7 @@
 {
     if (!node)
         return;
-    
+
     stopCachingComputedObjectAttributes();
 
     // Get an accessibility object that already exists. One should not be created here
@@ -681,10 +681,10 @@
         node = node->parentNode();
         object = get(node);
     }
-    
+
     if (!node)
         return;
-    
+
     postNotification(object.get(), node->document(), notification, postToElement, postType);
 }
 
@@ -758,20 +758,20 @@
 {
     if (!view)
         return;
-    
+
     // We don't want to create a scroll view from this method, only update an existing one.
     if (AccessibilityObject* scrollViewObject = get(view)) {
         stopCachingComputedObjectAttributes();
         scrollViewObject->updateChildrenIfNecessary();
     }
 }
-    
+
 void AXObjectCache::handleAriaExpandedChange(Node* node)
 {
     if (AccessibilityObject* obj = getOrCreate(node))
         obj->handleAriaExpandedChanged();
 }
-    
+
 void AXObjectCache::handleActiveDescendantChanged(Node* node)
 {
     if (AccessibilityObject* obj = getOrCreate(node))
@@ -847,24 +847,24 @@
 {
     if (!isNodeInUse(textMarkerData.node))
         return VisiblePosition();
-    
+
     // FIXME: Accessability should make it clear these are DOM-compliant offsets or store Position objects.
     VisiblePosition visiblePos = VisiblePosition(createLegacyEditingPosition(textMarkerData.node, textMarkerData.offset), textMarkerData.affinity);
     Position deepPos = visiblePos.deepEquivalent();
     if (deepPos.isNull())
         return VisiblePosition();
-    
+
     RenderObject* renderer = deepPos.deprecatedNode()->renderer();
     if (!renderer)
         return VisiblePosition();
-    
+
     AXObjectCache* cache = renderer->document()->axObjectCache();
     if (!cache->isIDinUse(textMarkerData.axID))
         return VisiblePosition();
-    
+
     if (deepPos.deprecatedNode() != textMarkerData.node || deepPos.deprecatedEditingOffset() != textMarkerData.offset)
         return VisiblePosition();
-    
+
     return visiblePos;
 }
 
@@ -873,28 +873,28 @@
     // This memory must be bzero'd so instances of TextMarkerData can be tested for byte-equivalence.
     // This also allows callers to check for failure by looking at textMarkerData upon return.
     memset(&textMarkerData, 0, sizeof(TextMarkerData));
-    
+
     if (visiblePos.isNull())
         return;
-    
+
     Position deepPos = visiblePos.deepEquivalent();
     Node* domNode = deepPos.deprecatedNode();
     ASSERT(domNode);
     if (!domNode)
         return;
-    
+
     if (domNode->hasTagName(inputTag) && toHTMLInputElement(domNode)->isPasswordField())
         return;
-    
+
     // find or create an accessibility object for this node
     AXObjectCache* cache = domNode->document()->axObjectCache();
     RefPtr<AccessibilityObject> obj = cache->getOrCreate(domNode);
-    
+
     textMarkerData.axID = obj.get()->axObjectID();
     textMarkerData.node = domNode;
     textMarkerData.offset = deepPos.deprecatedEditingOffset();
-    textMarkerData.affinity = visiblePos.affinity();   
-    
+    textMarkerData.affinity = visiblePos.affinity();
+
     cache->setNodeInUse(domNode);
 }
 
@@ -919,15 +919,15 @@
     const AccessibilityObject* axObject = getOrCreate(const_cast<Node*>(node));
     return axObject && axObject->isTextControl();
 }
-    
+
 bool isNodeAriaVisible(Node* node)
 {
     if (!node)
         return false;
-    
+
     if (!node->isElementNode())
         return false;
-    
+
     return equalIgnoringCase(toElement(node)->getAttribute(aria_hiddenAttr), "false");
 }
 
diff --git a/Source/core/accessibility/AXObjectCache.h b/Source/core/accessibility/AXObjectCache.h
index 5078992..9a13a55 100644
--- a/Source/core/accessibility/AXObjectCache.h
+++ b/Source/core/accessibility/AXObjectCache.h
@@ -82,7 +82,7 @@
 
     // Returns the root object for the entire document.
     AccessibilityObject* rootObject();
-    
+
     // For AX objects with elements that back them.
     AccessibilityObject* getOrCreate(RenderObject*);
     AccessibilityObject* getOrCreate(Widget*);
@@ -90,12 +90,12 @@
 
     // used for objects without backing elements
     AccessibilityObject* getOrCreate(AccessibilityRole);
-    
+
     // will only return the AccessibilityObject if it already exists
     AccessibilityObject* get(RenderObject*);
     AccessibilityObject* get(Widget*);
     AccessibilityObject* get(Node*);
-    
+
     void remove(RenderObject*);
     void remove(Node*);
     void remove(Widget*);
@@ -219,22 +219,22 @@
     HashSet<Node*> m_textMarkerNodes;
     OwnPtr<AXComputedObjectAttributeCache> m_computedObjectAttributeCache;
     static bool gAccessibilityEnabled;
-    
+
     HashSet<AXID> m_idsInUse;
-    
+
     Timer<AXObjectCache> m_notificationPostTimer;
     Vector<pair<RefPtr<AccessibilityObject>, AXNotification> > m_notificationsToPost;
     void notificationPostTimerFired(Timer<AXObjectCache>*);
-    
+
     static AccessibilityObject* focusedImageMapUIElement(HTMLAreaElement*);
-    
+
     AXID getAXID(AccessibilityObject*);
 };
 
 bool nodeHasRole(Node*, const String& role);
 // This will let you know if aria-hidden was explicitly set to false.
 bool isNodeAriaVisible(Node*);
-    
+
 #if !HAVE(ACCESSIBILITY)
 inline AccessibilityObjectInclusion AXComputedObjectAttributeCache::getIgnored(AXID) const { return DefaultBehavior; }
 inline void AXComputedObjectAttributeCache::setIgnored(AXID, AccessibilityObjectInclusion) { }
diff --git a/Source/core/accessibility/AccessibilityARIAGrid.cpp b/Source/core/accessibility/AccessibilityARIAGrid.cpp
index bb26bd0..52d0d0e 100644
--- a/Source/core/accessibility/AccessibilityARIAGrid.cpp
+++ b/Source/core/accessibility/AccessibilityARIAGrid.cpp
@@ -56,17 +56,17 @@
 {
     if (!child || !child->isTableRow() || child->ariaRoleAttribute() != RowRole)
         return false;
-        
+
     AccessibilityTableRow* row = static_cast<AccessibilityTableRow*>(child);
     if (appendedRows.contains(row))
         return false;
-        
+
     // store the maximum number of columns
     unsigned rowCellCount = row->children().size();
     if (rowCellCount > columnCount)
         columnCount = rowCellCount;
-    
-    row->setRowIndex((int)m_rows.size());        
+
+    row->setRowIndex((int)m_rows.size());
     m_rows.append(row);
 
     // Try adding the row if it's not ignoring accessibility,
@@ -79,34 +79,34 @@
     appendedRows.add(row);
     return true;
 }
-    
+
 void AccessibilityARIAGrid::addChildren()
 {
-    ASSERT(!m_haveChildren); 
-    
+    ASSERT(!m_haveChildren);
+
     if (!isAccessibilityTable()) {
         AccessibilityRenderObject::addChildren();
         return;
     }
-    
+
     m_haveChildren = true;
     if (!m_renderer)
         return;
-    
+
     AXObjectCache* axCache = m_renderer->document()->axObjectCache();
-    
+
     // add only rows that are labeled as aria rows
     HashSet<AccessibilityObject*> appendedRows;
     unsigned columnCount = 0;
     for (RefPtr<AccessibilityObject> child = firstChild(); child; child = child->nextSibling()) {
 
         if (!addTableCellChild(child.get(), appendedRows, columnCount)) {
-            
+
             // in case the render tree doesn't match the expected ARIA hierarchy, look at the children
             if (!child->hasChildren())
                 child->addChildren();
 
-            // The children of this non-row will contain all non-ignored elements (recursing to find them). 
+            // The children of this non-row will contain all non-ignored elements (recursing to find them).
             // This allows the table to dive arbitrarily deep to find the rows.
             AccessibilityChildrenVector children = child->children();
             size_t length = children.size();
@@ -114,7 +114,7 @@
                 addTableCellChild(children[i].get(), appendedRows, columnCount);
         }
     }
-    
+
     // make the columns based on the number of columns in the first body
     for (unsigned i = 0; i < columnCount; ++i) {
         AccessibilityTableColumn* column = static_cast<AccessibilityTableColumn*>(axCache->getOrCreate(ColumnRole));
@@ -124,10 +124,10 @@
         if (!column->accessibilityIsIgnored())
             m_children.append(column);
     }
-    
+
     AccessibilityObject* headerContainerObject = headerContainer();
     if (headerContainerObject && !headerContainerObject->accessibilityIsIgnored())
         m_children.append(headerContainerObject);
 }
-    
+
 } // namespace WebCore
diff --git a/Source/core/accessibility/AccessibilityARIAGridCell.cpp b/Source/core/accessibility/AccessibilityARIAGridCell.cpp
index a7f0c98..201aef6 100644
--- a/Source/core/accessibility/AccessibilityARIAGridCell.cpp
+++ b/Source/core/accessibility/AccessibilityARIAGridCell.cpp
@@ -35,7 +35,7 @@
 using namespace std;
 
 namespace WebCore {
-    
+
 AccessibilityARIAGridCell::AccessibilityARIAGridCell(RenderObject* renderer)
     : AccessibilityTableCell(renderer)
 {
@@ -55,7 +55,7 @@
     AccessibilityObject* parent = parentObjectUnignored();
     if (!parent)
         return 0;
-    
+
     if (parent->isAccessibilityTable())
         return parent;
 
@@ -65,10 +65,10 @@
     parent = parent->parentObjectUnignored();
     if (!parent || !parent->isAccessibilityTable())
         return 0;
-    
+
     return parent;
 }
-    
+
 void AccessibilityARIAGridCell::rowIndexRange(pair<unsigned, unsigned>& rowRange)
 {
     AccessibilityObject* parent = parentObjectUnignored();
@@ -116,9 +116,9 @@
             break;
         }
     }
-    
+
     // as far as I can tell, grid cells cannot span columns
-    columnRange.second = 1;    
+    columnRange.second = 1;
 }
-  
+
 } // namespace WebCore
diff --git a/Source/core/accessibility/AccessibilityARIAGridRow.cpp b/Source/core/accessibility/AccessibilityARIAGridRow.cpp
index e126bce..a9f14c8 100644
--- a/Source/core/accessibility/AccessibilityARIAGridRow.cpp
+++ b/Source/core/accessibility/AccessibilityARIAGridRow.cpp
@@ -34,7 +34,7 @@
 using namespace std;
 
 namespace WebCore {
-    
+
 AccessibilityARIAGridRow::AccessibilityARIAGridRow(RenderObject* renderer)
     : AccessibilityTableRow(renderer)
 {
@@ -54,24 +54,24 @@
     AccessibilityObject* parent = parentTable();
     if (!parent)
         return false;
-    
+
     return parent->ariaRoleAttribute() == TreeGridRole;
 }
-    
+
 void AccessibilityARIAGridRow::disclosedRows(AccessibilityChildrenVector& disclosedRows)
 {
-    // The contiguous disclosed rows will be the rows in the table that 
+    // The contiguous disclosed rows will be the rows in the table that
     // have an aria-level of plus 1 from this row.
     AccessibilityObject* parent = parentObjectUnignored();
     if (!parent || !parent->isAccessibilityTable())
         return;
-    
-    // Search for rows that match the correct level. 
+
+    // Search for rows that match the correct level.
     // Only take the subsequent rows from this one that are +1 from this row's level.
     int index = rowIndex();
     if (index < 0)
         return;
-    
+
     unsigned level = hierarchicalLevel();
     AccessibilityChildrenVector& allRows = static_cast<AccessibilityTable*>(parent)->rows();
     int rowCount = allRows.size();
@@ -84,7 +84,7 @@
         disclosedRows.append(row);
     }
 }
-    
+
 AccessibilityObject* AccessibilityARIAGridRow::disclosedByRow() const
 {
     // The row that discloses this one is the row in the table
@@ -92,28 +92,28 @@
     AccessibilityObject* parent = parentObjectUnignored();
     if (!parent || !parent->isAccessibilityTable())
         return 0;
-    
+
     // If the level is 1 or less, than nothing discloses this row.
     unsigned level = hierarchicalLevel();
     if (level <= 1)
         return 0;
-    
+
     // Search for the previous row that matches the correct level.
     int index = rowIndex();
     AccessibilityChildrenVector& allRows = static_cast<AccessibilityTable*>(parent)->rows();
     int rowCount = allRows.size();
     if (index >= rowCount)
         return 0;
-    
+
     for (int k = index - 1; k >= 0; --k) {
         AccessibilityObject* row = allRows[k].get();
         if (row->hierarchicalLevel() == level - 1)
             return row;
     }
-    
+
     return 0;
 }
-    
+
 AccessibilityObject* AccessibilityARIAGridRow::headerObject()
 {
     AccessibilityChildrenVector rowChildren = children();
@@ -123,7 +123,7 @@
         if (cell->ariaRoleAttribute() == RowHeaderRole)
             return cell;
     }
-    
+
     return 0;
 }
 
diff --git a/Source/core/accessibility/AccessibilityImageMapLink.cpp b/Source/core/accessibility/AccessibilityImageMapLink.cpp
index 7408a15..2868199 100644
--- a/Source/core/accessibility/AccessibilityImageMapLink.cpp
+++ b/Source/core/accessibility/AccessibilityImageMapLink.cpp
@@ -33,7 +33,7 @@
 #include "core/accessibility/AccessibilityRenderObject.h"
 
 namespace WebCore {
-    
+
 using namespace HTMLNames;
 
 AccessibilityImageMapLink::AccessibilityImageMapLink()
@@ -44,7 +44,7 @@
 
 AccessibilityImageMapLink::~AccessibilityImageMapLink()
 {
-}    
+}
 
 PassRefPtr<AccessibilityImageMapLink> AccessibilityImageMapLink::create()
 {
@@ -55,30 +55,30 @@
 {
     if (m_parent)
         return m_parent;
-    
+
     if (!m_mapElement.get() || !m_mapElement->renderer())
         return 0;
-    
+
     return m_mapElement->document()->axObjectCache()->getOrCreate(m_mapElement->renderer());
 }
-    
+
 AccessibilityRole AccessibilityImageMapLink::roleValue() const
 {
     if (!m_areaElement)
         return WebCoreLinkRole;
-    
+
     const AtomicString& ariaRole = getAttribute(roleAttr);
     if (!ariaRole.isEmpty())
         return AccessibilityObject::ariaRoleToWebCoreRole(ariaRole);
 
     return WebCoreLinkRole;
 }
-    
+
 Element* AccessibilityImageMapLink::actionElement() const
 {
     return anchorElement();
 }
-    
+
 Element* AccessibilityImageMapLink::anchorElement() const
 {
     return m_areaElement.get();
@@ -88,7 +88,7 @@
 {
     if (!m_areaElement.get())
         return KURL();
-    
+
     return m_areaElement->href();
 }
 
@@ -106,7 +106,7 @@
     if (!summary.isEmpty())
         textOrder.append(AccessibilityText(summary, SummaryText));
 }
-    
+
 String AccessibilityImageMapLink::accessibilityDescription() const
 {
     const AtomicString& ariaLabel = getAttribute(aria_labelAttr);
@@ -118,7 +118,7 @@
 
     return String();
 }
-    
+
 String AccessibilityImageMapLink::title() const
 {
     const AtomicString& title = getAttribute(titleAttr);
@@ -141,11 +141,11 @@
         renderer = static_cast<AccessibilityRenderObject*>(m_parent)->renderer();
     else
         renderer = m_mapElement->renderer();
-    
+
     if (!renderer)
         return LayoutRect();
-    
+
     return m_areaElement->computeRect(renderer);
 }
-    
+
 } // namespace WebCore
diff --git a/Source/core/accessibility/AccessibilityList.cpp b/Source/core/accessibility/AccessibilityList.cpp
index 6c37152..5fb32b5 100644
--- a/Source/core/accessibility/AccessibilityList.cpp
+++ b/Source/core/accessibility/AccessibilityList.cpp
@@ -34,7 +34,7 @@
 using namespace std;
 
 namespace WebCore {
-    
+
 using namespace HTMLNames;
 
 AccessibilityList::AccessibilityList(RenderObject* renderer)
@@ -55,12 +55,12 @@
 {
     return accessibilityIsIgnoredByDefault();
 }
-    
+
 bool AccessibilityList::isUnorderedList() const
 {
     if (!m_renderer)
         return false;
-    
+
     Node* node = m_renderer->node();
 
     // The ARIA spec says the "list" role is supposed to mimic a UL or OL tag.
@@ -68,7 +68,7 @@
     // On the Mac, there's no distinction to the client.
     if (ariaRoleAttribute() == ListRole)
         return true;
-    
+
     return node && node->hasTagName(ulTag);
 }
 
@@ -82,17 +82,17 @@
         return true;
 
     Node* node = m_renderer->node();
-    return node && node->hasTagName(olTag);    
+    return node && node->hasTagName(olTag);
 }
 
 bool AccessibilityList::isDescriptionList() const
 {
     if (!m_renderer)
         return false;
-    
+
     Node* node = m_renderer->node();
-    return node && node->hasTagName(dlTag);    
+    return node && node->hasTagName(dlTag);
 }
-    
-    
+
+
 } // namespace WebCore
diff --git a/Source/core/accessibility/AccessibilityListBox.cpp b/Source/core/accessibility/AccessibilityListBox.cpp
index 04a4692..b3d4a25 100644
--- a/Source/core/accessibility/AccessibilityListBox.cpp
+++ b/Source/core/accessibility/AccessibilityListBox.cpp
@@ -48,18 +48,18 @@
 AccessibilityListBox::~AccessibilityListBox()
 {
 }
-    
+
 PassRefPtr<AccessibilityListBox> AccessibilityListBox::create(RenderObject* renderer)
 {
     return adoptRef(new AccessibilityListBox(renderer));
 }
-    
+
 bool AccessibilityListBox::canSetSelectedChildrenAttribute() const
 {
     Node* selectNode = m_renderer->node();
     if (!selectNode)
         return false;
-    
+
     return !toHTMLSelectElement(selectNode)->isDisabledFormControl();
 }
 
@@ -68,9 +68,9 @@
     Node* selectNode = m_renderer->node();
     if (!selectNode)
         return;
-    
+
     m_haveChildren = true;
-    
+
     const Vector<HTMLElement*>& listItems = toHTMLSelectElement(selectNode)->listItems();
     unsigned length = listItems.size();
     for (unsigned i = 0; i < length; i++) {
@@ -86,11 +86,11 @@
 {
     if (!canSetSelectedChildrenAttribute())
         return;
-    
+
     Node* selectNode = m_renderer->node();
     if (!selectNode)
         return;
-    
+
     // disable any selected options
     unsigned length = m_children.size();
     for (unsigned i = 0; i < length; i++) {
@@ -98,29 +98,29 @@
         if (listBoxOption->isSelected())
             listBoxOption->setSelected(false);
     }
-    
+
     length = children.size();
     for (unsigned i = 0; i < length; i++) {
         AccessibilityObject* obj = children[i].get();
         if (obj->roleValue() != ListBoxOptionRole)
             continue;
-                
+
         static_cast<AccessibilityListBoxOption*>(obj)->setSelected(true);
     }
 }
-    
+
 void AccessibilityListBox::selectedChildren(AccessibilityChildrenVector& result)
 {
     ASSERT(result.isEmpty());
 
     if (!hasChildren())
         addChildren();
-        
+
     unsigned length = m_children.size();
     for (unsigned i = 0; i < length; i++) {
         if (static_cast<AccessibilityListBoxOption*>(m_children[i].get())->isSelected())
             result.append(m_children[i]);
-    }    
+    }
 }
 
 AccessibilityObject* AccessibilityListBox::listBoxOptionAccessibilityObject(HTMLElement* element) const
@@ -128,26 +128,26 @@
     // skip hr elements
     if (!element || element->hasTagName(hrTag))
         return 0;
-    
+
     AccessibilityObject* listBoxObject = m_renderer->document()->axObjectCache()->getOrCreate(ListBoxOptionRole);
     static_cast<AccessibilityListBoxOption*>(listBoxObject)->setHTMLElement(element);
-    
+
     return listBoxObject;
 }
-    
+
 AccessibilityObject* AccessibilityListBox::elementAccessibilityHitTest(const IntPoint& point) const
 {
     // the internal HTMLSelectElement methods for returning a listbox option at a point
     // ignore optgroup elements.
     if (!m_renderer)
         return 0;
-    
+
     Node* node = m_renderer->node();
     if (!node)
         return 0;
-    
+
     LayoutRect parentRect = elementRect();
-    
+
     AccessibilityObject* listBoxOption = 0;
     unsigned length = m_children.size();
     for (unsigned i = 0; i < length; i++) {
@@ -159,10 +159,10 @@
             break;
         }
     }
-    
+
     if (listBoxOption && !listBoxOption->accessibilityIsIgnored())
         return listBoxOption;
-    
+
     return axObjectCache()->getOrCreate(m_renderer);
 }
 
diff --git a/Source/core/accessibility/AccessibilityListBoxOption.cpp b/Source/core/accessibility/AccessibilityListBoxOption.cpp
index c847b4e..571bf76 100644
--- a/Source/core/accessibility/AccessibilityListBoxOption.cpp
+++ b/Source/core/accessibility/AccessibilityListBoxOption.cpp
@@ -40,7 +40,7 @@
 namespace WebCore {
 
 using namespace HTMLNames;
-    
+
 AccessibilityListBoxOption::AccessibilityListBoxOption()
     : m_optionElement(0)
 {
@@ -48,13 +48,13 @@
 
 AccessibilityListBoxOption::~AccessibilityListBoxOption()
 {
-}    
-    
+}
+
 PassRefPtr<AccessibilityListBoxOption> AccessibilityListBoxOption::create()
 {
     return adoptRef(new AccessibilityListBoxOption());
 }
-    
+
 bool AccessibilityListBoxOption::isEnabled() const
 {
     if (!m_optionElement)
@@ -68,10 +68,10 @@
 
     if (m_optionElement->hasAttribute(disabledAttr))
         return false;
-    
+
     return true;
 }
-    
+
 bool AccessibilityListBoxOption::isSelected() const
 {
     if (!m_optionElement)
@@ -79,7 +79,7 @@
 
     if (!m_optionElement->hasTagName(optionTag))
         return false;
-    
+
     return toHTMLOptionElement(m_optionElement)->selected();
 }
 
@@ -97,20 +97,20 @@
     LayoutRect rect;
     if (!m_optionElement)
         return rect;
-    
+
     HTMLSelectElement* listBoxParentNode = listBoxOptionParentNode();
     if (!listBoxParentNode)
         return rect;
-    
+
     RenderObject* listBoxRenderer = listBoxParentNode->renderer();
     if (!listBoxRenderer)
         return rect;
-    
+
     LayoutRect parentRect = listBoxRenderer->document()->axObjectCache()->getOrCreate(listBoxRenderer)->elementRect();
     int index = listBoxOptionIndex();
     if (index != -1)
         rect = toRenderListBox(listBoxRenderer)->itemBoundingBoxRect(parentRect.location(), index);
-    
+
     return rect;
 }
 
@@ -121,37 +121,37 @@
 
     if (accessibilityIsIgnoredByDefault())
         return true;
-    
+
     return parentObject()->accessibilityIsIgnored();
 }
-    
+
 bool AccessibilityListBoxOption::canSetSelectedAttribute() const
 {
     if (!m_optionElement)
         return false;
-    
+
     if (!m_optionElement->hasTagName(optionTag))
         return false;
-    
+
     if (m_optionElement->isDisabledFormControl())
         return false;
-    
+
     HTMLSelectElement* selectElement = listBoxOptionParentNode();
     if (selectElement && selectElement->isDisabledFormControl())
         return false;
-    
+
     return true;
 }
-    
+
 String AccessibilityListBoxOption::stringValue() const
 {
     if (!m_optionElement)
         return String();
-    
+
     const AtomicString& ariaLabel = getAttribute(aria_labelAttr);
     if (!ariaLabel.isNull())
         return ariaLabel;
-    
+
     if (m_optionElement->hasTagName(optionTag))
         return toHTMLOptionElement(m_optionElement)->text();
 
@@ -171,7 +171,7 @@
     HTMLSelectElement* parentNode = listBoxOptionParentNode();
     if (!parentNode)
         return 0;
-    
+
     return m_optionElement->document()->axObjectCache()->getOrCreate(parentNode);
 }
 
@@ -180,14 +180,14 @@
     HTMLSelectElement* selectElement = listBoxOptionParentNode();
     if (!selectElement)
         return;
-    
+
     if (!canSetSelectedAttribute())
         return;
-    
+
     bool isOptionSelected = isSelected();
     if ((isOptionSelected && selected) || (!isOptionSelected && !selected))
         return;
-    
+
     // Convert from the entire list index to the option index.
     int optionIndex = selectElement->listToOptionIndex(listBoxOptionIndex());
     selectElement->accessKeySetSelectedIndex(optionIndex);
@@ -197,7 +197,7 @@
 {
     if (!m_optionElement)
         return 0;
-    
+
     if (m_optionElement->hasTagName(optionTag))
         return toHTMLOptionElement(m_optionElement)->ownerSelectElement();
 
@@ -211,11 +211,11 @@
 {
     if (!m_optionElement)
         return -1;
-    
+
     HTMLSelectElement* selectElement = listBoxOptionParentNode();
-    if (!selectElement) 
+    if (!selectElement)
         return -1;
-    
+
     const Vector<HTMLElement*>& listItems = selectElement->listItems();
     unsigned length = listItems.size();
     for (unsigned i = 0; i < length; i++)
diff --git a/Source/core/accessibility/AccessibilityMediaControls.cpp b/Source/core/accessibility/AccessibilityMediaControls.cpp
index 793b1e7..db790ee 100644
--- a/Source/core/accessibility/AccessibilityMediaControls.cpp
+++ b/Source/core/accessibility/AccessibilityMediaControls.cpp
@@ -126,7 +126,7 @@
     if (!helptext.isEmpty())
         textOrder.append(AccessibilityText(helptext, HelpText));
 }
-    
+
 
 String AccessibilityMediaControl::title() const
 {
@@ -279,7 +279,7 @@
 
     if (!m_renderer->style()->width().value())
         return true;
-    
+
     return accessibilityIsIgnoredByDefault();
 }
 
diff --git a/Source/core/accessibility/AccessibilityMenuList.cpp b/Source/core/accessibility/AccessibilityMenuList.cpp
index db183f3..b84ab0a 100644
--- a/Source/core/accessibility/AccessibilityMenuList.cpp
+++ b/Source/core/accessibility/AccessibilityMenuList.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/accessibility/AccessibilityMenuList.h b/Source/core/accessibility/AccessibilityMenuList.h
index 9eb04e4..eba07f8 100644
--- a/Source/core/accessibility/AccessibilityMenuList.h
+++ b/Source/core/accessibility/AccessibilityMenuList.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef AccessibilityMenuList_h
diff --git a/Source/core/accessibility/AccessibilityMenuListOption.cpp b/Source/core/accessibility/AccessibilityMenuListOption.cpp
index 14821b3..45e9ca8 100644
--- a/Source/core/accessibility/AccessibilityMenuListOption.cpp
+++ b/Source/core/accessibility/AccessibilityMenuListOption.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -46,7 +46,7 @@
 {
     return m_element.get();
 }
-    
+
 bool AccessibilityMenuListOption::isEnabled() const
 {
     // isDisabledFormControl() returns true if the parent <select> element is disabled,
@@ -58,7 +58,7 @@
 {
     if (!m_parent)
         return false;
-    
+
     // In a single-option select with the popup collapsed, only the selected
     // item is considered visible.
     return !m_parent->isOffScreen() || isSelected();
diff --git a/Source/core/accessibility/AccessibilityMenuListOption.h b/Source/core/accessibility/AccessibilityMenuListOption.h
index 11b3038..91ca5ef 100644
--- a/Source/core/accessibility/AccessibilityMenuListOption.h
+++ b/Source/core/accessibility/AccessibilityMenuListOption.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef AccessibilityMenuListOption_h
diff --git a/Source/core/accessibility/AccessibilityMenuListPopup.cpp b/Source/core/accessibility/AccessibilityMenuListPopup.cpp
index 5fe2624..82079e3 100644
--- a/Source/core/accessibility/AccessibilityMenuListPopup.cpp
+++ b/Source/core/accessibility/AccessibilityMenuListPopup.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -47,7 +47,7 @@
 {
     if (!m_parent)
         return true;
-    
+
     return m_parent->isCollapsed();
 }
 
@@ -55,7 +55,7 @@
 {
     if (!m_parent)
         return false;
-    
+
     return m_parent->isEnabled();
 }
 
@@ -82,7 +82,7 @@
 {
     if (!m_parent)
         return false;
-    
+
     m_parent->press();
     return true;
 }
@@ -91,7 +91,7 @@
 {
     if (!m_parent)
         return;
-    
+
     Node* selectNode = m_parent->node();
     if (!selectNode)
         return;
@@ -119,7 +119,7 @@
             cache->remove(child->axObjectID());
         }
     }
-    
+
     m_children.clear();
     m_haveChildren = false;
     addChildren();
diff --git a/Source/core/accessibility/AccessibilityMockObject.cpp b/Source/core/accessibility/AccessibilityMockObject.cpp
index b4b42d0..f826e52 100644
--- a/Source/core/accessibility/AccessibilityMockObject.cpp
+++ b/Source/core/accessibility/AccessibilityMockObject.cpp
@@ -27,7 +27,7 @@
 #include "core/accessibility/AccessibilityMockObject.h"
 
 namespace WebCore {
-    
+
 AccessibilityMockObject::AccessibilityMockObject()
     : m_parent(0)
 {
@@ -36,10 +36,10 @@
 AccessibilityMockObject::~AccessibilityMockObject()
 {
 }
-    
+
 bool AccessibilityMockObject::computeAccessibilityIsIgnored() const
 {
     return accessibilityIsIgnoredByDefault();
 }
-    
+
 }
diff --git a/Source/core/accessibility/AccessibilityProgressIndicator.cpp b/Source/core/accessibility/AccessibilityProgressIndicator.cpp
index a2740b5..96ce092 100644
--- a/Source/core/accessibility/AccessibilityProgressIndicator.cpp
+++ b/Source/core/accessibility/AccessibilityProgressIndicator.cpp
@@ -26,7 +26,7 @@
 #include "core/rendering/RenderProgress.h"
 
 namespace WebCore {
-    
+
 using namespace HTMLNames;
 
 AccessibilityProgressIndicator::AccessibilityProgressIndicator(RenderProgress* renderer)
@@ -43,7 +43,7 @@
 {
     return accessibilityIsIgnoredByDefault();
 }
-    
+
 float AccessibilityProgressIndicator::valueForRange() const
 {
     if (element()->position() >= 0)
diff --git a/Source/core/accessibility/AccessibilitySVGRoot.cpp b/Source/core/accessibility/AccessibilitySVGRoot.cpp
index 088017a..4d81120 100644
--- a/Source/core/accessibility/AccessibilitySVGRoot.cpp
+++ b/Source/core/accessibility/AccessibilitySVGRoot.cpp
@@ -46,16 +46,16 @@
 {
     return adoptRef(new AccessibilitySVGRoot(renderer));
 }
-    
+
 AccessibilityObject* AccessibilitySVGRoot::parentObject() const
 {
     // If a parent was set because this is a remote SVG resource, use that
     // but otherwise, we should rely on the standard render tree for the parent.
     if (m_parent)
         return m_parent;
-    
+
     return AccessibilityRenderObject::parentObject();
 }
 
-    
+
 } // namespace WebCore
diff --git a/Source/core/accessibility/AccessibilityScrollView.cpp b/Source/core/accessibility/AccessibilityScrollView.cpp
index 9a4acc0..f9ef675 100644
--- a/Source/core/accessibility/AccessibilityScrollView.cpp
+++ b/Source/core/accessibility/AccessibilityScrollView.cpp
@@ -32,7 +32,7 @@
 #include "core/page/FrameView.h"
 
 namespace WebCore {
-    
+
 AccessibilityScrollView::AccessibilityScrollView(ScrollView* view)
     : m_scrollView(view)
     , m_childrenDirty(false)
@@ -54,18 +54,18 @@
 {
     return adoptRef(new AccessibilityScrollView(view));
 }
-    
+
 AccessibilityObject* AccessibilityScrollView::scrollBar(AccessibilityOrientation orientation)
 {
     updateScrollbars();
-    
+
     switch (orientation) {
     case AccessibilityOrientationVertical:
         return m_verticalScrollbar ? m_verticalScrollbar.get() : 0;
     case AccessibilityOrientationHorizontal:
         return m_horizontalScrollbar ? m_horizontalScrollbar.get() : 0;
     }
-    
+
     return 0;
 }
 
@@ -81,7 +81,7 @@
 {
     return m_scrollView;
 }
-    
+
 void AccessibilityScrollView::updateChildrenIfNecessary()
 {
     if (m_childrenDirty)
@@ -89,7 +89,7 @@
 
     if (!m_haveChildren)
         addChildren();
-    
+
     updateScrollbars();
 }
 
@@ -112,7 +112,7 @@
         m_verticalScrollbar = 0;
     }
 }
-    
+
 void AccessibilityScrollView::removeChildScrollbar(AccessibilityObject* scrollbar)
 {
     size_t pos = m_children.find(scrollbar);
@@ -121,18 +121,18 @@
         m_children.remove(pos);
     }
 }
-    
+
 AccessibilityScrollbar* AccessibilityScrollView::addChildScrollbar(Scrollbar* scrollbar)
 {
     if (!scrollbar)
         return 0;
-    
+
     AccessibilityScrollbar* scrollBarObject = static_cast<AccessibilityScrollbar*>(axObjectCache()->getOrCreate(scrollbar));
     scrollBarObject->setParent(this);
     m_children.append(scrollBarObject);
     return scrollBarObject;
 }
-        
+
 void AccessibilityScrollView::clearChildren()
 {
     AccessibilityObject::clearChildren();
@@ -145,7 +145,7 @@
     AccessibilityObject* webArea = webAreaObject();
     if (!webArea)
         return true;
-    
+
     return webArea->accessibilityIsIgnored();
 }
 
@@ -153,11 +153,11 @@
 {
     ASSERT(!m_haveChildren);
     m_haveChildren = true;
-    
+
     AccessibilityObject* webArea = webAreaObject();
     if (webArea && !webArea->accessibilityIsIgnored())
         m_children.append(webArea);
-    
+
     updateScrollbars();
 }
 
@@ -165,7 +165,7 @@
 {
     if (!m_scrollView || !m_scrollView->isFrameView())
         return 0;
-    
+
     Document* doc = toFrameView(m_scrollView)->frame()->document();
     if (!doc || !doc->renderer())
         return 0;
@@ -178,12 +178,12 @@
     AccessibilityObject* webArea = webAreaObject();
     if (!webArea)
         return 0;
-    
+
     if (m_horizontalScrollbar && m_horizontalScrollbar->elementRect().contains(point))
         return m_horizontalScrollbar.get();
     if (m_verticalScrollbar && m_verticalScrollbar->elementRect().contains(point))
         return m_verticalScrollbar.get();
-    
+
     return webArea->accessibilityHitTest(point);
 }
 
@@ -199,31 +199,31 @@
 {
     if (!m_scrollView || !m_scrollView->isFrameView())
         return 0;
-    
+
     return toFrameView(m_scrollView);
-}    
+}
 
 AccessibilityObject* AccessibilityScrollView::parentObject() const
 {
     if (!m_scrollView || !m_scrollView->isFrameView())
         return 0;
-    
+
     HTMLFrameOwnerElement* owner = toFrameView(m_scrollView)->frame()->ownerElement();
     if (owner && owner->renderer())
         return axObjectCache()->getOrCreate(owner);
 
     return 0;
 }
-    
+
 AccessibilityObject* AccessibilityScrollView::parentObjectIfExists() const
 {
     if (!m_scrollView || !m_scrollView->isFrameView())
         return 0;
-    
+
     HTMLFrameOwnerElement* owner = toFrameView(m_scrollView)->frame()->ownerElement();
     if (owner && owner->renderer())
         return axObjectCache()->get(owner);
-    
+
     return 0;
 }
 
@@ -238,4 +238,4 @@
         m_scrollView->setScrollPosition(point);
 }
 
-} // namespace WebCore    
+} // namespace WebCore
diff --git a/Source/core/accessibility/AccessibilityScrollbar.cpp b/Source/core/accessibility/AccessibilityScrollbar.cpp
index 062236d..b48f386 100644
--- a/Source/core/accessibility/AccessibilityScrollbar.cpp
+++ b/Source/core/accessibility/AccessibilityScrollbar.cpp
@@ -43,15 +43,15 @@
 {
     return adoptRef(new AccessibilityScrollbar(scrollbar));
 }
-    
+
 LayoutRect AccessibilityScrollbar::elementRect() const
 {
     if (!m_scrollbar)
         return LayoutRect();
-    
+
     return m_scrollbar->frameRect();
 }
-    
+
 Document* AccessibilityScrollbar::document() const
 {
     AccessibilityObject* parent = parentObject();
@@ -79,7 +79,7 @@
         return false;
     return m_scrollbar->enabled();
 }
-    
+
 float AccessibilityScrollbar::valueForRange() const
 {
     if (!m_scrollbar)
@@ -92,12 +92,12 @@
 {
     if (!m_scrollbar)
         return;
-    
+
     if (!m_scrollbar->scrollableArea())
         return;
 
     float newValue = value * m_scrollbar->maximum();
     m_scrollbar->scrollableArea()->scrollToOffsetWithoutAnimation(m_scrollbar->orientation(), newValue);
 }
-    
+
 } // namespace WebCore
diff --git a/Source/core/accessibility/AccessibilitySlider.cpp b/Source/core/accessibility/AccessibilitySlider.cpp
index 51a995a..e5129b0 100644
--- a/Source/core/accessibility/AccessibilitySlider.cpp
+++ b/Source/core/accessibility/AccessibilitySlider.cpp
@@ -34,7 +34,7 @@
 #include "core/html/shadow/SliderThumbElement.h"
 
 namespace WebCore {
-    
+
 using namespace HTMLNames;
 
 AccessibilitySlider::AccessibilitySlider(RenderObject* renderer)
@@ -52,11 +52,11 @@
     // Default to horizontal in the unknown case.
     if (!m_renderer)
         return AccessibilityOrientationHorizontal;
-    
+
     RenderStyle* style = m_renderer->style();
     if (!style)
         return AccessibilityOrientationHorizontal;
-    
+
     ControlPart styleAppearance = style->appearance();
     switch (styleAppearance) {
     case SliderThumbHorizontalPart:
@@ -64,21 +64,21 @@
     case MediaSliderPart:
     case MediaFullScreenVolumeSliderPart:
         return AccessibilityOrientationHorizontal;
-    
-    case SliderThumbVerticalPart: 
+
+    case SliderThumbVerticalPart:
     case SliderVerticalPart:
     case MediaVolumeSliderPart:
         return AccessibilityOrientationVertical;
-        
+
     default:
         return AccessibilityOrientationHorizontal;
     }
 }
-    
+
 void AccessibilitySlider::addChildren()
 {
-    ASSERT(!m_haveChildren); 
-    
+    ASSERT(!m_haveChildren);
+
     m_haveChildren = true;
 
     AXObjectCache* cache = m_renderer->document()->axObjectCache();
@@ -98,7 +98,7 @@
 {
     return element()->getAttribute(attribute);
 }
-    
+
 AccessibilityObject* AccessibilitySlider::elementAccessibilityHitTest(const IntPoint& point) const
 {
     if (m_children.size()) {
@@ -106,7 +106,7 @@
         if (m_children[0]->elementRect().contains(point))
             return m_children[0].get();
     }
-    
+
     return axObjectCache()->getOrCreate(m_renderer);
 }
 
@@ -128,7 +128,7 @@
 void AccessibilitySlider::setValue(const String& value)
 {
     HTMLInputElement* input = element();
-    
+
     if (input->value() == value)
         return;
 
@@ -152,12 +152,12 @@
 {
     return adoptRef(new AccessibilitySliderThumb());
 }
-    
+
 LayoutRect AccessibilitySliderThumb::elementRect() const
 {
     if (!m_parent)
         return LayoutRect();
-    
+
     RenderObject* sliderRenderer = m_parent->renderer();
     if (!sliderRenderer || !sliderRenderer->isSlider())
         return LayoutRect();
diff --git a/Source/core/accessibility/AccessibilitySpinButton.cpp b/Source/core/accessibility/AccessibilitySpinButton.cpp
index 7b42e34..427b7a1 100644
--- a/Source/core/accessibility/AccessibilitySpinButton.cpp
+++ b/Source/core/accessibility/AccessibilitySpinButton.cpp
@@ -35,7 +35,7 @@
 {
     return adoptRef(new AccessibilitySpinButton);
 }
-    
+
 AccessibilitySpinButton::AccessibilitySpinButton()
     : m_spinButtonElement(0)
 {
@@ -44,14 +44,14 @@
 AccessibilitySpinButton::~AccessibilitySpinButton()
 {
 }
-    
+
 LayoutRect AccessibilitySpinButton::elementRect() const
 {
     ASSERT(m_spinButtonElement);
-    
+
     if (!m_spinButtonElement || !m_spinButtonElement->renderer())
         return LayoutRect();
-    
+
     Vector<FloatQuad> quads;
     m_spinButtonElement->renderer()->absoluteFocusRingQuads(quads);
 
@@ -61,7 +61,7 @@
 void AccessibilitySpinButton::addChildren()
 {
     m_haveChildren = true;
-    
+
     AccessibilitySpinButtonPart* incrementor = static_cast<AccessibilitySpinButtonPart*>(axObjectCache()->getOrCreate(SpinButtonPartRole));
     incrementor->setIsIncrementor(true);
     incrementor->setParent(this);
@@ -72,23 +72,23 @@
     decrementor->setParent(this);
     m_children.append(decrementor);
 }
-    
+
 void AccessibilitySpinButton::step(int amount)
 {
     ASSERT(m_spinButtonElement);
     if (!m_spinButtonElement)
         return;
-    
+
     m_spinButtonElement->step(amount);
 }
 
-// AccessibilitySpinButtonPart 
+// AccessibilitySpinButtonPart
 
 AccessibilitySpinButtonPart::AccessibilitySpinButtonPart()
     : m_isIncrementor(false)
 {
 }
-    
+
 PassRefPtr<AccessibilitySpinButtonPart> AccessibilitySpinButtonPart::create()
 {
     return adoptRef(new AccessibilitySpinButtonPart);
@@ -98,15 +98,15 @@
 {
     // FIXME: This logic should exist in the render tree or elsewhere, but there is no
     // relationship that exists that can be queried.
-    
+
     LayoutRect parentRect = parentObject()->elementRect();
     if (m_isIncrementor)
         parentRect.setHeight(parentRect.height() / 2);
     else {
-        parentRect.setY(parentRect.y() + parentRect.height() / 2);        
-        parentRect.setHeight(parentRect.height() / 2);        
+        parentRect.setY(parentRect.y() + parentRect.height() / 2);
+        parentRect.setHeight(parentRect.height() / 2);
     }
-        
+
     return parentRect;
 }
 
@@ -114,13 +114,13 @@
 {
     if (!m_parent || !m_parent->isSpinButton())
         return false;
-    
+
     AccessibilitySpinButton* spinButton = toAccessibilitySpinButton(parentObject());
     if (m_isIncrementor)
         spinButton->step(1);
     else
         spinButton->step(-1);
-    
+
     return true;
 }
 
diff --git a/Source/core/accessibility/AccessibilityTable.cpp b/Source/core/accessibility/AccessibilityTable.cpp
index d49bb35..98b3a62 100644
--- a/Source/core/accessibility/AccessibilityTable.cpp
+++ b/Source/core/accessibility/AccessibilityTable.cpp
@@ -68,7 +68,7 @@
 {
     if (!m_renderer)
         return false;
-    
+
     AccessibilityRole ariaRole = ariaRoleAttribute();
     if (ariaRole != UnknownRole)
         return true;
@@ -80,7 +80,7 @@
 {
     if (!m_renderer)
         return false;
-    
+
     return m_isAccessibilityTable;
 }
 
@@ -116,24 +116,24 @@
 
     // if someone used "rules" attribute than the table should appear
     if (!tableElement->rules().isEmpty())
-        return true;    
+        return true;
 
     // if there's a colgroup or col element, it's probably a data table.
     for (Node* child = tableElement->firstChild(); child; child = child->nextSibling()) {
         if (child->hasTagName(colTag) || child->hasTagName(colgroupTag))
             return true;
     }
-    
+
     // go through the cell's and check for tell-tale signs of "data" table status
     // cells have borders, or use attributes like headers, abbr, scope or axis
     table->recalcSectionsIfNeeded();
     RenderTableSection* firstBody = table->firstBody();
     if (!firstBody)
         return false;
-    
+
     int numCols = firstBody->numColumns();
     int numRows = firstBody->numRows();
-    
+
     // If there's only one cell, it's not a good AXTable candidate.
     if (numRows == 1 && numCols == 1)
         return false;
@@ -141,15 +141,15 @@
     // If there are at least 20 rows, we'll call it a data table.
     if (numRows >= 20)
         return true;
-    
+
     // Store the background color of the table to check against cell's background colors.
     RenderStyle* tableStyle = table->style();
     if (!tableStyle)
         return false;
     StyleColor tableBGColor = tableStyle->visitedDependentColor(CSSPropertyBackgroundColor);
-    
+
     // check enough of the cells to find if the table matches our criteria
-    // Criteria: 
+    // Criteria:
     //   1) must have at least one valid cell (and)
     //   2) at least half of cells have borders (or)
     //   3) at least half of cells have different bg colors than the table, and there is cell spacing
@@ -160,29 +160,29 @@
     unsigned cellsWithBottomBorder = 0;
     unsigned cellsWithLeftBorder = 0;
     unsigned cellsWithRightBorder = 0;
-    
+
     StyleColor alternatingRowColors[5];
     int alternatingRowColorCount = 0;
-    
+
     int headersInFirstColumnCount = 0;
     for (int row = 0; row < numRows; ++row) {
-    
+
         int headersInFirstRowCount = 0;
-        for (int col = 0; col < numCols; ++col) {    
+        for (int col = 0; col < numCols; ++col) {
             RenderTableCell* cell = firstBody->primaryCellAt(row, col);
             if (!cell)
                 continue;
             Node* cellNode = cell->node();
             if (!cellNode)
                 continue;
-            
+
             if (cell->width() < 1 || cell->height() < 1)
                 continue;
-            
+
             validCellCount++;
-            
+
             HTMLTableCellElement* cellElement = static_cast<HTMLTableCellElement*>(cellNode);
-            
+
             bool isTHCell = cellElement->hasTagName(thTag);
             // If the first row is comprised of all <th> tags, assume it is a data table.
             if (!row && isTHCell)
@@ -191,12 +191,12 @@
             // If the first column is comprised of all <th> tags, assume it is a data table.
             if (!col && isTHCell)
                 headersInFirstColumnCount++;
-            
+
             // in this case, the developer explicitly assigned a "data" table attribute
             if (!cellElement->headers().isEmpty() || !cellElement->abbr().isEmpty()
                 || !cellElement->axis().isEmpty() || !cellElement->scope().isEmpty())
                 return true;
-            
+
             RenderStyle* renderStyle = cell->style();
             if (!renderStyle)
                 continue;
@@ -220,18 +220,18 @@
                 cellsWithLeftBorder++;
             if (cell->borderRight() > 0)
                 cellsWithRightBorder++;
-            
+
             // If the cell has a different color from the table and there is cell spacing,
             // then it is probably a data table cell (spacing and colors take the place of borders).
             StyleColor cellColor = renderStyle->visitedDependentColor(CSSPropertyBackgroundColor);
             if (table->hBorderSpacing() > 0 && table->vBorderSpacing() > 0
                 && tableBGColor != cellColor && cellColor.alpha() != 1)
                 backgroundDifferenceCellCount++;
-            
+
             // If we've found 10 "good" cells, we don't need to keep searching.
             if (borderedCellCount >= 10 || backgroundDifferenceCellCount >= 10)
                 return true;
-            
+
             // For the first 5 rows, cache the background color so we can check if this table has zebra-striped rows.
             if (row < 5 && row == alternatingRowColorCount) {
                 RenderObject* renderRow = cell->parent();
@@ -245,18 +245,18 @@
                 alternatingRowColorCount++;
             }
         }
-        
+
         if (!row && headersInFirstRowCount == numCols && numCols > 1)
             return true;
     }
 
     if (headersInFirstColumnCount == numRows && numRows > 1)
         return true;
-    
+
     // if there is less than two valid cells, it's not a data table
     if (validCellCount <= 1)
         return false;
-    
+
     // half of the cells had borders, it's a data table
     unsigned neededCellCount = validCellCount / 2;
     if (borderedCellCount >= neededCellCount
@@ -265,7 +265,7 @@
         || cellsWithLeftBorder >= neededCellCount
         || cellsWithRightBorder >= neededCellCount)
         return true;
-    
+
     // half had different background colors, it's a data table
     if (backgroundDifferenceCellCount >= neededCellCount)
         return true;
@@ -283,10 +283,10 @@
         }
         return true;
     }
-    
+
     return false;
 }
-    
+
 bool AccessibilityTable::isTableExposableThroughAccessibility() const
 {
     // The following is a heuristic used to determine if a
@@ -323,13 +323,13 @@
         AccessibilityRenderObject::addChildren();
         return;
     }
-    
-    ASSERT(!m_haveChildren); 
-    
+
+    ASSERT(!m_haveChildren);
+
     m_haveChildren = true;
     if (!m_renderer || !m_renderer->isTable())
         return;
-    
+
     RenderTable* table = toRenderTable(m_renderer);
     AXObjectCache* axCache = m_renderer->document()->axObjectCache();
 
@@ -338,38 +338,38 @@
     RenderTableSection* tableSection = table->topSection();
     if (!tableSection)
         return;
-    
+
     RenderTableSection* initialTableSection = tableSection;
     while (tableSection) {
-        
+
         HashSet<AccessibilityObject*> appendedRows;
         unsigned numRows = tableSection->numRows();
         for (unsigned rowIndex = 0; rowIndex < numRows; ++rowIndex) {
-            
+
             RenderTableRow* renderRow = tableSection->rowRendererAt(rowIndex);
             if (!renderRow)
                 continue;
-            
+
             AccessibilityObject* rowObject = axCache->getOrCreate(renderRow);
             if (!rowObject->isTableRow())
                 continue;
-            
+
             AccessibilityTableRow* row = static_cast<AccessibilityTableRow*>(rowObject);
             // We need to check every cell for a new row, because cell spans
             // can cause us to miss rows if we just check the first column.
             if (appendedRows.contains(row))
                 continue;
-            
+
             row->setRowIndex(static_cast<int>(m_rows.size()));
             m_rows.append(row);
             if (!row->accessibilityIsIgnored())
                 m_children.append(row);
             appendedRows.add(row);
         }
-    
+
         tableSection = table->sectionBelow(tableSection, SkipEmptySections);
     }
-    
+
     // make the columns based on the number of columns in the first body
     unsigned length = initialTableSection->numColumns();
     for (unsigned i = 0; i < length; ++i) {
@@ -380,17 +380,17 @@
         if (!column->accessibilityIsIgnored())
             m_children.append(column);
     }
-    
+
     AccessibilityObject* headerContainerObject = headerContainer();
     if (headerContainerObject && !headerContainerObject->accessibilityIsIgnored())
         m_children.append(headerContainerObject);
 }
-    
+
 AccessibilityObject* AccessibilityTable::headerContainer()
 {
     if (m_headerContainer)
         return m_headerContainer.get();
-    
+
     AccessibilityMockObject* tableHeader = toAccessibilityMockObject(axObjectCache()->getOrCreate(TableHeaderContainerRole));
     tableHeader->setParent(this);
 
@@ -401,24 +401,24 @@
 AccessibilityObject::AccessibilityChildrenVector& AccessibilityTable::columns()
 {
     updateChildrenIfNecessary();
-        
+
     return m_columns;
 }
 
 AccessibilityObject::AccessibilityChildrenVector& AccessibilityTable::rows()
 {
     updateChildrenIfNecessary();
-    
+
     return m_rows;
 }
-    
+
 void AccessibilityTable::columnHeaders(AccessibilityChildrenVector& headers)
 {
     if (!m_renderer)
         return;
-    
+
     updateChildrenIfNecessary();
-    
+
     unsigned colCount = m_columns.size();
     for (unsigned k = 0; k < colCount; ++k) {
         AccessibilityObject* header = static_cast<AccessibilityTableColumn*>(m_columns[k].get())->headerObject();
@@ -427,32 +427,32 @@
         headers.append(header);
     }
 }
-    
+
 void AccessibilityTable::cells(AccessibilityObject::AccessibilityChildrenVector& cells)
 {
     if (!m_renderer)
         return;
-    
+
     updateChildrenIfNecessary();
-    
+
     int numRows = m_rows.size();
     for (int row = 0; row < numRows; ++row) {
         AccessibilityChildrenVector rowChildren = m_rows[row]->children();
         cells.append(rowChildren);
     }
 }
-    
+
 unsigned AccessibilityTable::columnCount()
 {
     updateChildrenIfNecessary();
-    
-    return m_columns.size();    
+
+    return m_columns.size();
 }
-    
+
 unsigned AccessibilityTable::rowCount()
 {
     updateChildrenIfNecessary();
-    
+
     return m_rows.size();
 }
 
@@ -463,7 +463,7 @@
         if (obj->isAccessibilityTable())
             ++level;
     }
-    
+
     return level;
 }
 
@@ -472,7 +472,7 @@
     updateChildrenIfNecessary();
     if (column >= columnCount() || row >= rowCount())
         return 0;
-    
+
     // Iterate backwards through the rows in case the desired cell has a rowspan and exists in a previous row.
     for (unsigned rowIndexCounter = row + 1; rowIndexCounter > 0; --rowIndexCounter) {
         unsigned rowIndex = rowIndexCounter - 1;
@@ -485,19 +485,19 @@
             ASSERT(child->isTableCell());
             if (!child->isTableCell())
                 continue;
-            
+
             pair<unsigned, unsigned> columnRange;
             pair<unsigned, unsigned> rowRange;
             AccessibilityTableCell* tableCellChild = static_cast<AccessibilityTableCell*>(child);
             tableCellChild->columnIndexRange(columnRange);
             tableCellChild->rowIndexRange(rowRange);
-            
+
             if ((column >= columnRange.first && column < (columnRange.first + columnRange.second))
                 && (row >= rowRange.first && row < (rowRange.first + rowRange.second)))
                 return tableCellChild;
         }
     }
-    
+
     return 0;
 }
 
@@ -508,7 +508,7 @@
 
     return TableRole;
 }
-    
+
 bool AccessibilityTable::computeAccessibilityIsIgnored() const
 {
     AccessibilityObjectInclusion decision = defaultObjectInclusion();
@@ -516,18 +516,18 @@
         return false;
     if (decision == IgnoreObject)
         return true;
-    
+
     if (!isAccessibilityTable())
         return AccessibilityRenderObject::computeAccessibilityIsIgnored();
-        
+
     return false;
 }
-    
+
 String AccessibilityTable::title() const
 {
     if (!isAccessibilityTable())
         return AccessibilityRenderObject::title();
-    
+
     String title;
     if (!m_renderer)
         return title;
@@ -540,10 +540,10 @@
             title = caption->innerText();
     }
 
-    // try the standard 
+    // try the standard
     if (title.isEmpty())
         title = AccessibilityRenderObject::title();
-    
+
     return title;
 }
 
diff --git a/Source/core/accessibility/AccessibilityTableCell.cpp b/Source/core/accessibility/AccessibilityTableCell.cpp
index 56fd2e1..54757d2 100644
--- a/Source/core/accessibility/AccessibilityTableCell.cpp
+++ b/Source/core/accessibility/AccessibilityTableCell.cpp
@@ -35,7 +35,7 @@
 using namespace std;
 
 namespace WebCore {
-    
+
 using namespace HTMLNames;
 
 AccessibilityTableCell::AccessibilityTableCell(RenderObject* renderer)
@@ -59,13 +59,13 @@
         return false;
     if (decision == IgnoreObject)
         return true;
-    
+
     if (!isTableCell())
         return AccessibilityRenderObject::computeAccessibilityIsIgnored();
-    
+
     return false;
 }
-   
+
 AccessibilityObject* AccessibilityTableCell::parentTable() const
 {
     if (!m_renderer || !m_renderer->isTableCell())
@@ -74,48 +74,48 @@
     // If the document no longer exists, we might not have an axObjectCache.
     if (!axObjectCache())
         return 0;
-    
-    // Do not use getOrCreate. parentTable() can be called while the render tree is being modified 
+
+    // Do not use getOrCreate. parentTable() can be called while the render tree is being modified
     // by javascript, and creating a table element may try to access the render tree while in a bad state.
     // By using only get() implies that the AXTable must be created before AXTableCells. This should
     // always be the case when AT clients access a table.
-    // https://bugs.webkit.org/show_bug.cgi?id=42652    
+    // https://bugs.webkit.org/show_bug.cgi?id=42652
     return axObjectCache()->get(toRenderTableCell(m_renderer)->table());
 }
-    
+
 bool AccessibilityTableCell::isTableCell() const
 {
     AccessibilityObject* parent = parentObjectUnignored();
     if (!parent || !parent->isTableRow())
         return false;
-    
+
     return true;
 }
-    
+
 AccessibilityRole AccessibilityTableCell::determineAccessibilityRole()
 {
     if (!isTableCell())
         return AccessibilityRenderObject::determineAccessibilityRole();
-    
+
     return CellRole;
 }
-    
+
 void AccessibilityTableCell::rowIndexRange(pair<unsigned, unsigned>& rowRange)
 {
     if (!m_renderer || !m_renderer->isTableCell())
         return;
-    
+
     RenderTableCell* renderCell = toRenderTableCell(m_renderer);
     rowRange.first = renderCell->rowIndex();
     rowRange.second = renderCell->rowSpan();
-    
+
     // since our table might have multiple sections, we have to offset our row appropriately
     RenderTableSection* section = renderCell->section();
     RenderTable* table = renderCell->table();
     if (!table || !section)
         return;
 
-    RenderTableSection* tableSection = table->topSection();    
+    RenderTableSection* tableSection = table->topSection();
     unsigned rowOffset = 0;
     while (tableSection) {
         if (tableSection == section)
@@ -126,17 +126,17 @@
 
     rowRange.first += rowOffset;
 }
-    
+
 void AccessibilityTableCell::columnIndexRange(pair<unsigned, unsigned>& columnRange)
 {
     if (!m_renderer || !m_renderer->isTableCell())
         return;
-    
+
     RenderTableCell* renderCell = toRenderTableCell(m_renderer);
     columnRange.first = renderCell->col();
-    columnRange.second = renderCell->colSpan();    
+    columnRange.second = renderCell->colSpan();
 }
-    
+
 AccessibilityObject* AccessibilityTableCell::titleUIElement() const
 {
     // Try to find if the first cell in this row is a <th>. If it is,
@@ -150,7 +150,7 @@
     Node* node = m_renderer->node();
     if (node && node->hasTagName(thTag))
         return 0;
-    
+
     RenderTableCell* renderCell = toRenderTableCell(m_renderer);
 
     // If this cell is in the first column, there is no need to continue.
@@ -163,7 +163,7 @@
     RenderTableSection* section = renderCell->section();
     if (!section)
         return 0;
-    
+
     RenderTableCell* headerCell = section->primaryCellAt(row, 0);
     if (!headerCell || headerCell == renderCell)
         return 0;
@@ -171,8 +171,8 @@
     Node* cellElement = headerCell->node();
     if (!cellElement || !cellElement->hasTagName(thTag))
         return 0;
-    
+
     return axObjectCache()->getOrCreate(headerCell);
 }
-    
+
 } // namespace WebCore
diff --git a/Source/core/accessibility/AccessibilityTableColumn.cpp b/Source/core/accessibility/AccessibilityTableColumn.cpp
index 3ba9dcc..6b5617e 100644
--- a/Source/core/accessibility/AccessibilityTableColumn.cpp
+++ b/Source/core/accessibility/AccessibilityTableColumn.cpp
@@ -36,7 +36,7 @@
 using namespace std;
 
 namespace WebCore {
-    
+
 using namespace HTMLNames;
 
 AccessibilityTableColumn::AccessibilityTableColumn()
@@ -45,7 +45,7 @@
 
 AccessibilityTableColumn::~AccessibilityTableColumn()
 {
-}    
+}
 
 PassRefPtr<AccessibilityTableColumn> AccessibilityTableColumn::create()
 {
@@ -55,10 +55,10 @@
 void AccessibilityTableColumn::setParent(AccessibilityObject* parent)
 {
     AccessibilityMockObject::setParent(parent);
-    
+
     clearChildren();
 }
-    
+
 LayoutRect AccessibilityTableColumn::elementRect() const
 {
     // this will be filled in when addChildren is called
@@ -69,14 +69,14 @@
 {
     if (!m_parent)
         return 0;
-    
+
     RenderObject* renderer = m_parent->renderer();
     if (!renderer)
         return 0;
-    
+
     if (!m_parent->isAccessibilityTable())
         return 0;
-    
+
     AccessibilityTable* parentTable = toAccessibilityTable(m_parent);
     if (parentTable->isAriaTable()) {
         AccessibilityChildrenVector rowChildren = children();
@@ -86,23 +86,23 @@
             if (cell->ariaRoleAttribute() == ColumnHeaderRole)
                 return cell;
         }
-        
+
         return 0;
     }
 
     if (!renderer->isTable())
         return 0;
-    
+
     RenderTable* table = toRenderTable(renderer);
-    
+
     AccessibilityObject* headerObject = 0;
-    
+
     // try the <thead> section first. this doesn't require th tags
     headerObject = headerObjectForSection(table->header(), false);
 
     if (headerObject)
         return headerObject;
-    
+
     // now try for <th> tags in the first body
     headerObject = headerObjectForSection(table->firstBody(), true);
 
@@ -113,42 +113,42 @@
 {
     if (!section)
         return 0;
-    
+
     unsigned numCols = section->numColumns();
     if (m_columnIndex >= numCols)
         return 0;
-    
+
     if (!section->numRows())
         return 0;
-    
+
     RenderTableCell* cell = 0;
     // also account for cells that have a span
     for (int testCol = m_columnIndex; testCol >= 0; --testCol) {
         RenderTableCell* testCell = section->primaryCellAt(0, testCol);
         if (!testCell)
             continue;
-        
-        // we've reached a cell that doesn't even overlap our column 
+
+        // we've reached a cell that doesn't even overlap our column
         // it can't be our header
         if ((testCell->col() + (testCell->colSpan()-1)) < m_columnIndex)
             break;
-        
+
         Node* node = testCell->node();
         if (!node)
             continue;
-        
+
         if (thTagRequired && !node->hasTagName(thTag))
             continue;
-        
+
         cell = testCell;
     }
-    
+
     if (!cell)
         return 0;
 
     return axObjectCache()->getOrCreate(cell);
 }
-    
+
 bool AccessibilityTableColumn::computeAccessibilityIsIgnored() const
 {
     if (!m_parent)
@@ -156,30 +156,30 @@
 
     return m_parent->accessibilityIsIgnored();
 }
-    
+
 void AccessibilityTableColumn::addChildren()
 {
-    ASSERT(!m_haveChildren); 
-    
+    ASSERT(!m_haveChildren);
+
     m_haveChildren = true;
     if (!m_parent || !m_parent->isAccessibilityTable())
         return;
-    
+
     AccessibilityTable* parentTable = toAccessibilityTable(m_parent);
     int numRows = parentTable->rowCount();
-    
+
     for (int i = 0; i < numRows; i++) {
         AccessibilityTableCell* cell = parentTable->cellForColumnAndRow(m_columnIndex, i);
         if (!cell)
             continue;
-        
+
         // make sure the last one isn't the same as this one (rowspan cells)
         if (m_children.size() > 0 && m_children.last() == cell)
             continue;
-            
+
         m_children.append(cell);
         m_columnRect.unite(cell->elementRect());
     }
 }
-    
+
 } // namespace WebCore
diff --git a/Source/core/accessibility/AccessibilityTableHeaderContainer.cpp b/Source/core/accessibility/AccessibilityTableHeaderContainer.cpp
index 8af99ff..1a1d972 100644
--- a/Source/core/accessibility/AccessibilityTableHeaderContainer.cpp
+++ b/Source/core/accessibility/AccessibilityTableHeaderContainer.cpp
@@ -46,7 +46,7 @@
 {
     return adoptRef(new AccessibilityTableHeaderContainer());
 }
-    
+
 LayoutRect AccessibilityTableHeaderContainer::elementRect() const
 {
     // this will be filled in when addChildren is called
@@ -63,14 +63,14 @@
 
 void AccessibilityTableHeaderContainer::addChildren()
 {
-    ASSERT(!m_haveChildren); 
-    
+    ASSERT(!m_haveChildren);
+
     m_haveChildren = true;
     if (!m_parent || !m_parent->isAccessibilityTable())
         return;
-    
+
     static_cast<AccessibilityTable*>(m_parent)->columnHeaders(m_children);
-    
+
     unsigned length = m_children.size();
     for (unsigned k = 0; k < length; ++k)
         m_headerRect.unite(m_children[k]->elementRect());
diff --git a/Source/core/accessibility/AccessibilityTableRow.cpp b/Source/core/accessibility/AccessibilityTableRow.cpp
index 01dd69f..89da3f7 100644
--- a/Source/core/accessibility/AccessibilityTableRow.cpp
+++ b/Source/core/accessibility/AccessibilityTableRow.cpp
@@ -35,9 +35,9 @@
 using namespace std;
 
 namespace WebCore {
-    
+
 using namespace HTMLNames;
-    
+
 AccessibilityTableRow::AccessibilityTableRow(RenderObject* renderer)
     : AccessibilityRenderObject(renderer)
 {
@@ -71,62 +71,62 @@
     AccessibilityObject* table = parentTable();
     if (!table || !table->isAccessibilityTable())
         return false;
-    
+
     return true;
 }
-    
+
 AccessibilityObject* AccessibilityTableRow::observableObject() const
 {
     // This allows the table to be the one who sends notifications about tables.
     return parentTable();
 }
-    
+
 bool AccessibilityTableRow::computeAccessibilityIsIgnored() const
-{    
+{
     AccessibilityObjectInclusion decision = defaultObjectInclusion();
     if (decision == IncludeObject)
         return false;
     if (decision == IgnoreObject)
         return true;
-    
+
     if (!isTableRow())
         return AccessibilityRenderObject::computeAccessibilityIsIgnored();
 
     return false;
 }
-    
+
 AccessibilityObject* AccessibilityTableRow::parentTable() const
 {
     AccessibilityObject* parent = parentObjectUnignored();
     if (!parent || !parent->isAccessibilityTable())
         return 0;
-    
+
     return parent;
 }
-    
+
 AccessibilityObject* AccessibilityTableRow::headerObject()
 {
     if (!m_renderer || !m_renderer->isTableRow())
         return 0;
-    
+
     AccessibilityChildrenVector rowChildren = children();
     if (!rowChildren.size())
         return 0;
-    
+
     // check the first element in the row to see if it is a TH element
     AccessibilityObject* cell = rowChildren[0].get();
     if (!cell->isTableCell())
         return 0;
-    
+
     RenderObject* cellRenderer = static_cast<AccessibilityTableCell*>(cell)->renderer();
     if (!cellRenderer)
         return 0;
-    
+
     Node* cellNode = cellRenderer->node();
     if (!cellNode || !cellNode->hasTagName(thTag))
         return 0;
-    
+
     return cell;
 }
-    
+
 } // namespace WebCore
diff --git a/Source/core/animation/AnimatableValue.cpp b/Source/core/animation/AnimatableValue.cpp
index 7637880..63af8cb 100644
--- a/Source/core/animation/AnimatableValue.cpp
+++ b/Source/core/animation/AnimatableValue.cpp
@@ -34,6 +34,7 @@
 #include "core/animation/AnimatableNeutral.h"
 #include "core/animation/AnimatableNumber.h"
 #include "core/animation/AnimatableUnknown.h"
+#include "core/animation/DeferredAnimatableValue.h"
 
 #include <algorithm>
 
@@ -54,6 +55,12 @@
     return neutralSentinelValue;
 }
 
+const AnimatableValue* AnimatableValue::deferredSnapshotValue()
+{
+    static DeferredAnimatableValue* deferredAnimatableValueSentinel = DeferredAnimatableValue::create().leakRef();
+    return deferredAnimatableValueSentinel;
+}
+
 PassRefPtr<AnimatableValue> AnimatableValue::interpolate(const AnimatableValue* left, const AnimatableValue* right, double fraction)
 {
     ASSERT(left);
diff --git a/Source/core/animation/AnimatableValue.h b/Source/core/animation/AnimatableValue.h
index 3cc1697..00cef47 100644
--- a/Source/core/animation/AnimatableValue.h
+++ b/Source/core/animation/AnimatableValue.h
@@ -47,12 +47,16 @@
     static const AnimatableValue* neutralValue();
     virtual bool isNeutral() const { return false; }
 
+    static const AnimatableValue* deferredSnapshotValue();
+    virtual bool isDeferredSnapshot() const { return false; }
+
     static PassRefPtr<AnimatableValue> interpolate(const AnimatableValue*, const AnimatableValue*, double fraction);
     // For noncommutative values read add(A, B) to mean the value A with B composed onto it.
     static PassRefPtr<AnimatableValue> add(const AnimatableValue*, const AnimatableValue*);
 
 protected:
     enum AnimatableType {
+        TypeDeferred,
         TypeNeutral,
         TypeNumber,
         TypeUnknown,
diff --git a/Source/core/animation/DeferredAnimatableValue.h b/Source/core/animation/DeferredAnimatableValue.h
new file mode 100644
index 0000000..741e9b1
--- /dev/null
+++ b/Source/core/animation/DeferredAnimatableValue.h
@@ -0,0 +1,75 @@
+/*
+ * Copyright (C) 2013 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef DeferredAnimatableValue_h
+#define DeferredAnimatableValue_h
+
+#include "core/animation/AnimatableValue.h"
+
+namespace WebCore {
+
+// Used as a sentinal value to indicate where a snapshot of an element's CSS value should go in a KeyframeAnimationEffect::KeyframeVector.
+class DeferredAnimatableValue : public AnimatableValue {
+public:
+    virtual ~DeferredAnimatableValue() { }
+
+    virtual PassRefPtr<CSSValue> toCSSValue() const OVERRIDE
+    {
+        ASSERT_NOT_REACHED();
+        return 0;
+    }
+
+    virtual bool isDeferredSnapshot() const OVERRIDE { return true; }
+
+protected:
+    static PassRefPtr<DeferredAnimatableValue> create() { return adoptRef(new DeferredAnimatableValue()); }
+
+    virtual PassRefPtr<AnimatableValue> interpolateTo(const AnimatableValue*, double fraction) const OVERRIDE
+    {
+        ASSERT_NOT_REACHED();
+        return 0;
+    }
+
+    virtual PassRefPtr<AnimatableValue> addWith(const AnimatableValue*) const OVERRIDE
+    {
+        ASSERT_NOT_REACHED();
+        return 0;
+    }
+
+private:
+    DeferredAnimatableValue() : AnimatableValue(TypeDeferred) { }
+
+    friend class AnimatableValue;
+};
+
+
+} // namespace WebCore
+
+#endif // DeferredAnimatableValue_h
diff --git a/Source/core/core.gypi b/Source/core/core.gypi
index 3907bd5..70b8788 100644
--- a/Source/core/core.gypi
+++ b/Source/core/core.gypi
@@ -544,6 +544,7 @@
             'animation/Animation.h',
             'animation/AnimationEffect.h',
             'animation/AnimationStack.h',
+            'animation/DeferredAnimatableValue.h',
             'animation/DocumentTimeline.cpp',
             'animation/DocumentTimeline.h',
             'animation/KeyframeAnimationEffect.cpp',
@@ -760,6 +761,7 @@
             'css/resolver/MatchedPropertiesCache.h',
             'css/resolver/MatchResult.cpp',
             'css/resolver/MatchResult.h',
+            'css/resolver/MatchRequest.h',
             'css/resolver/MediaQueryResult.h',
             'css/resolver/ScopedStyleResolver.cpp',
             'css/resolver/ScopedStyleResolver.h',
@@ -1938,6 +1940,8 @@
             'dom/StyleElement.h',
             'dom/StyleSheetCollection.cpp',
             'dom/StyleSheetCollection.h',
+            'dom/StyleSheetScopingNodeList.cpp',
+            'dom/StyleSheetScopingNodeList.h',
             'dom/TagNodeList.cpp',
             'dom/TagNodeList.h',
             'dom/Text.cpp',
@@ -2736,8 +2740,6 @@
             'platform/chromium/ScrollbarThemeChromiumAndroid.h',
             'platform/chromium/ScrollbarThemeChromiumDefault.cpp',
             'platform/chromium/ScrollbarThemeChromiumDefault.h',
-            'platform/chromium/ScrollbarThemeChromiumMac.h',
-            'platform/chromium/ScrollbarThemeChromiumMac.mm',
             'platform/chromium/ScrollbarThemeChromiumWin.cpp',
             'platform/chromium/ScrollbarThemeChromiumWin.h',
             'platform/chromium/SharedTimerChromium.cpp',
@@ -3686,6 +3688,7 @@
             'platform/chromium/support/WebActiveGestureAnimation.h',
             'platform/chromium/support/WebArrayBuffer.cpp',
             'platform/chromium/support/WebAudioBus.cpp',
+            'platform/chromium/support/WebCrypto.cpp',
             'platform/chromium/support/WebCryptoAlgorithm.cpp',
             'platform/chromium/support/WebCryptoKey.cpp',
             'platform/chromium/support/WebCursorInfo.cpp',
@@ -3743,6 +3746,7 @@
             'html/TimeRangesTest.cpp',
             'loader/cache/CachedImageTest.cpp',
             'loader/cache/MemoryCacheTest.cpp',
+            'loader/cache/ResourceFetcherTest.cpp',
             'platform/DecimalTest.cpp',
             'platform/SharedBufferTest.cpp',
             'platform/chromium/ClipboardChromiumTest.cpp',
diff --git a/Source/core/css/CSSBasicShapes.cpp b/Source/core/css/CSSBasicShapes.cpp
index f02c43a..1104f17 100644
--- a/Source/core/css/CSSBasicShapes.cpp
+++ b/Source/core/css/CSSBasicShapes.cpp
@@ -189,7 +189,7 @@
     char nonZeroOpening[] = "polygon(nonzero, ";
     char commaSeparator[] = ", ";
     COMPILE_ASSERT(sizeof(evenOddOpening) == sizeof(nonZeroOpening), polygon_string_openings_have_same_length);
-    
+
     // Compute the required capacity in advance to reduce allocations.
     size_t length = sizeof(evenOddOpening) - 1;
     for (size_t i = 0; i < points.size(); i += 2) {
diff --git a/Source/core/css/CSSCalculationValue.cpp b/Source/core/css/CSSCalculationValue.cpp
index 99b91cf..95fb234 100644
--- a/Source/core/css/CSSCalculationValue.cpp
+++ b/Source/core/css/CSSCalculationValue.cpp
@@ -145,7 +145,7 @@
     result.append(expression);
     if (expressionHasSingleTerm)
         result.append(')');
-    return result.toString(); 
+    return result.toString();
 }
 
 String CSSCalcValue::customCssText() const
@@ -171,10 +171,10 @@
 double CSSCalcValue::clampToPermittedRange(double value) const
 {
     return m_nonNegative && value < 0 ? 0 : value;
-}    
-    
-double CSSCalcValue::doubleValue() const 
-{ 
+}
+
+double CSSCalcValue::doubleValue() const
+{
     return clampToPermittedRange(m_expression->doubleValue());
 }
 
@@ -182,11 +182,11 @@
 {
     return clampToPermittedRange(m_expression->computeLengthPx(currentStyle, rootStyle, multiplier, computingFontSize));
 }
-    
-CSSCalcExpressionNode::~CSSCalcExpressionNode() 
+
+CSSCalcExpressionNode::~CSSCalcExpressionNode()
 {
 }
-    
+
 class CSSCalcPrimitiveValue : public CSSCalcExpressionNode {
     WTF_MAKE_FAST_ALLOCATED;
 public:
@@ -217,7 +217,7 @@
     {
         return m_value->customSerializeResolvingVariables(variables);
     }
-    
+
     virtual bool hasVariableReference() const
     {
         return m_value->isVariableName();
@@ -254,7 +254,7 @@
         ASSERT_NOT_REACHED();
         return 0;
     }
-    
+
     virtual double computeLengthPx(const RenderStyle* currentStyle, const RenderStyle* rootStyle, double multiplier, bool computingFontSize) const
     {
         switch (m_category) {
@@ -320,10 +320,10 @@
 
     switch (op) {
     case CalcAdd:
-    case CalcSubtract:             
+    case CalcSubtract:
         return addSubtractResult[leftCategory][rightCategory];
     case CalcMultiply:
-        if (leftCategory != CalcNumber && rightCategory != CalcNumber) 
+        if (leftCategory != CalcNumber && rightCategory != CalcNumber)
             return CalcOther;
         return leftCategory == CalcNumber ? rightCategory : leftCategory;
     case CalcDivide:
@@ -331,7 +331,7 @@
             return CalcOther;
         return leftCategory;
     }
-    
+
     ASSERT_NOT_REACHED();
     return CalcOther;
 }
@@ -431,11 +431,11 @@
         return adoptPtr(new CalcExpressionBinaryOperation(left.release(), right.release(), m_operator));
     }
 
-    virtual double doubleValue() const 
+    virtual double doubleValue() const
     {
         return evaluate(m_leftSide->doubleValue(), m_rightSide->doubleValue());
     }
-    
+
     virtual double computeLengthPx(const RenderStyle* currentStyle, const RenderStyle* rootStyle, double multiplier, bool computingFontSize) const
     {
         const double leftValue = m_leftSide->computeLengthPx(currentStyle, rootStyle, multiplier, computingFontSize);
@@ -453,8 +453,8 @@
         result.append(' ');
         result.append(rightExpression);
         result.append(')');
-    
-        return result.toString();  
+
+        return result.toString();
     }
 
     virtual String customCssText() const
@@ -620,8 +620,8 @@
     bool parseValueTerm(CSSParserValueList* tokens, int depth, unsigned* index, Value* result)
     {
         if (checkDepthAndIndex(&depth, *index, tokens) != OK)
-            return false;    
-        
+            return false;
+
         if (operatorValue(tokens, *index) == '(') {
             unsigned currentIndex = *index + 1;
             if (!parseValueExpression(tokens, depth, &currentIndex, result))
@@ -666,7 +666,7 @@
     bool parseAdditiveValueExpression(CSSParserValueList* tokens, int depth, unsigned* index, Value* result)
     {
         if (checkDepthAndIndex(&depth, *index, tokens) != OK)
-            return false;    
+            return false;
 
         if (!parseValueMultiplicativeExpression(tokens, depth, index, result))
             return false;
@@ -707,12 +707,12 @@
 }
 
 PassRefPtr<CSSCalcValue> CSSCalcValue::create(CSSParserString name, CSSParserValueList* parserValueList, CalculationPermittedValueRange range)
-{    
-    CSSCalcExpressionNodeParser parser;    
+{
+    CSSCalcExpressionNodeParser parser;
     RefPtr<CSSCalcExpressionNode> expression;
-    
+
     if (equalIgnoringCase(name, "calc(") || equalIgnoringCase(name, "-webkit-calc("))
-        expression = parser.parseCalc(parserValueList);    
+        expression = parser.parseCalc(parserValueList);
     // FIXME calc (http://webkit.org/b/16662) Add parsing for min and max here
 
     return expression ? adoptRef(new CSSCalcValue(expression, range)) : 0;
diff --git a/Source/core/css/CSSCalculationValue.h b/Source/core/css/CSSCalculationValue.h
index 589d72c..a13cdbc 100644
--- a/Source/core/css/CSSCalculationValue.h
+++ b/Source/core/css/CSSCalculationValue.h
@@ -56,7 +56,7 @@
     CalcVariable,
     CalcOther
 };
-    
+
 class CSSCalcExpressionNode : public RefCounted<CSSCalcExpressionNode> {
 public:
     enum Type {
@@ -85,7 +85,7 @@
         , m_isInteger(isInteger)
     {
     }
-    
+
     CalculationCategory m_category;
     bool m_isInteger;
 };
@@ -103,7 +103,7 @@
         return CalculationValue::create(m_expression->toCalcValue(style, rootStyle, zoom), m_nonNegative ? CalculationRangeNonNegative : CalculationRangeAll);
     }
     CalculationCategory category() const { return m_expression->category(); }
-    bool isInt() const { return m_expression->isInteger(); }    
+    bool isInt() const { return m_expression->isInteger(); }
     double doubleValue() const;
     bool isNegative() const { return m_expression->doubleValue() < 0; }
     double computeLengthPx(const RenderStyle* currentStyle, const RenderStyle* rootStyle, double multiplier = 1.0, bool computingFontSize = false) const;
@@ -114,14 +114,14 @@
     String customSerializeResolvingVariables(const HashMap<AtomicString, String>&) const;
     bool hasVariableReference() const;
 
-private:    
+private:
     CSSCalcValue(PassRefPtr<CSSCalcExpressionNode> expression, CalculationPermittedValueRange range)
         : CSSValue(CalculationClass)
         , m_expression(expression)
         , m_nonNegative(range == CalculationRangeNonNegative)
     {
     }
-    
+
     double clampToPermittedRange(double) const;
 
     const RefPtr<CSSCalcExpressionNode> m_expression;
diff --git a/Source/core/css/CSSComputedStyleDeclaration.cpp b/Source/core/css/CSSComputedStyleDeclaration.cpp
index 9007ea3..71244ad 100644
--- a/Source/core/css/CSSComputedStyleDeclaration.cpp
+++ b/Source/core/css/CSSComputedStyleDeclaration.cpp
@@ -845,7 +845,7 @@
     case CustomFilterParameter::TRANSFORM:
         return valueForCustomFilterTransformParameter(renderer, style, static_cast<const CustomFilterTransformParameter*>(parameter));
     }
-    
+
     ASSERT_NOT_REACHED();
     return 0;
 }
@@ -938,12 +938,12 @@
         case FilterOperation::CUSTOM: {
             CustomFilterOperation* customOperation = static_cast<CustomFilterOperation*>(filterOperation);
             filterValue = CSSFilterValue::create(CSSFilterValue::CustomFilterOperation);
-            
+
             // The output should be verbose, even if the values are the default ones.
-            
+
             ASSERT(customOperation->program());
             StyleCustomFilterProgram* program = static_cast<StyleCustomFilterProgram*>(customOperation->program());
-            
+
             RefPtr<CSSValueList> shadersList = CSSValueList::createSpaceSeparated();
             if (program->vertexShader())
                 shadersList->append(program->vertexShader()->cssValue());
@@ -965,18 +965,18 @@
                 shadersList->append(cssValuePool().createIdentifierValue(CSSValueNone));
 
             filterValue->append(shadersList.release());
-            
+
             RefPtr<CSSValueList> meshParameters = CSSValueList::createSpaceSeparated();
             meshParameters->append(cssValuePool().createValue(customOperation->meshColumns(), CSSPrimitiveValue::CSS_NUMBER));
             meshParameters->append(cssValuePool().createValue(customOperation->meshRows(), CSSPrimitiveValue::CSS_NUMBER));
-            
+
             // FIXME: The specification doesn't have any "attached" identifier. Should we add one?
             // https://bugs.webkit.org/show_bug.cgi?id=72700
             if (customOperation->meshType() == MeshTypeDetached)
                 meshParameters->append(cssValuePool().createIdentifierValue(CSSValueDetached));
-            
+
             filterValue->append(meshParameters.release());
-            
+
             const CustomFilterParameterList& parameters = customOperation->parameters();
             size_t parametersSize = parameters.size();
             if (!parametersSize)
@@ -989,7 +989,7 @@
                 parameterCSSNameAndValue->append(valueForCustomFilterParameter(renderer, style, parameter));
                 parametersCSSValue->append(parameterCSSNameAndValue.release());
             }
-            
+
             filterValue->append(parametersCSSValue.release());
             break;
         }
@@ -2651,7 +2651,7 @@
             return valueForFilter(renderer, style.get());
         case CSSPropertyMixBlendMode:
             return cssValuePool().createValue(style->blendMode());
-            
+
         case CSSPropertyBackgroundBlendMode: {
             const FillLayer* layers = style->backgroundLayers();
             if (!layers->next())
@@ -3004,7 +3004,7 @@
     ec = NoModificationAllowedError;
     return String();
 }
-    
+
 PassRefPtr<CSSValue> CSSComputedStyleDeclaration::getPropertyCSSValueInternal(CSSPropertyID propertyID)
 {
     return getPropertyCSSValue(propertyID);
@@ -3074,9 +3074,9 @@
 PassRefPtr<CSSValueList> CSSComputedStyleDeclaration::getBackgroundShorthandValue() const
 {
     static const CSSPropertyID propertiesBeforeSlashSeperator[5] = { CSSPropertyBackgroundColor, CSSPropertyBackgroundImage,
-                                                                     CSSPropertyBackgroundRepeat, CSSPropertyBackgroundAttachment,  
+                                                                     CSSPropertyBackgroundRepeat, CSSPropertyBackgroundAttachment,
                                                                      CSSPropertyBackgroundPosition };
-    static const CSSPropertyID propertiesAfterSlashSeperator[3] = { CSSPropertyBackgroundSize, CSSPropertyBackgroundOrigin, 
+    static const CSSPropertyID propertiesAfterSlashSeperator[3] = { CSSPropertyBackgroundSize, CSSPropertyBackgroundOrigin,
                                                                     CSSPropertyBackgroundClip };
 
     RefPtr<CSSValueList> list = CSSValueList::createSlashSeparated();
diff --git a/Source/core/css/CSSCrossfadeValue.cpp b/Source/core/css/CSSCrossfadeValue.cpp
index 34ce1c1..3300ce8 100644
--- a/Source/core/css/CSSCrossfadeValue.cpp
+++ b/Source/core/css/CSSCrossfadeValue.cpp
@@ -39,12 +39,12 @@
 {
     if (value->isImageValue())
         return toCSSImageValue(value)->cachedOrPendingImage()->isPendingImage();
-    
+
     if (value->isImageGeneratorValue())
         return static_cast<CSSImageGeneratorValue*>(value)->isPending();
-    
+
     ASSERT_NOT_REACHED();
-    
+
     return false;
 }
 
@@ -73,15 +73,15 @@
 
         return styleCachedImage->cachedImage();
     }
-    
+
     if (value->isImageGeneratorValue()) {
         static_cast<CSSImageGeneratorValue*>(value)->loadSubimages(fetcher);
         // FIXME: Handle CSSImageGeneratorValue (and thus cross-fades with gradients and canvas).
         return 0;
     }
-    
+
     ASSERT_NOT_REACHED();
-    
+
     return 0;
 }
 
diff --git a/Source/core/css/CSSFontSelector.cpp b/Source/core/css/CSSFontSelector.cpp
index c5f5a08..243b992 100644
--- a/Source/core/css/CSSFontSelector.cpp
+++ b/Source/core/css/CSSFontSelector.cpp
@@ -311,7 +311,7 @@
         }
 
         familyFontFaces->append(fontFace);
-        
+
         ++m_version;
     }
 }
diff --git a/Source/core/css/CSSFontSelector.h b/Source/core/css/CSSFontSelector.h
index 7c4da6d..bf097b4 100644
--- a/Source/core/css/CSSFontSelector.h
+++ b/Source/core/css/CSSFontSelector.h
@@ -51,7 +51,7 @@
         return adoptRef(new CSSFontSelector(document));
     }
     virtual ~CSSFontSelector();
-    
+
     virtual unsigned version() const OVERRIDE { return m_version; }
 
     virtual PassRefPtr<FontData> getFontData(const FontDescription&, const AtomicString&);
@@ -88,7 +88,7 @@
 
     Vector<CachedResourceHandle<CachedFont> > m_fontsToBeginLoading;
     Timer<CSSFontSelector> m_beginLoadingTimer;
-    
+
     unsigned m_version;
 };
 
diff --git a/Source/core/css/CSSGradientValue.cpp b/Source/core/css/CSSGradientValue.cpp
index 4f72ea9..316513f 100644
--- a/Source/core/css/CSSGradientValue.cpp
+++ b/Source/core/css/CSSGradientValue.cpp
@@ -187,7 +187,7 @@
                 float length;
                 if (stop.m_position->isLength())
                     length = stop.m_position->computeLength<float>(style, rootStyle, style->effectiveZoom());
-                else 
+                else
                     length = stop.m_position->cssCalcValue()->toCalcValue(style, rootStyle, style->effectiveZoom())->evaluate(gradientLength);
                 stops[i].offset = (gradientLength > 0) ? length / gradientLength : 0;
             } else {
@@ -563,7 +563,7 @@
                 result.append(stop.m_position->cssText());
             }
         }
-        
+
     }
 
     result.append(')');
@@ -631,7 +631,7 @@
     float endX = c / (slope - perpendicularSlope);
     float endY = perpendicularSlope * endX + c;
 
-    // We computed the end point, so set the second point, 
+    // We computed the end point, so set the second point,
     // taking into account the moved origin and the fact that we're in drawing space (+y = down).
     secondPoint.set(halfWidth + endX, halfHeight - endY);
     // Reflect around the center for the start point.
@@ -681,7 +681,7 @@
                 // Compute angle, and flip it back to "bearing angle" degrees.
                 float angle = 90 - rad2deg(atan2(rise, run));
                 endPointsFromAngle(angle, size, firstPoint, secondPoint, m_gradientType);
-            } else if (m_firstX || m_firstY) { 
+            } else if (m_firstX || m_firstY) {
                 secondPoint = computeEndPoint(m_firstX.get(), m_firstY.get(), renderer->style(), rootStyle, size);
                 if (m_firstX)
                     firstPoint.setX(size.width() - secondPoint.x());
diff --git a/Source/core/css/CSSGroupingRule.cpp b/Source/core/css/CSSGroupingRule.cpp
index f41c186..0d62e42 100644
--- a/Source/core/css/CSSGroupingRule.cpp
+++ b/Source/core/css/CSSGroupingRule.cpp
@@ -126,12 +126,12 @@
 }
 
 unsigned CSSGroupingRule::length() const
-{ 
-    return m_groupRule->childRules().size(); 
+{
+    return m_groupRule->childRules().size();
 }
 
 CSSRule* CSSGroupingRule::item(unsigned index) const
-{ 
+{
     if (index >= length())
         return 0;
     ASSERT(m_childRuleCSSOMWrappers.size() == m_groupRule->childRules().size());
diff --git a/Source/core/css/CSSGroupingRule.h b/Source/core/css/CSSGroupingRule.h
index afc0b5a..3e0aea0 100644
--- a/Source/core/css/CSSGroupingRule.h
+++ b/Source/core/css/CSSGroupingRule.h
@@ -41,14 +41,14 @@
 
     unsigned insertRule(const String& rule, unsigned index, ExceptionCode&);
     void deleteRule(unsigned index, ExceptionCode&);
-        
+
     // For CSSRuleList
     unsigned length() const;
     CSSRule* item(unsigned index) const;
 
 protected:
     CSSGroupingRule(StyleRuleGroup* groupRule, CSSStyleSheet* parent);
-    
+
     void appendCssTextForItems(StringBuilder&) const;
 
     RefPtr<StyleRuleGroup> m_groupRule;
diff --git a/Source/core/css/CSSHostRule.idl b/Source/core/css/CSSHostRule.idl
index 1f78088..237a051 100644
--- a/Source/core/css/CSSHostRule.idl
+++ b/Source/core/css/CSSHostRule.idl
@@ -21,8 +21,8 @@
 // Introduced in Shadow DOM spec:
 interface CSSHostRule : CSSRule {
     readonly attribute CSSRuleList cssRules;
-    
-    [RaisesException] unsigned long      insertRule([Default=Undefined] optional DOMString rule, 
+
+    [RaisesException] unsigned long      insertRule([Default=Undefined] optional DOMString rule,
                                   [Default=Undefined] optional unsigned long index);
     [RaisesException] void               deleteRule([Default=Undefined] optional unsigned long index);
 };
diff --git a/Source/core/css/CSSImageSetValue.cpp b/Source/core/css/CSSImageSetValue.cpp
index c539e30..dcbc486 100644
--- a/Source/core/css/CSSImageSetValue.cpp
+++ b/Source/core/css/CSSImageSetValue.cpp
@@ -98,7 +98,7 @@
         fillImageSet();
 
     if (!m_accessedBestFitImage) {
-        // FIXME: In the future, we want to take much more than deviceScaleFactor into acount here. 
+        // FIXME: In the future, we want to take much more than deviceScaleFactor into acount here.
         // All forms of scale should be included: Page::pageScaleFactor(), Frame::pageZoomFactor(),
         // and any CSS transforms. https://bugs.webkit.org/show_bug.cgi?id=81698
         ImageWithScale image = bestImageForScaleFactor();
diff --git a/Source/core/css/CSSImportRule.cpp b/Source/core/css/CSSImportRule.cpp
index 8e552f0..cf733f7 100644
--- a/Source/core/css/CSSImportRule.cpp
+++ b/Source/core/css/CSSImportRule.cpp
@@ -71,18 +71,18 @@
         }
     }
     result.append(';');
-    
+
     return result.toString();
 }
 
 CSSStyleSheet* CSSImportRule::styleSheet() const
-{ 
+{
     if (!m_importRule->styleSheet())
         return 0;
 
     if (!m_styleSheetCSSOMWrapper)
         m_styleSheetCSSOMWrapper = CSSStyleSheet::create(m_importRule->styleSheet(), const_cast<CSSImportRule*>(this));
-    return m_styleSheetCSSOMWrapper.get(); 
+    return m_styleSheetCSSOMWrapper.get();
 }
 
 void CSSImportRule::reattach(StyleRuleBase*)
diff --git a/Source/core/css/CSSImportRule.h b/Source/core/css/CSSImportRule.h
index d169b61..ab9fd00 100644
--- a/Source/core/css/CSSImportRule.h
+++ b/Source/core/css/CSSImportRule.h
@@ -34,7 +34,7 @@
 class CSSImportRule : public CSSRule {
 public:
     static PassRefPtr<CSSImportRule> create(StyleRuleImport* rule, CSSStyleSheet* sheet) { return adoptRef(new CSSImportRule(rule, sheet)); }
-    
+
     virtual ~CSSImportRule();
 
     virtual CSSRule::Type type() const OVERRIDE { return IMPORT_RULE; }
diff --git a/Source/core/css/CSSMediaRule.h b/Source/core/css/CSSMediaRule.h
index 0a876e5..194f918 100644
--- a/Source/core/css/CSSMediaRule.h
+++ b/Source/core/css/CSSMediaRule.h
@@ -46,7 +46,7 @@
     CSSMediaRule(StyleRuleMedia*, CSSStyleSheet*);
 
     MediaQuerySet* mediaQueries() const;
-    
+
     mutable RefPtr<MediaList> m_mediaCSSOMWrapper;
 };
 
diff --git a/Source/core/css/CSSMediaRule.idl b/Source/core/css/CSSMediaRule.idl
index b1ea13a..71185a7 100644
--- a/Source/core/css/CSSMediaRule.idl
+++ b/Source/core/css/CSSMediaRule.idl
@@ -22,8 +22,8 @@
 interface CSSMediaRule : CSSRule {
     readonly attribute MediaList media;
     readonly attribute CSSRuleList cssRules;
-    
-     [RaisesException] unsigned long      insertRule([Default=Undefined] optional DOMString rule, 
+
+     [RaisesException] unsigned long      insertRule([Default=Undefined] optional DOMString rule,
                                                  [Default=Undefined] optional unsigned long index);
     [RaisesException] void               deleteRule([Default=Undefined] optional unsigned long index);
 };
diff --git a/Source/core/css/CSSPageRule.h b/Source/core/css/CSSPageRule.h
index d6a071f..21079c1 100644
--- a/Source/core/css/CSSPageRule.h
+++ b/Source/core/css/CSSPageRule.h
@@ -48,7 +48,7 @@
 
 private:
     CSSPageRule(StyleRulePage*, CSSStyleSheet*);
-    
+
     RefPtr<StyleRulePage> m_pageRule;
     mutable RefPtr<StyleRuleCSSStyleDeclaration> m_propertiesCSSOMWrapper;
 };
diff --git a/Source/core/css/CSSParser-in.cpp b/Source/core/css/CSSParser-in.cpp
index 16a4e61..34dd18e 100644
--- a/Source/core/css/CSSParser-in.cpp
+++ b/Source/core/css/CSSParser-in.cpp
@@ -2310,10 +2310,14 @@
         break;
     case CSSPropertyOrder:
         if (validUnit(value, FInteger, CSSStrictMode)) {
-            // We restrict the smallest value to int min + 2 because we use int min and int min + 1 as special values in a hash set.
-            parsedValue = cssValuePool().createValue(max(static_cast<double>(std::numeric_limits<int>::min() + 2), value->fValue),
-                                                             static_cast<CSSPrimitiveValue::UnitTypes>(value->unit));
-            m_valueList->next();
+            if (value->unit != CSSPrimitiveValue::CSS_VARIABLE_NAME) {
+                // We restrict the smallest value to int min + 2 because we use int min and int min + 1 as special values in a hash set.
+                parsedValue = cssValuePool().createValue(max(static_cast<double>(std::numeric_limits<int>::min() + 2), value->fValue),
+                    static_cast<CSSPrimitiveValue::UnitTypes>(value->unit));
+                m_valueList->next();
+            } else {
+                validPrimitive = true;
+            }
         }
         break;
     case CSSPropertyWebkitMarquee:
@@ -8769,7 +8773,7 @@
 void CSSParser::addTextDecorationProperty(CSSPropertyID propId, PassRefPtr<CSSValue> value, bool important)
 {
     // The text-decoration-line property takes priority over text-decoration, unless the latter has important priority set.
-    if (propId == CSSPropertyTextDecoration && !important && m_currentShorthand == CSSPropertyInvalid) {
+    if (propId == CSSPropertyTextDecoration && !important && !inShorthand()) {
         for (unsigned i = 0; i < m_parsedProperties.size(); ++i) {
             if (m_parsedProperties[i].id() == CSSPropertyTextDecorationLine)
                 return;
@@ -8785,7 +8789,7 @@
         return false;
 
     CSSParserValue* value = m_valueList->current();
-    if (value->id == CSSValueNone) {
+    if (value && value->id == CSSValueNone) {
         addTextDecorationProperty(propId, cssValuePool().createIdentifierValue(CSSValueNone), important);
         m_valueList->next();
         return true;
diff --git a/Source/core/css/CSSParser.h b/Source/core/css/CSSParser.h
index fdb7779..1c5ff4a 100644
--- a/Source/core/css/CSSParser.h
+++ b/Source/core/css/CSSParser.h
@@ -271,7 +271,7 @@
 #endif // CSS3_TEXT
 
     PassRefPtr<CSSValue> parseTextIndent();
-    
+
     bool parseLineBoxContain(bool important);
     bool parseCalculation(CSSParserValue*, CalculationPermittedValueRange);
 
@@ -528,7 +528,7 @@
 
     inline bool inStrictMode() const { return m_context.mode == CSSStrictMode || m_context.mode == SVGAttributeMode; }
     inline bool inQuirksMode() const { return m_context.mode == CSSQuirksMode; }
-    
+
     KURL completeURL(const String& url) const;
 
     void recheckAtKeyword(const UChar* str, int len);
diff --git a/Source/core/css/CSSParserValues.cpp b/Source/core/css/CSSParserValues.cpp
index de0364b..9863e9a 100644
--- a/Source/core/css/CSSParserValues.cpp
+++ b/Source/core/css/CSSParserValues.cpp
@@ -65,7 +65,7 @@
     RefPtr<CSSValue> parsedValue;
     if (id)
         return CSSPrimitiveValue::createIdentifier(id);
-    
+
     if (unit == CSSParserValue::Operator) {
         RefPtr<CSSPrimitiveValue> primitiveValue = CSSPrimitiveValue::createParserOperator(iValue);
         primitiveValue->setPrimitiveType(CSSPrimitiveValue::CSS_PARSER_OPERATOR);
diff --git a/Source/core/css/CSSPrimitiveValue.cpp b/Source/core/css/CSSPrimitiveValue.cpp
index d7945af..5d05e1f 100644
--- a/Source/core/css/CSSPrimitiveValue.cpp
+++ b/Source/core/css/CSSPrimitiveValue.cpp
@@ -176,14 +176,14 @@
     return cache;
 }
 
-unsigned short CSSPrimitiveValue::primitiveType() const 
+unsigned short CSSPrimitiveValue::primitiveType() const
 {
     if (m_primitiveUnitType == CSS_PROPERTY_ID || m_primitiveUnitType == CSS_VALUE_ID)
         return CSS_IDENT;
 
     if (m_primitiveUnitType != CSS_CALC)
-        return m_primitiveUnitType; 
-    
+        return m_primitiveUnitType;
+
     switch (m_value.calc->category()) {
     case CalcNumber:
         return CSS_NUMBER;
@@ -528,7 +528,7 @@
     if (m_primitiveUnitType == CSS_CALC)
         // The multiplier and factor is applied to each value in the calc expression individually
         return m_value.calc->computeLengthPx(style, rootStyle, multiplier, computingFontSize);
-        
+
     double factor;
 
     switch (primitiveType()) {
@@ -672,7 +672,7 @@
 }
 
 double CSSPrimitiveValue::getDoubleValue() const
-{ 
+{
     return m_primitiveUnitType != CSS_CALC ? m_value.num : m_value.calc->doubleValue();
 }
 
@@ -1025,21 +1025,21 @@
                 Color::parseHexColor(m_value.string, rgbColor);
             Color color(rgbColor);
 
-            Vector<LChar> result;
-            result.reserveInitialCapacity(32);
+            StringBuilder result;
+            result.reserveCapacity(32);
             bool colorHasAlpha = color.hasAlpha();
             if (colorHasAlpha)
                 result.append("rgba(", 5);
             else
                 result.append("rgb(", 4);
 
-            appendNumber(result, static_cast<unsigned char>(color.red()));
+            result.appendNumber(static_cast<unsigned char>(color.red()));
             result.append(", ", 2);
 
-            appendNumber(result, static_cast<unsigned char>(color.green()));
+            result.appendNumber(static_cast<unsigned char>(color.green()));
             result.append(", ", 2);
 
-            appendNumber(result, static_cast<unsigned char>(color.blue()));
+            result.appendNumber(static_cast<unsigned char>(color.blue()));
             if (colorHasAlpha) {
                 result.append(", ", 2);
 
@@ -1049,7 +1049,7 @@
             }
 
             result.append(')');
-            text = String::adopt(result);
+            text = result.toString();
             break;
         }
         case CSS_PAIR:
diff --git a/Source/core/css/CSSPrimitiveValue.h b/Source/core/css/CSSPrimitiveValue.h
index 33fc67d..c0c3f4f 100644
--- a/Source/core/css/CSSPrimitiveValue.h
+++ b/Source/core/css/CSSPrimitiveValue.h
@@ -298,7 +298,7 @@
     Pair* getPairValue() const { return m_primitiveUnitType != CSS_PAIR ? 0 : m_value.pair; }
 
     CSSBasicShape* getShapeValue() const { return m_primitiveUnitType != CSS_SHAPE ? 0 : m_value.shape; }
-    
+
     CSSCalcValue* cssCalcValue() const { return m_primitiveUnitType != CSS_CALC ? 0 : m_value.calc; }
 
     CSSPropertyID getPropertyID() const { return m_primitiveUnitType == CSS_PROPERTY_ID ? m_value.propertyID : CSSPropertyInvalid; }
@@ -315,7 +315,7 @@
     void addSubresourceStyleURLs(ListHashSet<KURL>&, const StyleSheetContents*) const;
 
     Length viewportPercentageLength();
-    
+
     PassRefPtr<CSSPrimitiveValue> cloneForCSSOM() const;
     void setCSSOMSafe() { m_isCSSOMSafe = true; }
 
diff --git a/Source/core/css/CSSPrimitiveValue.idl b/Source/core/css/CSSPrimitiveValue.idl
index ff49620..06904da 100644
--- a/Source/core/css/CSSPrimitiveValue.idl
+++ b/Source/core/css/CSSPrimitiveValue.idl
@@ -51,13 +51,13 @@
     const unsigned short CSS_VH         = 27;
     const unsigned short CSS_VMIN       = 28;
     const unsigned short CSS_VMAX       = 29;
-    
+
     readonly attribute unsigned short primitiveType;
 
      [RaisesException] void setFloatValue([Default=Undefined] optional unsigned short unitType,
                                       [Default=Undefined] optional float floatValue);
     [RaisesException] float getFloatValue([Default=Undefined] optional unsigned short unitType);
-     [RaisesException] void setStringValue([Default=Undefined] optional unsigned short stringType, 
+     [RaisesException] void setStringValue([Default=Undefined] optional unsigned short stringType,
                                        [Default=Undefined] optional DOMString stringValue);
     [RaisesException] DOMString getStringValue();
     [RaisesException] Counter getCounterValue();
diff --git a/Source/core/css/CSSProperty.h b/Source/core/css/CSSProperty.h
index f805d95..a400af1 100644
--- a/Source/core/css/CSSProperty.h
+++ b/Source/core/css/CSSProperty.h
@@ -43,12 +43,12 @@
 
     CSSPropertyID shorthandID() const;
 
-    unsigned m_propertyID : 10;
-    unsigned m_isSetFromShorthand : 1;
-    unsigned m_indexInShorthandsVector : 2; // If this property was set as part of an ambiguous shorthand, gives the index in the shorthands vector.
-    unsigned m_important : 1;
-    unsigned m_implicit : 1; // Whether or not the property was set implicitly as the result of a shorthand.
-    unsigned m_inherited : 1;
+    uint16_t m_propertyID : 10;
+    uint16_t m_isSetFromShorthand : 1;
+    uint16_t m_indexInShorthandsVector : 2; // If this property was set as part of an ambiguous shorthand, gives the index in the shorthands vector.
+    uint16_t m_important : 1;
+    uint16_t m_implicit : 1; // Whether or not the property was set implicitly as the result of a shorthand.
+    uint16_t m_inherited : 1;
 };
 
 class CSSProperty {
@@ -80,7 +80,7 @@
     static CSSPropertyID resolveDirectionAwareProperty(CSSPropertyID, TextDirection, WritingMode);
     static bool isInheritedProperty(CSSPropertyID);
 
-    StylePropertyMetadata metadata() const { return m_metadata; }
+    const StylePropertyMetadata& metadata() const { return m_metadata; }
 
 private:
     StylePropertyMetadata m_metadata;
diff --git a/Source/core/css/CSSRuleList.cpp b/Source/core/css/CSSRuleList.cpp
index 51accdc..499518b 100644
--- a/Source/core/css/CSSRuleList.cpp
+++ b/Source/core/css/CSSRuleList.cpp
@@ -34,9 +34,9 @@
 {
 }
 
-StaticCSSRuleList::StaticCSSRuleList() 
+StaticCSSRuleList::StaticCSSRuleList()
     : m_refCount(1)
-{ 
+{
 }
 
 StaticCSSRuleList::~StaticCSSRuleList()
@@ -44,7 +44,7 @@
 }
 
 void StaticCSSRuleList::deref()
-{ 
+{
     ASSERT(m_refCount);
     if (!--m_refCount)
         delete this;
diff --git a/Source/core/css/CSSRuleList.h b/Source/core/css/CSSRuleList.h
index 3023a5d..f65b366 100644
--- a/Source/core/css/CSSRuleList.h
+++ b/Source/core/css/CSSRuleList.h
@@ -41,7 +41,7 @@
 
     virtual unsigned length() const = 0;
     virtual CSSRule* item(unsigned index) const = 0;
-    
+
     virtual CSSStyleSheet* styleSheet() const = 0;
 
 protected:
@@ -56,10 +56,10 @@
     virtual void deref();
 
     Vector<RefPtr<CSSRule> >& rules() { return m_rules; }
-    
+
     virtual CSSStyleSheet* styleSheet() const { return 0; }
 
-private:    
+private:
     StaticCSSRuleList();
     ~StaticCSSRuleList();
 
@@ -75,7 +75,7 @@
 class LiveCSSRuleList : public CSSRuleList {
 public:
     LiveCSSRuleList(Rule* rule) : m_rule(rule) { }
-    
+
     virtual void ref() { m_rule->ref(); }
     virtual void deref() { m_rule->deref(); }
 
@@ -83,7 +83,7 @@
     virtual unsigned length() const { return m_rule->length(); }
     virtual CSSRule* item(unsigned index) const  { return m_rule->item(index); }
     virtual CSSStyleSheet* styleSheet() const { return m_rule->parentStyleSheet(); }
-    
+
     Rule* m_rule;
 };
 
diff --git a/Source/core/css/CSSRuleList.idl b/Source/core/css/CSSRuleList.idl
index e89a820..b2d90d6 100644
--- a/Source/core/css/CSSRuleList.idl
+++ b/Source/core/css/CSSRuleList.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 // Introduced in DOM Level 2:
diff --git a/Source/core/css/CSSSelector.h b/Source/core/css/CSSSelector.h
index 5aa125a..2e56262 100644
--- a/Source/core/css/CSSSelector.h
+++ b/Source/core/css/CSSSelector.h
@@ -267,7 +267,7 @@
             QualifiedName m_attribute; // used for attribute selector
             AtomicString m_argument; // Used for :contains, :lang and :nth-*
             OwnPtr<CSSSelectorList> m_selectorList; // Used for :-webkit-any and :not
-        
+
         private:
             RareData(PassRefPtr<StringImpl> value);
         };
diff --git a/Source/core/css/CSSStyleDeclaration.idl b/Source/core/css/CSSStyleDeclaration.idl
index a10b29f..4f1bdf6 100644
--- a/Source/core/css/CSSStyleDeclaration.idl
+++ b/Source/core/css/CSSStyleDeclaration.idl
@@ -28,8 +28,8 @@
     CSSValue           getPropertyCSSValue([Default=Undefined] optional DOMString propertyName);
     [TreatReturnedNullStringAs=Null, RaisesException] DOMString          removeProperty([Default=Undefined] optional DOMString propertyName);
     [TreatReturnedNullStringAs=Null] DOMString          getPropertyPriority([Default=Undefined] optional DOMString propertyName);
-     [RaisesException] void setProperty([Default=Undefined] optional DOMString propertyName, 
-                                    [TreatNullAs=NullString,Default=Undefined] optional DOMString value, 
+     [RaisesException] void setProperty([Default=Undefined] optional DOMString propertyName,
+                                    [TreatNullAs=NullString,Default=Undefined] optional DOMString value,
                                     [Default=Undefined] optional DOMString priority);
 
     readonly attribute unsigned long    length;
diff --git a/Source/core/css/CSSStyleRule.h b/Source/core/css/CSSStyleRule.h
index 0108862..b9f148b 100644
--- a/Source/core/css/CSSStyleRule.h
+++ b/Source/core/css/CSSStyleRule.h
@@ -53,7 +53,7 @@
 
     String generateSelectorText() const;
 
-    RefPtr<StyleRule> m_styleRule;    
+    RefPtr<StyleRule> m_styleRule;
     mutable RefPtr<StyleRuleCSSStyleDeclaration> m_propertiesCSSOMWrapper;
 };
 
diff --git a/Source/core/css/CSSStyleSheet.cpp b/Source/core/css/CSSStyleSheet.cpp
index d069043..56d6783 100644
--- a/Source/core/css/CSSStyleSheet.cpp
+++ b/Source/core/css/CSSStyleSheet.cpp
@@ -41,14 +41,14 @@
 class StyleSheetCSSRuleList : public CSSRuleList {
 public:
     StyleSheetCSSRuleList(CSSStyleSheet* sheet) : m_styleSheet(sheet) { }
-    
+
 private:
     virtual void ref() { m_styleSheet->ref(); }
     virtual void deref() { m_styleSheet->deref(); }
-    
+
     virtual unsigned length() const { return m_styleSheet->length(); }
     virtual CSSRule* item(unsigned index) const { return m_styleSheet->item(index); }
-    
+
     virtual CSSStyleSheet* styleSheet() const { return m_styleSheet; }
 
     CSSStyleSheet* m_styleSheet;
@@ -68,12 +68,12 @@
 #endif
 
 PassRefPtr<CSSStyleSheet> CSSStyleSheet::create(PassRefPtr<StyleSheetContents> sheet, CSSImportRule* ownerRule)
-{ 
+{
     return adoptRef(new CSSStyleSheet(sheet, ownerRule));
 }
 
 PassRefPtr<CSSStyleSheet> CSSStyleSheet::create(PassRefPtr<StyleSheetContents> sheet, Node* ownerNode)
-{ 
+{
     return adoptRef(new CSSStyleSheet(sheet, ownerNode, false, TextPosition::minimumPosition()));
 }
 
@@ -169,7 +169,7 @@
 }
 
 void CSSStyleSheet::setDisabled(bool disabled)
-{ 
+{
     if (disabled == m_isDisabled)
         return;
     m_isDisabled = disabled;
@@ -266,7 +266,7 @@
     if (!success) {
         ec = HierarchyRequestError;
         return 0;
-    }        
+    }
     if (!m_childRuleCSSOMWrappers.isEmpty())
         m_childRuleCSSOMWrappers.insert(index, RefPtr<CSSRule>());
 
@@ -303,7 +303,7 @@
         text.append(' ');
     text.append('}');
     insertRule(text.toString(), index, ec);
-    
+
     // As per Microsoft documentation, always return -1.
     return -1;
 }
@@ -338,8 +338,8 @@
     return m_contents->isLoading();
 }
 
-MediaList* CSSStyleSheet::media() const 
-{ 
+MediaList* CSSStyleSheet::media() const
+{
     if (!m_mediaQueries)
         return 0;
 
@@ -348,9 +348,9 @@
     return m_mediaCSSOMWrapper.get();
 }
 
-CSSStyleSheet* CSSStyleSheet::parentStyleSheet() const 
-{ 
-    return m_ownerRule ? m_ownerRule->parentStyleSheet() : 0; 
+CSSStyleSheet* CSSStyleSheet::parentStyleSheet() const
+{
+    return m_ownerRule ? m_ownerRule->parentStyleSheet() : 0;
 }
 
 Document* CSSStyleSheet::ownerDocument() const
diff --git a/Source/core/css/CSSStyleSheet.h b/Source/core/css/CSSStyleSheet.h
index e57bc0d..e955bf3 100644
--- a/Source/core/css/CSSStyleSheet.h
+++ b/Source/core/css/CSSStyleSheet.h
@@ -57,17 +57,17 @@
     virtual String title() const OVERRIDE { return m_title; }
     virtual bool disabled() const OVERRIDE { return m_isDisabled; }
     virtual void setDisabled(bool) OVERRIDE;
-    
+
     PassRefPtr<CSSRuleList> cssRules();
     unsigned insertRule(const String& rule, unsigned index, ExceptionCode&);
     void deleteRule(unsigned index, ExceptionCode&);
-    
+
     // IE Extensions
     PassRefPtr<CSSRuleList> rules();
     int addRule(const String& selector, const String& style, int index, ExceptionCode&);
     int addRule(const String& selector, const String& style, ExceptionCode&);
     void removeRule(unsigned index, ExceptionCode& ec) { deleteRule(index, ec); }
-    
+
     // For CSSRuleList.
     unsigned length() const;
     CSSRule* item(unsigned index);
@@ -76,7 +76,7 @@
     virtual CSSRule* ownerRule() const OVERRIDE { return m_ownerRule; }
     virtual KURL baseURL() const OVERRIDE;
     virtual bool isLoading() const OVERRIDE;
-    
+
     void clearOwnerRule() { m_ownerRule = 0; }
     Document* ownerDocument() const;
     MediaQuerySet* mediaQueries() const { return m_mediaQueries.get(); }
@@ -97,7 +97,7 @@
     void willMutateRules();
     void didMutateRules();
     void didMutate();
-    
+
     void clearChildRuleCSSOMWrappers();
     void reattachChildRuleCSSOMWrappers();
 
@@ -114,7 +114,7 @@
     virtual String type() const { return "text/css"; }
 
     bool canAccessRules() const;
-    
+
     RefPtr<StyleSheetContents> m_contents;
     bool m_isInlineStylesheet;
     bool m_isDisabled;
diff --git a/Source/core/css/CSSStyleSheet.idl b/Source/core/css/CSSStyleSheet.idl
index 62350f5..7d00744 100644
--- a/Source/core/css/CSSStyleSheet.idl
+++ b/Source/core/css/CSSStyleSheet.idl
@@ -25,7 +25,7 @@
     readonly attribute CSSRule          ownerRule;
     readonly attribute CSSRuleList      cssRules;
 
-    [RaisesException] unsigned long insertRule([Default=Undefined] optional DOMString rule, 
+    [RaisesException] unsigned long insertRule([Default=Undefined] optional DOMString rule,
                                             [Default=Undefined] optional unsigned long index);
     [RaisesException] void               deleteRule([Default=Undefined] optional unsigned long index);
 
diff --git a/Source/core/css/CSSToStyleMap.cpp b/Source/core/css/CSSToStyleMap.cpp
index 43227c9..272d1a9 100644
--- a/Source/core/css/CSSToStyleMap.cpp
+++ b/Source/core/css/CSSToStyleMap.cpp
@@ -41,12 +41,12 @@
 
 namespace WebCore {
 
-RenderStyle* CSSToStyleMap::style() const
+const RenderStyle* CSSToStyleMap::style() const
 {
     return m_state.style();
 }
-    
-RenderStyle* CSSToStyleMap::rootElementStyle() const
+
+const RenderStyle* CSSToStyleMap::rootElementStyle() const
 {
     return m_state.rootElementStyle();
 }
@@ -55,7 +55,7 @@
 {
     return m_state.useSVGZoomRules();
 }
-    
+
 PassRefPtr<StyleImage> CSSToStyleMap::styleImage(CSSPropertyID propertyId, CSSValue* value)
 {
     return m_elementStyleResources.styleImage(m_state.document()->textLinkColors(), propertyId, value);
@@ -503,7 +503,7 @@
         animation->setTimingFunction(LinearTimingFunction::create());
 }
 
-void CSSToStyleMap::mapNinePieceImage(CSSPropertyID property, CSSValue* value, NinePieceImage& image)
+void CSSToStyleMap::mapNinePieceImage(RenderStyle* mutableStyle, CSSPropertyID property, CSSValue* value, NinePieceImage& image)
 {
     // If we're not a value list, then we are "none" and don't need to alter the empty image at all.
     if (!value || !value->isValueList())
@@ -552,13 +552,13 @@
         // also set the border widths. We don't need to worry about percentages, since we don't even support
         // those on real borders yet.
         if (image.borderSlices().top().isFixed())
-            style()->setBorderTopWidth(image.borderSlices().top().value());
+            mutableStyle->setBorderTopWidth(image.borderSlices().top().value());
         if (image.borderSlices().right().isFixed())
-            style()->setBorderRightWidth(image.borderSlices().right().value());
+            mutableStyle->setBorderRightWidth(image.borderSlices().right().value());
         if (image.borderSlices().bottom().isFixed())
-            style()->setBorderBottomWidth(image.borderSlices().bottom().value());
+            mutableStyle->setBorderBottomWidth(image.borderSlices().bottom().value());
         if (image.borderSlices().left().isFixed())
-            style()->setBorderLeftWidth(image.borderSlices().left().value());
+            mutableStyle->setBorderLeftWidth(image.borderSlices().left().value());
     }
 }
 
diff --git a/Source/core/css/CSSToStyleMap.h b/Source/core/css/CSSToStyleMap.h
index 3c39f83..95eb006 100644
--- a/Source/core/css/CSSToStyleMap.h
+++ b/Source/core/css/CSSToStyleMap.h
@@ -44,10 +44,6 @@
 class CSSToStyleMap {
     WTF_MAKE_NONCOPYABLE(CSSToStyleMap);
 public:
-    // FIXME: This could be const StyleResolverState
-    // except styleImage can include a gradient, which
-    // may resolve a color and may need to flip bits
-    // on StyleResolverState.
     CSSToStyleMap(const StyleResolverState& state, ElementStyleResources& elementStyleResources) : m_state(state), m_elementStyleResources(elementStyleResources) { }
 
     void mapFillAttachment(CSSPropertyID, FillLayer*, CSSValue*) const;
@@ -72,14 +68,14 @@
     void mapAnimationProperty(CSSAnimationData*, CSSValue*) const;
     void mapAnimationTimingFunction(CSSAnimationData*, CSSValue*) const;
 
-    void mapNinePieceImage(CSSPropertyID, CSSValue*, NinePieceImage&);
+    void mapNinePieceImage(RenderStyle* mutableStyle, CSSPropertyID, CSSValue*, NinePieceImage&);
     void mapNinePieceImageSlice(CSSValue*, NinePieceImage&) const;
     LengthBox mapNinePieceImageQuad(CSSValue*) const;
     void mapNinePieceImageRepeat(CSSValue*, NinePieceImage&) const;
 
 private:
-    RenderStyle* style() const;
-    RenderStyle* rootElementStyle() const;
+    const RenderStyle* style() const;
+    const RenderStyle* rootElementStyle() const;
     bool useSVGZoomRules() const;
 
     PassRefPtr<StyleImage> styleImage(CSSPropertyID, CSSValue*);
diff --git a/Source/core/css/CSSValue.cpp b/Source/core/css/CSSValue.cpp
index bce2645..cdba0f0 100644
--- a/Source/core/css/CSSValue.cpp
+++ b/Source/core/css/CSSValue.cpp
@@ -74,7 +74,7 @@
     String cssText() const { return m_cssText; }
 
 private:
-    TextCloneCSSValue(ClassType classType, const String& text) 
+    TextCloneCSSValue(ClassType classType, const String& text)
         : CSSValue(classType, /*isCSSOMSafe*/ true)
         , m_cssText(text)
     {
diff --git a/Source/core/css/CSSValue.h b/Source/core/css/CSSValue.h
index 2becdcf..0d94c79 100644
--- a/Source/core/css/CSSValue.h
+++ b/Source/core/css/CSSValue.h
@@ -96,10 +96,10 @@
     bool isSVGColor() const { return m_classType == SVGColorClass || m_classType == SVGPaintClass; }
     bool isSVGPaint() const { return m_classType == SVGPaintClass; }
     bool isCSSSVGDocumentValue() const { return m_classType == CSSSVGDocumentClass; }
-    
+
     bool isCSSOMSafe() const { return m_isCSSOMSafe; }
     bool isSubtypeExposedToCSSOM() const
-    { 
+    {
         return isPrimitiveValue() || isSVGColor() || isValueList();
     }
 
diff --git a/Source/core/css/CSSValue.idl b/Source/core/css/CSSValue.idl
index e8a4a13..9ac1fc8 100644
--- a/Source/core/css/CSSValue.idl
+++ b/Source/core/css/CSSValue.idl
@@ -20,7 +20,7 @@
 
 [
     CustomToV8,
-    
+
     DependentLifetime
 ] interface CSSValue {
 
diff --git a/Source/core/css/CSSValueList.h b/Source/core/css/CSSValueList.h
index e375ceb..eee33ca 100644
--- a/Source/core/css/CSSValueList.h
+++ b/Source/core/css/CSSValueList.h
@@ -67,7 +67,7 @@
     void addSubresourceStyleURLs(ListHashSet<KURL>&, const StyleSheetContents*) const;
 
     bool hasFailedOrCanceledSubresources() const;
-    
+
     PassRefPtr<CSSValueList> cloneForCSSOM() const;
 
 protected:
diff --git a/Source/core/css/CSSValueList.idl b/Source/core/css/CSSValueList.idl
index 7d0b63e..ea58b39 100644
--- a/Source/core/css/CSSValueList.idl
+++ b/Source/core/css/CSSValueList.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 // Introduced in DOM Level 2:
diff --git a/Source/core/css/Counter.h b/Source/core/css/Counter.h
index e099897..cb73a3d 100644
--- a/Source/core/css/Counter.h
+++ b/Source/core/css/Counter.h
@@ -49,7 +49,7 @@
             && listStyle() == other.listStyle()
             && separator() == other.separator();
     }
-    
+
     PassRefPtr<Counter> cloneForCSSOM() const
     {
         return create(m_identifier ? m_identifier->cloneForCSSOM() : 0
diff --git a/Source/core/css/DocumentRuleSets.cpp b/Source/core/css/DocumentRuleSets.cpp
index 46405b2..ca2cc21 100644
--- a/Source/core/css/DocumentRuleSets.cpp
+++ b/Source/core/css/DocumentRuleSets.cpp
@@ -32,6 +32,7 @@
 #include "core/css/CSSDefaultStyleSheets.h"
 #include "core/css/CSSStyleSheet.h"
 #include "core/css/StyleSheetContents.h"
+#include "core/css/resolver/MatchRequest.h"
 #include "core/css/resolver/StyleResolver.h"
 #include "core/dom/DocumentStyleSheetCollection.h"
 
diff --git a/Source/core/css/ElementRuleCollector.h b/Source/core/css/ElementRuleCollector.h
index 234f7fd..043963e 100644
--- a/Source/core/css/ElementRuleCollector.h
+++ b/Source/core/css/ElementRuleCollector.h
@@ -24,6 +24,7 @@
 
 #include "core/css/PseudoStyleRequest.h"
 #include "core/css/SelectorChecker.h"
+#include "core/css/resolver/MatchRequest.h"
 #include "core/css/resolver/MatchResult.h"
 #include "core/css/resolver/StyleResolverState.h" // For ElementResolveContext
 #include "wtf/RefPtr.h"
@@ -33,7 +34,6 @@
 
 class CSSRuleList;
 class DocumentRuleSets;
-class MatchRequest;
 class RenderRegion;
 class RuleData;
 class RuleSet;
diff --git a/Source/core/css/MediaList.idl b/Source/core/css/MediaList.idl
index 1aba7ce..9d26617 100644
--- a/Source/core/css/MediaList.idl
+++ b/Source/core/css/MediaList.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 // Introduced in DOM Level 2:
diff --git a/Source/core/css/MediaQueryListListener.idl b/Source/core/css/MediaQueryListListener.idl
index d8ff09e..755c416 100644
--- a/Source/core/css/MediaQueryListListener.idl
+++ b/Source/core/css/MediaQueryListListener.idl
@@ -18,7 +18,7 @@
  */
 
 [
-    
+
     CPPPureInterface
 ] interface MediaQueryListListener {
     void queryChanged([Default=Undefined] optional MediaQueryList list);
diff --git a/Source/core/css/Pair.h b/Source/core/css/Pair.h
index 6c73b76..b4446b3 100644
--- a/Source/core/css/Pair.h
+++ b/Source/core/css/Pair.h
@@ -52,7 +52,7 @@
 
     String cssText() const
     {
-    
+
         return generateCSSString(first()->cssText(), second()->cssText());
     }
 
@@ -63,7 +63,7 @@
         return generateCSSString(first()->customSerializeResolvingVariables(variables),
                                  second()->customSerializeResolvingVariables(variables));
     }
-    
+
     bool hasVariableReference() const { return first()->hasVariableReference() || second()->hasVariableReference(); }
 
 private:
diff --git a/Source/core/css/PropertySetCSSStyleDeclaration.cpp b/Source/core/css/PropertySetCSSStyleDeclaration.cpp
index 74a46aa..27f0159 100644
--- a/Source/core/css/PropertySetCSSStyleDeclaration.cpp
+++ b/Source/core/css/PropertySetCSSStyleDeclaration.cpp
@@ -122,13 +122,13 @@
 } // namespace
 
 void PropertySetCSSStyleDeclaration::ref()
-{ 
+{
     m_propertySet->ref();
 }
 
 void PropertySetCSSStyleDeclaration::deref()
 {
-    m_propertySet->deref(); 
+    m_propertySet->deref();
 }
 
 unsigned PropertySetCSSStyleDeclaration::length() const
@@ -147,7 +147,7 @@
 {
     return m_propertySet->asText();
 }
-    
+
 void PropertySetCSSStyleDeclaration::setCssText(const String& text, ExceptionCode& ec)
 {
     StyleAttributeMutationScope mutationScope(this);
@@ -159,7 +159,7 @@
 
     didMutate(PropertyChanged);
 
-    mutationScope.enqueueMutationRecord();    
+    mutationScope.enqueueMutationRecord();
 }
 
 PassRefPtr<CSSValue> PropertySetCSSStyleDeclaration::getPropertyCSSValue(const String& propertyName)
@@ -254,12 +254,12 @@
 }
 
 String PropertySetCSSStyleDeclaration::getPropertyValueInternal(CSSPropertyID propertyID)
-{ 
+{
     return m_propertySet->getPropertyValue(propertyID);
 }
 
 void PropertySetCSSStyleDeclaration::setPropertyInternal(CSSPropertyID propertyID, const String& value, bool important, ExceptionCode& ec)
-{ 
+{
     StyleAttributeMutationScope mutationScope(this);
     willMutate();
 
@@ -327,7 +327,7 @@
     // FIXME: It is likely that the identity is not important for web compatibility and this code should be removed.
     if (!m_cssomCSSValueClones)
         m_cssomCSSValueClones = adoptPtr(new HashMap<CSSValue*, RefPtr<CSSValue> >);
-    
+
     RefPtr<CSSValue>& clonedValue = m_cssomCSSValueClones->add(internalValue, RefPtr<CSSValue>()).iterator->value;
     if (!clonedValue)
         clonedValue = internalValue->cloneForCSSOM();
@@ -335,7 +335,7 @@
 }
 
 StyleSheetContents* PropertySetCSSStyleDeclaration::contextStyleSheet() const
-{ 
+{
     CSSStyleSheet* cssStyleSheet = parentStyleSheet();
     return cssStyleSheet ? cssStyleSheet->contents() : 0;
 }
@@ -349,11 +349,11 @@
 {
     return m_propertySet->propertyMatches(propertyID, propertyValue);
 }
-    
+
 StyleRuleCSSStyleDeclaration::StyleRuleCSSStyleDeclaration(MutableStylePropertySet* propertySet, CSSRule* parentRule)
     : PropertySetCSSStyleDeclaration(propertySet)
     , m_refCount(1)
-    , m_parentRule(parentRule) 
+    , m_parentRule(parentRule)
 {
     m_propertySet->ref();
 }
@@ -364,12 +364,12 @@
 }
 
 void StyleRuleCSSStyleDeclaration::ref()
-{ 
+{
     ++m_refCount;
 }
 
 void StyleRuleCSSStyleDeclaration::deref()
-{ 
+{
     ASSERT(m_refCount);
     if (!--m_refCount)
         delete this;
diff --git a/Source/core/css/PropertySetCSSStyleDeclaration.h b/Source/core/css/PropertySetCSSStyleDeclaration.h
index 3584978..85169d5 100644
--- a/Source/core/css/PropertySetCSSStyleDeclaration.h
+++ b/Source/core/css/PropertySetCSSStyleDeclaration.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PropertySetCSSStyleDeclaration_h
@@ -42,11 +42,11 @@
 class PropertySetCSSStyleDeclaration : public CSSStyleDeclaration {
 public:
     PropertySetCSSStyleDeclaration(MutableStylePropertySet* propertySet) : m_propertySet(propertySet) { }
-    
+
     virtual Element* parentElement() const { return 0; }
     virtual void clearParentElement() { ASSERT_NOT_REACHED(); }
     StyleSheetContents* contextStyleSheet() const;
-    
+
     virtual void ref() OVERRIDE;
     virtual void deref() OVERRIDE;
 
@@ -77,7 +77,7 @@
     virtual PassRefPtr<MutableStylePropertySet> copyProperties() const OVERRIDE;
 
     CSSValue* cloneAndCacheForCSSOM(CSSValue*);
-    
+
 protected:
     enum MutationType { NoChanges, PropertyChanged };
     virtual void willMutate() { }
@@ -96,7 +96,7 @@
     }
 
     void clearParentRule() { m_parentRule = 0; }
-    
+
     virtual void ref() OVERRIDE;
     virtual void deref() OVERRIDE;
 
@@ -122,7 +122,7 @@
 public:
     InlineCSSStyleDeclaration(MutableStylePropertySet* propertySet, Element* parentElement)
         : PropertySetCSSStyleDeclaration(propertySet)
-        , m_parentElement(parentElement) 
+        , m_parentElement(parentElement)
     {
     }
 
diff --git a/Source/core/css/Rect.h b/Source/core/css/Rect.h
index 0b6490b..21978cd 100644
--- a/Source/core/css/Rect.h
+++ b/Source/core/css/Rect.h
@@ -77,7 +77,7 @@
 class Rect : public RectBase, public RefCounted<Rect> {
 public:
     static PassRefPtr<Rect> create() { return adoptRef(new Rect); }
-    
+
     PassRefPtr<Rect> cloneForCSSOM() const { return adoptRef(new Rect(*this)); }
 
     String cssText() const
@@ -105,7 +105,7 @@
 class Quad : public RectBase, public RefCounted<Quad> {
 public:
     static PassRefPtr<Quad> create() { return adoptRef(new Quad); }
-    
+
     PassRefPtr<Quad> cloneForCSSOM() const { return adoptRef(new Quad(*this)); }
 
     String cssText() const
diff --git a/Source/core/css/RuleSet.cpp b/Source/core/css/RuleSet.cpp
index 71e89a8..f2f2eb2 100644
--- a/Source/core/css/RuleSet.cpp
+++ b/Source/core/css/RuleSet.cpp
@@ -225,7 +225,7 @@
     bool foundSiblingSelector = false;
     for (const CSSSelector* selector = ruleData.selector(); selector; selector = selector->tagHistory()) {
         features.collectFeaturesFromSelector(selector);
-        
+
         if (const CSSSelectorList* selectorList = selector->selectorList()) {
             for (const CSSSelector* subSelector = selectorList->first(); subSelector; subSelector = CSSSelectorList::next(subSelector)) {
                 if (!foundSiblingSelector && selector->isSiblingSelector())
@@ -240,7 +240,7 @@
     if (ruleData.containsUncommonAttributeSelector())
         features.uncommonAttributeRules.append(RuleFeature(ruleData.rule(), ruleData.selectorIndex(), ruleData.hasDocumentSecurityOrigin()));
 }
-    
+
 void RuleSet::addToRuleSet(StringImpl* key, PendingRuleMap& map, const RuleData& ruleData)
 {
     if (!key)
diff --git a/Source/core/css/RuleSet.h b/Source/core/css/RuleSet.h
index 69f2b27..eb10e8d 100644
--- a/Source/core/css/RuleSet.h
+++ b/Source/core/css/RuleSet.h
@@ -36,7 +36,7 @@
     RuleCanUseFastCheckSelector   = 1 << 1,
     RuleIsInRegionRule            = 1 << 2,
 };
-    
+
 enum PropertyWhitelistType {
     PropertyWhitelistNone   = 0,
     PropertyWhitelistRegion,
@@ -88,7 +88,7 @@
     unsigned m_hasDocumentSecurityOrigin : 1;
     unsigned m_propertyWhitelistType : 2;
 };
-    
+
 struct SameSizeAsRuleData {
     void* a;
     unsigned b;
diff --git a/Source/core/css/StyleColor.cpp b/Source/core/css/StyleColor.cpp
index b40673a..d6d2d30 100644
--- a/Source/core/css/StyleColor.cpp
+++ b/Source/core/css/StyleColor.cpp
@@ -29,8 +29,6 @@
 #include "core/platform/HashTools.h"
 #include "wtf/text/WTFString.h"
 
-using namespace std;
-
 namespace WebCore {
 
 StyleColor::StyleColor(const String& name)
diff --git a/Source/core/css/StyleMedia.idl b/Source/core/css/StyleMedia.idl
index 27424f3..370eee8 100644
--- a/Source/core/css/StyleMedia.idl
+++ b/Source/core/css/StyleMedia.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/css/StylePropertySet.cpp b/Source/core/css/StylePropertySet.cpp
index a066caf..3f84e58 100644
--- a/Source/core/css/StylePropertySet.cpp
+++ b/Source/core/css/StylePropertySet.cpp
@@ -2,6 +2,7 @@
  * (C) 1999-2003 Lars Knoll (knoll@kde.org)
  * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 Apple Inc. All rights reserved.
  * Copyright (C) 2011 Research In Motion Limited. All rights reserved.
+ * Copyright (C) 2013 Intel Corporation. All rights reserved.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -367,7 +368,6 @@
 
 void MutableStylePropertySet::mergeAndOverrideOnConflict(const StylePropertySet* other)
 {
-    ASSERT(isMutable());
     unsigned size = other->propertyCount();
     for (unsigned n = 0; n < size; ++n) {
         PropertyReference toMerge = other->propertyAt(n);
@@ -477,8 +477,11 @@
 
 int StylePropertySet::findPropertyIndex(CSSPropertyID propertyID) const
 {
+    // Convert here propertyID into an uint16_t to compare it with the metadata's m_propertyID to avoid
+    // the compiler converting it to an int multiple times in the loop.
+    uint16_t id = static_cast<uint16_t>(propertyID);
     for (int n = propertyCount() - 1 ; n >= 0; --n) {
-        if (propertyID == propertyAt(n).id()) {
+        if (id == propertyAt(n).propertyMetadata().m_propertyID) {
             // Only enabled properties should be part of the style.
             ASSERT(RuntimeCSSEnabled::isCSSPropertyEnabled(propertyID));
             return n;
@@ -513,7 +516,7 @@
         return false;
     return propertyAt(foundPropertyIndex).value()->equals(*propertyValue);
 }
-    
+
 void MutableStylePropertySet::removeEquivalentProperties(const StylePropertySet* style)
 {
     Vector<CSSPropertyID> propertiesToRemove;
@@ -522,7 +525,7 @@
         PropertyReference property = propertyAt(i);
         if (style->propertyMatches(property.id(), property.value()))
             propertiesToRemove.append(property.id());
-    }    
+    }
     // FIXME: This should use mass removal.
     for (unsigned i = 0; i < propertiesToRemove.size(); ++i)
         removeProperty(propertiesToRemove[i]);
@@ -536,7 +539,7 @@
         PropertyReference property = propertyAt(i);
         if (style->cssPropertyMatches(property.id(), property.value()))
             propertiesToRemove.append(property.id());
-    }    
+    }
     // FIXME: This should use mass removal.
     for (unsigned i = 0; i < propertiesToRemove.size(); ++i)
         removeProperty(propertiesToRemove[i]);
diff --git a/Source/core/css/StylePropertySet.h b/Source/core/css/StylePropertySet.h
index 9bf6a56..07d943b 100644
--- a/Source/core/css/StylePropertySet.h
+++ b/Source/core/css/StylePropertySet.h
@@ -73,8 +73,9 @@
         // FIXME: Remove this.
         CSSProperty toCSSProperty() const { return CSSProperty(propertyMetadata(), const_cast<CSSValue*>(propertyValue())); }
 
+        const StylePropertyMetadata& propertyMetadata() const;
+
     private:
-        StylePropertyMetadata propertyMetadata() const;
         const CSSValue* propertyValue() const;
 
         const StylePropertySet& m_propertySet;
@@ -106,7 +107,7 @@
     PassRefPtr<ImmutableStylePropertySet> immutableCopyIfNeeded() const;
 
     PassRefPtr<MutableStylePropertySet> copyPropertiesInSet(const Vector<CSSPropertyID>&) const;
-    
+
     String asText() const;
 
     bool isMutable() const { return m_isMutable; }
@@ -164,12 +165,12 @@
 
 inline const CSSValue** ImmutableStylePropertySet::valueArray() const
 {
-    return reinterpret_cast<const CSSValue**>(const_cast<const void**>((&static_cast<const ImmutableStylePropertySet*>(this)->m_storage)));
+    return reinterpret_cast<const CSSValue**>(const_cast<const void**>(&(this->m_storage)));
 }
 
 inline const StylePropertyMetadata* ImmutableStylePropertySet::metadataArray() const
 {
-    return reinterpret_cast<const StylePropertyMetadata*>(&reinterpret_cast<const char*>((&static_cast<const ImmutableStylePropertySet*>(this)->m_storage))[m_arraySize * sizeof(CSSValue*)]);
+    return reinterpret_cast<const StylePropertyMetadata*>(&reinterpret_cast<const char*>(&(this->m_storage))[m_arraySize * sizeof(CSSValue*)]);
 }
 
 class MutableStylePropertySet : public StylePropertySet {
@@ -226,7 +227,7 @@
     friend class StylePropertySet;
 };
 
-inline StylePropertyMetadata StylePropertySet::PropertyReference::propertyMetadata() const
+inline const StylePropertyMetadata& StylePropertySet::PropertyReference::propertyMetadata() const
 {
     if (m_propertySet.isMutable())
         return static_cast<const MutableStylePropertySet&>(m_propertySet).m_propertyVector.at(m_index).metadata();
diff --git a/Source/core/css/StyleRule.cpp b/Source/core/css/StyleRule.cpp
index 82ac896..2979e18 100644
--- a/Source/core/css/StyleRule.cpp
+++ b/Source/core/css/StyleRule.cpp
@@ -51,7 +51,7 @@
 }
 
 PassRefPtr<CSSRule> StyleRuleBase::createCSSOMWrapper(CSSRule* parentRule) const
-{ 
+{
     return createCSSOMWrapper(0, parentRule);
 }
 
@@ -215,7 +215,7 @@
 }
 
 void StyleRule::setProperties(PassRefPtr<StylePropertySet> properties)
-{ 
+{
     m_properties = properties;
 }
 
@@ -243,7 +243,7 @@
 }
 
 void StyleRulePage::setProperties(PassRefPtr<StylePropertySet> properties)
-{ 
+{
     m_properties = properties;
 }
 
@@ -270,7 +270,7 @@
 }
 
 void StyleRuleFontFace::setProperties(PassRefPtr<StylePropertySet> properties)
-{ 
+{
     m_properties = properties;
 }
 
@@ -292,7 +292,7 @@
 {
     m_childRules.insert(index, rule);
 }
-    
+
 void StyleRuleGroup::wrapperRemoveRule(unsigned index)
 {
     m_childRules.remove(index);
diff --git a/Source/core/css/StyleRule.h b/Source/core/css/StyleRule.h
index 2bffe36..5cb897e 100644
--- a/Source/core/css/StyleRule.h
+++ b/Source/core/css/StyleRule.h
@@ -91,7 +91,7 @@
 
 private:
     void destroy();
-    
+
     PassRefPtr<CSSRule> createCSSOMWrapper(CSSStyleSheet* parentSheet, CSSRule* parentRule) const;
 
     unsigned m_type : 5;
@@ -102,13 +102,13 @@
     WTF_MAKE_FAST_ALLOCATED;
 public:
     static PassRefPtr<StyleRule> create(int sourceLine) { return adoptRef(new StyleRule(sourceLine)); }
-    
+
     ~StyleRule();
 
     const CSSSelectorList& selectorList() const { return m_selectorList; }
     const StylePropertySet* properties() const { return m_properties.get(); }
     MutableStylePropertySet* mutableProperties();
-    
+
     void parserAdoptSelectorVector(Vector<OwnPtr<CSSParserSelector> >& selectors) { m_selectorList.adoptSelectorVector(selectors); }
     void wrapperAdoptSelectorList(CSSSelectorList& selectors) { m_selectorList.adopt(selectors); }
     void setProperties(PassRefPtr<StylePropertySet>);
@@ -134,7 +134,7 @@
 class StyleRuleFontFace : public StyleRuleBase {
 public:
     static PassRefPtr<StyleRuleFontFace> create() { return adoptRef(new StyleRuleFontFace); }
-    
+
     ~StyleRuleFontFace();
 
     const StylePropertySet* properties() const { return m_properties.get(); }
@@ -157,7 +157,7 @@
 
     ~StyleRulePage();
 
-    const CSSSelector* selector() const { return m_selectorList.first(); }    
+    const CSSSelector* selector() const { return m_selectorList.first(); }
     const StylePropertySet* properties() const { return m_properties.get(); }
     MutableStylePropertySet* mutableProperties();
 
@@ -170,7 +170,7 @@
 private:
     StyleRulePage();
     StyleRulePage(const StyleRulePage&);
-    
+
     RefPtr<StylePropertySet> m_properties;
     CSSSelectorList m_selectorList;
 };
@@ -178,14 +178,14 @@
 class StyleRuleGroup : public StyleRuleBase {
 public:
     const Vector<RefPtr<StyleRuleBase> >& childRules() const { return m_childRules; }
-    
+
     void wrapperInsertRule(unsigned, PassRefPtr<StyleRuleBase>);
     void wrapperRemoveRule(unsigned);
 
 protected:
     StyleRuleGroup(Type, Vector<RefPtr<StyleRuleBase> >& adoptRule);
     StyleRuleGroup(const StyleRuleGroup&);
-    
+
 private:
     Vector<RefPtr<StyleRuleBase> > m_childRules;
 };
@@ -241,7 +241,7 @@
 private:
     StyleRuleRegion(Vector<OwnPtr<CSSParserSelector> >*, Vector<RefPtr<StyleRuleBase> >& adoptRules);
     StyleRuleRegion(const StyleRuleRegion&);
-    
+
     CSSSelectorList m_selectorList;
 };
 
diff --git a/Source/core/css/StyleRuleImport.h b/Source/core/css/StyleRuleImport.h
index cc0d9b5..ab77044 100644
--- a/Source/core/css/StyleRuleImport.h
+++ b/Source/core/css/StyleRuleImport.h
@@ -38,7 +38,7 @@
     static PassRefPtr<StyleRuleImport> create(const String& href, PassRefPtr<MediaQuerySet>);
 
     ~StyleRuleImport();
-    
+
     StyleSheetContents* parentStyleSheet() const { return m_parentStyleSheet; }
     void setParentStyleSheet(StyleSheetContents* sheet) { ASSERT(sheet); m_parentStyleSheet = sheet; }
     void clearParentStyleSheet() { m_parentStyleSheet = 0; }
diff --git a/Source/core/css/StyleSheetContents.cpp b/Source/core/css/StyleSheetContents.cpp
index 03c10d8..891fa78 100644
--- a/Source/core/css/StyleSheetContents.cpp
+++ b/Source/core/css/StyleSheetContents.cpp
@@ -37,7 +37,7 @@
 // Rough size estimate for the memory cache.
 unsigned StyleSheetContents::estimatedSizeInBytes() const
 {
-    // Note that this does not take into account size of the strings hanging from various objects. 
+    // Note that this does not take into account size of the strings hanging from various objects.
     // The assumption is that nearly all of of them are atomic and would exist anyway.
     unsigned size = sizeof(*this);
 
@@ -185,7 +185,7 @@
 {
     // Parser enforces that there is ever only one @charset.
     ASSERT(m_encodingFromCharsetRule.isNull());
-    m_encodingFromCharsetRule = encoding; 
+    m_encodingFromCharsetRule = encoding;
 }
 
 bool StyleSheetContents::wrapperInsertRule(PassRefPtr<StyleRuleBase> rule, unsigned index)
@@ -194,7 +194,7 @@
     ASSERT_WITH_SECURITY_IMPLICATION(index <= ruleCount());
     // Parser::parseRule doesn't currently allow @charset so we don't need to deal with it.
     ASSERT(!rule->isCharsetRule());
-    
+
     unsigned childVectorIndex = index;
     // m_childRules does not contain @charset which is always in index 0 if it exists.
     if (hasCharsetRule()) {
@@ -204,7 +204,7 @@
         }
         --childVectorIndex;
     }
-    
+
     if (childVectorIndex < m_importRules.size() || (childVectorIndex == m_importRules.size() && rule->isImportRule())) {
         // Inserting non-import rule before @import is not allowed.
         if (!rule->isImportRule())
@@ -219,7 +219,7 @@
     if (rule->isImportRule())
         return false;
     childVectorIndex -= m_importRules.size();
- 
+
     m_childRules.insert(childVectorIndex, rule);
     return true;
 }
@@ -403,7 +403,7 @@
 
     while (!styleSheetQueue.isEmpty()) {
         StyleSheetContents* styleSheet = styleSheetQueue.takeFirst();
-        
+
         for (unsigned i = 0; i < styleSheet->m_importRules.size(); ++i) {
             StyleRuleImport* importRule = styleSheet->m_importRules[i].get();
             if (importRule->styleSheet()) {
diff --git a/Source/core/css/StyleSheetContents.h b/Source/core/css/StyleSheetContents.h
index 0362f95..ee0c872 100644
--- a/Source/core/css/StyleSheetContents.h
+++ b/Source/core/css/StyleSheetContents.h
@@ -57,7 +57,7 @@
     }
 
     ~StyleSheetContents();
-    
+
     const CSSParserContext& parserContext() const { return m_parserContext; }
 
     const AtomicString& determineNamespace(const AtomicString& prefix);
@@ -93,7 +93,7 @@
 
     void parserAddNamespace(const AtomicString& prefix, const AtomicString& uri);
     void parserAppendRule(PassRefPtr<StyleRuleBase>);
-    void parserSetEncodingFromCharsetRule(const String& encoding); 
+    void parserSetEncodingFromCharsetRule(const String& encoding);
     void parserSetUsesRemUnits(bool b) { m_usesRemUnits = b; }
 
     void clearRules();
@@ -105,11 +105,11 @@
     const Vector<RefPtr<StyleRuleImport> >& importRules() const { return m_importRules; }
 
     void notifyLoadedSheet(const CachedCSSStyleSheet*);
-    
+
     StyleSheetContents* parentStyleSheet() const;
     StyleRuleImport* ownerRule() const { return m_ownerRule; }
     void clearOwnerRule() { m_ownerRule = 0; }
-    
+
     // Note that href is the URL that started the redirect chain that led to
     // this style sheet. This property probably isn't useful for much except
     // the JavaScript binding (which needs to use this value for security).
@@ -122,7 +122,7 @@
     bool usesRemUnits() const { return m_usesRemUnits; }
 
     unsigned estimatedSizeInBytes() const;
-    
+
     bool wrapperInsertRule(PassRefPtr<StyleRuleBase>, unsigned index);
     void wrapperDeleteRule(unsigned index);
 
@@ -164,7 +164,7 @@
     bool m_usesRemUnits : 1;
     bool m_isMutable : 1;
     bool m_isInMemoryCache : 1;
-    
+
     CSSParserContext m_parserContext;
 
     Vector<CSSStyleSheet*> m_clients;
diff --git a/Source/core/css/WebKitCSSFilterValue.idl b/Source/core/css/WebKitCSSFilterValue.idl
index 52500df..c6f4b80 100644
--- a/Source/core/css/WebKitCSSFilterValue.idl
+++ b/Source/core/css/WebKitCSSFilterValue.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/css/WebKitCSSKeyframesRule.idl b/Source/core/css/WebKitCSSKeyframesRule.idl
index 5fdc800..94a3609 100644
--- a/Source/core/css/WebKitCSSKeyframesRule.idl
+++ b/Source/core/css/WebKitCSSKeyframesRule.idl
@@ -33,7 +33,7 @@
 
     [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString name;
     readonly attribute CSSRuleList cssRules;
-    
+
     [ImplementedAs=item, NotEnumerable] getter WebKitCSSKeyframeRule(unsigned long index);
     void insertRule([Default=Undefined] optional DOMString rule);
     void deleteRule([Default=Undefined] optional DOMString key);
diff --git a/Source/core/css/WebKitCSSMatrix.idl b/Source/core/css/WebKitCSSMatrix.idl
index fa581b4..b3232da 100644
--- a/Source/core/css/WebKitCSSMatrix.idl
+++ b/Source/core/css/WebKitCSSMatrix.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 // Introduced in DOM Level ?:
@@ -56,39 +56,39 @@
     attribute double m44;
 
     [RaisesException] void setMatrixValue([Default=Undefined] optional DOMString string);
-    
+
     // Multiply this matrix by secondMatrix, on the right (result = this * secondMatrix)
     [Immutable] WebKitCSSMatrix multiply([Default=Undefined] optional WebKitCSSMatrix secondMatrix);
-    
+
     // Return the inverse of this matrix. Throw an exception if the matrix is not invertible
     [Immutable, RaisesException] WebKitCSSMatrix inverse();
-    
+
     // Return this matrix translated by the passed values.
-    // Passing a NaN will use a value of 0. This allows the 3D form to used for 2D operations    
-    [Immutable] WebKitCSSMatrix translate([Default=Undefined] optional double x, 
-                                          [Default=Undefined] optional double y, 
+    // Passing a NaN will use a value of 0. This allows the 3D form to used for 2D operations
+    [Immutable] WebKitCSSMatrix translate([Default=Undefined] optional double x,
+                                          [Default=Undefined] optional double y,
                                           [Default=Undefined] optional double z);
-    
+
     // Returns this matrix scaled by the passed values.
-    // Passing scaleX or scaleZ as NaN uses a value of 1, but passing scaleY of NaN 
+    // Passing scaleX or scaleZ as NaN uses a value of 1, but passing scaleY of NaN
     // makes it the same as scaleX. This allows the 3D form to used for 2D operations
-    [Immutable] WebKitCSSMatrix scale([Default=Undefined] optional double scaleX, 
-                                      [Default=Undefined] optional double scaleY, 
+    [Immutable] WebKitCSSMatrix scale([Default=Undefined] optional double scaleX,
+                                      [Default=Undefined] optional double scaleY,
                                       [Default=Undefined] optional double scaleZ);
-    
+
     // Returns this matrix rotated by the passed values.
     // If rotY and rotZ are NaN, rotate about Z (rotX=0, rotateY=0, rotateZ=rotX).
-    // Otherwise use a rotation value of 0 for any passed NaN.    
-    [Immutable] WebKitCSSMatrix rotate([Default=Undefined] optional double rotX, 
-                                       [Default=Undefined] optional double rotY, 
+    // Otherwise use a rotation value of 0 for any passed NaN.
+    [Immutable] WebKitCSSMatrix rotate([Default=Undefined] optional double rotX,
+                                       [Default=Undefined] optional double rotY,
                                        [Default=Undefined] optional double rotZ);
-    
+
     // Returns this matrix rotated about the passed axis by the passed angle.
     // Passing a NaN will use a value of 0. If the axis is (0,0,0) use a value
     // of (0,0,1).
-    [Immutable] WebKitCSSMatrix rotateAxisAngle([Default=Undefined] optional double x, 
-                                                [Default=Undefined] optional double y, 
-                                                [Default=Undefined] optional double z, 
+    [Immutable] WebKitCSSMatrix rotateAxisAngle([Default=Undefined] optional double x,
+                                                [Default=Undefined] optional double y,
+                                                [Default=Undefined] optional double z,
                                                 [Default=Undefined] optional double angle);
 
     // Returns this matrix skewed along the X axis by the passed values.
diff --git a/Source/core/css/resolver/FontBuilder.cpp b/Source/core/css/resolver/FontBuilder.cpp
index 8eb3573..487470f 100644
--- a/Source/core/css/resolver/FontBuilder.cpp
+++ b/Source/core/css/resolver/FontBuilder.cpp
@@ -281,7 +281,7 @@
 }
 
 // FIXME: Have to pass RenderStyles here for calc/computed values. This shouldn't be neecessary.
-void FontBuilder::setFontSizeValue(CSSValue* value, RenderStyle* parentStyle, RenderStyle* rootElementStyle, float effectiveZoom)
+void FontBuilder::setFontSizeValue(CSSValue* value, RenderStyle* parentStyle, const RenderStyle* rootElementStyle, float effectiveZoom)
 {
     if (!value->isPrimitiveValue())
         return;
diff --git a/Source/core/css/resolver/FontBuilder.h b/Source/core/css/resolver/FontBuilder.h
index 877fd8d..78c1740 100644
--- a/Source/core/css/resolver/FontBuilder.h
+++ b/Source/core/css/resolver/FontBuilder.h
@@ -58,7 +58,7 @@
 
     void setFontSizeInitial(float effectiveZoom);
     void setFontSizeInherit(const FontDescription&, float effectiveZoom);
-    void setFontSizeValue(CSSValue*, RenderStyle* parentStyle, RenderStyle* rootElementStyle, float effectiveZoom);
+    void setFontSizeValue(CSSValue*, RenderStyle* parentStyle, const RenderStyle* rootElementStyle, float effectiveZoom);
 
     void setWeight(FontWeight);
     void setWeightBolder();
diff --git a/Source/core/css/resolver/MatchRequest.h b/Source/core/css/resolver/MatchRequest.h
new file mode 100644
index 0000000..2986361
--- /dev/null
+++ b/Source/core/css/resolver/MatchRequest.h
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
+ * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
+ * Copyright (C) 2013 Google Inc. All rights reserved.
+ *
+ * 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.
+ *
+ */
+
+#ifndef MatchRequest_h
+#define MatchRequest_h
+
+#include "core/css/RuleSet.h"
+
+namespace WebCore {
+
+class ContainerNode;
+
+class MatchRequest {
+public:
+    MatchRequest(RuleSet* ruleSet, bool includeEmptyRules = false, const ContainerNode* scope = 0)
+        : ruleSet(ruleSet)
+        , includeEmptyRules(includeEmptyRules)
+        , scope(scope)
+    {
+        // Now that we're about to read from the RuleSet, we're done adding more
+        // rules to the set and we should make sure it's compacted.
+        ruleSet->compactRulesIfNeeded();
+    }
+
+    const RuleSet* ruleSet;
+    const bool includeEmptyRules;
+    const ContainerNode* scope;
+};
+
+} // namespace WebCore
+
+#endif // MatchRequest_h
diff --git a/Source/core/css/resolver/StyleBuilderCustom.cpp b/Source/core/css/resolver/StyleBuilderCustom.cpp
index 26562a9..122020f 100644
--- a/Source/core/css/resolver/StyleBuilderCustom.cpp
+++ b/Source/core/css/resolver/StyleBuilderCustom.cpp
@@ -1292,7 +1292,7 @@
             reflection->setOffset(reflectValue->offset()->convertToLength<FixedIntegerConversion | PercentConversion>(state.style(), state.rootElementStyle(), zoomFactor));
         NinePieceImage mask;
         mask.setMaskDefaults();
-        state.styleMap().mapNinePieceImage(id, reflectValue->mask(), mask);
+        state.styleMap().mapNinePieceImage(state.style(), id, reflectValue->mask(), mask);
         reflection->setMask(mask);
 
         state.style()->setBoxReflect(reflection.release());
diff --git a/Source/core/css/resolver/StyleResolver.cpp b/Source/core/css/resolver/StyleResolver.cpp
index 3379f5a..d5bbca9 100644
--- a/Source/core/css/resolver/StyleResolver.cpp
+++ b/Source/core/css/resolver/StyleResolver.cpp
@@ -143,8 +143,7 @@
             fontSelector()->addFontFaceRule((*it)->fontFaceRule());
     }
 #endif
-
-    // FIXME: Stylesheet candidate nodes are sorted in document order, but scoping nodes are not sorted.
+    m_styleTree.setBuildInDocumentOrder(!styleSheetCollection->hasScopedStyleSheet());
     appendAuthorStyleSheets(0, styleSheetCollection->activeAuthorStyleSheets());
 }
 
@@ -175,11 +174,6 @@
         collectViewportRules();
 }
 
-void StyleResolver::resetAuthorStyle()
-{
-    m_styleTree.clear();
-}
-
 void StyleResolver::resetAuthorStyle(const ContainerNode* scopingNode)
 {
     m_styleTree.clear();
@@ -998,11 +992,14 @@
             CSSPropertyID property = iter->key;
             if (!isPropertyForPass<pass>(property))
                 continue;
-            RefPtr<CSSValue> value = iter->value->compositeOnto(AnimatableValue::neutralValue())->toCSSValue();
+            RefPtr<AnimatableValue> animatableValue = iter->value->compositeOnto(AnimatableValue::neutralValue());
+            if (animatableValue->isDeferredSnapshot())
+                continue;
+            RefPtr<CSSValue> cssValue = animatableValue->toCSSValue();
             if (pass == HighPriorityProperties && property == CSSPropertyLineHeight)
-                state.setLineHeightValue(value.get());
+                state.setLineHeightValue(cssValue.get());
             else
-                applyProperty(state, property, value.get());
+                applyProperty(state, property, cssValue.get());
         }
     }
 }
diff --git a/Source/core/css/resolver/StyleResolver.h b/Source/core/css/resolver/StyleResolver.h
index 386594e..88670be 100644
--- a/Source/core/css/resolver/StyleResolver.h
+++ b/Source/core/css/resolver/StyleResolver.h
@@ -157,24 +157,6 @@
 #define STYLE_STATS_ADD_MATCHED_PROPERTIES_ENTERED_INTO_CACHE() (void(0));
 #endif
 
-// FIXME: Move to separate file.
-class MatchRequest {
-public:
-    MatchRequest(RuleSet* ruleSet, bool includeEmptyRules = false, const ContainerNode* scope = 0)
-        : ruleSet(ruleSet)
-        , includeEmptyRules(includeEmptyRules)
-        , scope(scope)
-    {
-        // Now that we're about to read from the RuleSet, we're done adding more
-        // rules to the set and we should make sure it's compacted.
-        ruleSet->compactRulesIfNeeded();
-    }
-
-    const RuleSet* ruleSet;
-    const bool includeEmptyRules;
-    const ContainerNode* scope;
-};
-
 struct CSSPropertyValue {
     CSSPropertyValue(CSSPropertyID property, CSSValue* value)
         : property(property), value(value) { }
diff --git a/Source/core/css/resolver/StyleResolverState.h b/Source/core/css/resolver/StyleResolverState.h
index 3a911bb..e4c04c6 100644
--- a/Source/core/css/resolver/StyleResolverState.h
+++ b/Source/core/css/resolver/StyleResolverState.h
@@ -82,18 +82,20 @@
     Document* document() const { return m_elementContext.document(); }
     Element* element() const { return m_elementContext.element(); }
     const ContainerNode* parentNode() const { return m_elementContext.parentNode(); }
-    RenderStyle* rootElementStyle() const { return m_elementContext.rootElementStyle(); }
+    const RenderStyle* rootElementStyle() const { return m_elementContext.rootElementStyle(); }
     EInsideLink elementLinkState() const { return m_elementContext.elementLinkState(); }
     bool distributedToInsertionPoint() const { return m_elementContext.distributedToInsertionPoint(); }
 
     const ElementResolveContext& elementContext() const { return m_elementContext; }
 
     void setStyle(PassRefPtr<RenderStyle> style) { m_style = style; }
-    RenderStyle* style() const { return m_style.get(); }
+    const RenderStyle* style() const { return m_style.get(); }
+    RenderStyle* style() { return m_style.get(); }
     PassRefPtr<RenderStyle> takeStyle() { return m_style.release(); }
 
     void setParentStyle(PassRefPtr<RenderStyle> parentStyle) { m_parentStyle = parentStyle; }
-    RenderStyle* parentStyle() const { return m_parentStyle.get(); }
+    const RenderStyle* parentStyle() const { return m_parentStyle.get(); }
+    RenderStyle* parentStyle() { return m_parentStyle.get(); }
 
     const RenderRegion* regionForStyling() const { return m_regionForStyling; }
 
diff --git a/Source/core/dom/ActiveDOMObject.cpp b/Source/core/dom/ActiveDOMObject.cpp
index 15c43f3..de838fe 100644
--- a/Source/core/dom/ActiveDOMObject.cpp
+++ b/Source/core/dom/ActiveDOMObject.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/ActiveDOMObject.h b/Source/core/dom/ActiveDOMObject.h
index 23244ef..0e123c7 100644
--- a/Source/core/dom/ActiveDOMObject.h
+++ b/Source/core/dom/ActiveDOMObject.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/AutocompleteErrorEvent.h b/Source/core/dom/AutocompleteErrorEvent.h
index 1f35fe3..2f36cc7 100644
--- a/Source/core/dom/AutocompleteErrorEvent.h
+++ b/Source/core/dom/AutocompleteErrorEvent.h
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2013 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
@@ -9,7 +9,7 @@
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
  *     documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
diff --git a/Source/core/dom/AutocompleteErrorEvent.idl b/Source/core/dom/AutocompleteErrorEvent.idl
index 807ef04..5f9b700 100644
--- a/Source/core/dom/AutocompleteErrorEvent.idl
+++ b/Source/core/dom/AutocompleteErrorEvent.idl
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2013 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
@@ -9,7 +9,7 @@
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
  *     documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
diff --git a/Source/core/dom/BeforeLoadEvent.h b/Source/core/dom/BeforeLoadEvent.h
index 946693b..1e6d5fc 100644
--- a/Source/core/dom/BeforeLoadEvent.h
+++ b/Source/core/dom/BeforeLoadEvent.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/BeforeLoadEvent.idl b/Source/core/dom/BeforeLoadEvent.idl
index 54b8501..428a513 100644
--- a/Source/core/dom/BeforeLoadEvent.idl
+++ b/Source/core/dom/BeforeLoadEvent.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/BeforeTextInsertedEvent.cpp b/Source/core/dom/BeforeTextInsertedEvent.cpp
index 213737c..72e4780 100644
--- a/Source/core/dom/BeforeTextInsertedEvent.cpp
+++ b/Source/core/dom/BeforeTextInsertedEvent.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/dom/BeforeTextInsertedEvent.h b/Source/core/dom/BeforeTextInsertedEvent.h
index 207daf6..a08e2de 100644
--- a/Source/core/dom/BeforeTextInsertedEvent.h
+++ b/Source/core/dom/BeforeTextInsertedEvent.h
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #ifndef BeforeTextInsertedEvent_h
 #define BeforeTextInsertedEvent_h
 
diff --git a/Source/core/dom/CharacterData.idl b/Source/core/dom/CharacterData.idl
index 2e3262c..eb6bfe7 100644
--- a/Source/core/dom/CharacterData.idl
+++ b/Source/core/dom/CharacterData.idl
@@ -22,18 +22,18 @@
     [TreatNullAs=NullString] attribute DOMString data;
 
     readonly attribute unsigned long length;
-    
+
     [TreatReturnedNullStringAs=Null, RaisesException] DOMString substringData([IsIndex,Default=Undefined] optional unsigned long offset, [IsIndex,Default=Undefined] optional unsigned long length);
 
     void appendData([Default=Undefined] optional DOMString data);
 
-     [RaisesException] void insertData([IsIndex,Default=Undefined] optional unsigned long offset, 
+     [RaisesException] void insertData([IsIndex,Default=Undefined] optional unsigned long offset,
                                    [Default=Undefined] optional DOMString data);
 
-     [RaisesException] void deleteData([IsIndex,Default=Undefined] optional unsigned long offset, 
+     [RaisesException] void deleteData([IsIndex,Default=Undefined] optional unsigned long offset,
                                    [IsIndex,Default=Undefined] optional unsigned long length);
 
-     [RaisesException] void replaceData([IsIndex,Default=Undefined] optional unsigned long offset, 
+     [RaisesException] void replaceData([IsIndex,Default=Undefined] optional unsigned long offset,
                                     [IsIndex,Default=Undefined] optional unsigned long length,
                                     [Default=Undefined] optional DOMString data);
 };
diff --git a/Source/core/dom/ChildNode.idl b/Source/core/dom/ChildNode.idl
index 80ba9f1..d320e11 100644
--- a/Source/core/dom/ChildNode.idl
+++ b/Source/core/dom/ChildNode.idl
@@ -2,7 +2,7 @@
  * Copyright (C) 2006, 2007, 2009 Apple Inc. All rights reserved.
  * Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com>
  * Copyright (C) 2013 Samsung Electronics. All rights reserved.
- * 
+ *
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
diff --git a/Source/core/dom/ClassNodeList.cpp b/Source/core/dom/ClassNodeList.cpp
index 7ab3202..f70f671 100644
--- a/Source/core/dom/ClassNodeList.cpp
+++ b/Source/core/dom/ClassNodeList.cpp
@@ -45,7 +45,7 @@
 ClassNodeList::~ClassNodeList()
 {
     ownerNode()->nodeLists()->removeCacheWithName(this, ClassNodeListType, m_originalClassNames);
-} 
+}
 
 bool ClassNodeList::nodeMatches(Element* testNode) const
 {
diff --git a/Source/core/dom/ClientRect.cpp b/Source/core/dom/ClientRect.cpp
index bff5d80..bc5f971 100644
--- a/Source/core/dom/ClientRect.cpp
+++ b/Source/core/dom/ClientRect.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/ClientRect.h b/Source/core/dom/ClientRect.h
index 9177a3f..6476e0f 100644
--- a/Source/core/dom/ClientRect.h
+++ b/Source/core/dom/ClientRect.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -34,7 +34,7 @@
 
 namespace WebCore {
 
-    class IntRect; 
+    class IntRect;
 
     class ClientRect : public ScriptWrappable, public RefCounted<ClientRect> {
     public:
@@ -55,7 +55,7 @@
         explicit ClientRect(const FloatRect&);
 
         FloatRect m_rect;
-    }; 
+    };
 
 } // namespace WebCore
 
diff --git a/Source/core/dom/ClientRect.idl b/Source/core/dom/ClientRect.idl
index 2d96ed0..ffdcfdd 100644
--- a/Source/core/dom/ClientRect.idl
+++ b/Source/core/dom/ClientRect.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/ClientRectList.cpp b/Source/core/dom/ClientRectList.cpp
index d87b696..c7d054c 100644
--- a/Source/core/dom/ClientRectList.cpp
+++ b/Source/core/dom/ClientRectList.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/ClientRectList.h b/Source/core/dom/ClientRectList.h
index 33f54c7..bf36ef9 100644
--- a/Source/core/dom/ClientRectList.h
+++ b/Source/core/dom/ClientRectList.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/ClientRectList.idl b/Source/core/dom/ClientRectList.idl
index 2d35d67..7635d1e 100644
--- a/Source/core/dom/ClientRectList.idl
+++ b/Source/core/dom/ClientRectList.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/ClipboardAccessPolicy.h b/Source/core/dom/ClipboardAccessPolicy.h
index 7a54009..969b3f6 100644
--- a/Source/core/dom/ClipboardAccessPolicy.h
+++ b/Source/core/dom/ClipboardAccessPolicy.h
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #ifndef ClipboardAccessPolicy_h
 #define ClipboardAccessPolicy_h
 
diff --git a/Source/core/dom/CompositionEvent.cpp b/Source/core/dom/CompositionEvent.cpp
index caad777..45c61c0 100644
--- a/Source/core/dom/CompositionEvent.cpp
+++ b/Source/core/dom/CompositionEvent.cpp
@@ -9,7 +9,7 @@
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/CompositionEvent.h b/Source/core/dom/CompositionEvent.h
index 167b6d1..cf39f9b 100644
--- a/Source/core/dom/CompositionEvent.h
+++ b/Source/core/dom/CompositionEvent.h
@@ -9,7 +9,7 @@
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/CompositionEvent.idl b/Source/core/dom/CompositionEvent.idl
index 4f1a5b0..c54d50f 100644
--- a/Source/core/dom/CompositionEvent.idl
+++ b/Source/core/dom/CompositionEvent.idl
@@ -9,7 +9,7 @@
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
@@ -29,10 +29,10 @@
 
     [InitializedByEventConstructor] readonly attribute DOMString data;
 
-    void initCompositionEvent([Default=Undefined] optional DOMString typeArg, 
-                              [Default=Undefined] optional boolean canBubbleArg, 
-                              [Default=Undefined] optional boolean cancelableArg, 
-                              [Default=Undefined] optional Window viewArg, 
+    void initCompositionEvent([Default=Undefined] optional DOMString typeArg,
+                              [Default=Undefined] optional boolean canBubbleArg,
+                              [Default=Undefined] optional boolean cancelableArg,
+                              [Default=Undefined] optional Window viewArg,
                               [Default=Undefined] optional DOMString dataArg);
 
 };
diff --git a/Source/core/dom/CrossThreadTask.h b/Source/core/dom/CrossThreadTask.h
index 3418b31..7a8761c 100644
--- a/Source/core/dom/CrossThreadTask.h
+++ b/Source/core/dom/CrossThreadTask.h
@@ -336,12 +336,12 @@
     typedef typename CrossThreadTaskTraits<P6>::ParamType Param6;
     typedef typename CrossThreadTaskTraits<P7>::ParamType Param7;
     typedef typename CrossThreadTaskTraits<P8>::ParamType Param8;
-    
+
     static PassOwnPtr<CrossThreadTask> create(Method method, Param1 parameter1, Param2 parameter2, Param3 parameter3, Param4 parameter4, Param5 parameter5, Param6 parameter6, Param7 parameter7, Param8 parameter8)
     {
         return adoptPtr(new CrossThreadTask(method, parameter1, parameter2, parameter3, parameter4, parameter5, parameter6, parameter7, parameter8));
     }
-    
+
 private:
     CrossThreadTask8(Method method, Param1 parameter1, Param2 parameter2, Param3 parameter3, Param4 parameter4, Param5 parameter5, Param6 parameter6, Param7 parameter7, Param8 parameter8)
     : m_method(method)
@@ -355,12 +355,12 @@
     , m_parameter8(parameter8)
     {
     }
-    
+
     virtual void performTask(ScriptExecutionContext* context)
     {
         (*m_method)(context, m_parameter1, m_parameter2, m_parameter3, m_parameter4, m_parameter5, m_parameter6, m_parameter7, m_parameter8);
     }
-    
+
 private:
     Method m_method;
     P1 m_parameter1;
diff --git a/Source/core/dom/CustomElement.cpp b/Source/core/dom/CustomElement.cpp
index de0b688..c5007ff 100644
--- a/Source/core/dom/CustomElement.cpp
+++ b/Source/core/dom/CustomElement.cpp
@@ -32,7 +32,7 @@
 #include "core/dom/CustomElement.h"
 
 #include "core/dom/CustomElementCallbackScheduler.h"
-#include "core/dom/CustomElementRegistrationContext.h"
+#include "core/dom/CustomElementUpgradeCandidateMap.h"
 #include "core/dom/Element.h"
 
 namespace WebCore {
@@ -45,6 +45,11 @@
     CustomElementCallbackScheduler::scheduleCreatedCallback(definition->callbacks(), element);
 }
 
+CustomElementDefinition* CustomElement::definitionFor(Element* element)
+{
+    return definitions().get(element);
+}
+
 void CustomElement::attributeDidChange(Element* element, const AtomicString& name, const AtomicString& oldValue, const AtomicString& newValue)
 {
     ASSERT(element->customElementState() == Element::Upgraded);
@@ -65,13 +70,20 @@
 
 void CustomElement::wasDestroyed(Element* element)
 {
-    definitions().remove(element);
+    switch (element->customElementState()) {
+    case Element::NotCustomElement:
+        ASSERT_NOT_REACHED();
+        break;
 
-    // FIXME: Elements should only depend on their document's
-    // registration context at creation; maintain a mapping to
-    // registration context for upgrade candidates.
-    if (element->document() && element->document()->registrationContext())
-        element->document()->registrationContext()->customElementWasDestroyed(element);
+    case Element::UpgradeCandidate:
+        CustomElementUpgradeCandidateMap::elementWasDestroyed(element);
+        break;
+
+    case Element::Defined:
+    case Element::Upgraded:
+        definitions().remove(element);
+        break;
+    }
 }
 
 void CustomElement::DefinitionMap::add(Element* element, PassRefPtr<CustomElementDefinition> definition)
@@ -95,8 +107,8 @@
 
 CustomElement::DefinitionMap& CustomElement::definitions()
 {
-    DEFINE_STATIC_LOCAL(DefinitionMap, definitionMap, ());
-    return definitionMap;
+    DEFINE_STATIC_LOCAL(DefinitionMap, map, ());
+    return map;
 }
 
 } // namespace WebCore
diff --git a/Source/core/dom/CustomElement.h b/Source/core/dom/CustomElement.h
index 21bc28c..6cd2661 100644
--- a/Source/core/dom/CustomElement.h
+++ b/Source/core/dom/CustomElement.h
@@ -44,7 +44,14 @@
 
 class CustomElement {
 public:
+    // API for registration contexts
     static void define(Element*, PassRefPtr<CustomElementDefinition>);
+
+    // API for wrapper creation, which uses a definition as a key
+    static CustomElementDefinition* definitionFor(Element*);
+
+    // API for Element to kick off changes
+
     static void attributeDidChange(Element*, const AtomicString& name, const AtomicString& oldValue, const AtomicString& newValue);
     static void didEnterDocument(Element*);
     static void didLeaveDocument(Element*);
@@ -53,6 +60,8 @@
 private:
     CustomElement();
 
+    // Maps resolved elements to their definitions
+
     class DefinitionMap {
         WTF_MAKE_NONCOPYABLE(DefinitionMap);
     public:
@@ -67,7 +76,6 @@
         typedef HashMap<Element*, RefPtr<CustomElementDefinition> > ElementDefinitionHashMap;
         ElementDefinitionHashMap m_definitions;
     };
-
     static DefinitionMap& definitions();
 };
 
diff --git a/Source/core/dom/CustomElementRegistrationContext.cpp b/Source/core/dom/CustomElementRegistrationContext.cpp
index c3a0cad..4e8129d 100644
--- a/Source/core/dom/CustomElementRegistrationContext.cpp
+++ b/Source/core/dom/CustomElementRegistrationContext.cpp
@@ -36,76 +36,15 @@
 #include "SVGNames.h"
 #include "core/dom/CustomElement.h"
 #include "core/dom/CustomElementDefinition.h"
-#include "core/dom/CustomElementRegistry.h"
-#include "core/dom/CustomElementUpgradeCandidateMap.h"
 #include "core/dom/Element.h"
 #include "core/html/HTMLElement.h"
 #include "core/html/HTMLUnknownElement.h"
 #include "core/svg/SVGElement.h"
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
-// The null registration context is used by documents that do not
-// process custom elements. All of its operations are no-ops.
-class NullRegistrationContext : public CustomElementRegistrationContext {
-public:
-    NullRegistrationContext() { }
-    virtual ~NullRegistrationContext() { }
-
-    virtual void registerElement(Document*, CustomElementConstructorBuilder*, const AtomicString&, ExceptionCode& ec) OVERRIDE { ec = NotSupportedError; }
-
-    virtual PassRefPtr<Element> createCustomTagElement(Document*, const QualifiedName&) OVERRIDE;
-    virtual void didGiveTypeExtension(Element*) OVERRIDE { }
-};
-
-PassRefPtr<Element> NullRegistrationContext::createCustomTagElement(Document* document, const QualifiedName& tagName)
-{
-    ASSERT(isCustomTagName(tagName.localName()));
-
-    if (!document)
-        return 0;
-
-    if (HTMLNames::xhtmlNamespaceURI == tagName.namespaceURI())
-        return HTMLUnknownElement::create(tagName, document);
-    if (SVGNames::svgNamespaceURI == tagName.namespaceURI())
-        return SVGElement::create(tagName, document);
-    return Element::create(tagName, document);
-}
-
-PassRefPtr<CustomElementRegistrationContext> CustomElementRegistrationContext::nullRegistrationContext()
-{
-    DEFINE_STATIC_LOCAL(RefPtr<NullRegistrationContext>, instance, ());
-    if (!instance)
-        instance = adoptRef(new NullRegistrationContext());
-    return instance.get();
-}
-
-// An active registration context is used by documents that are
-// processing custom elements.
-class ActiveRegistrationContext : public CustomElementRegistrationContext {
-public:
-    ActiveRegistrationContext() { }
-    virtual ~ActiveRegistrationContext() { }
-
-    virtual void registerElement(Document*, CustomElementConstructorBuilder*, const AtomicString& type, ExceptionCode&) OVERRIDE;
-
-    virtual PassRefPtr<Element> createCustomTagElement(Document*, const QualifiedName&) OVERRIDE;
-    virtual void didGiveTypeExtension(Element*) OVERRIDE;
-
-    virtual void customElementWasDestroyed(Element*) OVERRIDE;
-
-private:
-    void resolve(Element*);
-    void didResolveElement(CustomElementDefinition*, Element*);
-    void didCreateUnresolvedElement(const CustomElementDescriptor&, Element*);
-
-    CustomElementRegistry m_registry;
-
-    // Element creation
-    CustomElementUpgradeCandidateMap m_candidates;
-};
-
-void ActiveRegistrationContext::registerElement(Document* document, CustomElementConstructorBuilder* constructorBuilder, const AtomicString& type, ExceptionCode& ec)
+void CustomElementRegistrationContext::registerElement(Document* document, CustomElementConstructorBuilder* constructorBuilder, const AtomicString& type, ExceptionCode& ec)
 {
     CustomElementDefinition* definition = m_registry.registerElement(document, constructorBuilder, type, ec);
 
@@ -118,7 +57,7 @@
         didResolveElement(definition, *it);
 }
 
-PassRefPtr<Element> ActiveRegistrationContext::createCustomTagElement(Document* document, const QualifiedName& tagName)
+PassRefPtr<Element> CustomElementRegistrationContext::createCustomTagElement(Document* document, const QualifiedName& tagName)
 {
     ASSERT(isCustomTagName(tagName.localName()));
 
@@ -136,18 +75,25 @@
         return Element::create(tagName, document);
     }
 
-    resolve(element.get());
+    resolve(element.get(), nullAtom);
     return element.release();
 }
 
-void ActiveRegistrationContext::didGiveTypeExtension(Element* element)
+void CustomElementRegistrationContext::didGiveTypeExtension(Element* element, const AtomicString& type)
 {
-    resolve(element);
+    resolve(element, type);
 }
 
-void ActiveRegistrationContext::resolve(Element* element)
+void CustomElementRegistrationContext::resolve(Element* element, const AtomicString& typeExtension)
 {
-    const CustomElementDescriptor& descriptor = describe(element);
+    // If an element has a custom tag name it takes precedence over
+    // the "is" attribute (if any).
+    const AtomicString& type = isCustomTagName(element->localName())
+        ? element->localName()
+        : typeExtension;
+    ASSERT(!type.isNull());
+
+    CustomElementDescriptor descriptor(type, element->namespaceURI(), element->localName());
     CustomElementDefinition* definition = m_registry.find(descriptor);
     if (definition)
         didResolveElement(definition, element);
@@ -155,26 +101,24 @@
         didCreateUnresolvedElement(descriptor, element);
 }
 
-void ActiveRegistrationContext::didResolveElement(CustomElementDefinition* definition, Element* element)
+void CustomElementRegistrationContext::didResolveElement(CustomElementDefinition* definition, Element* element)
 {
     CustomElement::define(element, definition);
 }
 
-void ActiveRegistrationContext::didCreateUnresolvedElement(const CustomElementDescriptor& descriptor, Element* element)
+void CustomElementRegistrationContext::didCreateUnresolvedElement(const CustomElementDescriptor& descriptor, Element* element)
 {
-    element->setCustomElementState(Element::UpgradeCandidate);
     m_candidates.add(descriptor, element);
 }
 
-void ActiveRegistrationContext::customElementWasDestroyed(Element* element)
+void CustomElementRegistrationContext::customElementWasDestroyed(Element* element)
 {
     m_candidates.remove(element);
-    CustomElementRegistrationContext::customElementWasDestroyed(element);
 }
 
 PassRefPtr<CustomElementRegistrationContext> CustomElementRegistrationContext::create()
 {
-    return adoptRef(new ActiveRegistrationContext());
+    return adoptRef(new CustomElementRegistrationContext());
 }
 
 bool CustomElementRegistrationContext::isValidTypeName(const AtomicString& name)
@@ -205,17 +149,6 @@
     return isValidTypeName(localName);
 }
 
-CustomElementDescriptor CustomElementRegistrationContext::describe(Element* element)
-{
-    // If an element has a custom tag name it takes precedence over
-    // the "is" attribute (if any).
-    const AtomicString& type = isCustomTagName(element->localName())
-        ? element->localName()
-        : typeExtension(element);
-
-    return CustomElementDescriptor(type, element->namespaceURI(), element->localName());
-}
-
 void CustomElementRegistrationContext::setIsAttributeAndTypeExtension(Element* element, const AtomicString& type)
 {
     ASSERT(element);
@@ -232,28 +165,8 @@
     if (isCustomTagName(element->localName()))
         return; // custom tags take precedence over type extensions
 
-    TypeExtensionMap::AddResult result = typeExtensionMap()->add(element, type);
-    ASSERT(result.isNewEntry); // Type extensions should only be set once
-    element->document()->registrationContext()->didGiveTypeExtension(element);
-}
-
-void CustomElementRegistrationContext::customElementWasDestroyed(Element* element)
-{
-    ASSERT(element->isCustomElement());
-    typeExtensionMap()->remove(element);
-}
-
-const AtomicString& CustomElementRegistrationContext::typeExtension(Element* element)
-{
-    TypeExtensionMap::const_iterator it = typeExtensionMap()->find(element);
-    ASSERT(it != typeExtensionMap()->end());
-    return it->value;
-}
-
-CustomElementRegistrationContext::TypeExtensionMap* CustomElementRegistrationContext::typeExtensionMap()
-{
-    DEFINE_STATIC_LOCAL(TypeExtensionMap, typeExtensionMap, ());
-    return &typeExtensionMap;
+    if (CustomElementRegistrationContext* context = element->document()->registrationContext())
+        context->didGiveTypeExtension(element, type);
 }
 
 } // namespace WebCore
diff --git a/Source/core/dom/CustomElementRegistrationContext.h b/Source/core/dom/CustomElementRegistrationContext.h
index c0c89da..c8c2e15 100644
--- a/Source/core/dom/CustomElementRegistrationContext.h
+++ b/Source/core/dom/CustomElementRegistrationContext.h
@@ -32,58 +32,60 @@
 #define CustomElementRegistrationContext_h
 
 #include "core/dom/CustomElementDescriptor.h"
+#include "core/dom/CustomElementRegistry.h"
+#include "core/dom/CustomElementUpgradeCandidateMap.h"
 #include "core/dom/ExceptionCode.h"
 #include "core/dom/QualifiedName.h"
 #include "wtf/HashMap.h"
 #include "wtf/PassRefPtr.h"
-#include "wtf/RefPtr.h"
 #include "wtf/text/AtomicString.h"
 #include "wtf/text/AtomicStringHash.h"
 
 namespace WebCore {
 
 class CustomElementConstructorBuilder;
+class CustomElementDefinition;
 class Document;
 class Element;
 
 class CustomElementRegistrationContext : public RefCounted<CustomElementRegistrationContext> {
 public:
-    static PassRefPtr<CustomElementRegistrationContext> nullRegistrationContext();
     static PassRefPtr<CustomElementRegistrationContext> create();
 
-    virtual ~CustomElementRegistrationContext() { }
+    ~CustomElementRegistrationContext() { }
 
     // Model
     // FIXME: Move this to CustomElementRegistry
     static bool isValidTypeName(const AtomicString& type);
     // FIXME: Move this to CustomElement
     static bool isCustomTagName(const AtomicString& localName);
-    // FIXME: Privatize this when CustomElementWrapper uses the definition map.
-    static CustomElementDescriptor describe(Element*);
 
     // Definitions
-    virtual void registerElement(Document*, CustomElementConstructorBuilder*, const AtomicString& type, ExceptionCode&) = 0;
+    void registerElement(Document*, CustomElementConstructorBuilder*, const AtomicString& type, ExceptionCode&);
 
     // Instance creation
-    virtual PassRefPtr<Element> createCustomTagElement(Document*, const QualifiedName&) = 0;
+    PassRefPtr<Element> createCustomTagElement(Document*, const QualifiedName&);
     static void setIsAttributeAndTypeExtension(Element*, const AtomicString& type);
     static void setTypeExtension(Element*, const AtomicString& type);
 
     // Instance lifecycle
-    virtual void customElementWasDestroyed(Element*);
+    void customElementWasDestroyed(Element*);
 
 protected:
     CustomElementRegistrationContext() { }
 
-    // Model
-    static const AtomicString& typeExtension(Element*);
-
     // Instance creation
-    virtual void didGiveTypeExtension(Element*) = 0;
+    void didGiveTypeExtension(Element*, const AtomicString& type);
 
 private:
-    typedef HashMap<Element*, AtomicString> TypeExtensionMap;
-    static TypeExtensionMap* typeExtensionMap();
+    void resolve(Element*, const AtomicString& typeExtension);
+    void didResolveElement(CustomElementDefinition*, Element*);
+    void didCreateUnresolvedElement(const CustomElementDescriptor&, Element*);
+
+    CustomElementRegistry m_registry;
+
+    // Element creation
+    CustomElementUpgradeCandidateMap m_candidates;
 };
 
 }
diff --git a/Source/core/dom/CustomElementRegistry.cpp b/Source/core/dom/CustomElementRegistry.cpp
index 3bbd23f..65a675d 100644
--- a/Source/core/dom/CustomElementRegistry.cpp
+++ b/Source/core/dom/CustomElementRegistry.cpp
@@ -92,7 +92,7 @@
 
     ASSERT(!observer.registrationContextWentAway());
 
-    RefPtr<CustomElementLifecycleCallbacks> lifecycleCallbacks = constructorBuilder->createCallbacks(document);
+    RefPtr<CustomElementLifecycleCallbacks> lifecycleCallbacks = constructorBuilder->createCallbacks();
 
     // Consulting the constructor builder could execute script and
     // kill the document.
diff --git a/Source/core/dom/CustomElementRegistry.h b/Source/core/dom/CustomElementRegistry.h
index f4195a7..36477fe 100644
--- a/Source/core/dom/CustomElementRegistry.h
+++ b/Source/core/dom/CustomElementRegistry.h
@@ -49,7 +49,7 @@
 class CustomElementRegistry {
     WTF_MAKE_NONCOPYABLE(CustomElementRegistry);
 protected:
-    friend class ActiveRegistrationContext;
+    friend class CustomElementRegistrationContext;
 
     CustomElementRegistry() { }
     virtual ~CustomElementRegistry() { }
diff --git a/Source/core/dom/CustomElementUpgradeCandidateMap.cpp b/Source/core/dom/CustomElementUpgradeCandidateMap.cpp
index e3bcd0d..c84bcb7 100644
--- a/Source/core/dom/CustomElementUpgradeCandidateMap.cpp
+++ b/Source/core/dom/CustomElementUpgradeCandidateMap.cpp
@@ -31,11 +31,25 @@
 #include "config.h"
 #include "core/dom/CustomElementUpgradeCandidateMap.h"
 
+#include "core/dom/Element.h"
+
 namespace WebCore {
 
+CustomElementUpgradeCandidateMap::~CustomElementUpgradeCandidateMap()
+{
+    UpgradeCandidateMap::const_iterator::Keys end = m_upgradeCandidates.end().keys();
+    for (UpgradeCandidateMap::const_iterator::Keys it = m_upgradeCandidates.begin().keys(); it != end; ++it)
+        unregisterForElementDestructionNotification(*it, this);
+}
+
 void CustomElementUpgradeCandidateMap::add(const CustomElementDescriptor& descriptor, Element* element)
 {
-    m_upgradeCandidates.add(element, descriptor);
+    element->setCustomElementState(Element::UpgradeCandidate);
+
+    registerForElementDestructionNotification(element, this);
+
+    UpgradeCandidateMap::AddResult result = m_upgradeCandidates.add(element, descriptor);
+    ASSERT(result.isNewEntry);
 
     UnresolvedDefinitionMap::iterator it = m_unresolvedDefinitions.find(descriptor);
     if (it == m_unresolvedDefinitions.end())
@@ -45,9 +59,10 @@
 
 void CustomElementUpgradeCandidateMap::remove(Element* element)
 {
+    unregisterForElementDestructionNotification(element, this);
+
     UpgradeCandidateMap::iterator candidate = m_upgradeCandidates.find(element);
-    if (candidate == m_upgradeCandidates.end())
-        return;
+    ASSERT(candidate != m_upgradeCandidates.end());
 
     UnresolvedDefinitionMap::iterator elements = m_unresolvedDefinitions.find(candidate->value);
     ASSERT(elements != m_unresolvedDefinitions.end());
@@ -59,10 +74,38 @@
 {
     const ListHashSet<Element*>& candidates = m_unresolvedDefinitions.take(descriptor);
 
-    for (ElementSet::const_iterator candidate = candidates.begin(); candidate != candidates.end(); ++candidate)
+    for (ElementSet::const_iterator candidate = candidates.begin(); candidate != candidates.end(); ++candidate) {
+        unregisterForElementDestructionNotification(*candidate, this);
         m_upgradeCandidates.remove(*candidate);
+    }
 
     return candidates;
 }
 
+void CustomElementUpgradeCandidateMap::elementWasDestroyed(Element* element)
+{
+    DestructionObserverMap::iterator it = destructionObservers().find(element);
+    if (it == destructionObservers().end())
+        return;
+    it->value->remove(element); // will also remove the destruction observer
+}
+
+CustomElementUpgradeCandidateMap::DestructionObserverMap& CustomElementUpgradeCandidateMap::destructionObservers()
+{
+    DEFINE_STATIC_LOCAL(DestructionObserverMap, map, ());
+    return map;
+}
+
+void CustomElementUpgradeCandidateMap::registerForElementDestructionNotification(Element* element, CustomElementUpgradeCandidateMap* observer)
+{
+    DestructionObserverMap::AddResult result = destructionObservers().add(element, observer);
+    ASSERT(result.isNewEntry);
+}
+
+void CustomElementUpgradeCandidateMap::unregisterForElementDestructionNotification(Element* element, CustomElementUpgradeCandidateMap* observer)
+{
+    CustomElementUpgradeCandidateMap* map = destructionObservers().take(element);
+    ASSERT(map == observer);
+}
+
 }
diff --git a/Source/core/dom/CustomElementUpgradeCandidateMap.h b/Source/core/dom/CustomElementUpgradeCandidateMap.h
index bf22e7d..2814c0a 100644
--- a/Source/core/dom/CustomElementUpgradeCandidateMap.h
+++ b/Source/core/dom/CustomElementUpgradeCandidateMap.h
@@ -45,6 +45,9 @@
     WTF_MAKE_NONCOPYABLE(CustomElementUpgradeCandidateMap);
 public:
     CustomElementUpgradeCandidateMap() { }
+    ~CustomElementUpgradeCandidateMap();
+
+    static void elementWasDestroyed(Element*);
 
     void add(const CustomElementDescriptor&, Element*);
     void remove(Element*);
@@ -53,6 +56,12 @@
     ElementSet takeUpgradeCandidatesFor(const CustomElementDescriptor&);
 
 private:
+    // Maps elements to upgrade candidate maps observing their destruction
+    typedef HashMap<Element*, CustomElementUpgradeCandidateMap*> DestructionObserverMap;
+    static DestructionObserverMap& destructionObservers();
+    static void registerForElementDestructionNotification(Element*, CustomElementUpgradeCandidateMap*);
+    static void unregisterForElementDestructionNotification(Element*, CustomElementUpgradeCandidateMap*);
+
     typedef HashMap<Element*, CustomElementDescriptor> UpgradeCandidateMap;
     UpgradeCandidateMap m_upgradeCandidates;
 
diff --git a/Source/core/dom/CustomEvent.idl b/Source/core/dom/CustomEvent.idl
index ed86fda..12edaa5 100644
--- a/Source/core/dom/CustomEvent.idl
+++ b/Source/core/dom/CustomEvent.idl
@@ -9,7 +9,7 @@
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/dom/DOMImplementation.cpp b/Source/core/dom/DOMImplementation.cpp
index 9edaf7a..cee7eb3 100644
--- a/Source/core/dom/DOMImplementation.cpp
+++ b/Source/core/dom/DOMImplementation.cpp
@@ -31,6 +31,7 @@
 #include "core/css/MediaList.h"
 #include "core/css/StyleSheetContents.h"
 #include "core/dom/ContextFeatures.h"
+#include "core/dom/DocumentInit.h"
 #include "core/dom/DocumentType.h"
 #include "core/dom/Element.h"
 #include "core/dom/ExceptionCode.h"
@@ -146,7 +147,7 @@
         addString(svgFeatures, "ExternalResourcesRequired");
         addString(svgFeatures, "View");
         addString(svgFeatures, "Script");
-        addString(svgFeatures, "Animation"); 
+        addString(svgFeatures, "Animation");
 #if ENABLE(SVG_FONTS)
         addString(svgFeatures, "Font");
         addString(svgFeatures, "BasicFont");
@@ -257,7 +258,7 @@
     if (namespaceURI == SVGNames::svgNamespaceURI)
         doc = SVGDocument::create();
     else if (namespaceURI == HTMLNames::xhtmlNamespaceURI)
-        doc = Document::createXHTML();
+        doc = Document::createXHTML(DocumentInit().withRegistrationContext(m_document->registrationContext()));
     else
         doc = Document::create();
 
@@ -372,7 +373,7 @@
 
 PassRefPtr<HTMLDocument> DOMImplementation::createHTMLDocument(const String& title)
 {
-    RefPtr<HTMLDocument> d = HTMLDocument::create();
+    RefPtr<HTMLDocument> d = HTMLDocument::create(DocumentInit().withRegistrationContext(m_document->registrationContext()));
     d->open();
     d->write("<!doctype html><html><body></body></html>");
     if (!title.isNull())
@@ -411,7 +412,7 @@
     // Everything else except text/plain can be overridden by plugins. In particular, Adobe SVG Viewer should be used for SVG, if installed.
     // Disallowing plug-ins to use text/plain prevents plug-ins from hijacking a fundamental type that the browser is expected to handle,
     // and also serves as an optimization to prevent loading the plug-in database in the common case.
-    if (type != "text/plain" && pluginData && pluginData->supportsMimeType(type)) 
+    if (type != "text/plain" && pluginData && pluginData->supportsMimeType(type))
         return PluginDocument::create(DocumentInit(url, frame));
     if (isTextMIMEType(type))
         return TextDocument::create(DocumentInit(url, frame));
diff --git a/Source/core/dom/DOMImplementation.h b/Source/core/dom/DOMImplementation.h
index 14dcdf7..e09ff6e 100644
--- a/Source/core/dom/DOMImplementation.h
+++ b/Source/core/dom/DOMImplementation.h
@@ -43,7 +43,7 @@
     WTF_MAKE_FAST_ALLOCATED;
 public:
     static PassOwnPtr<DOMImplementation> create(Document* document) { return adoptPtr(new DOMImplementation(document)); }
-    
+
     void ref() { m_document->ref(); }
     void deref() { m_document->deref(); }
     Document* document() { return m_document; }
diff --git a/Source/core/dom/DOMImplementation.idl b/Source/core/dom/DOMImplementation.idl
index 0040c11..0d627f5 100644
--- a/Source/core/dom/DOMImplementation.idl
+++ b/Source/core/dom/DOMImplementation.idl
@@ -24,7 +24,7 @@
 
     // DOM Level 1
 
-     boolean hasFeature([Default=Undefined] optional DOMString feature, 
+     boolean hasFeature([Default=Undefined] optional DOMString feature,
                                       [TreatNullAs=NullString,Default=Undefined] optional DOMString version);
 
     // DOM Level 2
@@ -32,8 +32,8 @@
      [RaisesException] DocumentType createDocumentType([TreatNullAs=NullString, TreatUndefinedAs=NullString,Default=Undefined] optional DOMString qualifiedName,
                                                    [TreatNullAs=NullString, TreatUndefinedAs=NullString,Default=Undefined] optional DOMString publicId,
                                                    [TreatNullAs=NullString, TreatUndefinedAs=NullString,Default=Undefined] optional DOMString systemId);
-     [RaisesException] Document createDocument([TreatNullAs=NullString,Default=Undefined] optional DOMString namespaceURI, 
-                                           [TreatNullAs=NullString,Default=Undefined] optional DOMString qualifiedName, 
+     [RaisesException] Document createDocument([TreatNullAs=NullString,Default=Undefined] optional DOMString namespaceURI,
+                                           [TreatNullAs=NullString,Default=Undefined] optional DOMString qualifiedName,
                                            [TreatNullAs=NullString,Default=Undefined] optional DocumentType doctype);
 
     // DOMImplementationCSS interface from DOM Level 2 CSS
diff --git a/Source/core/dom/DataTransferItemList.idl b/Source/core/dom/DataTransferItemList.idl
index 07e9e2a..eec5c0c 100644
--- a/Source/core/dom/DataTransferItemList.idl
+++ b/Source/core/dom/DataTransferItemList.idl
@@ -36,7 +36,7 @@
 
     void clear();
     void add(File? file);
-    [RaisesException] void add([Default=Undefined] optional DOMString data, 
+    [RaisesException] void add([Default=Undefined] optional DOMString data,
              [Default=Undefined] optional DOMString type);
 };
 
diff --git a/Source/core/dom/DatasetDOMStringMap.cpp b/Source/core/dom/DatasetDOMStringMap.cpp
index b959ec0..10e9b40 100644
--- a/Source/core/dom/DatasetDOMStringMap.cpp
+++ b/Source/core/dom/DatasetDOMStringMap.cpp
@@ -76,7 +76,7 @@
 
     unsigned propertyLength = propertyName.length();
     unsigned attributeLength = attributeName.length();
-   
+
     unsigned a = 5;
     unsigned p = 0;
     bool wordBoundary = false;
diff --git a/Source/core/dom/DecodedDataDocumentParser.h b/Source/core/dom/DecodedDataDocumentParser.h
index ea13ff6..c931c0c 100644
--- a/Source/core/dom/DecodedDataDocumentParser.h
+++ b/Source/core/dom/DecodedDataDocumentParser.h
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #ifndef DecodedDataDocumentParser_h
 #define DecodedDataDocumentParser_h
 
diff --git a/Source/core/dom/Document.cpp b/Source/core/dom/Document.cpp
index 8f69070..8327fcf 100644
--- a/Source/core/dom/Document.cpp
+++ b/Source/core/dom/Document.cpp
@@ -437,6 +437,7 @@
     , m_lastHandledUserGestureTimestamp(0)
     , m_prerenderer(Prerenderer::create(this))
     , m_textAutosizer(TextAutosizer::create(this))
+    , m_registrationContext(initializer.registrationContext(this))
     , m_pendingTasksTimer(this, &Document::pendingTasksTimerFired)
     , m_scheduledTasksAreSuspended(false)
     , m_sharedObjectPoolClearTimer(this, &Document::sharedObjectPoolClearTimerFired)
@@ -475,13 +476,6 @@
         m_nodeListCounts[i] = 0;
 
     InspectorCounters::incrementCounter(InspectorCounters::DocumentCounter);
-
-    bool shouldProcessCustomElements =
-        (isHTMLDocument() || isXHTMLDocument())
-        && RuntimeEnabledFeatures::customDOMElementsEnabled();
-    m_registrationContext = shouldProcessCustomElements
-        ? CustomElementRegistrationContext::create()
-        : CustomElementRegistrationContext::nullRegistrationContext();
 }
 
 static void histogramMutationEventUsage(const unsigned short& listenerTypes)
@@ -720,7 +714,7 @@
 
     RefPtr<Element> element;
 
-    if (CustomElementRegistrationContext::isCustomTagName(localName))
+    if (CustomElementRegistrationContext::isCustomTagName(localName) && registrationContext())
         element = registrationContext()->createCustomTagElement(this, QualifiedName(nullAtom, localName, xhtmlNamespaceURI));
     else
         element = createElement(localName, ec);
@@ -744,7 +738,7 @@
     }
 
     RefPtr<Element> element;
-    if (CustomElementRegistrationContext::isCustomTagName(qName.localName()))
+    if (CustomElementRegistrationContext::isCustomTagName(qName.localName()) && registrationContext())
         element = registrationContext()->createCustomTagElement(this, qName);
     else
         element = createElementNS(namespaceURI, qualifiedName, ec);
@@ -762,6 +756,11 @@
 
 ScriptValue Document::registerElement(WebCore::ScriptState* state, const AtomicString& name, const Dictionary& options, ExceptionCode& ec)
 {
+    if (!registrationContext()) {
+        ec = NotSupportedError;
+        return ScriptValue();
+    }
+
     CustomElementConstructorBuilder constructorBuilder(state, &options);
     registrationContext()->registerElement(this, &constructorBuilder, name, ec);
     return constructorBuilder.bindingsReturnValue();
@@ -2315,7 +2314,7 @@
         || (documentElement() && !isHTMLHtmlElement(documentElement()));
 }
 
-bool Document::isLayoutTimerActive()
+bool Document::shouldParserYieldAgressivelyBeforeScriptExecution()
 {
     return view() && view()->layoutPending() && !minimumLayoutDelay();
 }
@@ -3154,7 +3153,7 @@
             oldFocusedElement->dispatchFormControlChangeEvent();
 
         // Dispatch the blur event and let the node do any other blur related activities (important for text fields)
-        oldFocusedElement->dispatchBlurEvent(newFocusedElement);
+        oldFocusedElement->dispatchBlurEvent(newFocusedElement.get());
 
         if (m_focusedElement) {
             // handler shifted focus
@@ -3162,10 +3161,10 @@
             newFocusedElement = 0;
         }
 
-        oldFocusedElement->dispatchFocusOutEvent(eventNames().focusoutEvent, newFocusedElement); // DOM level 3 name for the bubbling blur event.
+        oldFocusedElement->dispatchFocusOutEvent(eventNames().focusoutEvent, newFocusedElement.get()); // DOM level 3 name for the bubbling blur event.
         // FIXME: We should remove firing DOMFocusOutEvent event when we are sure no content depends
         // on it, probably when <rdar://problem/8503958> is resolved.
-        oldFocusedElement->dispatchFocusOutEvent(eventNames().DOMFocusOutEvent, newFocusedElement); // DOM level 2 name for compatibility.
+        oldFocusedElement->dispatchFocusOutEvent(eventNames().DOMFocusOutEvent, newFocusedElement.get()); // DOM level 2 name for compatibility.
 
         if (m_focusedElement) {
             // handler shifted focus
@@ -3195,7 +3194,7 @@
         m_focusedElement = newFocusedElement;
 
         // Dispatch the focus event and let the node do any other focus related activities (important for text fields)
-        m_focusedElement->dispatchFocusEvent(oldFocusedElement, direction);
+        m_focusedElement->dispatchFocusEvent(oldFocusedElement.get(), direction);
 
         if (m_focusedElement != newFocusedElement) {
             // handler shifted focus
@@ -3203,7 +3202,7 @@
             goto SetFocusedElementDone;
         }
 
-        m_focusedElement->dispatchFocusInEvent(eventNames().focusinEvent, oldFocusedElement); // DOM level 3 bubbling focus event.
+        m_focusedElement->dispatchFocusInEvent(eventNames().focusinEvent, oldFocusedElement.get()); // DOM level 3 bubbling focus event.
 
         if (m_focusedElement != newFocusedElement) {
             // handler shifted focus
@@ -3213,7 +3212,7 @@
 
         // FIXME: We should remove firing DOMFocusInEvent event when we are sure no content depends
         // on it, probably when <rdar://problem/8503958> is m.
-        m_focusedElement->dispatchFocusInEvent(eventNames().DOMFocusInEvent, oldFocusedElement); // DOM level 2 for compatibility.
+        m_focusedElement->dispatchFocusInEvent(eventNames().DOMFocusInEvent, oldFocusedElement.get()); // DOM level 2 for compatibility.
 
         if (m_focusedElement != newFocusedElement) {
             // handler shifted focus
@@ -4110,6 +4109,9 @@
 
     // Parser should have picked up all preloads by now
     m_fetcher->clearPreloads();
+
+    if (m_import)
+        m_import->didFinishParsing();
 }
 
 void Document::sharedObjectPoolClearTimerFired(Timer<Document>*)
@@ -4209,7 +4211,7 @@
         return;
     }
 
-    if (!initializer.frame()) {
+    if (!initializer.hasSecurityContext()) {
         // No source for a security context.
         // This can occur via document.implementation.createDocument().
         m_cookieURL = KURL(ParsedURLString, emptyString());
@@ -4281,12 +4283,11 @@
     setSecurityOrigin(ownerFrame->document()->securityOrigin());
 }
 
-void Document::initContentSecurityPolicy()
+void Document::initContentSecurityPolicy(const ContentSecurityPolicyResponseHeaders& headers)
 {
-    if (!m_frame->tree()->parent() || (!shouldInheritSecurityOriginFromOwner(m_url) && !isPluginDocument()))
-        return;
-
-    contentSecurityPolicy()->copyStateFrom(m_frame->tree()->parent()->document()->contentSecurityPolicy());
+    if (m_frame && m_frame->tree()->parent() && (shouldInheritSecurityOriginFromOwner(m_url) || isPluginDocument()))
+        contentSecurityPolicy()->copyStateFrom(m_frame->tree()->parent()->document()->contentSecurityPolicy());
+    contentSecurityPolicy()->didReceiveHeaders(headers);
 }
 
 void Document::didUpdateSecurityOrigin()
@@ -5043,7 +5044,7 @@
         return const_cast<Document*>(document);
 
     if (isHTMLDocument())
-        m_templateDocument = HTMLDocument::create(DocumentInit(blankURL()));
+        m_templateDocument = HTMLDocument::create(DocumentInit(blankURL()).withRegistrationContext(registrationContext()));
     else
         m_templateDocument = Document::create(DocumentInit(blankURL()));
 
diff --git a/Source/core/dom/Document.h b/Source/core/dom/Document.h
index 08627c3..6b2653e 100644
--- a/Source/core/dom/Document.h
+++ b/Source/core/dom/Document.h
@@ -69,6 +69,7 @@
 class CanvasRenderingContext;
 class CharacterData;
 class Comment;
+class ContentSecurityPolicyResponseHeaders;
 class ContextFeatures;
 class CustomElementRegistrationContext;
 class DOMImplementation;
@@ -299,7 +300,7 @@
     DocumentType* doctype() const { return m_docType.get(); }
 
     DOMImplementation* implementation();
-    
+
     Element* documentElement() const
     {
         return m_documentElement.get();
@@ -423,7 +424,7 @@
     bool sawElementsInKnownNamespaces() const { return m_sawElementsInKnownNamespaces; }
 
     StyleResolver* styleResolver()
-    { 
+    {
         if (!m_styleResolver)
             createStyleResolver();
         return m_styleResolver.get();
@@ -529,7 +530,7 @@
     // to get visually ordered hebrew and arabic pages right
     void setVisuallyOrdered();
     bool visuallyOrdered() const { return m_visuallyOrdered; }
-    
+
     DocumentLoader* loader() const;
 
     void open(Document* ownerDocument = 0);
@@ -575,17 +576,17 @@
     Frame* findUnsafeParentScrollPropagationBoundary();
 
     CSSStyleSheet* elementSheet();
-    
+
     virtual PassRefPtr<DocumentParser> createParser();
     DocumentParser* parser() const { return m_parser.get(); }
     ScriptableDocumentParser* scriptableDocumentParser() const;
-    
+
     bool printing() const { return m_printing; }
     void setPrinting(bool p) { m_printing = p; }
 
     bool paginatedForScreen() const { return m_paginatedForScreen; }
     void setPaginatedForScreen(bool p) { m_paginatedForScreen = p; }
-    
+
     bool paginated() const { return printing() || paginatedForScreen(); }
 
     enum CompatibilityMode { QuirksMode, LimitedQuirksMode, NoQuirksMode };
@@ -611,7 +612,7 @@
     int minimumLayoutDelay();
 
     bool shouldScheduleLayout();
-    bool isLayoutTimerActive();
+    bool shouldParserYieldAgressivelyBeforeScriptExecution();
     int elapsedTime() const;
 
     TextLinkColors& textLinkColors() { return m_textLinkColors; }
@@ -633,7 +634,7 @@
     const UserActionElementSet& userActionElements() const { return m_userActionElements; }
     void didRunCheckFocusedElementTask() { m_didPostCheckFocusedElementTask = false; }
 
-    // The m_ignoreAutofocus flag specifies whether or not the document has been changed by the user enough 
+    // The m_ignoreAutofocus flag specifies whether or not the document has been changed by the user enough
     // for WebCore to ignore the autofocus attribute on any form controls
     bool ignoreAutofocus() const { return m_ignoreAutofocus; };
     void setIgnoreAutofocus(bool shouldIgnore = true) { m_ignoreAutofocus = shouldIgnore; };
@@ -687,7 +688,7 @@
     void setDOMWindow(DOMWindow* domWindow) { m_domWindow = domWindow; }
     DOMWindow* domWindow() const { return m_domWindow; }
     // In DOM Level 2, the Document's DOMWindow is called the defaultView.
-    DOMWindow* defaultView() const { return domWindow(); } 
+    DOMWindow* defaultView() const { return domWindow(); }
 
     // Helper functions for forwarding DOMWindow event related tasks to the DOMWindow if it exists.
     void setWindowAttributeEventListener(const AtomicString& eventType, PassRefPtr<EventListener>, DOMWrapperWorld* isolatedWorld = 0);
@@ -780,7 +781,7 @@
     void setCookieURL(const KURL& url) { m_cookieURL = url; }
 
     const KURL& firstPartyForCookies() const;
-    
+
     // The following implements the rule from HTML 4 for what valid names are.
     // To get this right for all the XML cases, we probably have to improve this or move it
     // and make it sensitive to the type of document.
@@ -817,7 +818,7 @@
     KURL openSearchDescriptionURL();
 
     // designMode support
-    enum InheritedBool { off = false, on = true, inherit };    
+    enum InheritedBool { off = false, on = true, inherit };
     void setDesignMode(InheritedBool value);
     InheritedBool getDesignMode() const;
     bool inDesignMode() const;
@@ -858,7 +859,7 @@
 
     void updateFocusAppearanceSoon(bool restorePreviousSelection);
     void cancelFocusAppearanceUpdate();
-        
+
     // Extension for manipulating canvas drawing contexts for use in CSS
     CanvasRenderingContext* getCSSCanvasContext(const String& type, const String& name, int width, int height);
     HTMLCanvasElement* getCSSCanvasElement(const String& name);
@@ -903,7 +904,7 @@
 
     void initSecurityContext();
     void initSecurityContext(const DocumentInit&);
-    void initContentSecurityPolicy();
+    void initContentSecurityPolicy(const ContentSecurityPolicyResponseHeaders&);
 
     void updateURLForPushOrReplaceState(const KURL&);
     void statePopped(PassRefPtr<SerializedScriptValue>);
@@ -1176,7 +1177,7 @@
 
     uint64_t m_domTreeVersion;
     static uint64_t s_globalTreeVersion;
-    
+
     HashSet<NodeIterator*> m_nodeIterators;
     HashSet<Range*> m_ranges;
 
@@ -1219,7 +1220,7 @@
 
     OwnPtr<AXObjectCache> m_axObjectCache;
     OwnPtr<DocumentMarkerController> m_markers;
-    
+
     Timer<Document> m_updateFocusAppearanceTimer;
 
     Element* m_cssTarget;
@@ -1234,7 +1235,7 @@
     RefPtr<SerializedScriptValue> m_pendingStateObject;
     double m_startTime;
     bool m_overMinimumLayoutThreshold;
-    
+
     OwnPtr<ScriptRunner> m_scriptRunner;
 
     Vector<RefPtr<HTMLScriptElement> > m_currentScriptStack;
@@ -1301,7 +1302,7 @@
     RefPtr<MediaQueryMatcher> m_mediaQueryMatcher;
     bool m_writeRecursionIsTooDeep;
     unsigned m_writeRecursionDepth;
-    
+
     unsigned m_wheelEventHandlerCount;
     OwnPtr<TouchEventTargetSet> m_touchEventTargets;
 
@@ -1319,7 +1320,7 @@
     RefPtr<CustomElementRegistrationContext> m_registrationContext;
 
     bool m_scheduledTasksAreSuspended;
-    
+
     RefPtr<NamedFlowCollection> m_namedFlows;
 
     RefPtr<DOMSecurityPolicy> m_domSecurityPolicy;
diff --git a/Source/core/dom/DocumentEventQueue.cpp b/Source/core/dom/DocumentEventQueue.cpp
index 61c5bb5..8768c1e 100644
--- a/Source/core/dom/DocumentEventQueue.cpp
+++ b/Source/core/dom/DocumentEventQueue.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -34,7 +34,7 @@
 #include "core/page/SuspendableTimer.h"
 
 namespace WebCore {
-    
+
 class DocumentEventQueueTimer : public SuspendableTimer {
     WTF_MAKE_NONCOPYABLE(DocumentEventQueueTimer);
 public:
@@ -71,7 +71,7 @@
     ASSERT(event->target());
     bool wasAdded = m_queuedEvents.add(event).isNewEntry;
     ASSERT_UNUSED(wasAdded, wasAdded); // It should not have already been in the list.
-    
+
     if (!m_pendingEventTimer->isActive())
         m_pendingEventTimer->startOneShot(0);
 
@@ -86,7 +86,7 @@
     // Per the W3C CSSOM View Module, scroll events fired at the document should bubble, others should not.
     bool canBubble = targetType == ScrollEventDocumentTarget;
     RefPtr<Event> scrollEvent = Event::create(eventNames().scrollEvent, canBubble, false /* non cancelleable */);
-     
+
     if (!m_nodesWithQueuedScrollEvents.add(target.get()).isNewEntry)
         return;
 
diff --git a/Source/core/dom/DocumentEventQueue.h b/Source/core/dom/DocumentEventQueue.h
index 84d663e..bd8fb76 100644
--- a/Source/core/dom/DocumentEventQueue.h
+++ b/Source/core/dom/DocumentEventQueue.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -69,7 +69,7 @@
     HashSet<Node*> m_nodesWithQueuedScrollEvents;
     bool m_isClosed;
 
-    friend class DocumentEventQueueTimer;    
+    friend class DocumentEventQueueTimer;
 };
 
 }
diff --git a/Source/core/dom/DocumentFragment.h b/Source/core/dom/DocumentFragment.h
index 1b763a1..0489d39 100644
--- a/Source/core/dom/DocumentFragment.h
+++ b/Source/core/dom/DocumentFragment.h
@@ -38,7 +38,7 @@
 
     void parseHTML(const String&, Element* contextElement, ParserContentPolicy = AllowScriptingContent);
     bool parseXML(const String&, Element* contextElement, ParserContentPolicy = AllowScriptingContent);
-    
+
     virtual bool canContainRangeEndPoint() const { return true; }
     virtual bool isTemplateContent() const { return false; }
 
diff --git a/Source/core/dom/DocumentInit.cpp b/Source/core/dom/DocumentInit.cpp
index adf48c2..f6d74b2 100644
--- a/Source/core/dom/DocumentInit.cpp
+++ b/Source/core/dom/DocumentInit.cpp
@@ -28,6 +28,8 @@
 #include "config.h"
 #include "core/dom/DocumentInit.h"
 
+#include "RuntimeEnabledFeatures.h"
+#include "core/dom/Document.h"
 #include "core/html/HTMLImportsController.h"
 #include "core/page/Frame.h"
 
@@ -40,26 +42,62 @@
 
 bool DocumentInit::shouldTreatURLAsSrcdocDocument() const
 {
+    ASSERT(m_frame);
     return m_frame->loader()->shouldTreatURLAsSrcdocDocument(m_url);
 }
 
+Frame* DocumentInit::frameForSecurityContext() const
+{
+    if (m_frame)
+        return m_frame;
+    if (m_import)
+        return m_import->frame();
+    return 0;
+}
+
 SandboxFlags DocumentInit::sandboxFlags() const
 {
-    return m_frame->loader()->effectiveSandboxFlags();
+    ASSERT(frameForSecurityContext());
+    return frameForSecurityContext()->loader()->effectiveSandboxFlags();
 }
 
 Settings* DocumentInit::settings() const
 {
-    return m_frame->settings();
+    ASSERT(frameForSecurityContext());
+    return frameForSecurityContext()->settings();
 }
 
 Frame* DocumentInit::ownerFrame() const
 {
+    if (!m_frame)
+        return 0;
+
     Frame* ownerFrame = m_frame->tree()->parent();
     if (!ownerFrame)
         ownerFrame = m_frame->loader()->opener();
     return ownerFrame;
 }
 
+DocumentInit& DocumentInit::withRegistrationContext(CustomElementRegistrationContext* registrationContext)
+{
+    ASSERT(!m_registrationContext);
+    m_registrationContext = registrationContext;
+    return *this;
+}
+
+PassRefPtr<CustomElementRegistrationContext> DocumentInit::registrationContext(Document* document) const
+{
+    if (!RuntimeEnabledFeatures::customDOMElementsEnabled())
+        return 0;
+
+    if (!document->isHTMLDocument() && !document->isXHTMLDocument())
+        return 0;
+
+    if (m_registrationContext)
+        return m_registrationContext.get();
+
+    return CustomElementRegistrationContext::create();
+}
+
 } // namespace WebCore
 
diff --git a/Source/core/dom/DocumentInit.h b/Source/core/dom/DocumentInit.h
index 893662f..73ce2be 100644
--- a/Source/core/dom/DocumentInit.h
+++ b/Source/core/dom/DocumentInit.h
@@ -28,11 +28,15 @@
 #ifndef DocumentInit_h
 #define DocumentInit_h
 
+#include "core/dom/CustomElementRegistrationContext.h"
 #include "core/dom/SecurityContext.h"
 #include "weborigin/KURL.h"
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
+class Document;
 class Frame;
 class HTMLImport;
 class Settings;
@@ -49,6 +53,7 @@
     Frame* frame() const { return m_frame; }
     HTMLImport* import() const { return m_import; }
 
+    bool hasSecurityContext() const { return frameForSecurityContext(); }
     bool shouldTreatURLAsSrcdocDocument() const;
     bool shouldSetURL() const;
     SandboxFlags sandboxFlags() const;
@@ -56,10 +61,16 @@
     Frame* ownerFrame() const;
     Settings* settings() const;
 
+    DocumentInit& withRegistrationContext(CustomElementRegistrationContext*);
+    PassRefPtr<CustomElementRegistrationContext> registrationContext(Document*) const;
+
 private:
+    Frame* frameForSecurityContext() const;
+
     KURL m_url;
     Frame* m_frame;
     HTMLImport* m_import;
+    RefPtr<CustomElementRegistrationContext> m_registrationContext;
 };
 
 } // namespace WebCore
diff --git a/Source/core/dom/DocumentMarker.cpp b/Source/core/dom/DocumentMarker.cpp
index aa7d4b0..5f3db28 100644
--- a/Source/core/dom/DocumentMarker.cpp
+++ b/Source/core/dom/DocumentMarker.cpp
@@ -97,7 +97,7 @@
 }
 
 
-DocumentMarker::DocumentMarker() 
+DocumentMarker::DocumentMarker()
     : m_type(Spelling)
     , m_startOffset(0)
     , m_endOffset(0)
diff --git a/Source/core/dom/DocumentMarkerController.cpp b/Source/core/dom/DocumentMarkerController.cpp
index 0928c3d..c47e8b8 100644
--- a/Source/core/dom/DocumentMarkerController.cpp
+++ b/Source/core/dom/DocumentMarkerController.cpp
@@ -136,7 +136,7 @@
 // Markers are stored in order sorted by their start offset.
 // Markers of the same type do not overlap each other.
 
-void DocumentMarkerController::addMarker(Node* node, const DocumentMarker& newMarker) 
+void DocumentMarkerController::addMarker(Node* node, const DocumentMarker& newMarker)
 {
     ASSERT(newMarker.endOffset() >= newMarker.startOffset());
     if (newMarker.endOffset() == newMarker.startOffset())
@@ -436,7 +436,7 @@
     if (!possiblyHasMarkers(markerTypes))
         return;
     ASSERT(!m_markers.isEmpty());
-    
+
     MarkerMap::iterator iterator = m_markers.find(node);
     if (iterator != m_markers.end())
         removeMarkersFromList(iterator, markerTypes);
diff --git a/Source/core/dom/DocumentParser.h b/Source/core/dom/DocumentParser.h
index 587fa2f..3b3969b 100644
--- a/Source/core/dom/DocumentParser.h
+++ b/Source/core/dom/DocumentParser.h
@@ -51,6 +51,7 @@
     virtual size_t flush() = 0;
     virtual bool needsDecoder() const { return false; }
 
+    // pinToMainThread also makes append() not yield before completion of that chunk.
     virtual void pinToMainThread() { }
 
     // FIXME: append() should be private, but DocumentWriter::replaceDocument uses it for now.
diff --git a/Source/core/dom/DocumentStyleSheetCollection.cpp b/Source/core/dom/DocumentStyleSheetCollection.cpp
index d45931c..74ef2b1 100644
--- a/Source/core/dom/DocumentStyleSheetCollection.cpp
+++ b/Source/core/dom/DocumentStyleSheetCollection.cpp
@@ -233,9 +233,9 @@
     m_collectionForDocument.addStyleSheetCandidateNode(node, createdByParser);
 }
 
-void DocumentStyleSheetCollection::removeStyleSheetCandidateNode(Node* node)
+void DocumentStyleSheetCollection::removeStyleSheetCandidateNode(Node* node, ContainerNode* scopingNode)
 {
-    m_collectionForDocument.removeStyleSheetCandidateNode(node);
+    m_collectionForDocument.removeStyleSheetCandidateNode(node, scopingNode);
 }
 
 static bool styleSheetsUseRemUnits(const Vector<RefPtr<CSSStyleSheet> >& sheets)
diff --git a/Source/core/dom/DocumentStyleSheetCollection.h b/Source/core/dom/DocumentStyleSheetCollection.h
index 0e220e2..bbafeb8 100644
--- a/Source/core/dom/DocumentStyleSheetCollection.h
+++ b/Source/core/dom/DocumentStyleSheetCollection.h
@@ -63,7 +63,7 @@
     const Vector<RefPtr<CSSStyleSheet> >& injectedAuthorStyleSheets() const;
 
     void addStyleSheetCandidateNode(Node*, bool createdByParser);
-    void removeStyleSheetCandidateNode(Node*);
+    void removeStyleSheetCandidateNode(Node*, ContainerNode* scopingNode = 0);
 
     void clearPageUserSheet();
     void updatePageUserSheet();
@@ -100,6 +100,7 @@
     void setUsesBeforeAfterRulesOverride(bool b) { m_usesBeforeAfterRulesOverride = b; }
     bool usesRemUnits() const { return m_usesRemUnits; }
     void setUsesRemUnit(bool b) { m_usesRemUnits = b; }
+    bool hasScopedStyleSheet() { return m_collectionForDocument.scopingNodesForStyleScoped(); }
 
     void combineCSSFeatureFlags(const RuleFeatureSet&);
     void resetCSSFeatureFlags(const RuleFeatureSet&);
diff --git a/Source/core/dom/DocumentTiming.h b/Source/core/dom/DocumentTiming.h
index 89e2fb9..ba6e08c 100644
--- a/Source/core/dom/DocumentTiming.h
+++ b/Source/core/dom/DocumentTiming.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DocumentTiming_h
diff --git a/Source/core/dom/Element.cpp b/Source/core/dom/Element.cpp
index dc64b8d..3d1ad9c 100644
--- a/Source/core/dom/Element.cpp
+++ b/Source/core/dom/Element.cpp
@@ -50,7 +50,9 @@
 #include "core/dom/Document.h"
 #include "core/dom/DocumentSharedObjectPool.h"
 #include "core/dom/ElementRareData.h"
+#include "core/dom/EventDispatcher.h"
 #include "core/dom/ExceptionCode.h"
+#include "core/dom/FocusEvent.h"
 #include "core/dom/FullscreenController.h"
 #include "core/dom/MutationObserverInterestGroup.h"
 #include "core/dom/MutationRecord.h"
@@ -2059,6 +2061,32 @@
     }
 }
 
+void Element::dispatchFocusEvent(Element* oldFocusedElement, FocusDirection)
+{
+    RefPtr<FocusEvent> event = FocusEvent::create(eventNames().focusEvent, false, false, document()->defaultView(), 0, oldFocusedElement);
+    EventDispatcher::dispatchEvent(this, FocusEventDispatchMediator::create(event.release()));
+}
+
+void Element::dispatchBlurEvent(Element* newFocusedElement)
+{
+    RefPtr<FocusEvent> event = FocusEvent::create(eventNames().blurEvent, false, false, document()->defaultView(), 0, newFocusedElement);
+    EventDispatcher::dispatchEvent(this, BlurEventDispatchMediator::create(event.release()));
+}
+
+void Element::dispatchFocusInEvent(const AtomicString& eventType, Element* oldFocusedElement)
+{
+    ASSERT(!NoEventDispatchAssertion::isEventDispatchForbidden());
+    ASSERT(eventType == eventNames().focusinEvent || eventType == eventNames().DOMFocusInEvent);
+    dispatchScopedEventDispatchMediator(FocusInEventDispatchMediator::create(FocusEvent::create(eventType, true, false, document()->defaultView(), 0, oldFocusedElement)));
+}
+
+void Element::dispatchFocusOutEvent(const AtomicString& eventType, Element* newFocusedElement)
+{
+    ASSERT(!NoEventDispatchAssertion::isEventDispatchForbidden());
+    ASSERT(eventType == eventNames().focusoutEvent || eventType == eventNames().DOMFocusOutEvent);
+    dispatchScopedEventDispatchMediator(FocusOutEventDispatchMediator::create(FocusEvent::create(eventType, true, false, document()->defaultView(), 0, newFocusedElement)));
+}
+
 String Element::innerText()
 {
     // We need to update layout, since plainText uses line boxes in the render tree.
diff --git a/Source/core/dom/Element.h b/Source/core/dom/Element.h
index 989019c..57a45a0 100644
--- a/Source/core/dom/Element.h
+++ b/Source/core/dom/Element.h
@@ -32,6 +32,7 @@
 #include "core/dom/Document.h"
 #include "core/dom/SpaceSplitString.h"
 #include "core/html/CollectionType.h"
+#include "core/page/FocusDirection.h"
 #include "core/platform/ScrollTypes.h"
 #include "core/rendering/RegionOversetState.h"
 
@@ -330,7 +331,7 @@
 
     PassRefPtr<ClientRectList> getClientRects();
     PassRefPtr<ClientRect> getBoundingClientRect();
-    
+
     // Returns the absolute bounding box translated into screen coordinates:
     IntRect screenRect() const;
 
@@ -357,7 +358,7 @@
     const QualifiedName& tagQName() const { return m_tagName; }
     String tagName() const { return nodeName(); }
     bool hasTagName(const QualifiedName& tagName) const { return m_tagName.matches(tagName); }
-    
+
     // A fast function for checking the local name against another atomic string.
     bool hasLocalName(const AtomicString& other) const { return m_tagName.localName() == other; }
     bool hasLocalName(const QualifiedName& other) const { return m_tagName.localName() == other.localName(); }
@@ -507,10 +508,14 @@
     virtual void focus(bool restorePreviousSelection = true, FocusDirection = FocusDirectionNone);
     virtual void updateFocusAppearance(bool restorePreviousSelection);
     virtual void blur();
+    virtual void dispatchFocusEvent(Element* oldFocusedElement, FocusDirection);
+    virtual void dispatchBlurEvent(Element* newFocusedElement);
+    void dispatchFocusInEvent(const AtomicString& eventType, Element* oldFocusedElement);
+    void dispatchFocusOutEvent(const AtomicString& eventType, Element* newFocusedElement);
 
     String innerText();
     String outerText();
- 
+
     String textFromChildren();
 
     virtual String title() const { return String(); }
@@ -592,7 +597,7 @@
         ALLOW_KEYBOARD_INPUT = 1 << 0,
         LEGACY_MOZILLA_REQUEST = 1 << 1,
     };
-    
+
     void webkitRequestFullScreen(unsigned short flags);
     bool containsFullScreenElement() const;
     void setContainsFullScreenElement(bool);
@@ -657,7 +662,7 @@
     virtual bool shouldRegisterAsNamedItem() const { return false; }
     virtual bool shouldRegisterAsExtraNamedItem() const { return false; }
 
-    void clearTabIndexExplicitlyIfNeeded();    
+    void clearTabIndexExplicitlyIfNeeded();
     void setTabIndexExplicitly(short);
     virtual bool supportsFocus() const OVERRIDE;
     virtual short tabIndex() const OVERRIDE;
@@ -727,7 +732,7 @@
     void cancelFocusAppearanceUpdate();
 
     virtual RenderStyle* virtualComputedStyle(PseudoId pseudoElementSpecifier = NOPSEUDO) { return computedStyle(pseudoElementSpecifier); }
-    
+
     // cloneNode is private so that non-virtual cloneElementWithChildren and cloneElementWithoutChildren
     // are used instead.
     virtual PassRefPtr<Node> cloneNode(bool deep) OVERRIDE;
@@ -769,7 +774,7 @@
 
     RefPtr<ElementData> m_elementData;
 };
-    
+
 inline Element* toElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || node->isElementNode());
@@ -794,7 +799,7 @@
 {
     return isElementNode() && toElement(this)->hasTagName(name);
 }
-    
+
 inline bool Node::hasLocalName(const AtomicString& name) const
 {
     return isElementNode() && toElement(this)->hasLocalName(name);
diff --git a/Source/core/dom/Element.idl b/Source/core/dom/Element.idl
index db0aef0..29954ca 100644
--- a/Source/core/dom/Element.idl
+++ b/Source/core/dom/Element.idl
@@ -100,10 +100,15 @@
     // WebKit extension, pending specification.
     [RaisesException] boolean webkitMatchesSelector([Default=Undefined] optional DOMString selectors);
 
-    // ShadowAware API
-    [Reflect=pseudo, ImplementedAs=pseudo, PerWorldBindings] attribute DOMString webkitPseudo;
-    [ImplementedAs=createShadowRoot, RaisesException] ShadowRoot webkitCreateShadowRoot();
-    [ImplementedAs=shadowRoot, PerWorldBindings] readonly attribute ShadowRoot webkitShadowRoot;
+    // Shadow DOM API
+    [EnabledAtRuntime=ShadowDOM, Reflect, PerWorldBindings] attribute DOMString pseudo;
+    [EnabledAtRuntime=ShadowDOM, RaisesException] ShadowRoot createShadowRoot();
+    [EnabledAtRuntime=ShadowDOM, PerWorldBindings] readonly attribute ShadowRoot shadowRoot;
+
+    // To-be-deprecated prefixed Shadow DOM API
+    [Reflect=pseudo, ImplementedAs=pseudo, PerWorldBindings, MeasureAs=ShadowDOMPrefixedPseudo] attribute DOMString webkitPseudo;
+    [ImplementedAs=createShadowRoot, RaisesException, MeasureAs=ShadowDOMPrefixedCreateShadowRoot] ShadowRoot webkitCreateShadowRoot();
+    [ImplementedAs=shadowRoot, PerWorldBindings, MeasureAs=ShadowDOMPrefixedShadowRoot] readonly attribute ShadowRoot webkitShadowRoot;
 
     // CSSOM View Module API
     ClientRectList getClientRects();
diff --git a/Source/core/dom/ElementRareData.h b/Source/core/dom/ElementRareData.h
index 117e93a..e14dacb 100644
--- a/Source/core/dom/ElementRareData.h
+++ b/Source/core/dom/ElementRareData.h
@@ -48,7 +48,7 @@
 
     void resetComputedStyle();
     void resetDynamicRestyleObservations();
-    
+
     short tabIndex() const { return m_tabIndex; }
     void setTabIndexExplicitly(short index) { m_tabIndex = index; m_tabIndexWasSetExplicitly = true; }
     bool tabIndexSetExplicitly() const { return m_tabIndexWasSetExplicitly; }
diff --git a/Source/core/dom/Event.h b/Source/core/dom/Event.h
index 82e402d..7875b1e 100644
--- a/Source/core/dom/Event.h
+++ b/Source/core/dom/Event.h
@@ -39,18 +39,18 @@
 
 struct EventInit {
     EventInit();
-     
+
     bool bubbles;
     bool cancelable;
 };
 
 class Event : public ScriptWrappable, public RefCounted<Event> {
 public:
-    enum PhaseType { 
+    enum PhaseType {
         NONE                = 0,
-        CAPTURING_PHASE     = 1, 
+        CAPTURING_PHASE     = 1,
         AT_TARGET           = 2,
-        BUBBLING_PHASE      = 3 
+        BUBBLING_PHASE      = 3
     };
 
     enum EventType {
@@ -92,7 +92,7 @@
 
     const AtomicString& type() const { return m_type; }
     void setType(const AtomicString& type) { m_type = type; }
-    
+
     EventTarget* target() const { return m_target.get(); }
     void setTarget(PassRefPtr<EventTarget>);
 
@@ -108,7 +108,7 @@
 
     void stopPropagation() { m_propagationStopped = true; }
     void stopImmediatePropagation() { m_immediatePropagationStopped = true; }
-    
+
     // IE Extensions
     EventTarget* srcElement() const { return target(); } // MSIE extension - "the object that fired the event"
 
diff --git a/Source/core/dom/Event.idl b/Source/core/dom/Event.idl
index 680b038..74af6e1 100644
--- a/Source/core/dom/Event.idl
+++ b/Source/core/dom/Event.idl
@@ -22,7 +22,7 @@
 [
     CustomToV8,
     ConstructorTemplate=Event
-    
+
 ] interface Event {
 
     // DOM PhaseType
@@ -59,8 +59,8 @@
 
     void               stopPropagation();
     void               preventDefault();
-     void initEvent([Default=Undefined] optional DOMString eventTypeArg, 
-                                  [Default=Undefined] optional boolean canBubbleArg, 
+     void initEvent([Default=Undefined] optional DOMString eventTypeArg,
+                                  [Default=Undefined] optional boolean canBubbleArg,
                                   [Default=Undefined] optional boolean cancelableArg);
 
     // DOM Level 3 Additions.
@@ -72,7 +72,7 @@
              attribute boolean          returnValue;
              attribute boolean          cancelBubble;
 
-    [EnabledAtRuntime=experimentalShadowDOM] readonly attribute NodeList path;
+    [EnabledAtRuntime=ShadowDOM] readonly attribute NodeList path;
 
     [Custom] readonly attribute Clipboard        clipboardData;
 };
diff --git a/Source/core/dom/EventContext.cpp b/Source/core/dom/EventContext.cpp
index dee63c1..13bf7a8 100644
--- a/Source/core/dom/EventContext.cpp
+++ b/Source/core/dom/EventContext.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/EventContext.h b/Source/core/dom/EventContext.h
index ea8961b..4d15ece 100644
--- a/Source/core/dom/EventContext.h
+++ b/Source/core/dom/EventContext.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/EventListener.h b/Source/core/dom/EventListener.h
index 768a0c3..33c4a34 100644
--- a/Source/core/dom/EventListener.h
+++ b/Source/core/dom/EventListener.h
@@ -32,8 +32,8 @@
     class EventListener : public RefCounted<EventListener> {
     public:
         enum Type {
-            JSEventListenerType, 
-            ImageEventListenerType, 
+            JSEventListenerType,
+            ImageEventListenerType,
             ObjCEventListenerType,
             CPPEventListenerType,
             ConditionEventListenerType,
@@ -59,7 +59,7 @@
 
     private:
         virtual bool virtualisAttribute() const { return false; }
-        
+
         Type m_type;
     };
 
diff --git a/Source/core/dom/EventQueue.h b/Source/core/dom/EventQueue.h
index 513bf36..770ae79 100644
--- a/Source/core/dom/EventQueue.h
+++ b/Source/core/dom/EventQueue.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/EventRetargeter.cpp b/Source/core/dom/EventRetargeter.cpp
index 153ada7..6a9dac1 100644
--- a/Source/core/dom/EventRetargeter.cpp
+++ b/Source/core/dom/EventRetargeter.cpp
@@ -115,7 +115,7 @@
 
 void EventRetargeter::calculateAdjustedEventPathForEachNode(EventPath& eventPath)
 {
-    if (!RuntimeEnabledFeatures::experimentalShadowDOMEnabled())
+    if (!RuntimeEnabledFeatures::shadowDOMEnabled())
         return;
     TreeScope* lastScope = 0;
     size_t eventPathSize = eventPath.size();
diff --git a/Source/core/dom/EventTarget.cpp b/Source/core/dom/EventTarget.cpp
index f2aa211..d318f66 100644
--- a/Source/core/dom/EventTarget.cpp
+++ b/Source/core/dom/EventTarget.cpp
@@ -25,7 +25,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -218,7 +218,7 @@
 
     return !event->defaultPrevented();
 }
-        
+
 void EventTarget::fireEventListeners(Event* event, EventTargetData* d, EventListenerVector& entry)
 {
     RefPtr<EventTarget> protect = this;
diff --git a/Source/core/dom/EventTarget.h b/Source/core/dom/EventTarget.h
index 5b736ed..a0c3a0e 100644
--- a/Source/core/dom/EventTarget.h
+++ b/Source/core/dom/EventTarget.h
@@ -25,7 +25,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -129,14 +129,14 @@
 
     protected:
         virtual ~EventTarget();
-        
+
         virtual EventTargetData* eventTargetData() = 0;
         virtual EventTargetData* ensureEventTargetData() = 0;
 
     private:
         virtual void refEventTarget() = 0;
         virtual void derefEventTarget() = 0;
-        
+
         void fireEventListeners(Event*, EventTargetData*, EventListenerVector&);
 
         bool clearAttributeEventListener(const AtomicString& eventType, DOMWrapperWorld* isolatedWorld);
diff --git a/Source/core/dom/EventTarget.idl b/Source/core/dom/EventTarget.idl
index d711cd7..7c87036 100644
--- a/Source/core/dom/EventTarget.idl
+++ b/Source/core/dom/EventTarget.idl
@@ -22,10 +22,10 @@
     CustomToV8,
     DoNotGenerateWrap
 ] interface EventTarget {
-    void addEventListener(DOMString type, 
+    void addEventListener(DOMString type,
                           EventListener listener,
                           optional boolean useCapture);
-    void removeEventListener(DOMString type, 
+    void removeEventListener(DOMString type,
                              EventListener listener,
                              optional boolean useCapture);
     [RaisesException] boolean dispatchEvent(Event event);
diff --git a/Source/core/dom/FocusEvent.cpp b/Source/core/dom/FocusEvent.cpp
index e839fe7..6d9569d 100644
--- a/Source/core/dom/FocusEvent.cpp
+++ b/Source/core/dom/FocusEvent.cpp
@@ -53,7 +53,7 @@
     ScriptWrappable::init(this);
 }
 
-FocusEvent::FocusEvent(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<AbstractView> view, int detail, PassRefPtr<EventTarget> relatedTarget)
+FocusEvent::FocusEvent(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<AbstractView> view, int detail, EventTarget* relatedTarget)
     : UIEvent(type, canBubble, cancelable, view, detail)
     , m_relatedTarget(relatedTarget)
 {
diff --git a/Source/core/dom/FocusEvent.h b/Source/core/dom/FocusEvent.h
index 65dbfd5..f96c076 100644
--- a/Source/core/dom/FocusEvent.h
+++ b/Source/core/dom/FocusEvent.h
@@ -46,7 +46,7 @@
         return adoptRef(new FocusEvent);
     }
 
-    static PassRefPtr<FocusEvent> create(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<AbstractView> view, int detail, PassRefPtr<EventTarget> relatedTarget)
+    static PassRefPtr<FocusEvent> create(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<AbstractView> view, int detail, EventTarget* relatedTarget)
     {
         return adoptRef(new FocusEvent(type, canBubble, cancelable, view, detail, relatedTarget));
     }
@@ -57,14 +57,14 @@
     }
 
     EventTarget* relatedTarget() const { return m_relatedTarget.get(); }
-    void setRelatedTarget(PassRefPtr<EventTarget> relatedTarget) { m_relatedTarget = relatedTarget; }
+    void setRelatedTarget(EventTarget* relatedTarget) { m_relatedTarget = relatedTarget; }
 
     virtual const AtomicString& interfaceName() const;
     virtual bool isFocusEvent() const;
 
 private:
     FocusEvent();
-    FocusEvent(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<AbstractView>, int, PassRefPtr<EventTarget>);
+    FocusEvent(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<AbstractView>, int, EventTarget*);
     FocusEvent(const AtomicString& type, const FocusEventInit&);
 
     RefPtr<EventTarget> m_relatedTarget;
diff --git a/Source/core/dom/GenericEventQueue.cpp b/Source/core/dom/GenericEventQueue.cpp
index ba6932a..b002fd6 100644
--- a/Source/core/dom/GenericEventQueue.cpp
+++ b/Source/core/dom/GenericEventQueue.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/dom/GenericEventQueue.h b/Source/core/dom/GenericEventQueue.h
index 5f4e426..a4d1c20 100644
--- a/Source/core/dom/GenericEventQueue.h
+++ b/Source/core/dom/GenericEventQueue.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef GenericEventQueue_h
diff --git a/Source/core/dom/HashChangeEvent.idl b/Source/core/dom/HashChangeEvent.idl
index 2408afe..470a208 100644
--- a/Source/core/dom/HashChangeEvent.idl
+++ b/Source/core/dom/HashChangeEvent.idl
@@ -21,11 +21,11 @@
 [
     ConstructorTemplate=Event
 ] interface HashChangeEvent : Event {
-    void initHashChangeEvent([Default=Undefined] optional DOMString type, 
-                             [Default=Undefined] optional boolean canBubble, 
-                             [Default=Undefined] optional boolean cancelable, 
-                             [Default=Undefined] optional DOMString oldURL, 
-                             [Default=Undefined] optional DOMString newURL); 
+    void initHashChangeEvent([Default=Undefined] optional DOMString type,
+                             [Default=Undefined] optional boolean canBubble,
+                             [Default=Undefined] optional boolean cancelable,
+                             [Default=Undefined] optional DOMString oldURL,
+                             [Default=Undefined] optional DOMString newURL);
     [InitializedByEventConstructor] readonly attribute DOMString oldURL;
     [InitializedByEventConstructor] readonly attribute DOMString newURL;
 };
diff --git a/Source/core/dom/IconURL.h b/Source/core/dom/IconURL.h
index 7b689bb..e352b7f 100644
--- a/Source/core/dom/IconURL.h
+++ b/Source/core/dom/IconURL.h
@@ -69,7 +69,7 @@
         , m_isDefaultIcon(false)
     {
     }
-    
+
     static IconURL defaultIconURL(const KURL&, IconType);
 };
 
diff --git a/Source/core/dom/IdTargetObserverRegistry.cpp b/Source/core/dom/IdTargetObserverRegistry.cpp
index 2efc7fd..19d297a 100644
--- a/Source/core/dom/IdTargetObserverRegistry.cpp
+++ b/Source/core/dom/IdTargetObserverRegistry.cpp
@@ -39,7 +39,7 @@
 {
     if (id.isEmpty())
         return;
-    
+
     IdToObserverSetMap::AddResult result = m_registry.add(id.impl(), nullptr);
     if (result.isNewEntry)
         result.iterator->value = adoptPtr(new ObserverSet());
diff --git a/Source/core/dom/KeyboardEvent.h b/Source/core/dom/KeyboardEvent.h
index acb0d32..02c7e34 100644
--- a/Source/core/dom/KeyboardEvent.h
+++ b/Source/core/dom/KeyboardEvent.h
@@ -52,7 +52,7 @@
         DOMKeyLocationRight         = 0x02,
         DOMKeyLocationNumpad        = 0x03
     };
-        
+
     static PassRefPtr<KeyboardEvent> create()
     {
         return adoptRef(new KeyboardEvent);
@@ -77,18 +77,18 @@
     }
 
     virtual ~KeyboardEvent();
-    
+
     void initKeyboardEvent(const AtomicString& type, bool canBubble, bool cancelable, AbstractView*,
         const String& keyIdentifier, unsigned keyLocation,
         bool ctrlKey, bool altKey, bool shiftKey, bool metaKey, bool altGraphKey = false);
-    
+
     const String& keyIdentifier() const { return m_keyIdentifier; }
     unsigned keyLocation() const { return m_keyLocation; }
 
     bool getModifierState(const String& keyIdentifier) const;
 
     bool altGraphKey() const { return m_altGraphKey; }
-    
+
     const PlatformKeyboardEvent* keyEvent() const { return m_keyEvent.get(); }
 
     int keyCode() const; // key code for keydown and keyup, character for keypress
diff --git a/Source/core/dom/KeyboardEvent.idl b/Source/core/dom/KeyboardEvent.idl
index 134cb59..cda219f 100644
--- a/Source/core/dom/KeyboardEvent.idl
+++ b/Source/core/dom/KeyboardEvent.idl
@@ -31,10 +31,10 @@
     readonly attribute boolean          altGraphKey;
 
     // FIXME: this does not match the version in the DOM spec.
-    void initKeyboardEvent([Default=Undefined] optional DOMString type, 
-                           [Default=Undefined] optional boolean canBubble, 
-                           [Default=Undefined] optional boolean cancelable, 
-                           [Default=Undefined] optional Window view, 
+    void initKeyboardEvent([Default=Undefined] optional DOMString type,
+                           [Default=Undefined] optional boolean canBubble,
+                           [Default=Undefined] optional boolean cancelable,
+                           [Default=Undefined] optional Window view,
                            [Default=Undefined] optional DOMString keyIdentifier,
                            [Default=Undefined] optional unsigned long keyLocation,
                            [Default=Undefined] optional boolean ctrlKey,
diff --git a/Source/core/dom/MessageChannel.cpp b/Source/core/dom/MessageChannel.cpp
index 4f2b284..4c65fac 100644
--- a/Source/core/dom/MessageChannel.cpp
+++ b/Source/core/dom/MessageChannel.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/MessageChannel.h b/Source/core/dom/MessageChannel.h
index 64b213c..507825b 100644
--- a/Source/core/dom/MessageChannel.h
+++ b/Source/core/dom/MessageChannel.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/MessageChannel.idl b/Source/core/dom/MessageChannel.idl
index c380c44..3d62729 100644
--- a/Source/core/dom/MessageChannel.idl
+++ b/Source/core/dom/MessageChannel.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/MessageEvent.cpp b/Source/core/dom/MessageEvent.cpp
index bec2624..ce6e8fa 100644
--- a/Source/core/dom/MessageEvent.cpp
+++ b/Source/core/dom/MessageEvent.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/MessageEvent.h b/Source/core/dom/MessageEvent.h
index d68bac8..7f54232 100644
--- a/Source/core/dom/MessageEvent.h
+++ b/Source/core/dom/MessageEvent.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/MessageEvent.idl b/Source/core/dom/MessageEvent.idl
index 7b5fec3..3bc8866 100644
--- a/Source/core/dom/MessageEvent.idl
+++ b/Source/core/dom/MessageEvent.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -35,13 +35,13 @@
     [InitializedByEventConstructor, CustomGetter] readonly attribute any data;
     [InitializedByEventConstructor] readonly attribute MessagePort[] ports;
 
-    [Custom] void initMessageEvent([Default=Undefined] optional DOMString typeArg, 
-                                   [Default=Undefined] optional boolean canBubbleArg, 
-                                   [Default=Undefined] optional boolean cancelableArg, 
-                                   [Default=Undefined] optional any dataArg, 
-                                   [Default=Undefined] optional DOMString originArg, 
-                                   [Default=Undefined] optional DOMString lastEventIdArg, 
-                                   [Default=Undefined] optional Window sourceArg, 
+    [Custom] void initMessageEvent([Default=Undefined] optional DOMString typeArg,
+                                   [Default=Undefined] optional boolean canBubbleArg,
+                                   [Default=Undefined] optional boolean cancelableArg,
+                                   [Default=Undefined] optional any dataArg,
+                                   [Default=Undefined] optional DOMString originArg,
+                                   [Default=Undefined] optional DOMString lastEventIdArg,
+                                   [Default=Undefined] optional Window sourceArg,
                                    [Default=Undefined] optional Array messagePorts);
 
     [Custom] void webkitInitMessageEvent([Default=Undefined] optional DOMString typeArg,
diff --git a/Source/core/dom/MessagePort.h b/Source/core/dom/MessagePort.h
index f5f63c4..337e225 100644
--- a/Source/core/dom/MessagePort.h
+++ b/Source/core/dom/MessagePort.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/MessagePort.idl b/Source/core/dom/MessagePort.idl
index 18e7284..aa6ddb3 100644
--- a/Source/core/dom/MessagePort.idl
+++ b/Source/core/dom/MessagePort.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/MouseEvent.cpp b/Source/core/dom/MouseEvent.cpp
index e11d1d8..2d5f328 100644
--- a/Source/core/dom/MouseEvent.cpp
+++ b/Source/core/dom/MouseEvent.cpp
@@ -181,7 +181,7 @@
 int MouseEvent::which() const
 {
     // For the DOM, the return values for left, middle and right mouse buttons are 0, 1, 2, respectively.
-    // For the Netscape "which" property, the return values for left, middle and right mouse buttons are 1, 2, 3, respectively. 
+    // For the Netscape "which" property, the return values for left, middle and right mouse buttons are 1, 2, 3, respectively.
     // So we must add 1.
     if (!m_buttonDown)
         return 0;
diff --git a/Source/core/dom/MouseEvent.idl b/Source/core/dom/MouseEvent.idl
index 516cb1e..92c3bfb 100644
--- a/Source/core/dom/MouseEvent.idl
+++ b/Source/core/dom/MouseEvent.idl
@@ -32,21 +32,21 @@
     [InitializedByEventConstructor] readonly attribute EventTarget      relatedTarget;
                                     readonly attribute long             webkitMovementX;
                                     readonly attribute long             webkitMovementY;
-    
-     void initMouseEvent([Default=Undefined] optional DOMString type, 
-                                       [Default=Undefined] optional boolean canBubble, 
-                                       [Default=Undefined] optional boolean cancelable, 
-                                       [Default=Undefined] optional Window view, 
-                                       [Default=Undefined] optional long detail, 
-                                       [Default=Undefined] optional long screenX, 
-                                       [Default=Undefined] optional long screenY, 
-                                       [Default=Undefined] optional long clientX, 
-                                       [Default=Undefined] optional long clientY, 
-                                       [Default=Undefined] optional boolean ctrlKey, 
-                                       [Default=Undefined] optional boolean altKey, 
-                                       [Default=Undefined] optional boolean shiftKey, 
-                                       [Default=Undefined] optional boolean metaKey, 
-                                       [Default=Undefined] optional unsigned short button, 
+
+     void initMouseEvent([Default=Undefined] optional DOMString type,
+                                       [Default=Undefined] optional boolean canBubble,
+                                       [Default=Undefined] optional boolean cancelable,
+                                       [Default=Undefined] optional Window view,
+                                       [Default=Undefined] optional long detail,
+                                       [Default=Undefined] optional long screenX,
+                                       [Default=Undefined] optional long screenY,
+                                       [Default=Undefined] optional long clientX,
+                                       [Default=Undefined] optional long clientY,
+                                       [Default=Undefined] optional boolean ctrlKey,
+                                       [Default=Undefined] optional boolean altKey,
+                                       [Default=Undefined] optional boolean shiftKey,
+                                       [Default=Undefined] optional boolean metaKey,
+                                       [Default=Undefined] optional unsigned short button,
                                        [Default=Undefined] optional EventTarget relatedTarget);
 
     // extensions
diff --git a/Source/core/dom/MutationEvent.idl b/Source/core/dom/MutationEvent.idl
index 16c183e..0aae4e3 100644
--- a/Source/core/dom/MutationEvent.idl
+++ b/Source/core/dom/MutationEvent.idl
@@ -31,13 +31,13 @@
     readonly attribute DOMString      attrName;
     readonly attribute unsigned short attrChange;
 
-     void initMutationEvent([Default=Undefined] optional DOMString type, 
-                                          [Default=Undefined] optional boolean canBubble, 
-                                          [Default=Undefined] optional boolean cancelable, 
-                                          [Default=Undefined] optional Node relatedNode, 
-                                          [Default=Undefined] optional DOMString prevValue, 
-                                          [Default=Undefined] optional DOMString newValue, 
-                                          [Default=Undefined] optional DOMString attrName, 
+     void initMutationEvent([Default=Undefined] optional DOMString type,
+                                          [Default=Undefined] optional boolean canBubble,
+                                          [Default=Undefined] optional boolean cancelable,
+                                          [Default=Undefined] optional Node relatedNode,
+                                          [Default=Undefined] optional DOMString prevValue,
+                                          [Default=Undefined] optional DOMString newValue,
+                                          [Default=Undefined] optional DOMString attrName,
                                           [Default=Undefined] optional unsigned short attrChange);
 
 };
diff --git a/Source/core/dom/NameNodeList.cpp b/Source/core/dom/NameNodeList.cpp
index c4648c0..69634c9 100644
--- a/Source/core/dom/NameNodeList.cpp
+++ b/Source/core/dom/NameNodeList.cpp
@@ -40,7 +40,7 @@
 NameNodeList::~NameNodeList()
 {
     ownerNode()->nodeLists()->removeCacheWithAtomicName(this, NameNodeListType, m_name);
-} 
+}
 
 bool NameNodeList::nodeMatches(Element* testNode) const
 {
diff --git a/Source/core/dom/NamedNodeMap.idl b/Source/core/dom/NamedNodeMap.idl
index d0bd9bd..698a035 100644
--- a/Source/core/dom/NamedNodeMap.idl
+++ b/Source/core/dom/NamedNodeMap.idl
@@ -30,14 +30,14 @@
     [RaisesException, DeliverCustomElementCallbacks] Node removeNamedItem([Default=Undefined] optional DOMString name);
 
     getter Node item([Default=Undefined] optional unsigned long index);
-    
+
     readonly attribute unsigned long length;
 
 
     // Introduced in DOM Level 2:
 
     // FIXME: the implementation does take an exceptioncode parameter.
-    /*[RaisesException]*/ Node getNamedItemNS([TreatNullAs=NullString,Default=Undefined] optional DOMString namespaceURI, 
+    /*[RaisesException]*/ Node getNamedItemNS([TreatNullAs=NullString,Default=Undefined] optional DOMString namespaceURI,
                                               [Default=Undefined] optional DOMString localName);
 
     [RaisesException, DeliverCustomElementCallbacks] Node setNamedItemNS([Default=Undefined] optional Node node);
diff --git a/Source/core/dom/NamedNodesCollection.cpp b/Source/core/dom/NamedNodesCollection.cpp
index 9112f03..fb6b772 100644
--- a/Source/core/dom/NamedNodesCollection.cpp
+++ b/Source/core/dom/NamedNodesCollection.cpp
@@ -1,10 +1,10 @@
 // Copyright (c) 2008, Google Inc.
 // All rights reserved.
-// 
+//
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions are
 // met:
-// 
+//
 //     * Redistributions of source code must retain the above copyright
 // notice, this list of conditions and the following disclaimer.
 //     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
 //     * Neither the name of Google Inc. nor the names of its
 // contributors may be used to endorse or promote products derived from
 // this software without specific prior written permission.
-// 
+//
 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/dom/NamedNodesCollection.h b/Source/core/dom/NamedNodesCollection.h
index 54839b5..0b4199b 100644
--- a/Source/core/dom/NamedNodesCollection.h
+++ b/Source/core/dom/NamedNodesCollection.h
@@ -1,10 +1,10 @@
 /*
 * Copyright (C) 2009 Google Inc. All rights reserved.
-* 
+*
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are
 * met:
-* 
+*
 *     * Redistributions of source code must retain the above copyright
 * notice, this list of conditions and the following disclaimer.
 *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
 *     * Neither the name of Google Inc. nor the names of its
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
-* 
+*
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/dom/Node.cpp b/Source/core/dom/Node.cpp
index a8e04bd..56d0a7f 100644
--- a/Source/core/dom/Node.cpp
+++ b/Source/core/dom/Node.cpp
@@ -47,7 +47,6 @@
 #include "core/dom/EventNames.h"
 #include "core/dom/ExceptionCode.h"
 #include "core/dom/ExceptionCodePlaceholder.h"
-#include "core/dom/FocusEvent.h"
 #include "core/dom/GestureEvent.h"
 #include "core/dom/KeyboardEvent.h"
 #include "core/dom/LiveNodeList.h"
@@ -265,16 +264,16 @@
     bool fl1 = s1 && s1->hasPseudoStyle(FIRST_LETTER);
     EDisplay display2 = s2 ? s2->display() : NONE;
     bool fl2 = s2 && s2->hasPseudoStyle(FIRST_LETTER);
-    
+
     // We just detach if a renderer acquires or loses a column-span, since spanning elements
     // typically won't contain much content.
     bool colSpan1 = s1 && s1->columnSpan();
     bool colSpan2 = s2 && s2->columnSpan();
-    
+
     bool specifiesColumns1 = s1 && (!s1->hasAutoColumnCount() || !s1->hasAutoColumnWidth());
     bool specifiesColumns2 = s2 && (!s2->hasAutoColumnCount() || !s2->hasAutoColumnWidth());
 
-    if (display1 != display2 || fl1 != fl2 || colSpan1 != colSpan2 
+    if (display1 != display2 || fl1 != fl2 || colSpan1 != colSpan2
         || (specifiesColumns1 != specifiesColumns2 && doc->settings()->regionBasedColumnsEnabled())
         || (s1 && s2 && !s1->contentDataEquivalent(s2)))
         ch = Detach;
@@ -717,9 +716,9 @@
         return renderer()->absoluteBoundingBoxRect();
     return LayoutRect();
 }
-    
+
 LayoutRect Node::renderRect(bool* isReplaced)
-{    
+{
     RenderObject* hitRenderer = this->renderer();
     ASSERT(hitRenderer);
     RenderObject* renderer = hitRenderer;
@@ -730,7 +729,7 @@
         }
         renderer = renderer->parent();
     }
-    return LayoutRect();    
+    return LayoutRect();
 }
 
 bool Node::hasNonEmptyBoundingBox() const
@@ -1266,7 +1265,7 @@
         if (AXObjectCache* cache = document()->existingAXObjectCache())
             return const_cast<Element*>(cache->rootAXEditableElement(this));
     }
-    
+
     return rootEditableElement();
 }
 
@@ -1367,47 +1366,47 @@
 {
     if (!other)
         return false;
-    
+
     NodeType nodeType = this->nodeType();
     if (nodeType != other->nodeType())
         return false;
-    
+
     if (nodeName() != other->nodeName())
         return false;
-    
+
     if (localName() != other->localName())
         return false;
-    
+
     if (namespaceURI() != other->namespaceURI())
         return false;
-    
+
     if (prefix() != other->prefix())
         return false;
-    
+
     if (nodeValue() != other->nodeValue())
         return false;
-    
+
     if (isElementNode() && !toElement(this)->hasEquivalentAttributes(toElement(other)))
         return false;
-    
+
     Node* child = firstChild();
     Node* otherChild = other->firstChild();
-    
+
     while (child) {
         if (!child->isEqualNode(otherChild))
             return false;
-        
+
         child = child->nextSibling();
         otherChild = otherChild->nextSibling();
     }
-    
+
     if (otherChild)
         return false;
-    
+
     if (nodeType == DOCUMENT_TYPE_NODE) {
         const DocumentType* documentTypeThis = static_cast<const DocumentType*>(this);
         const DocumentType* documentTypeOther = static_cast<const DocumentType*>(other);
-        
+
         if (documentTypeThis->publicId() != documentTypeOther->publicId())
             return false;
 
@@ -1419,7 +1418,7 @@
 
         // FIXME: We don't compare entities or notations because currently both are always empty.
     }
-    
+
     return true;
 }
 
@@ -1430,14 +1429,14 @@
     switch (nodeType()) {
         case ELEMENT_NODE: {
             const Element* elem = toElement(this);
-            
+
             if (elem->prefix().isNull())
                 return elem->namespaceURI() == namespaceURI;
 
             if (elem->hasAttributes()) {
                 for (unsigned i = 0; i < elem->attributeCount(); i++) {
                     const Attribute* attr = elem->attributeItem(i);
-                    
+
                     if (attr->localName() == xmlnsAtom)
                         return attr->value() == namespaceURI;
                 }
@@ -1474,10 +1473,10 @@
 {
     // Implemented according to
     // http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/namespaces-algorithms.html#lookupNamespacePrefixAlgo
-    
+
     if (namespaceURI.isEmpty())
         return String();
-    
+
     switch (nodeType()) {
         case ELEMENT_NODE:
             return lookupNamespacePrefix(namespaceURI, toElement(this));
@@ -1507,30 +1506,30 @@
 {
     // Implemented according to
     // http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/namespaces-algorithms.html#lookupNamespaceURIAlgo
-    
+
     if (!prefix.isNull() && prefix.isEmpty())
         return String();
-    
+
     switch (nodeType()) {
         case ELEMENT_NODE: {
             const Element *elem = toElement(this);
-            
+
             if (!elem->namespaceURI().isNull() && elem->prefix() == prefix)
                 return elem->namespaceURI();
-            
+
             if (elem->hasAttributes()) {
                 for (unsigned i = 0; i < elem->attributeCount(); i++) {
                     const Attribute* attr = elem->attributeItem(i);
-                    
+
                     if (attr->prefix() == xmlnsAtom && attr->localName() == prefix) {
                         if (!attr->value().isEmpty())
                             return attr->value();
-                        
+
                         return String();
                     } else if (attr->localName() == xmlnsAtom && prefix.isNull()) {
                         if (!attr->value().isEmpty())
                             return attr->value();
-                        
+
                         return String();
                     }
                 }
@@ -1550,7 +1549,7 @@
             return String();
         case ATTRIBUTE_NODE: {
             const Attr *attr = static_cast<const Attr *>(this);
-            
+
             if (attr->ownerElement())
                 return attr->ownerElement()->lookupNamespaceURI(prefix);
             else
@@ -1567,22 +1566,22 @@
 {
     if (_namespaceURI.isNull())
         return String();
-            
+
     if (originalElement->lookupNamespaceURI(prefix()) == _namespaceURI)
         return prefix();
-    
+
     ASSERT(isElementNode());
     const Element* thisElement = toElement(this);
     if (thisElement->hasAttributes()) {
         for (unsigned i = 0; i < thisElement->attributeCount(); i++) {
             const Attribute* attr = thisElement->attributeItem(i);
-            
+
             if (attr->prefix() == xmlnsAtom && attr->value() == _namespaceURI
                     && originalElement->lookupNamespaceURI(attr->localName()) == _namespaceURI)
                 return attr->localName();
         }
     }
-    
+
     if (Element* ancestor = ancestorElement())
         return ancestor->lookupNamespacePrefix(_namespaceURI, originalElement);
     return String();
@@ -1602,7 +1601,7 @@
         isNullString = false;
         content.append(static_cast<const ProcessingInstruction*>(node)->data());
         break;
-    
+
     case Node::ELEMENT_NODE:
         if (node->hasTagName(brTag) && convertBRsToNewlines) {
             isNullString = false;
@@ -1638,7 +1637,7 @@
 }
 
 void Node::setTextContent(const String& text, ExceptionCode& ec)
-{           
+{
     switch (nodeType()) {
         case TEXT_NODE:
         case CDATA_SECTION_NODE:
@@ -1695,13 +1694,13 @@
 
     if (otherNode == this)
         return DOCUMENT_POSITION_EQUIVALENT;
-    
+
     const Attr* attr1 = nodeType() == ATTRIBUTE_NODE ? toAttr(this) : 0;
     const Attr* attr2 = otherNode->nodeType() == ATTRIBUTE_NODE ? toAttr(otherNode) : 0;
-    
+
     const Node* start1 = attr1 ? attr1->ownerElement() : this;
     const Node* start2 = attr2 ? attr2->ownerElement() : otherNode;
-    
+
     // If either of start1 or start2 is null, then we are disconnected, since one of the nodes is
     // an orphaned attribute node.
     if (!start1 || !start2) {
@@ -1715,17 +1714,17 @@
         chain1.append(attr1);
     if (attr2)
         chain2.append(attr2);
-    
+
     if (attr1 && attr2 && start1 == start2 && start1) {
         // We are comparing two attributes on the same node. Crawl our attribute map and see which one we hit first.
         const Element* owner1 = attr1->ownerElement();
         owner1->synchronizeAllAttributes();
         unsigned length = owner1->attributeCount();
         for (unsigned i = 0; i < length; ++i) {
-            // If neither of the two determining nodes is a child node and nodeType is the same for both determining nodes, then an 
+            // If neither of the two determining nodes is a child node and nodeType is the same for both determining nodes, then an
             // implementation-dependent order between the determining nodes is returned. This order is stable as long as no nodes of
-            // the same nodeType are inserted into or removed from the direct container. This would be the case, for example, 
-            // when comparing two attributes of the same element, and inserting or removing additional attributes might change 
+            // the same nodeType are inserted into or removed from the direct container. This would be the case, for example,
+            // when comparing two attributes of the same element, and inserting or removing additional attributes might change
             // the order between existing attributes.
             const Attribute* attribute = owner1->attributeItem(i);
             if (attr1->qualifiedName() == attribute->name())
@@ -1733,7 +1732,7 @@
             if (attr2->qualifiedName() == attribute->name())
                 return DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC | DOCUMENT_POSITION_PRECEDING;
         }
-        
+
         ASSERT_NOT_REACHED();
         return DOCUMENT_POSITION_DISCONNECTED;
     }
@@ -1802,10 +1801,10 @@
             return DOCUMENT_POSITION_PRECEDING | connection;
         }
     }
-    
+
     // There was no difference between the two parent chains, i.e., one was a subset of the other.  The shorter
     // chain is the ancestor.
-    return index1 < index2 ? 
+    return index1 < index2 ?
                DOCUMENT_POSITION_FOLLOWING | DOCUMENT_POSITION_CONTAINED_BY | connection :
                DOCUMENT_POSITION_PRECEDING | DOCUMENT_POSITION_CONTAINS | connection;
 }
@@ -1815,7 +1814,7 @@
     // If there is a renderer, just ask it to do the conversion
     if (renderer())
         return renderer()->localToAbsolute(p, UseTransforms);
-    
+
     // Otherwise go up the tree looking for a renderer
     Element *parent = ancestorElement();
     if (parent)
@@ -2358,20 +2357,6 @@
     dispatchScopedEvent(MutationEvent::create(eventNames().DOMSubtreeModifiedEvent, true));
 }
 
-void Node::dispatchFocusInEvent(const AtomicString& eventType, PassRefPtr<Node> oldFocusedNode)
-{
-    ASSERT(!NoEventDispatchAssertion::isEventDispatchForbidden());
-    ASSERT(eventType == eventNames().focusinEvent || eventType == eventNames().DOMFocusInEvent);
-    dispatchScopedEventDispatchMediator(FocusInEventDispatchMediator::create(FocusEvent::create(eventType, true, false, document()->defaultView(), 0, oldFocusedNode)));
-}
-
-void Node::dispatchFocusOutEvent(const AtomicString& eventType, PassRefPtr<Node> newFocusedNode)
-{
-    ASSERT(!NoEventDispatchAssertion::isEventDispatchForbidden());
-    ASSERT(eventType == eventNames().focusoutEvent || eventType == eventNames().DOMFocusOutEvent);
-    dispatchScopedEventDispatchMediator(FocusOutEventDispatchMediator::create(FocusEvent::create(eventType, true, false, document()->defaultView(), 0, newFocusedNode)));
-}
-
 bool Node::dispatchDOMActivateEvent(int detail, PassRefPtr<Event> underlyingEvent)
 {
     ASSERT(!NoEventDispatchAssertion::isEventDispatchForbidden());
@@ -2426,18 +2411,6 @@
     return EventDispatcher::dispatchEvent(this, WheelEventDispatchMediator::create(event, document()->defaultView()));
 }
 
-void Node::dispatchFocusEvent(PassRefPtr<Node> oldFocusedNode, FocusDirection)
-{
-    RefPtr<FocusEvent> event = FocusEvent::create(eventNames().focusEvent, false, false, document()->defaultView(), 0, oldFocusedNode);
-    EventDispatcher::dispatchEvent(this, FocusEventDispatchMediator::create(event.release()));
-}
-
-void Node::dispatchBlurEvent(PassRefPtr<Node> newFocusedNode)
-{
-    RefPtr<FocusEvent> event = FocusEvent::create(eventNames().blurEvent, false, false, document()->defaultView(), 0, newFocusedNode);
-    EventDispatcher::dispatchEvent(this, BlurEventDispatchMediator::create(event.release()));
-}
-
 void Node::dispatchChangeEvent()
 {
     dispatchScopedEvent(Event::create(eventNames().changeEvent, true, false));
@@ -2495,7 +2468,7 @@
         Node* startNode = this;
         while (startNode && !startNode->renderer())
             startNode = startNode->parentOrShadowHostNode();
-        
+
         if (startNode && startNode->renderer())
             if (Frame* frame = document()->frame())
                 frame->eventHandler()->defaultWheelEventHandler(startNode, wheelEvent);
diff --git a/Source/core/dom/Node.h b/Source/core/dom/Node.h
index 45db9bc..24338a1 100644
--- a/Source/core/dom/Node.h
+++ b/Source/core/dom/Node.h
@@ -32,7 +32,6 @@
 #include "core/dom/TreeScope.h"
 #include "core/editing/EditingBoundary.h"
 #include "core/inspector/InspectorCounters.h"
-#include "core/page/FocusDirection.h"
 #include "core/platform/TreeShared.h"
 #include "core/platform/graphics/LayoutRect.h"
 #include "core/rendering/style/RenderStyleConstants.h"
@@ -166,7 +165,7 @@
     static bool isSupported(const String& feature, const String& version);
     static void dumpStatistics();
 
-    enum StyleChange { NoChange, NoInherit, Inherit, Detach, Force };    
+    enum StyleChange { NoChange, NoInherit, Inherit, Detach, Force };
     static StyleChange diff(const RenderStyle*, const RenderStyle*, Document*);
 
     virtual ~Node();
@@ -224,10 +223,10 @@
     String lookupPrefix(const AtomicString& namespaceURI) const;
     String lookupNamespaceURI(const String& prefix) const;
     String lookupNamespacePrefix(const AtomicString& namespaceURI, const Element* originalElement) const;
-    
+
     String textContent(bool convertBRsToNewlines = false) const;
     void setTextContent(const String&, ExceptionCode&);
-    
+
     Node* lastDescendant() const;
     Node* firstDescendant() const;
 
@@ -325,7 +324,7 @@
     // FIXME: These two functions belong in editing -- "atomic node" is an editing concept.
     Node* previousNodeConsideringAtomicNodes() const;
     Node* nextNodeConsideringAtomicNodes() const;
-    
+
     // Returns the next leaf node or 0 if there are no more.
     // Delivers leaf nodes as if the whole DOM tree were a linear chain of its leaf nodes.
     // Uses an editing-specific concept of what a leaf node is, and should probably be moved
@@ -480,11 +479,11 @@
 
     unsigned nodeIndex() const;
 
-    // Returns the DOM ownerDocument attribute. This method never returns NULL, except in the case 
-    // of (1) a Document node or (2) a DocumentType node that is not used with any Document yet. 
+    // Returns the DOM ownerDocument attribute. This method never returns NULL, except in the case
+    // of (1) a Document node or (2) a DocumentType node that is not used with any Document yet.
     Document* ownerDocument() const;
 
-    // Returns the document associated with this node. This method never returns NULL, except in the case 
+    // Returns the document associated with this node. This method never returns NULL, except in the case
     // of a DocumentType node that is not used with any Document yet. A Document node returns itself.
     Document* document() const
     {
@@ -499,8 +498,8 @@
 
     // Returns true if this node is associated with a document and is in its associated document's
     // node tree, false otherwise.
-    bool inDocument() const 
-    { 
+    bool inDocument() const
+    {
         ASSERT(documentInternal() || !getFlag(InDocumentFlag));
         return getFlag(InDocumentFlag);
     }
@@ -669,8 +668,6 @@
 
     void dispatchSubtreeModifiedEvent();
     bool dispatchDOMActivateEvent(int detail, PassRefPtr<Event> underlyingEvent);
-    void dispatchFocusInEvent(const AtomicString& eventType, PassRefPtr<Node> oldFocusedNode);
-    void dispatchFocusOutEvent(const AtomicString& eventType, PassRefPtr<Node> newFocusedNode);
 
     bool dispatchKeyEvent(const PlatformKeyboardEvent&);
     bool dispatchWheelEvent(const PlatformWheelEvent&);
@@ -681,8 +678,6 @@
     void dispatchSimulatedClick(Event* underlyingEvent, SimulatedClickMouseEventOptions = SendNoEvents, SimulatedClickVisualOptions = ShowPressedLook);
 
     virtual bool dispatchBeforeLoadEvent(const String& sourceURL);
-    virtual void dispatchFocusEvent(PassRefPtr<Node> oldFocusedNode, FocusDirection);
-    virtual void dispatchBlurEvent(PassRefPtr<Node> newFocusedNode);
     virtual void dispatchChangeEvent();
     virtual void dispatchInputEvent();
 
@@ -761,16 +756,16 @@
     // 3 bits remaining
 
     bool getFlag(NodeFlags mask) const { return m_nodeFlags & mask; }
-    void setFlag(bool f, NodeFlags mask) const { m_nodeFlags = (m_nodeFlags & ~mask) | (-(int32_t)f & mask); } 
-    void setFlag(NodeFlags mask) const { m_nodeFlags |= mask; } 
-    void clearFlag(NodeFlags mask) const { m_nodeFlags &= ~mask; } 
+    void setFlag(bool f, NodeFlags mask) const { m_nodeFlags = (m_nodeFlags & ~mask) | (-(int32_t)f & mask); }
+    void setFlag(NodeFlags mask) const { m_nodeFlags |= mask; }
+    void clearFlag(NodeFlags mask) const { m_nodeFlags &= ~mask; }
 
 protected:
-    enum ConstructionType { 
+    enum ConstructionType {
         CreateOther = DefaultNodeFlags,
         CreateText = DefaultNodeFlags | IsTextFlag,
-        CreateContainer = DefaultNodeFlags | IsContainerFlag, 
-        CreateElement = CreateContainer | IsElementFlag, 
+        CreateContainer = DefaultNodeFlags | IsContainerFlag,
+        CreateElement = CreateContainer | IsElementFlag,
         CreatePseudoElement =  CreateElement | InDocumentFlag,
         CreateShadowRoot = CreateContainer | IsDocumentFragmentFlag | IsInShadowTreeFlag,
         CreateDocumentFragment = CreateContainer | IsDocumentFragmentFlag,
@@ -800,7 +795,7 @@
     }
 
     virtual void didMoveToNewDocument(Document* oldDocument);
-    
+
     virtual void addSubresourceAttributeURLs(ListHashSet<KURL>&) const { }
 
     bool hasRareData() const { return getFlag(HasRareDataFlag); }
diff --git a/Source/core/dom/Node.idl b/Source/core/dom/Node.idl
index 4ecd1d6..b14d4f7 100644
--- a/Source/core/dom/Node.idl
+++ b/Source/core/dom/Node.idl
@@ -61,7 +61,7 @@
     void               normalize();
 
     // Introduced in DOM Level 2:
-     boolean isSupported([Default=Undefined] optional DOMString feature, 
+     boolean isSupported([Default=Undefined] optional DOMString feature,
                                        [TreatNullAs=NullString,Default=Undefined] optional DOMString version);
 
     [TreatReturnedNullStringAs=Null, PerWorldBindings] readonly attribute DOMString        namespaceURI;
diff --git a/Source/core/dom/NodeIterator.cpp b/Source/core/dom/NodeIterator.cpp
index c23346f..bcd2bfe 100644
--- a/Source/core/dom/NodeIterator.cpp
+++ b/Source/core/dom/NodeIterator.cpp
@@ -198,7 +198,7 @@
                 }
                 if (node) {
                     // Removing last node.
-                    // Need to move the pointer after the node preceding the 
+                    // Need to move the pointer after the node preceding the
                     // new reference node.
                     referenceNode.node = node;
                     referenceNode.isPointerBeforeNode = false;
diff --git a/Source/core/dom/NodeTraversal.h b/Source/core/dom/NodeTraversal.h
index a0211c2..c9d5208 100644
--- a/Source/core/dom/NodeTraversal.h
+++ b/Source/core/dom/NodeTraversal.h
@@ -201,7 +201,7 @@
 }
 inline Node* next(const Node* current) { return traverseNextTemplate(current); }
 inline Node* next(const ContainerNode* current) { return traverseNextTemplate(current); }
-    
+
 template <class NodeType>
 inline Node* traverseNextTemplate(NodeType* current, const Node* stayWithin)
 {
diff --git a/Source/core/dom/NodeWithIndex.h b/Source/core/dom/NodeWithIndex.h
index 9c93755..8c75ccc 100644
--- a/Source/core/dom/NodeWithIndex.h
+++ b/Source/core/dom/NodeWithIndex.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef NodeWithIndex_h
diff --git a/Source/core/dom/OverflowEvent.cpp b/Source/core/dom/OverflowEvent.cpp
index a90ff6f..63ee454 100644
--- a/Source/core/dom/OverflowEvent.cpp
+++ b/Source/core/dom/OverflowEvent.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/dom/OverflowEvent.h b/Source/core/dom/OverflowEvent.h
index 38b940e..7509469 100644
--- a/Source/core/dom/OverflowEvent.h
+++ b/Source/core/dom/OverflowEvent.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef OverflowEvent_h
diff --git a/Source/core/dom/OverflowEvent.idl b/Source/core/dom/OverflowEvent.idl
index 04a86c8..69adee9 100644
--- a/Source/core/dom/OverflowEvent.idl
+++ b/Source/core/dom/OverflowEvent.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
@@ -29,7 +29,7 @@
     const unsigned short HORIZONTAL = 0;
     const unsigned short VERTICAL   = 1;
     const unsigned short BOTH       = 2;
-    
+
     [InitializedByEventConstructor] readonly attribute unsigned short orient;
     [InitializedByEventConstructor] readonly attribute boolean horizontalOverflow;
     [InitializedByEventConstructor] readonly attribute boolean verticalOverflow;
diff --git a/Source/core/dom/PageTransitionEvent.cpp b/Source/core/dom/PageTransitionEvent.cpp
index 2c210d0..b351ef4 100644
--- a/Source/core/dom/PageTransitionEvent.cpp
+++ b/Source/core/dom/PageTransitionEvent.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/dom/PageTransitionEvent.h b/Source/core/dom/PageTransitionEvent.h
index 16d0115..723dfff 100644
--- a/Source/core/dom/PageTransitionEvent.h
+++ b/Source/core/dom/PageTransitionEvent.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PageTransitionEvent_h
diff --git a/Source/core/dom/PageTransitionEvent.idl b/Source/core/dom/PageTransitionEvent.idl
index c8cea7f..47749be 100644
--- a/Source/core/dom/PageTransitionEvent.idl
+++ b/Source/core/dom/PageTransitionEvent.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/dom/PendingScript.cpp b/Source/core/dom/PendingScript.cpp
index e344593..94650ff 100644
--- a/Source/core/dom/PendingScript.cpp
+++ b/Source/core/dom/PendingScript.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/dom/PendingScript.h b/Source/core/dom/PendingScript.h
index 6794959..3d95eac 100644
--- a/Source/core/dom/PendingScript.h
+++ b/Source/core/dom/PendingScript.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PendingScript_h
@@ -100,7 +100,7 @@
     bool m_watchingForLoad;
     RefPtr<Element> m_element;
     TextPosition m_startingPosition; // Only used for inline script tags.
-    CachedResourceHandle<CachedScript> m_cachedScript; 
+    CachedResourceHandle<CachedScript> m_cachedScript;
 };
 
 }
diff --git a/Source/core/dom/PopStateEvent.cpp b/Source/core/dom/PopStateEvent.cpp
index 6bd19f3..652d9a2 100644
--- a/Source/core/dom/PopStateEvent.cpp
+++ b/Source/core/dom/PopStateEvent.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/PopStateEvent.h b/Source/core/dom/PopStateEvent.h
index 46f6dd8..19abdd1 100644
--- a/Source/core/dom/PopStateEvent.h
+++ b/Source/core/dom/PopStateEvent.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/PopStateEvent.idl b/Source/core/dom/PopStateEvent.idl
index 709777f..20ddbaa 100644
--- a/Source/core/dom/PopStateEvent.idl
+++ b/Source/core/dom/PopStateEvent.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/Position.h b/Source/core/dom/Position.h
index c3ad406..10cd594 100644
--- a/Source/core/dom/Position.h
+++ b/Source/core/dom/Position.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Position_h
@@ -164,7 +164,7 @@
     // Returns true if the visually equivalent positions around have different editability
     bool atEditingBoundary() const;
     Node* parentEditingBoundary() const;
-    
+
     bool atStartOfTree() const;
     bool atEndOfTree() const;
 
@@ -172,11 +172,11 @@
     // These aren't really basic "position" operations. More high level editing helper functions.
     Position leadingWhitespacePosition(EAffinity, bool considerNonCollapsibleWhitespace = false) const;
     Position trailingWhitespacePosition(EAffinity, bool considerNonCollapsibleWhitespace = false) const;
-    
+
     // These return useful visually equivalent positions.
     Position upstream(EditingBoundaryCrossingRule = CannotCrossEditingBoundary) const;
     Position downstream(EditingBoundaryCrossingRule = CannotCrossEditingBoundary) const;
-    
+
     bool isCandidate() const;
     bool inRenderedText() const;
     bool isRenderedCharacter() const;
@@ -194,7 +194,7 @@
     static Node* rootUserSelectAllForNode(Node*);
 #endif
     static ContainerNode* findParent(const Node*);
-    
+
     void debugPosition(const char* msg = "") const;
 
 #ifndef NDEBUG
@@ -202,13 +202,13 @@
     void showAnchorTypeAndOffset() const;
     void showTreeForThis() const;
 #endif
-    
+
 private:
     int offsetForPositionAfterAnchor() const;
 
     int renderedOffset() const;
 
-    
+
     Position previousCharacterPosition(EAffinity) const;
     Position nextCharacterPosition(EAffinity) const;
 
@@ -300,7 +300,7 @@
     int newOffset = 0;
     for (Node* node = anchorNode->firstChild(); node && newOffset < offset; node = node->nextSibling())
         newOffset++;
-    
+
     return newOffset;
 }
 
@@ -312,8 +312,8 @@
     int currentOffset = 0;
     for (Node* node = anchorNode->firstChild(); node && currentOffset < offset; node = node->nextSibling())
         currentOffset++;
-    
-    
+
+
     return offset < currentOffset;
 }
 
diff --git a/Source/core/dom/PositionIterator.cpp b/Source/core/dom/PositionIterator.cpp
index 2156894..34328d6 100644
--- a/Source/core/dom/PositionIterator.cpp
+++ b/Source/core/dom/PositionIterator.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -89,7 +89,7 @@
         }
         return;
     }
-    
+
     if (m_anchorNode->hasChildNodes()) {
         m_anchorNode = m_anchorNode->lastChild();
         m_offsetInAnchor = m_anchorNode->hasChildNodes()? 0: lastOffsetForEditing(m_anchorNode);
@@ -147,7 +147,7 @@
     RenderObject* renderer = m_anchorNode->renderer();
     if (!renderer)
         return false;
-    
+
     if (renderer->style()->visibility() != VISIBLE)
         return false;
 
diff --git a/Source/core/dom/PositionIterator.h b/Source/core/dom/PositionIterator.h
index 2457aba..6587f7e 100644
--- a/Source/core/dom/PositionIterator.h
+++ b/Source/core/dom/PositionIterator.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PositionIterator_h
diff --git a/Source/core/dom/ProcessingInstruction.cpp b/Source/core/dom/ProcessingInstruction.cpp
index 89b0fc1..4706fe0 100644
--- a/Source/core/dom/ProcessingInstruction.cpp
+++ b/Source/core/dom/ProcessingInstruction.cpp
@@ -146,14 +146,14 @@
                 m_cachedSheet->removeClient(this);
                 m_cachedSheet = 0;
             }
-            
+
             String url = document()->completeURL(href).string();
             if (!dispatchBeforeLoadEvent(url))
                 return;
-            
+
             m_loading = true;
             document()->styleSheetCollection()->addPendingSheet();
-            
+
             FetchRequest request(ResourceRequest(document()->completeURL(href)), CachedResourceInitiatorTypeNames::processinginstruction);
             if (m_isXSL)
                 m_cachedSheet = document()->fetcher()->requestXSLStyleSheet(request);
@@ -260,7 +260,7 @@
     return true;
 }
 
-int ProcessingInstruction::maxCharacterOffset() const 
+int ProcessingInstruction::maxCharacterOffset() const
 {
     return static_cast<int>(m_data.length());
 }
@@ -269,7 +269,7 @@
 {
     if (!sheet())
         return;
-    
+
     addSubresourceURL(urls, sheet()->baseURL());
 }
 
@@ -288,7 +288,7 @@
     Node::removedFrom(insertionPoint);
     if (!insertionPoint->inDocument())
         return;
-    
+
     document()->styleSheetCollection()->removeStyleSheetCandidateNode(this);
 
     RefPtr<StyleSheet> removedSheet = m_sheet;
diff --git a/Source/core/dom/ProgressEvent.cpp b/Source/core/dom/ProgressEvent.cpp
index 18d6980..da8a3c1 100644
--- a/Source/core/dom/ProgressEvent.cpp
+++ b/Source/core/dom/ProgressEvent.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -62,7 +62,7 @@
 {
     ScriptWrappable::init(this);
 }
-    
+
 const AtomicString& ProgressEvent::interfaceName() const
 {
     return eventNames().interfaceForProgressEvent;
diff --git a/Source/core/dom/ProgressEvent.h b/Source/core/dom/ProgressEvent.h
index eb1ecd3..035e23e 100644
--- a/Source/core/dom/ProgressEvent.h
+++ b/Source/core/dom/ProgressEvent.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ProgressEvent_h
diff --git a/Source/core/dom/ProgressEvent.idl b/Source/core/dom/ProgressEvent.idl
index fd82129..d775b88 100644
--- a/Source/core/dom/ProgressEvent.idl
+++ b/Source/core/dom/ProgressEvent.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/dom/QualifiedName.cpp b/Source/core/dom/QualifiedName.cpp
index 14035fb..f57185d 100644
--- a/Source/core/dom/QualifiedName.cpp
+++ b/Source/core/dom/QualifiedName.cpp
@@ -52,7 +52,7 @@
 struct QNameComponentsTranslator {
     static unsigned hash(const QualifiedNameComponents& components)
     {
-        return hashComponents(components); 
+        return hashComponents(components);
     }
     static bool equal(QualifiedName::QualifiedNameImpl* name, const QualifiedNameComponents& c)
     {
diff --git a/Source/core/dom/QualifiedName.h b/Source/core/dom/QualifiedName.h
index 3aaae96..355ceeb 100644
--- a/Source/core/dom/QualifiedName.h
+++ b/Source/core/dom/QualifiedName.h
@@ -63,7 +63,7 @@
             , m_namespace(namespaceURI)
         {
             ASSERT(!namespaceURI.isEmpty() || namespaceURI.isNull());
-        }        
+        }
     };
 
     QualifiedName(const AtomicString& prefix, const AtomicString& localName, const AtomicString& namespaceURI);
@@ -95,16 +95,16 @@
     String toString() const;
 
     QualifiedNameImpl* impl() const { return m_impl; }
-    
+
     // Init routine for globals
     static void init();
-    
+
 private:
     void ref() const { m_impl->ref(); }
     void deref();
 
     static QualifiedNameImpl* hashTableDeletedValue() { return RefPtr<QualifiedNameImpl>::hashTableDeletedValue(); }
-    
+
     QualifiedNameImpl* m_impl;
 };
 
@@ -128,7 +128,7 @@
 struct QualifiedNameHash {
     static unsigned hash(const QualifiedName& name) { return hash(name.impl()); }
 
-    static unsigned hash(const QualifiedName::QualifiedNameImpl* name) 
+    static unsigned hash(const QualifiedName::QualifiedNameImpl* name)
     {
         if (!name->m_existingHash)
             name->m_existingHash = name->computeHash();
@@ -147,13 +147,13 @@
 }
 
 namespace WTF {
-    
+
     template<typename T> struct DefaultHash;
 
     template<> struct DefaultHash<WebCore::QualifiedName> {
         typedef WebCore::QualifiedNameHash Hash;
     };
-    
+
     template<> struct HashTraits<WebCore::QualifiedName> : SimpleClassHashTraits<WebCore::QualifiedName> {
         static const bool emptyValueIsZero = false;
         static WebCore::QualifiedName emptyValue() { return WebCore::nullQName(); }
diff --git a/Source/core/dom/Range.cpp b/Source/core/dom/Range.cpp
index f0c4659..33d2ea6 100644
--- a/Source/core/dom/Range.cpp
+++ b/Source/core/dom/Range.cpp
@@ -322,7 +322,7 @@
 short Range::comparePoint(Node* refNode, int offset, ExceptionCode& ec) const
 {
     // http://developer.mozilla.org/en/docs/DOM:range.comparePoint
-    // This method returns -1, 0 or 1 depending on if the point described by the 
+    // This method returns -1, 0 or 1 depending on if the point described by the
     // refNode node and an offset within the node is before, same as, or after the range respectively.
 
     if (!m_start.container()) {
@@ -370,7 +370,7 @@
         ec = NotFoundError;
         return NODE_BEFORE;
     }
-    
+
     if (!m_start.container() && refNode->attached()) {
         ec = InvalidStateError;
         return NODE_BEFORE;
@@ -388,7 +388,7 @@
 
     ContainerNode* parentNode = refNode->parentNode();
     int nodeIndex = refNode->nodeIndex();
-    
+
     if (!parentNode) {
         // if the node is the top document we should return NODE_BEFORE_AND_AFTER
         // but we throw to match firefox behavior
@@ -593,7 +593,7 @@
 
     ContainerNode* parentNode = refNode->parentNode();
     int nodeIndex = refNode->nodeIndex();
-    
+
     if (!parentNode) {
         // if the node is the top document we should return NODE_BEFORE_AND_AFTER
         // but we throw to match firefox behavior
@@ -608,7 +608,7 @@
                comparePoint(parentNode, nodeIndex + 1, ec) > 0) { // ends after end
         return false;
     }
-    
+
     return true; // all other cases
 }
 
@@ -629,7 +629,7 @@
 {
     ASSERT(container);
     ASSERT(commonRoot);
-    
+
     if (!commonRoot->contains(container))
         return 0;
 
@@ -787,7 +787,7 @@
     ASSERT(startOffset <= endOffset);
 
     // This switch statement must be consistent with that of lengthOfContentsInNode.
-    RefPtr<Node> result;   
+    RefPtr<Node> result;
     switch (container->nodeType()) {
     case Node::TEXT_NODE:
     case Node::CDATA_SECTION_NODE:
@@ -893,7 +893,7 @@
         // FIXME: This assertion may fail if DOM is modified during mutation event
         // FIXME: Share code with Range::processNodes
         ASSERT(!firstChildInAncestorToProcess || firstChildInAncestorToProcess->parentNode() == ancestor);
-        
+
         NodeVector nodes;
         for (Node* child = firstChildInAncestorToProcess.get(); child;
             child = (direction == ProcessContentsForward) ? child->nextSibling() : child->previousSibling())
@@ -1029,7 +1029,7 @@
         RefPtr<Text> newText = toText(container.get())->splitText(m_start.offset(), ec);
         if (ec)
             return;
-        
+
         container = m_start.container();
         container->parentNode()->insertBefore(newNode.release(), newText.get(), ec);
         if (ec)
@@ -1421,7 +1421,7 @@
     // Raise a HierarchyRequestError if m_start.container() doesn't accept children like newParent.
     Node* parentOfNewParent = m_start.container();
 
-    // If m_start.container() is a character data node, it will be split and it will be its parent that will 
+    // If m_start.container() is a character data node, it will be split and it will be its parent that will
     // need to accept newParent (or in the case of a comment, it logically "would" be inserted into the parent,
     // although this will fail below for another reason).
     if (parentOfNewParent->isCharacterDataNode())
@@ -1430,7 +1430,7 @@
         ec = HierarchyRequestError;
         return;
     }
-    
+
     if (newParent->contains(m_start.container())) {
         ec = HierarchyRequestError;
         return;
@@ -1499,7 +1499,7 @@
     ec = 0;
     if (!commonAncestorContainer(ec) || ec)
         return;
-        
+
     Node* pastLast = pastLastNode();
     for (Node* n = firstNode(); n != pastLast; n = NodeTraversal::next(n)) {
         if (n->nodeType() == Node::DOCUMENT_TYPE_NODE) {
@@ -1576,7 +1576,7 @@
         allFixed &= isFixed;
         someFixed |= isFixed;
     }
-    
+
     if (inFixed)
         *inFixed = allFixed ? EntirelyFixedPosition : (someFixed ? PartiallyFixedPosition : NotFixedPosition);
 }
@@ -1892,7 +1892,7 @@
                 RenderText* renderText = toRenderText(renderer);
                 int startOffset = (node == startContainer) ? m_start.offset() : 0;
                 int endOffset = (node == endContainer) ? m_end.offset() : INT_MAX;
-                
+
                 Vector<FloatQuad> textQuads;
                 renderText->absoluteQuadsForRange(textQuads, startOffset, endOffset);
                 m_ownerDocument->adjustFloatQuadsForScrollAndAbsoluteZoom(textQuads, renderText);
diff --git a/Source/core/dom/Range.h b/Source/core/dom/Range.h
index dea17c6..34716dc 100644
--- a/Source/core/dom/Range.h
+++ b/Source/core/dom/Range.h
@@ -138,7 +138,7 @@
     void textNodeSplit(Text* oldNode);
 
     // Expand range to a unit (word or sentence or block or document) boundary.
-    // Please refer to https://bugs.webkit.org/show_bug.cgi?id=27632 comment #5 
+    // Please refer to https://bugs.webkit.org/show_bug.cgi?id=27632 comment #5
     // for details.
     void expand(const String&, ExceptionCode&);
 
diff --git a/Source/core/dom/Range.idl b/Source/core/dom/Range.idl
index 8418229..b34558f 100644
--- a/Source/core/dom/Range.idl
+++ b/Source/core/dom/Range.idl
@@ -31,9 +31,9 @@
     [GetterRaisesException] readonly attribute boolean collapsed;
     [GetterRaisesException] readonly attribute Node commonAncestorContainer;
 
-     [RaisesException] void setStart([Default=Undefined] optional Node refNode, 
+     [RaisesException] void setStart([Default=Undefined] optional Node refNode,
                                  [Default=Undefined] optional long offset);
-     [RaisesException] void setEnd([Default=Undefined] optional Node refNode, 
+     [RaisesException] void setEnd([Default=Undefined] optional Node refNode,
                                [Default=Undefined] optional long offset);
     [RaisesException] void setStartBefore([Default=Undefined] optional Node refNode);
     [RaisesException] void setStartAfter([Default=Undefined] optional Node refNode);
@@ -83,10 +83,10 @@
     const unsigned short NODE_BEFORE_AND_AFTER = 2;
     const unsigned short NODE_INSIDE           = 3;
 
-    [RaisesException] short comparePoint([Default=Undefined] optional Node refNode, 
+    [RaisesException] short comparePoint([Default=Undefined] optional Node refNode,
                        [Default=Undefined] optional long offset);
 
-    [RaisesException] boolean isPointInRange([Default=Undefined] optional Node refNode, 
+    [RaisesException] boolean isPointInRange([Default=Undefined] optional Node refNode,
                            [Default=Undefined] optional long offset);
 
     [RaisesException] void expand([Default=Undefined] optional DOMString unit);
diff --git a/Source/core/dom/RangeBoundaryPoint.h b/Source/core/dom/RangeBoundaryPoint.h
index 77c025d..c1a4625 100644
--- a/Source/core/dom/RangeBoundaryPoint.h
+++ b/Source/core/dom/RangeBoundaryPoint.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RangeBoundaryPoint_h
diff --git a/Source/core/dom/RegisteredEventListener.h b/Source/core/dom/RegisteredEventListener.h
index 23a718a..7dde557 100644
--- a/Source/core/dom/RegisteredEventListener.h
+++ b/Source/core/dom/RegisteredEventListener.h
@@ -40,7 +40,7 @@
         RefPtr<EventListener> listener;
         bool useCapture;
     };
-    
+
     inline bool operator==(const RegisteredEventListener& a, const RegisteredEventListener& b)
     {
         return *a.listener == *b.listener && a.useCapture == b.useCapture;
diff --git a/Source/core/dom/ResourceProgressEvent.idl b/Source/core/dom/ResourceProgressEvent.idl
index c08192a..660b8b1 100644
--- a/Source/core/dom/ResourceProgressEvent.idl
+++ b/Source/core/dom/ResourceProgressEvent.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 // ResourceProgressEvent is a non-standard class that is simply a ProgressEvent
diff --git a/Source/core/dom/ScriptRunner.cpp b/Source/core/dom/ScriptRunner.cpp
index db5f7a5..6625728 100644
--- a/Source/core/dom/ScriptRunner.cpp
+++ b/Source/core/dom/ScriptRunner.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/dom/ScriptRunner.h b/Source/core/dom/ScriptRunner.h
index 6cbb2b9..166d61a 100644
--- a/Source/core/dom/ScriptRunner.h
+++ b/Source/core/dom/ScriptRunner.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ScriptRunner_h
diff --git a/Source/core/dom/ScriptableDocumentParser.h b/Source/core/dom/ScriptableDocumentParser.h
index e40e8dd..18a2f93 100644
--- a/Source/core/dom/ScriptableDocumentParser.h
+++ b/Source/core/dom/ScriptableDocumentParser.h
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #ifndef ScriptableDocumentParser_h
 #define ScriptableDocumentParser_h
 
diff --git a/Source/core/dom/SelectorQuery.cpp b/Source/core/dom/SelectorQuery.cpp
index dd04402..d51245a 100644
--- a/Source/core/dom/SelectorQuery.cpp
+++ b/Source/core/dom/SelectorQuery.cpp
@@ -233,7 +233,7 @@
     const int maximumSelectorQueryCacheSize = 256;
     if (m_entries.size() == maximumSelectorQueryCacheSize)
         m_entries.remove(m_entries.begin());
-    
+
     OwnPtr<SelectorQuery> selectorQuery = adoptPtr(new SelectorQuery(selectorList));
     SelectorQuery* rawSelectorQuery = selectorQuery.get();
     m_entries.add(selectors, selectorQuery.release());
diff --git a/Source/core/dom/SelectorQuery.h b/Source/core/dom/SelectorQuery.h
index c3bd41a..2206303 100644
--- a/Source/core/dom/SelectorQuery.h
+++ b/Source/core/dom/SelectorQuery.h
@@ -34,7 +34,7 @@
 namespace WebCore {
 
 typedef int ExceptionCode;
-    
+
 class CSSSelector;
 class Document;
 class Element;
diff --git a/Source/core/dom/SpaceSplitString.h b/Source/core/dom/SpaceSplitString.h
index 7f9816c..6035f7c 100644
--- a/Source/core/dom/SpaceSplitString.h
+++ b/Source/core/dom/SpaceSplitString.h
@@ -49,7 +49,7 @@
         void add(const AtomicString&);
         void remove(unsigned index);
 
-        bool isUnique() const { return m_keyString.isNull(); } 
+        bool isUnique() const { return m_keyString.isNull(); }
         size_t size() const { return m_vector.size(); }
         const AtomicString& operator[](size_t i) { ASSERT_WITH_SECURITY_IMPLICATION(i < size()); return m_vector[i]; }
 
diff --git a/Source/core/dom/StyleElement.cpp b/Source/core/dom/StyleElement.cpp
index 4ac26c2..0320d16 100644
--- a/Source/core/dom/StyleElement.cpp
+++ b/Source/core/dom/StyleElement.cpp
@@ -28,6 +28,7 @@
 #include "core/dom/DocumentStyleSheetCollection.h"
 #include "core/dom/Element.h"
 #include "core/dom/ScriptableDocumentParser.h"
+#include "core/html/HTMLStyleElement.h"
 #include "core/page/ContentSecurityPolicy.h"
 #include "wtf/text/StringBuilder.h"
 #include "wtf/text/TextPosition.h"
@@ -65,11 +66,11 @@
     process(element);
 }
 
-void StyleElement::removedFromDocument(Document* document, Element* element)
+void StyleElement::removedFromDocument(Document* document, Element* element, ContainerNode* scopingNode)
 {
     ASSERT(document);
     ASSERT(element);
-    document->styleSheetCollection()->removeStyleSheetCandidateNode(element);
+    document->styleSheetCollection()->removeStyleSheetCandidateNode(element, scopingNode);
 
     RefPtr<StyleSheet> removedSheet = m_sheet;
 
@@ -87,7 +88,7 @@
         m_sheet->clearOwnerNode();
 
     if (element->inDocument())
-        document->styleSheetCollection()->removeStyleSheetCandidateNode(element);
+        document->styleSheetCollection()->removeStyleSheetCandidateNode(element, isHTMLStyleElement(element) ? toHTMLStyleElement(element)->scopingNode() :  0);
 }
 
 void StyleElement::childrenChanged(Element* element)
diff --git a/Source/core/dom/StyleElement.h b/Source/core/dom/StyleElement.h
index 0b1e410..38ffd15 100644
--- a/Source/core/dom/StyleElement.h
+++ b/Source/core/dom/StyleElement.h
@@ -26,6 +26,7 @@
 
 namespace WebCore {
 
+class ContainerNode;
 class Document;
 class Element;
 
@@ -45,7 +46,7 @@
     void startLoadingDynamicSheet(Document*);
 
     void processStyleSheet(Document*, Element*);
-    void removedFromDocument(Document*, Element*);
+    void removedFromDocument(Document*, Element*, ContainerNode* scopingNode = 0);
     void clearDocumentData(Document*, Element*);
     void childrenChanged(Element*);
     void finishParsingChildren(Element*);
diff --git a/Source/core/dom/StyleSheetCollection.cpp b/Source/core/dom/StyleSheetCollection.cpp
index 5164c84..52fbaed 100644
--- a/Source/core/dom/StyleSheetCollection.cpp
+++ b/Source/core/dom/StyleSheetCollection.cpp
@@ -3,11 +3,10 @@
  *           (C) 1999 Antti Koivisto (koivisto@kde.org)
  *           (C) 2001 Dirk Mueller (mueller@kde.org)
  *           (C) 2006 Alexey Proskuryakov (ap@webkit.org)
- * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012 Apple Inc. All rights reserved.
+ * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 Apple Inc. All rights reserved.
  * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/)
- * Copyright (C) 2008, 2009, 2011, 2012 Google Inc. All rights reserved.
  * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
- * Copyright (C) Research In Motion Limited 2010-2011. All rights reserved.
+ * Copyright (C) 2013 Google Inc. All rights reserved.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -66,17 +65,25 @@
     // since styles outside of the body and head continue to be shunted into the head
     // (and thus can shift to end up before dynamically added DOM content that is also
     // outside the body).
-    if (createdByParser && document()->body()) {
+    if (createdByParser && document()->body())
         m_styleSheetCandidateNodes.parserAdd(node);
-        return;
-    }
+    else
+        m_styleSheetCandidateNodes.add(node);
 
-    m_styleSheetCandidateNodes.add(node);
+    if (!isHTMLStyleElement(node))
+        return;
+
+    ContainerNode* scopingNode = toHTMLStyleElement(node)->scopingNode();
+    if (!isTreeScopeRoot(scopingNode))
+        m_scopingNodesForStyleScoped.add(scopingNode);
 }
 
-void StyleSheetCollection::removeStyleSheetCandidateNode(Node* node)
+void StyleSheetCollection::removeStyleSheetCandidateNode(Node* node, ContainerNode* scopingNode)
 {
     m_styleSheetCandidateNodes.remove(node);
+
+    if (!isTreeScopeRoot(scopingNode))
+        m_scopingNodesForStyleScoped.remove(scopingNode);
 }
 
 void StyleSheetCollection::collectStyleSheets(DocumentStyleSheetCollection* collections, Vector<RefPtr<StyleSheet> >& styleSheets, Vector<RefPtr<CSSStyleSheet> >& activeSheets)
@@ -264,14 +271,25 @@
         document()->clearStyleResolver();
     } else {
         StyleResolver* styleResolver = document()->styleResolver();
+        styleResolver->setBuildScopedStyleTreeInDocumentOrder(!scopingNodesForStyleScoped());
         if (styleResolverUpdateType == Reset) {
-            styleResolver->resetAuthorStyle();
+            if (DocumentOrderedList* styleScopedScopingNodes = scopingNodesForStyleScoped()) {
+                for (DocumentOrderedList::iterator it = styleScopedScopingNodes->begin(); it != styleScopedScopingNodes->end(); ++it)
+                    styleResolver->resetAuthorStyle(toContainerNode(*it));
+            }
+            if (ListHashSet<Node*, 4>* removedNodes = scopingNodesRemoved()) {
+                for (ListHashSet<Node*, 4>::iterator it = removedNodes->begin(); it != removedNodes->end(); ++it)
+                    styleResolver->resetAuthorStyle(toContainerNode(*it));
+            }
+            ASSERT(m_treeScope->rootNode() == document());
+            styleResolver->resetAuthorStyle(toContainerNode(m_treeScope->rootNode()));
             styleResolver->appendAuthorStyleSheets(0, activeCSSStyleSheets);
         } else {
             ASSERT(styleResolverUpdateType == Additive);
             styleResolver->appendAuthorStyleSheets(m_activeAuthorStyleSheets.size(), activeCSSStyleSheets);
         }
     }
+    m_scopingNodesForStyleScoped.didRemoveScopingNodes();
     m_activeAuthorStyleSheets.swap(activeCSSStyleSheets);
     m_styleSheetsForStyleSheetList.swap(styleSheets);
 
diff --git a/Source/core/dom/StyleSheetCollection.h b/Source/core/dom/StyleSheetCollection.h
index e14a7ac..91da785 100644
--- a/Source/core/dom/StyleSheetCollection.h
+++ b/Source/core/dom/StyleSheetCollection.h
@@ -30,8 +30,10 @@
 
 #include "core/dom/Document.h"
 #include "core/dom/DocumentOrderedList.h"
+#include "core/dom/StyleSheetScopingNodeList.h"
 #include "core/dom/TreeScope.h"
 #include "wtf/FastAllocBase.h"
+#include "wtf/HashMap.h"
 #include "wtf/ListHashSet.h"
 #include "wtf/RefPtr.h"
 #include "wtf/Vector.h"
@@ -39,6 +41,7 @@
 
 namespace WebCore {
 
+class ContainerNode;
 class CSSStyleSheet;
 class DocumentStyleSheetCollection;
 class Node;
@@ -52,7 +55,7 @@
     explicit StyleSheetCollection(TreeScope*);
 
     void addStyleSheetCandidateNode(Node*, bool createdByParser);
-    void removeStyleSheetCandidateNode(Node*);
+    void removeStyleSheetCandidateNode(Node*, ContainerNode* scopingNode);
 
     Vector<RefPtr<CSSStyleSheet> >& activeAuthorStyleSheets() { return m_activeAuthorStyleSheets; }
     Vector<RefPtr<StyleSheet> >& styleSheetsForStyleSheetList() { return m_styleSheetsForStyleSheetList; }
@@ -60,6 +63,8 @@
     const Vector<RefPtr<StyleSheet> >& styleSheetsForStyleSheetList() const { return m_styleSheetsForStyleSheetList; }
 
     DocumentOrderedList& styleSheetCandidateNodes() { return m_styleSheetCandidateNodes; }
+    DocumentOrderedList* scopingNodesForStyleScoped() { return m_scopingNodesForStyleScoped.scopingNodes(); }
+    ListHashSet<Node*, 4>* scopingNodesRemoved() { return m_scopingNodesForStyleScoped.scopingNodesRemoved(); }
 
     enum StyleResolverUpdateType {
         Reconstruct,
@@ -85,6 +90,7 @@
     bool m_hadActiveLoadingStylesheet;
 
     DocumentOrderedList m_styleSheetCandidateNodes;
+    StyleSheetScopingNodeList m_scopingNodesForStyleScoped;
 };
 
 }
diff --git a/Source/core/dom/StyleSheetScopingNodeList.cpp b/Source/core/dom/StyleSheetScopingNodeList.cpp
new file mode 100644
index 0000000..7510eb0
--- /dev/null
+++ b/Source/core/dom/StyleSheetScopingNodeList.cpp
@@ -0,0 +1,65 @@
+/*
+ * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
+ *           (C) 1999 Antti Koivisto (koivisto@kde.org)
+ *           (C) 2001 Dirk Mueller (mueller@kde.org)
+ *           (C) 2006 Alexey Proskuryakov (ap@webkit.org)
+ * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012 Apple Inc. All rights reserved.
+ * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/)
+ * Copyright (C) 2008, 2009, 2011, 2012 Google Inc. All rights reserved.
+ * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
+ * Copyright (C) Research In Motion Limited 2010-2011. All rights reserved.
+ *
+ * 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 "core/dom/StyleSheetScopingNodeList.h"
+
+#include "core/dom/Document.h"
+
+namespace WebCore {
+
+void StyleSheetScopingNodeList::add(ContainerNode* node)
+{
+    ASSERT(node && node->inDocument());
+    if (isTreeScopeRoot(node))
+        return;
+
+    if (!m_scopingNodes)
+        m_scopingNodes = adoptPtr(new DocumentOrderedList());
+    m_scopingNodes->add(node);
+
+    if (m_scopingNodesRemoved)
+        m_scopingNodesRemoved->remove(node);
+}
+
+void StyleSheetScopingNodeList::remove(ContainerNode* node)
+{
+    if (isTreeScopeRoot(node) || !m_scopingNodes)
+        return;
+
+    m_scopingNodes->remove(node);
+    if (node->inDocument() && node->numberOfScopedHTMLStyleChildren())
+        return;
+
+    if (!m_scopingNodesRemoved)
+        m_scopingNodesRemoved = adoptPtr(new ListHashSet<Node*, 4>());
+    m_scopingNodesRemoved->add(node);
+}
+
+}
+
+
diff --git a/Source/core/dom/StyleSheetScopingNodeList.h b/Source/core/dom/StyleSheetScopingNodeList.h
new file mode 100644
index 0000000..42ebda3
--- /dev/null
+++ b/Source/core/dom/StyleSheetScopingNodeList.h
@@ -0,0 +1,72 @@
+/*
+ * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
+ *           (C) 1999 Antti Koivisto (koivisto@kde.org)
+ *           (C) 2001 Dirk Mueller (mueller@kde.org)
+ *           (C) 2006 Alexey Proskuryakov (ap@webkit.org)
+ * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 Apple Inc. All rights reserved.
+ * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/)
+ * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
+ * Copyright (C) 2013 Google Inc. All rights reserved.
+ *
+ * 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.
+ */
+
+#ifndef StyleSheetScopingNodeList_h
+#define StyleSheetScopingNodeList_h
+
+#include "core/dom/ContainerNode.h"
+#include "core/dom/DocumentOrderedList.h"
+#include "wtf/FastAllocBase.h"
+#include "wtf/ListHashSet.h"
+
+namespace WebCore {
+
+inline bool isTreeScopeRoot(const Node* node)
+{
+    return !node || node->isDocumentNode() || node->isShadowRoot();
+}
+
+class StyleSheetScopingNodeList {
+    WTF_MAKE_NONCOPYABLE(StyleSheetScopingNodeList); WTF_MAKE_FAST_ALLOCATED;
+public:
+    StyleSheetScopingNodeList() { }
+
+    void add(ContainerNode*);
+    void remove(ContainerNode*);
+    void clear()
+    {
+        m_scopingNodes.clear();
+        m_scopingNodesRemoved.clear();
+    }
+
+    void didRemoveScopingNodes()
+    {
+        if (!m_scopingNodesRemoved)
+            return;
+        m_scopingNodesRemoved->clear();
+    }
+
+    DocumentOrderedList* scopingNodes() { return m_scopingNodes.get(); }
+    ListHashSet<Node*, 4>* scopingNodesRemoved() { return m_scopingNodesRemoved.get(); }
+
+private:
+    OwnPtr<DocumentOrderedList> m_scopingNodes;
+    OwnPtr<ListHashSet<Node*, 4> > m_scopingNodesRemoved;
+};
+
+}
+
+#endif
diff --git a/Source/core/dom/Text.cpp b/Source/core/dom/Text.cpp
index 826f282..d16d727 100644
--- a/Source/core/dom/Text.cpp
+++ b/Source/core/dom/Text.cpp
@@ -213,14 +213,14 @@
     RenderObject* parent = context.parentRenderer();
     if (!parent->canHaveWhitespaceChildren())
         return false;
-    
+
     if (context.style()->preserveNewline()) // pre/pre-wrap/pre-line always make renderers.
         return true;
 
     RenderObject* prev = context.previousRenderer();
     if (prev && prev->isBR()) // <span><br/> <br/></span>
         return false;
-        
+
     if (parent->isRenderInline()) {
         // <span><div/> <div/></span>
         if (prev && !prev->isInline())
diff --git a/Source/core/dom/Text.h b/Source/core/dom/Text.h
index 65f7738..95c502b 100644
--- a/Source/core/dom/Text.h
+++ b/Source/core/dom/Text.h
@@ -45,7 +45,7 @@
 
     String wholeText() const;
     PassRefPtr<Text> replaceWholeText(const String&);
-    
+
     bool recalcTextStyle(StyleChange);
     void createTextRendererIfNeeded();
     bool textRendererIsNeeded(const NodeRenderingContext&);
@@ -53,7 +53,7 @@
     void updateTextRenderer(unsigned offsetOfReplacedData, unsigned lengthOfReplacedData);
 
     virtual void attach(const AttachContext& = AttachContext()) OVERRIDE FINAL;
-    
+
     virtual bool canContainRangeEndPoint() const OVERRIDE FINAL { return true; }
     virtual NodeType nodeType() const OVERRIDE;
 
diff --git a/Source/core/dom/TextEvent.cpp b/Source/core/dom/TextEvent.cpp
index 516cf88..e3ee3c8 100644
--- a/Source/core/dom/TextEvent.cpp
+++ b/Source/core/dom/TextEvent.cpp
@@ -9,7 +9,7 @@
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/TextEvent.h b/Source/core/dom/TextEvent.h
index 90f06df..c0dcb69 100644
--- a/Source/core/dom/TextEvent.h
+++ b/Source/core/dom/TextEvent.h
@@ -9,7 +9,7 @@
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -44,9 +44,9 @@
         static PassRefPtr<TextEvent> createForDrop(PassRefPtr<AbstractView> view, const String& data);
 
         virtual ~TextEvent();
-    
+
         void initTextEvent(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<AbstractView>, const String& data);
-    
+
         String data() const { return m_data; }
 
         virtual const AtomicString& interfaceName() const;
diff --git a/Source/core/dom/TextEvent.idl b/Source/core/dom/TextEvent.idl
index 10ec19a..3d03594e 100644
--- a/Source/core/dom/TextEvent.idl
+++ b/Source/core/dom/TextEvent.idl
@@ -9,7 +9,7 @@
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 // Introduced in DOM Level 3:
@@ -28,10 +28,10 @@
 
     readonly attribute DOMString data;
 
-    void initTextEvent([Default=Undefined] optional DOMString typeArg, 
-                       [Default=Undefined] optional boolean canBubbleArg, 
-                       [Default=Undefined] optional boolean cancelableArg, 
-                       [Default=Undefined] optional Window viewArg, 
+    void initTextEvent([Default=Undefined] optional DOMString typeArg,
+                       [Default=Undefined] optional boolean canBubbleArg,
+                       [Default=Undefined] optional boolean cancelableArg,
+                       [Default=Undefined] optional Window viewArg,
                        [Default=Undefined] optional DOMString dataArg);
 
 };
diff --git a/Source/core/dom/TextEventInputType.h b/Source/core/dom/TextEventInputType.h
index 8be233c..fc98a6c 100644
--- a/Source/core/dom/TextEventInputType.h
+++ b/Source/core/dom/TextEventInputType.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextEventInputType_h
diff --git a/Source/core/dom/TouchEvent.cpp b/Source/core/dom/TouchEvent.cpp
index aec39ef..019a5b5 100644
--- a/Source/core/dom/TouchEvent.cpp
+++ b/Source/core/dom/TouchEvent.cpp
@@ -41,7 +41,7 @@
 }
 
 TouchEvent::TouchEvent(TouchList* touches, TouchList* targetTouches,
-        TouchList* changedTouches, const AtomicString& type, 
+        TouchList* changedTouches, const AtomicString& type,
         PassRefPtr<AbstractView> view, int screenX, int screenY, int pageX, int pageY,
         bool ctrlKey, bool altKey, bool shiftKey, bool metaKey)
     : MouseRelatedEvent(type, true, true, view, 0, IntPoint(screenX, screenY),
@@ -60,7 +60,7 @@
 }
 
 void TouchEvent::initTouchEvent(TouchList* touches, TouchList* targetTouches,
-        TouchList* changedTouches, const AtomicString& type, 
+        TouchList* changedTouches, const AtomicString& type,
         PassRefPtr<AbstractView> view, int screenX, int screenY, int clientX, int clientY,
         bool ctrlKey, bool altKey, bool shiftKey, bool metaKey)
 {
diff --git a/Source/core/dom/TouchEvent.h b/Source/core/dom/TouchEvent.h
index abbd7b8..45a38dd 100644
--- a/Source/core/dom/TouchEvent.h
+++ b/Source/core/dom/TouchEvent.h
@@ -41,8 +41,8 @@
     {
         return adoptRef(new TouchEvent);
     }
-    static PassRefPtr<TouchEvent> create(TouchList* touches, 
-            TouchList* targetTouches, TouchList* changedTouches, 
+    static PassRefPtr<TouchEvent> create(TouchList* touches,
+            TouchList* targetTouches, TouchList* changedTouches,
             const AtomicString& type, PassRefPtr<AbstractView> view,
             int screenX, int screenY, int pageX, int pageY,
             bool ctrlKey, bool altKey, bool shiftKey, bool metaKey)
@@ -53,8 +53,8 @@
     }
 
     void initTouchEvent(TouchList* touches, TouchList* targetTouches,
-            TouchList* changedTouches, const AtomicString& type, 
-            PassRefPtr<AbstractView> view, int screenX, int screenY, 
+            TouchList* changedTouches, const AtomicString& type,
+            PassRefPtr<AbstractView> view, int screenX, int screenY,
             int clientX, int clientY,
             bool ctrlKey, bool altKey, bool shiftKey, bool metaKey);
 
diff --git a/Source/core/dom/TouchEvent.idl b/Source/core/dom/TouchEvent.idl
index c3b7a81..f4b396e 100644
--- a/Source/core/dom/TouchEvent.idl
+++ b/Source/core/dom/TouchEvent.idl
@@ -36,9 +36,9 @@
                         [Default=Undefined] optional TouchList changedTouches,
                         [Default=Undefined] optional DOMString type,
                         [Default=Undefined] optional Window view,
-                        [Default=Undefined] optional long screenX, 
-                        [Default=Undefined] optional long screenY, 
-                        [Default=Undefined] optional long clientX, 
+                        [Default=Undefined] optional long screenX,
+                        [Default=Undefined] optional long screenY,
+                        [Default=Undefined] optional long clientX,
                         [Default=Undefined] optional long clientY,
                         [Default=Undefined] optional boolean ctrlKey,
                         [Default=Undefined] optional boolean altKey,
diff --git a/Source/core/dom/TransitionEvent.cpp b/Source/core/dom/TransitionEvent.cpp
index 7ddacd9..346a66f 100644
--- a/Source/core/dom/TransitionEvent.cpp
+++ b/Source/core/dom/TransitionEvent.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/dom/TransitionEvent.h b/Source/core/dom/TransitionEvent.h
index c27ce92..9fe4ffb 100644
--- a/Source/core/dom/TransitionEvent.h
+++ b/Source/core/dom/TransitionEvent.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TransitionEvent_h
diff --git a/Source/core/dom/TransitionEvent.idl b/Source/core/dom/TransitionEvent.idl
index afce660..b2bd8ed 100644
--- a/Source/core/dom/TransitionEvent.idl
+++ b/Source/core/dom/TransitionEvent.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/dom/TreeWalker.idl b/Source/core/dom/TreeWalker.idl
index 3a844b7..bfb435b 100644
--- a/Source/core/dom/TreeWalker.idl
+++ b/Source/core/dom/TreeWalker.idl
@@ -23,7 +23,7 @@
     readonly attribute Node root;
     readonly attribute unsigned long whatToShow;
     readonly attribute NodeFilter filter;
-    readonly attribute boolean expandEntityReferences;        
+    readonly attribute boolean expandEntityReferences;
              [SetterRaisesException] attribute Node currentNode;
 
     [CallWith=ScriptState] Node parentNode();
diff --git a/Source/core/dom/UIEvent.idl b/Source/core/dom/UIEvent.idl
index 09960d7..bfa6da9 100644
--- a/Source/core/dom/UIEvent.idl
+++ b/Source/core/dom/UIEvent.idl
@@ -22,11 +22,11 @@
 ] interface UIEvent : Event {
     [InitializedByEventConstructor] readonly attribute Window view;
     [InitializedByEventConstructor] readonly attribute long detail;
-    
-     void initUIEvent([Default=Undefined] optional DOMString type, 
-                                    [Default=Undefined] optional boolean canBubble, 
-                                    [Default=Undefined] optional boolean cancelable, 
-                                    [Default=Undefined] optional Window view, 
+
+     void initUIEvent([Default=Undefined] optional DOMString type,
+                                    [Default=Undefined] optional boolean canBubble,
+                                    [Default=Undefined] optional boolean cancelable,
+                                    [Default=Undefined] optional Window view,
                                     [Default=Undefined] optional long detail);
 
     // extensions
diff --git a/Source/core/dom/UIEventWithKeyState.cpp b/Source/core/dom/UIEventWithKeyState.cpp
index 176eaa7..da510d9 100644
--- a/Source/core/dom/UIEventWithKeyState.cpp
+++ b/Source/core/dom/UIEventWithKeyState.cpp
@@ -22,7 +22,7 @@
 #include "core/dom/UIEventWithKeyState.h"
 
 namespace WebCore {
-    
+
 UIEventWithKeyState* findEventWithKeyState(Event* event)
 {
     for (Event* e = event; e; e = e->underlyingEvent())
diff --git a/Source/core/dom/UIEventWithKeyState.h b/Source/core/dom/UIEventWithKeyState.h
index 64fca1f..bcf9a80 100644
--- a/Source/core/dom/UIEventWithKeyState.h
+++ b/Source/core/dom/UIEventWithKeyState.h
@@ -27,7 +27,7 @@
 #include "core/dom/UIEvent.h"
 
 namespace WebCore {
-    
+
     class UIEventWithKeyState : public UIEvent {
     public:
         bool ctrlKey() const { return m_ctrlKey; }
@@ -43,7 +43,7 @@
             , m_metaKey(false)
         {
         }
-        
+
         UIEventWithKeyState(const AtomicString& type, bool canBubble, bool cancelable, PassRefPtr<AbstractView> view,
                             int detail, bool ctrlKey, bool altKey, bool shiftKey, bool metaKey)
             : UIEvent(type, canBubble, cancelable, view, detail)
diff --git a/Source/core/dom/UserTypingGestureIndicator.h b/Source/core/dom/UserTypingGestureIndicator.h
index 02a9794..6625b36 100644
--- a/Source/core/dom/UserTypingGestureIndicator.h
+++ b/Source/core/dom/UserTypingGestureIndicator.h
@@ -46,7 +46,7 @@
 private:
     bool m_previousProcessingUserTypingGesture;
     RefPtr<Element> m_previousFocusedElement;
-};    
+};
 
 } // namespace WebCore
 
diff --git a/Source/core/dom/WebKitNamedFlow.idl b/Source/core/dom/WebKitNamedFlow.idl
index 68f2858..a8f68dd 100644
--- a/Source/core/dom/WebKitNamedFlow.idl
+++ b/Source/core/dom/WebKitNamedFlow.idl
@@ -12,7 +12,7 @@
  *    copyright notice, this list of conditions and the following
  *    disclaimer in the documentation and/or other materials
  *    provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
diff --git a/Source/core/dom/WheelEvent.cpp b/Source/core/dom/WheelEvent.cpp
index 2f430c3..c7bdf0d 100644
--- a/Source/core/dom/WheelEvent.cpp
+++ b/Source/core/dom/WheelEvent.cpp
@@ -73,18 +73,18 @@
 {
     if (dispatched())
         return;
-    
+
     initUIEvent(eventNames().mousewheelEvent, true, true, view, 0);
-    
+
     m_screenLocation = IntPoint(screenX, screenY);
     m_ctrlKey = ctrlKey;
     m_altKey = altKey;
     m_shiftKey = shiftKey;
     m_metaKey = metaKey;
-    
+
     // Normalize to the Windows 120 multiple
     m_wheelDelta = IntPoint(rawDeltaX * TickMultiplier, rawDeltaY * TickMultiplier);
-    
+
     m_rawDelta = IntPoint(rawDeltaX, rawDeltaY);
     m_deltaMode = DOM_DELTA_PIXEL;
     m_directionInvertedFromDevice = false;
diff --git a/Source/core/dom/WheelEvent.idl b/Source/core/dom/WheelEvent.idl
index 6c8dad4..9dc0e4a 100644
--- a/Source/core/dom/WheelEvent.idl
+++ b/Source/core/dom/WheelEvent.idl
@@ -35,8 +35,8 @@
     readonly attribute boolean webkitDirectionInvertedFromDevice;
 
     void initWebKitWheelEvent([Default=Undefined] optional long wheelDeltaX,
-                              [Default=Undefined] optional long wheelDeltaY, 
-                              [Default=Undefined] optional Window view, 
+                              [Default=Undefined] optional long wheelDeltaY,
+                              [Default=Undefined] optional Window view,
                               [Default=Undefined] optional long screenX,
                               [Default=Undefined] optional long screenY,
                               [Default=Undefined] optional long clientX,
diff --git a/Source/core/dom/WindowEventContext.cpp b/Source/core/dom/WindowEventContext.cpp
index af5facf..b9cbaa9 100644
--- a/Source/core/dom/WindowEventContext.cpp
+++ b/Source/core/dom/WindowEventContext.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/WindowEventContext.h b/Source/core/dom/WindowEventContext.h
index 5d0aa7c..25c5079 100644
--- a/Source/core/dom/WindowEventContext.h
+++ b/Source/core/dom/WindowEventContext.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/dom/shadow/ContentDistributor.cpp b/Source/core/dom/shadow/ContentDistributor.cpp
index e7ae775..5d002a2 100644
--- a/Source/core/dom/shadow/ContentDistributor.cpp
+++ b/Source/core/dom/shadow/ContentDistributor.cpp
@@ -112,30 +112,27 @@
 
 void ScopeContentDistribution::registerInsertionPoint(InsertionPoint* point)
 {
-    switch (point->insertionPointType()) {
-    case InsertionPoint::ShadowInsertionPoint:
+    if (isHTMLShadowElement(point))
         ++m_numberOfShadowElementChildren;
-        break;
-    case InsertionPoint::ContentInsertionPoint:
+    else if (isHTMLContentElement(point))
         ++m_numberOfContentElementChildren;
-        break;
-    }
+    else
+        ASSERT_NOT_REACHED();
 
     invalidateInsertionPointList();
 }
 
 void ScopeContentDistribution::unregisterInsertionPoint(InsertionPoint* point)
 {
-    switch (point->insertionPointType()) {
-    case InsertionPoint::ShadowInsertionPoint:
-        ASSERT(m_numberOfShadowElementChildren > 0);
+    if (isHTMLShadowElement(point))
         --m_numberOfShadowElementChildren;
-        break;
-    case InsertionPoint::ContentInsertionPoint:
-        ASSERT(m_numberOfContentElementChildren > 0);
+    else if (isHTMLContentElement(point))
         --m_numberOfContentElementChildren;
-        break;
-    }
+    else
+        ASSERT_NOT_REACHED();
+
+    ASSERT(m_numberOfContentElementChildren >= 0);
+    ASSERT(m_numberOfShadowElementChildren >= 0);
 
     invalidateInsertionPointList();
 }
@@ -358,22 +355,18 @@
 
 void ContentDistributor::collectSelectFeatureSetFrom(ShadowRoot* root)
 {
-    if (root->containsShadowRoots()) {
-        for (Element* element = ElementTraversal::firstWithin(root); element; element = ElementTraversal::next(element)) {
-            if (ElementShadow* elementShadow = element->shadow())
-                m_selectFeatures.add(elementShadow->distributor().ensureSelectFeatureSet(elementShadow));
-        }
-    }
+    if (!root->containsShadowRoots() && !root->containsContentElements())
+        return;
 
-    if (root->containsContentElements()) {
-        for (Element* element = ElementTraversal::firstWithin(root); element; element = ElementTraversal::next(element)) {
-            if (!isHTMLContentElement(element))
-                continue;
-            const CSSSelectorList& list = toHTMLContentElement(element)->selectorList();
-            for (const CSSSelector* selector = list.first(); selector; selector = CSSSelectorList::next(selector)) {
-                for (const CSSSelector* component = selector; component; component = component->tagHistory())
-                    m_selectFeatures.collectFeaturesFromSelector(component);
-            }
+    for (Element* element = ElementTraversal::firstWithin(root); element; element = ElementTraversal::next(element, root)) {
+        if (ElementShadow* shadow = element->shadow())
+            m_selectFeatures.add(shadow->ensureSelectFeatureSet());
+        if (!isHTMLContentElement(element))
+            continue;
+        const CSSSelectorList& list = toHTMLContentElement(element)->selectorList();
+        for (const CSSSelector* selector = list.first(); selector; selector = CSSSelectorList::next(selector)) {
+            for (const CSSSelector* component = selector; component; component = component->tagHistory())
+                m_selectFeatures.collectFeaturesFromSelector(component);
         }
     }
 }
diff --git a/Source/core/dom/shadow/ElementShadow.h b/Source/core/dom/shadow/ElementShadow.h
index 084d7c1..bc73e91 100644
--- a/Source/core/dom/shadow/ElementShadow.h
+++ b/Source/core/dom/shadow/ElementShadow.h
@@ -64,6 +64,7 @@
     void invalidateDistribution() { m_distributor.invalidateDistribution(host()); }
     void didAffectSelector(AffectedSelectorMask mask) { m_distributor.didAffectSelector(host(), mask); }
     void willAffectSelector() { m_distributor.willAffectSelector(host()); }
+    const SelectRuleFeatureSet& ensureSelectFeatureSet() { return m_distributor.ensureSelectFeatureSet(this); }
 
     ContentDistributor& distributor() { return m_distributor; }
     const ContentDistributor& distributor() const { return m_distributor; }
diff --git a/Source/core/dom/shadow/InsertionPoint.cpp b/Source/core/dom/shadow/InsertionPoint.cpp
index 0fe52d9..878d661 100644
--- a/Source/core/dom/shadow/InsertionPoint.cpp
+++ b/Source/core/dom/shadow/InsertionPoint.cpp
@@ -194,11 +194,6 @@
     setBooleanAttribute(reset_style_inheritanceAttr, value);
 }
 
-bool InsertionPoint::contains(const Node* node) const
-{
-    return m_distribution.contains(const_cast<Node*>(node)) || (node->isShadowRoot() && toShadowRoot(node)->insertionPoint() == this);
-}
-
 const CSSSelectorList& InsertionPoint::emptySelectorList()
 {
     DEFINE_STATIC_LOCAL(CSSSelectorList, selectorList, (CSSSelectorList()));
diff --git a/Source/core/dom/shadow/InsertionPoint.h b/Source/core/dom/shadow/InsertionPoint.h
index 0f1d486..7100234 100644
--- a/Source/core/dom/shadow/InsertionPoint.h
+++ b/Source/core/dom/shadow/InsertionPoint.h
@@ -41,11 +41,6 @@
 
 class InsertionPoint : public HTMLElement {
 public:
-    enum Type {
-        ShadowInsertionPoint,
-        ContentInsertionPoint
-    };
-
     enum MatchType {
         AlwaysMatches,
         NeverMatches,
@@ -63,7 +58,6 @@
 
     virtual MatchType matchTypeFor(Node*) { return AlwaysMatches; }
     virtual const CSSSelectorList& selectorList() { return emptySelectorList(); }
-    virtual Type insertionPointType() const = 0;
     virtual bool canAffectSelector() const { return false; }
 
     bool resetStyleInheritance() const;
@@ -74,8 +68,6 @@
 
     bool shouldUseFallbackElements() const;
 
-    size_t indexOf(Node* node) const { return m_distribution.find(node); }
-    bool contains(const Node*) const;
     size_t size() const { return m_distribution.size(); }
     Node* at(size_t index)  const { return m_distribution.at(index).get(); }
     Node* first() const { return m_distribution.isEmpty() ? 0 : m_distribution.first().get(); }
diff --git a/Source/core/dom/shadow/ShadowRoot.idl b/Source/core/dom/shadow/ShadowRoot.idl
index 6a6e07e..b659c7c 100644
--- a/Source/core/dom/shadow/ShadowRoot.idl
+++ b/Source/core/dom/shadow/ShadowRoot.idl
@@ -30,7 +30,7 @@
     readonly attribute Element activeElement;
     attribute boolean applyAuthorStyles;
     attribute boolean resetStyleInheritance;
-    [EnabledAtRuntime=experimentalShadowDOM, ImplementedAs=bindingsOlderShadowRoot] readonly attribute ShadowRoot olderShadowRoot;
+    [EnabledAtRuntime=ShadowDOM, ImplementedAs=bindingsOlderShadowRoot] readonly attribute ShadowRoot olderShadowRoot;
 
     [TreatNullAs=NullString, DeliverCustomElementCallbacks, PerWorldBindings, ActivityLog=SetterForIsolatedWorlds, SetterRaisesException] attribute DOMString innerHTML;
 
@@ -42,6 +42,6 @@
     NodeList getElementsByTagNameNS([TreatNullAs=NullString,Default=Undefined] optional DOMString namespaceURI,
                                     [Default=Undefined] optional DOMString localName);
 
-    Element elementFromPoint([Default=Undefined] optional long x, 
+    Element elementFromPoint([Default=Undefined] optional long x,
                              [Default=Undefined] optional long y);
 };
diff --git a/Source/core/editing/AppendNodeCommand.cpp b/Source/core/editing/AppendNodeCommand.cpp
index 27f4bf8..ef9dcd4 100644
--- a/Source/core/editing/AppendNodeCommand.cpp
+++ b/Source/core/editing/AppendNodeCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -70,7 +70,7 @@
 {
     if (!m_parent->rendererIsEditable())
         return;
-        
+
     // Need to notify this before actually deleting the text
     if (AXObjectCache::accessibilityEnabled())
         sendAXTextChangedIgnoringLineBreaks(m_node.get(), AXObjectCache::AXTextDeleted);
diff --git a/Source/core/editing/AppendNodeCommand.h b/Source/core/editing/AppendNodeCommand.h
index c5c2263..5587d67 100644
--- a/Source/core/editing/AppendNodeCommand.h
+++ b/Source/core/editing/AppendNodeCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef AppendNodeCommand_h
diff --git a/Source/core/editing/ApplyBlockElementCommand.cpp b/Source/core/editing/ApplyBlockElementCommand.cpp
index af2b176..ba071e3 100644
--- a/Source/core/editing/ApplyBlockElementCommand.cpp
+++ b/Source/core/editing/ApplyBlockElementCommand.cpp
@@ -63,13 +63,13 @@
     if (visibleStart.isNull() || visibleStart.isOrphan() || visibleEnd.isNull() || visibleEnd.isOrphan())
         return;
 
-    // When a selection ends at the start of a paragraph, we rarely paint 
-    // the selection gap before that paragraph, because there often is no gap.  
-    // In a case like this, it's not obvious to the user that the selection 
-    // ends "inside" that paragraph, so it would be confusing if Indent/Outdent 
+    // When a selection ends at the start of a paragraph, we rarely paint
+    // the selection gap before that paragraph, because there often is no gap.
+    // In a case like this, it's not obvious to the user that the selection
+    // ends "inside" that paragraph, so it would be confusing if Indent/Outdent
     // operated on that paragraph.
-    // FIXME: We paint the gap before some paragraphs that are indented with left 
-    // margin/padding, but not others.  We should make the gap painting more consistent and 
+    // FIXME: We paint the gap before some paragraphs that are indented with left
+    // margin/padding, but not others.  We should make the gap painting more consistent and
     // then use a left margin/padding rule here.
     if (visibleEnd != visibleStart && isStartOfParagraph(visibleEnd))
         setEndingSelection(VisibleSelection(visibleStart, visibleEnd.previous(CannotCrossEditingBoundary), endingSelection().isDirectional()));
@@ -133,7 +133,7 @@
 
         formatRange(start, end, m_endOfLastParagraph, blockquoteForNextIndent);
 
-        // Don't put the next paragraph in the blockquote we just created for this paragraph unless 
+        // Don't put the next paragraph in the blockquote we just created for this paragraph unless
         // the next paragraph is in the same cell.
         if (enclosingCell && enclosingCell != enclosingNodeOfType(endOfNextParagraph.deepEquivalent(), &isTableCell))
             blockquoteForNextIndent = 0;
diff --git a/Source/core/editing/ApplyStyleCommand.cpp b/Source/core/editing/ApplyStyleCommand.cpp
index 2d257d5..6ea072b 100644
--- a/Source/core/editing/ApplyStyleCommand.cpp
+++ b/Source/core/editing/ApplyStyleCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -188,7 +188,7 @@
 {
     if (m_useEndingSelection)
         return endingSelection().start();
-    
+
     return m_start;
 }
 
@@ -196,7 +196,7 @@
 {
     if (m_useEndingSelection)
         return endingSelection().end();
-    
+
     return m_end;
 }
 
@@ -284,7 +284,7 @@
         paragraphStart = nextParagraphStart;
         nextParagraphStart = endOfParagraph(paragraphStart).next();
     }
-    
+
     startRange = TextIterator::rangeFromLocationAndLength(toContainerNode(scope), startIndex, 0, true);
     endRange = TextIterator::rangeFromLocationAndLength(toContainerNode(scope), endIndex, 0, true);
     if (startRange && endRange)
@@ -319,7 +319,7 @@
         start = startPosition();
         end = endPosition();
     }
-    
+
     if (start.isNull() || end.isNull())
         return;
 
@@ -353,7 +353,7 @@
         beyondEnd = NodeTraversal::nextSkippingChildren(end.deprecatedNode());
     else
         beyondEnd = NodeTraversal::next(end.deprecatedNode());
-    
+
     start = start.upstream(); // Move upstream to ensure we do not add redundant spans.
     Node* startNode = start.deprecatedNode();
     if (startNode->isTextNode() && start.deprecatedEditingOffset() >= caretMaxOffset(startNode)) // Move out of text node if range does not include its characters.
@@ -367,7 +367,7 @@
 
     // These spans were added by us. If empty after font size changes, they can be removed.
     Vector<RefPtr<HTMLElement> > unstyledSpans;
-    
+
     Node* lastStyledNode = 0;
     for (Node* node = startNode; node != beyondEnd; node = NodeTraversal::next(node)) {
         RefPtr<HTMLElement> element;
@@ -416,7 +416,7 @@
 {
     while (node && (!node->isElementNode() || !isStyleSpanOrSpanWithOnlyStyleAttribute(toElement(node))))
         node = node->parentNode();
-    
+
     return node ? node->parentNode() : 0;
 }
 
@@ -750,7 +750,7 @@
 
         if (!node->renderer() || !node->rendererIsEditable())
             continue;
-        
+
         if (!node->rendererIsRichlyEditable() && node->isHTMLElement()) {
             // This is a plaintext-only region. Only proceed if it's fully selected.
             // pastEndNode is the node after the last fully selected node, so if it's inside node then
@@ -765,10 +765,10 @@
             next = NodeTraversal::nextSkippingChildren(node.get());
             continue;
         }
-        
+
         if (isBlock(node.get()))
             continue;
-        
+
         if (node->childNodeCount()) {
             if (node->contains(pastEndNode.get()) || containsNonEditableRegion(node.get()) || !node->parentNode()->rendererIsEditable())
                 continue;
@@ -894,7 +894,7 @@
 
     return removed;
 }
-    
+
 void ApplyStyleCommand::replaceWithSpanOrRemoveIfWithoutAttributes(HTMLElement*& elem)
 {
     if (hasNoAttributeOrOnlyStyleAttribute(elem, StyleAttributeShouldBeEmpty))
@@ -905,7 +905,7 @@
         elem = newSpanElement;
     }
 }
-    
+
 bool ApplyStyleCommand::removeImplicitlyStyledElement(EditingStyle* style, HTMLElement* element, InlineStyleRemovalMode mode, EditingStyle* extractedStyle)
 {
     ASSERT(style);
@@ -1283,7 +1283,7 @@
         int startOffsetAdjustment = startChild->nodeIndex();
         int endOffsetAdjustment = startNode == end.deprecatedNode() ? startOffsetAdjustment : 0;
         updateStartEnd(Position(startNode, startOffsetAdjustment, Position::PositionIsOffsetInAnchor),
-                       Position(end.deprecatedNode(), end.deprecatedEditingOffset() + endOffsetAdjustment, Position::PositionIsOffsetInAnchor)); 
+                       Position(end.deprecatedNode(), end.deprecatedEditingOffset() + endOffsetAdjustment, Position::PositionIsOffsetInAnchor));
         return true;
     }
 
@@ -1372,7 +1372,7 @@
     // inline content.
     if (!block)
         return;
-        
+
     String cssStyle = styleChange.cssStyle();
     StringBuilder cssText;
     cssText.append(cssStyle);
@@ -1523,7 +1523,7 @@
     for (Node* curr = node->firstChild(); curr; curr = curr->nextSibling()) {
         if (!curr->isTextNode())
             continue;
-        
+
         textNodes.append(toText(curr));
     }
 
@@ -1532,7 +1532,7 @@
         Node* next = childText->nextSibling();
         if (!next || !next->isTextNode())
             continue;
-    
+
         Text* nextText = toText(next);
         if (start.anchorType() == Position::PositionIsOffsetInAnchor && next == start.containerNode())
             newStart = Position(childText, childText->length() + start.offsetInContainerNode());
diff --git a/Source/core/editing/ApplyStyleCommand.h b/Source/core/editing/ApplyStyleCommand.h
index 95fe645..99d3490 100644
--- a/Source/core/editing/ApplyStyleCommand.h
+++ b/Source/core/editing/ApplyStyleCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ApplyStyleCommand_h
diff --git a/Source/core/editing/BreakBlockquoteCommand.cpp b/Source/core/editing/BreakBlockquoteCommand.cpp
index be82ee8..f8c53f9 100644
--- a/Source/core/editing/BreakBlockquoteCommand.cpp
+++ b/Source/core/editing/BreakBlockquoteCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -47,30 +47,30 @@
 {
     if (endingSelection().isNone())
         return;
-    
+
     // Delete the current selection.
     if (endingSelection().isRange())
         deleteSelection(false, false);
-    
+
     // This is a scenario that should never happen, but we want to
-    // make sure we don't dereference a null pointer below.    
+    // make sure we don't dereference a null pointer below.
 
     ASSERT(!endingSelection().isNone());
-    
+
     if (endingSelection().isNone())
         return;
-        
+
     VisiblePosition visiblePos = endingSelection().visibleStart();
-    
-    // pos is a position equivalent to the caret.  We use downstream() so that pos will 
+
+    // pos is a position equivalent to the caret.  We use downstream() so that pos will
     // be in the first node that we need to move (there are a few exceptions to this, see below).
     Position pos = endingSelection().start().downstream();
-    
+
     // Find the top-most blockquote from the start.
     Node* topBlockquote = highestEnclosingNodeOfType(pos, isMailBlockquote);
     if (!topBlockquote || !topBlockquote->parentNode() || !topBlockquote->isElementNode())
         return;
-    
+
     RefPtr<Element> breakNode = createBreakElement(document());
 
     bool isLastVisPosInNode = isLastVisiblePositionInNode(visiblePos, topBlockquote);
@@ -80,10 +80,10 @@
     if (isFirstVisiblePositionInNode(visiblePos, topBlockquote) && !isLastVisPosInNode) {
         insertNodeBefore(breakNode.get(), topBlockquote);
         setEndingSelection(VisibleSelection(positionBeforeNode(breakNode.get()), DOWNSTREAM, endingSelection().isDirectional()));
-        rebalanceWhitespace();   
+        rebalanceWhitespace();
         return;
     }
-    
+
     // Insert a break after the top blockquote.
     insertNodeAfter(breakNode.get(), topBlockquote);
 
@@ -93,19 +93,19 @@
         rebalanceWhitespace();
         return;
     }
-    
+
     // Don't move a line break just after the caret.  Doing so would create an extra, empty paragraph
     // in the new blockquote.
     if (lineBreakExistsAtVisiblePosition(visiblePos))
         pos = pos.next();
-        
-    // Adjust the position so we don't split at the beginning of a quote.  
+
+    // Adjust the position so we don't split at the beginning of a quote.
     while (isFirstVisiblePositionInNode(VisiblePosition(pos), enclosingNodeOfType(pos, isMailBlockquote)))
         pos = pos.previous();
-    
+
     // startNode is the first node that we need to move to the new blockquote.
     Node* startNode = pos.deprecatedNode();
-        
+
     // Split at pos if in the middle of a text node.
     if (startNode->isTextNode()) {
         Text* textNode = toText(startNode);
@@ -119,22 +119,22 @@
         startNode = childAtOffset ? childAtOffset : NodeTraversal::next(startNode);
         ASSERT(startNode);
     }
-    
+
     // If there's nothing inside topBlockquote to move, we're finished.
     if (!startNode->isDescendantOf(topBlockquote)) {
         setEndingSelection(VisibleSelection(VisiblePosition(firstPositionInOrBeforeNode(startNode)), endingSelection().isDirectional()));
         return;
     }
-    
+
     // Build up list of ancestors in between the start node and the top blockquote.
-    Vector<RefPtr<Element> > ancestors;    
+    Vector<RefPtr<Element> > ancestors;
     for (Element* node = startNode->parentElement(); node && node != topBlockquote; node = node->parentElement())
         ancestors.append(node);
-    
+
     // Insert a clone of the top blockquote after the break.
     RefPtr<Element> clonedBlockquote = toElement(topBlockquote)->cloneElementWithoutChildren();
     insertNodeAfter(clonedBlockquote.get(), breakNode.get());
-    
+
     // Clone startNode's ancestors into the cloned blockquote.
     // On exiting this loop, clonedAncestor is the lowest ancestor
     // that was cloned (i.e. the clone of either ancestors.last()
@@ -145,14 +145,14 @@
         // Preserve list item numbering in cloned lists.
         if (clonedChild->isElementNode() && clonedChild->hasTagName(olTag)) {
             Node* listChildNode = i > 1 ? ancestors[i - 2].get() : startNode;
-            // The first child of the cloned list might not be a list item element, 
+            // The first child of the cloned list might not be a list item element,
             // find the first one so that we know where to start numbering.
             while (listChildNode && !listChildNode->hasTagName(liTag))
                 listChildNode = listChildNode->nextSibling();
             if (listChildNode && listChildNode->renderer() && listChildNode->renderer()->isListItem())
                 setNodeAttribute(clonedChild, startAttr, String::number(toRenderListItem(listChildNode->renderer())->value()));
         }
-            
+
         appendNode(clonedChild.get(), clonedAncestor.get());
         clonedAncestor = clonedChild;
     }
@@ -176,10 +176,10 @@
         if (!originalParent->hasChildNodes())
             removeNode(originalParent);
     }
-    
+
     // Make sure the cloned block quote renders.
     addBlockPlaceholderIfNeeded(clonedBlockquote.get());
-    
+
     // Put the selection right before the break.
     setEndingSelection(VisibleSelection(positionBeforeNode(breakNode.get()), DOWNSTREAM, endingSelection().isDirectional()));
     rebalanceWhitespace();
diff --git a/Source/core/editing/BreakBlockquoteCommand.h b/Source/core/editing/BreakBlockquoteCommand.h
index d9c50ce..31941d3 100644
--- a/Source/core/editing/BreakBlockquoteCommand.h
+++ b/Source/core/editing/BreakBlockquoteCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef BreakBlockquoteCommand_h
diff --git a/Source/core/editing/CompositeEditCommand.cpp b/Source/core/editing/CompositeEditCommand.cpp
index 9c1cfe8..1ff5ef6 100644
--- a/Source/core/editing/CompositeEditCommand.cpp
+++ b/Source/core/editing/CompositeEditCommand.cpp
@@ -123,7 +123,7 @@
         for (size_t i = 0; i != size; ++i)
             m_commands[i]->doReapply();
     }
-    
+
     frame->editor()->reappliedEditing(this);
 }
 
@@ -341,7 +341,7 @@
     Position p = editingPosition.parentAnchoredEquivalent();
     Node* refChild = p.deprecatedNode();
     int offset = p.deprecatedEditingOffset();
-    
+
     if (canHaveChildrenForEditing(refChild)) {
         Node* child = refChild->firstChild();
         for (int i = 0; child && i < offset; i++)
@@ -420,7 +420,7 @@
     int offset = (position.anchorType() == Position::PositionIsOffsetInAnchor) ? position.offsetInContainerNode() : 0;
     updatePositionForNodeRemoval(position, node);
     if (offset)
-        position.moveToOffset(offset);    
+        position.moveToOffset(offset);
 }
 
 HTMLElement* CompositeEditCommand::replaceElementWithSpanPreservingChildrenAndAttributes(PassRefPtr<HTMLElement> node)
@@ -596,7 +596,7 @@
         if (!isWhitespace(text[i]))
             return false;
     }
-    
+
     return true;
 }
 
@@ -652,25 +652,25 @@
     int upstream = startOffset;
     while (upstream > 0 && isWhitespace(text[upstream - 1]))
         upstream--;
-    
+
     int downstream = endOffset;
     while ((unsigned)downstream < text.length() && isWhitespace(text[downstream]))
         downstream++;
-    
+
     int length = downstream - upstream;
     if (!length)
         return;
 
     VisiblePosition visibleUpstreamPos(Position(textNode, upstream));
     VisiblePosition visibleDownstreamPos(Position(textNode, downstream));
-    
+
     String string = text.substring(upstream, length);
     String rebalancedString = stringWithRebalancedWhitespace(string,
     // FIXME: Because of the problem mentioned at the top of this function, we must also use nbsps at the start/end of the string because
     // this function doesn't get all surrounding whitespace, just the whitespace in the current text node.
-                                                             isStartOfParagraph(visibleUpstreamPos) || upstream == 0, 
+                                                             isStartOfParagraph(visibleUpstreamPos) || upstream == 0,
                                                              isEndOfParagraph(visibleDownstreamPos) || (unsigned)downstream == text.length());
-    
+
     if (string != rebalancedString)
         replaceTextInNodePreservingMarkers(textNode.release(), upstream, length, rebalancedString);
 }
@@ -680,8 +680,8 @@
     Node* node = position.deprecatedNode();
     if (!node || !node->isTextNode())
         return;
-    Text* textNode = toText(node);    
-    
+    Text* textNode = toText(node);
+
     if (textNode->length() == 0)
         return;
     RenderObject* renderer = textNode->renderer();
@@ -696,7 +696,7 @@
     VisiblePosition visiblePos(position);
     VisiblePosition previousVisiblePos(visiblePos.previous());
     Position previous(previousVisiblePos.deepEquivalent());
-    
+
     if (isCollapsibleWhitespace(previousVisiblePos.characterAfter()) && previous.deprecatedNode()->isTextNode() && !previous.deprecatedNode()->hasTagName(brTag))
         replaceTextInNodePreservingMarkers(toText(previous.deprecatedNode()), previous.deprecatedEditingOffset(), 1, nonBreakingSpaceString());
     if (isCollapsibleWhitespace(visiblePos.characterAfter()) && position.deprecatedNode()->isTextNode() && !position.deprecatedNode()->hasTagName(brTag))
@@ -708,7 +708,7 @@
     VisibleSelection selection = endingSelection();
     if (selection.isNone())
         return;
-        
+
     rebalanceWhitespaceAt(selection.start());
     if (selection.isRange())
         rebalanceWhitespaceAt(selection.end());
@@ -727,22 +727,22 @@
 
     Vector<InlineTextBox*> sortedTextBoxes;
     size_t sortedTextBoxesPosition = 0;
-   
+
     for (InlineTextBox* textBox = textRenderer->firstTextBox(); textBox; textBox = textBox->nextTextBox())
         sortedTextBoxes.append(textBox);
-    
+
     // If there is mixed directionality text, the boxes can be out of order,
-    // (like Arabic with embedded LTR), so sort them first. 
-    if (textRenderer->containsReversedText())    
+    // (like Arabic with embedded LTR), so sort them first.
+    if (textRenderer->containsReversedText())
         std::sort(sortedTextBoxes.begin(), sortedTextBoxes.end(), InlineTextBox::compareByStart);
     InlineTextBox* box = sortedTextBoxes.isEmpty() ? 0 : sortedTextBoxes[sortedTextBoxesPosition];
 
     if (!box) {
         // whole text node is empty
         removeNode(textNode);
-        return;    
+        return;
     }
-    
+
     unsigned length = textNode->length();
     if (start >= length || end > length)
         return;
@@ -771,7 +771,7 @@
             str.remove(gapStart - start - removed, gapLen);
             removed += gapLen;
         }
-        
+
         prevBox = box;
         if (box) {
             if (++sortedTextBoxesPosition < sortedTextBoxes.size())
@@ -787,7 +787,7 @@
             replaceTextInNode(textNode, start, end - start, str);
         else {
             // Assert that we are not going to delete all of the text in the node.
-            // If we were, that should have been done above with the call to 
+            // If we were, that should have been done above with the call to
             // removeNode and return.
             ASSERT(start > 0 || end - start < textNode->length());
             deleteTextFromNode(textNode, start, end - start);
@@ -831,7 +831,7 @@
         return 0;
 
     document()->updateLayoutIgnorePendingStylesheets();
-    
+
     // Should assert isBlockFlow || isInlineFlow when deletion improves. See 4244964.
     ASSERT(container->renderer());
 
@@ -863,7 +863,7 @@
     RenderObject* renderer = container->renderer();
     if (!renderer || !renderer->isBlockFlow())
         return 0;
-    
+
     // append the placeholder to make sure it follows
     // any unrendered blocks
     RenderBlock* block = toRenderBlock(renderer);
@@ -877,13 +877,13 @@
 void CompositeEditCommand::removePlaceholderAt(const Position& p)
 {
     ASSERT(lineBreakExistsAtPosition(p));
-    
+
     // We are certain that the position is at a line break, but it may be a br or a preserved newline.
     if (p.anchorNode()->hasTagName(brTag)) {
         removeNode(p.anchorNode());
         return;
     }
-    
+
     deleteTextFromNode(toText(p.anchorNode()), p.offsetInContainerNode(), 1);
 }
 
@@ -895,15 +895,15 @@
     return paragraphElement.release();
 }
 
-// If the paragraph is not entirely within it's own block, create one and move the paragraph into 
+// If the paragraph is not entirely within it's own block, create one and move the paragraph into
 // it, and return that block.  Otherwise return 0.
 PassRefPtr<Node> CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary(const Position& pos)
 {
     if (pos.isNull())
         return 0;
-    
+
     document()->updateLayoutIgnorePendingStylesheets();
-    
+
     // It's strange that this function is responsible for verifying that pos has not been invalidated
     // by an earlier call to this function.  The caller, applyBlockStyle, should do this.
     VisiblePosition visiblePos(pos, VP_DEFAULT_AFFINITY);
@@ -911,11 +911,11 @@
     VisiblePosition visibleParagraphEnd = endOfParagraph(visiblePos);
     VisiblePosition next = visibleParagraphEnd.next();
     VisiblePosition visibleEnd = next.isNotNull() ? next : visibleParagraphEnd;
-    
+
     Position upstreamStart = visibleParagraphStart.deepEquivalent().upstream();
     Position upstreamEnd = visibleEnd.deepEquivalent().upstream();
 
-    // If there are no VisiblePositions in the same block as pos then 
+    // If there are no VisiblePositions in the same block as pos then
     // upstreamStart will be outside the paragraph
     if (comparePositions(pos, upstreamStart) < 0)
         return 0;
@@ -962,9 +962,9 @@
 {
     if (!anchorNode)
         return;
-    
+
     ASSERT(anchorNode->isLink());
-    
+
     setEndingSelection(VisibleSelection::selectionFromContentsOfNode(anchorNode));
     applyStyledElement(toElement(anchorNode));
     // Clones of anchorNode have been pushed down, now remove it.
@@ -973,7 +973,7 @@
 }
 
 // Clone the paragraph between start and end under blockElement,
-// preserving the hierarchy up to outerNode. 
+// preserving the hierarchy up to outerNode.
 
 void CompositeEditCommand::cloneParagraphUnderNewElement(Position& start, Position& end, Node* passedOuterNode, Element* blockElement)
 {
@@ -990,7 +990,7 @@
 
     if (start.deprecatedNode() != outerNode && lastNode->isElementNode()) {
         Vector<RefPtr<Node> > ancestors;
-        
+
         // Insert each node from innerNode to outerNode (excluded) in a list.
         for (Node* n = start.deprecatedNode(); n && n != outerNode; n = n->parentNode())
             ancestors.append(n);
@@ -1007,7 +1007,7 @@
 
     // Handle the case of paragraphs with more than one node,
     // cloning all the siblings until end.deprecatedNode() is reached.
-    
+
     if (start.deprecatedNode() != end.deprecatedNode() && !start.deprecatedNode()->isDescendantOf(end.deprecatedNode())) {
         // If end is not a descendant of outerNode we need to
         // find the first common ancestor to increase the scope
@@ -1035,10 +1035,10 @@
     }
 }
 
-    
+
 // There are bugs in deletion when it removes a fully selected table/list.
 // It expands and removes the entire table/list, but will let content
-// before and after the table/list collapse onto one line.   
+// before and after the table/list collapse onto one line.
 // Deleting a paragraph will leave a placeholder. Remove it (and prune
 // empty or unrendered parents).
 
@@ -1083,12 +1083,12 @@
         }
     }
 }
-    
+
 // This is a version of moveParagraph that preserves style by keeping the original markup
 // It is currently used only by IndentOutdentCommand but it is meant to be used in the
 // future by several other commands such as InsertList and the align commands.
 // The blockElement parameter is the element to move the paragraph to,
-// outerNode is the top element of the paragraph hierarchy. 
+// outerNode is the top element of the paragraph hierarchy.
 
 void CompositeEditCommand::moveParagraphWithClones(const VisiblePosition& startOfParagraphToMove, const VisiblePosition& endOfParagraphToMove, Element* blockElement, Node* outerNode)
 {
@@ -1097,23 +1097,23 @@
 
     VisiblePosition beforeParagraph = startOfParagraphToMove.previous();
     VisiblePosition afterParagraph(endOfParagraphToMove.next());
-    
+
     // We upstream() the end and downstream() the start so that we don't include collapsed whitespace in the move.
     // When we paste a fragment, spaces after the end and before the start are treated as though they were rendered.
     Position start = startOfParagraphToMove.deepEquivalent().downstream();
     Position end = endOfParagraphToMove.deepEquivalent().upstream();
 
     cloneParagraphUnderNewElement(start, end, outerNode, blockElement);
-      
+
     setEndingSelection(VisibleSelection(start, end, DOWNSTREAM));
     deleteSelection(false, false, false, false);
-    
+
     // There are bugs in deletion when it removes a fully selected table/list.
     // It expands and removes the entire table/list, but will let content
     // before and after the table/list collapse onto one line.
-       
+
     cleanupAfterDeletion();
-    
+
     // Add a br if pruning an empty block level element caused a collapse.  For example:
     // foo^
     // <div>bar</div>
@@ -1142,7 +1142,7 @@
 {
     if (startOfParagraphToMove == destination)
         return;
-    
+
     int startIndex = -1;
     int endIndex = -1;
     int destinationIndex = -1;
@@ -1150,14 +1150,14 @@
     if (preserveSelection && !endingSelection().isNone()) {
         VisiblePosition visibleStart = endingSelection().visibleStart();
         VisiblePosition visibleEnd = endingSelection().visibleEnd();
-        
+
         bool startAfterParagraph = comparePositions(visibleStart, endOfParagraphToMove) > 0;
         bool endBeforeParagraph = comparePositions(visibleEnd, startOfParagraphToMove) < 0;
-        
+
         if (!startAfterParagraph && !endBeforeParagraph) {
             bool startInParagraph = comparePositions(visibleStart, startOfParagraphToMove) >= 0;
             bool endInParagraph = comparePositions(visibleEnd, endOfParagraphToMove) <= 0;
-            
+
             startIndex = 0;
             if (startInParagraph) {
                 RefPtr<Range> startRange = Range::create(document(), startOfParagraphToMove.deepEquivalent().parentAnchoredEquivalent(), visibleStart.deepEquivalent().parentAnchoredEquivalent());
@@ -1171,7 +1171,7 @@
             }
         }
     }
-    
+
     VisiblePosition beforeParagraph = startOfParagraphToMove.previous(CannotCrossEditingBoundary);
     VisiblePosition afterParagraph(endOfParagraphToMove.next(CannotCrossEditingBoundary));
 
@@ -1179,7 +1179,7 @@
     // When we paste a fragment, spaces after the end and before the start are treated as though they were rendered.
     Position start = startOfParagraphToMove.deepEquivalent().downstream();
     Position end = endOfParagraphToMove.deepEquivalent().upstream();
-     
+
     // start and end can't be used directly to create a Range; they are "editing positions"
     Position startRangeCompliant = start.parentAnchoredEquivalent();
     Position endRangeCompliant = end.parentAnchoredEquivalent();
@@ -1190,7 +1190,7 @@
     RefPtr<DocumentFragment> fragment = startOfParagraphToMove != endOfParagraphToMove ?
         createFragmentFromMarkup(document(), createMarkup(range.get(), 0, DoNotAnnotateForInterchange, true, DoNotResolveURLs, constrainingAncestor), "") : 0;
 
-    // A non-empty paragraph's style is moved when we copy and move it.  We don't move 
+    // A non-empty paragraph's style is moved when we copy and move it.  We don't move
     // anything if we're given an empty paragraph, but an empty paragraph can have style
     // too, <div><b><br></b></div> for example.  Save it so that we can preserve it later.
     RefPtr<EditingStyle> styleInEmptyParagraph;
@@ -1200,9 +1200,9 @@
         // The moved paragraph should assume the block style of the destination.
         styleInEmptyParagraph->removeBlockProperties();
     }
-    
+
     // FIXME (5098931): We should add a new insert action "WebViewInsertActionMoved" and call shouldInsertFragment here.
-    
+
     setEndingSelection(VisibleSelection(start, end, DOWNSTREAM));
     document()->frame()->editor()->clearMisspellingsAndBadGrammar(endingSelection());
     deleteSelection(false, false, false, false);
@@ -1329,20 +1329,20 @@
 {
     if (!endingSelection().isCaret())
         return false;
-        
+
     VisiblePosition caret(endingSelection().visibleStart());
     Node* highestBlockquote = highestEnclosingNodeOfType(caret.deepEquivalent(), &isMailBlockquote);
     if (!highestBlockquote)
         return false;
-        
+
     if (!isStartOfParagraph(caret) || !isEndOfParagraph(caret))
         return false;
-    
+
     VisiblePosition previous(caret.previous(CannotCrossEditingBoundary));
     // Only move forward if there's nothing before the caret, or if there's unquoted content before it.
     if (enclosingNodeOfType(previous.deepEquivalent(), &isMailBlockquote))
         return false;
-    
+
     RefPtr<Node> br = createBreakElement(document());
     // We want to replace this quoted paragraph with an unquoted one, so insert a br
     // to hold the caret before the highest blockquote.
@@ -1353,7 +1353,7 @@
     if (!isStartOfParagraph(atBR))
         insertNodeBefore(createBreakElement(document()), br);
     setEndingSelection(VisibleSelection(atBR, endingSelection().isDirectional()));
-    
+
     // If this is an empty paragraph there must be a line break here.
     if (!lineBreakExistsAtVisiblePosition(caret))
         return false;
@@ -1361,7 +1361,7 @@
     Position caretPos(caret.deepEquivalent().downstream());
     // A line break is either a br or a preserved newline.
     ASSERT(caretPos.deprecatedNode()->hasTagName(brTag) || (caretPos.deprecatedNode()->isTextNode() && caretPos.deprecatedNode()->renderer()->style()->preserveNewline()));
-    
+
     if (caretPos.deprecatedNode()->hasTagName(brTag))
         removeNodeAndPruneAncestors(caretPos.deprecatedNode());
     else if (caretPos.deprecatedNode()->isTextNode()) {
@@ -1380,12 +1380,12 @@
 // Operations use this function to avoid inserting content into an anchor when at the start or the end of
 // that anchor, as in NSTextView.
 // FIXME: This is only an approximation of NSTextViews insertion behavior, which varies depending on how
-// the caret was made. 
+// the caret was made.
 Position CompositeEditCommand::positionAvoidingSpecialElementBoundary(const Position& original)
 {
     if (original.isNull())
         return original;
-        
+
     VisiblePosition visiblePos(original);
     Node* enclosingAnchor = enclosingAnchorElement(original);
     Position result = original;
@@ -1413,7 +1413,7 @@
             Position downstream(visiblePos.deepEquivalent().downstream());
             if (lineBreakExistsAtVisiblePosition(visiblePos) && downstream.deprecatedNode()->isDescendantOf(enclosingAnchor))
                 return original;
-            
+
             result = positionInParentAfterNode(enclosingAnchor);
         }
         // If visually just before an anchor, insert *outside* the anchor unless it's the first
@@ -1431,10 +1431,10 @@
             result = positionInParentBeforeNode(enclosingAnchor);
         }
     }
-        
+
     if (result.isNull() || !editableRootForPosition(result))
         result = original;
-    
+
     return result;
 }
 
diff --git a/Source/core/editing/CompositeEditCommand.h b/Source/core/editing/CompositeEditCommand.h
index 35fe4fb..d791e53 100644
--- a/Source/core/editing/CompositeEditCommand.h
+++ b/Source/core/editing/CompositeEditCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CompositeEditCommand_h
@@ -150,7 +150,7 @@
     PassRefPtr<Node> insertNewDefaultParagraphElementAt(const Position&);
 
     PassRefPtr<Node> moveParagraphContentsToNewBlockIfNecessary(const Position&);
-    
+
     void pushAnchorElementDown(Node*);
 
     // FIXME: preserveSelection and preserveStyle should be enums
@@ -159,12 +159,12 @@
     void moveParagraphWithClones(const VisiblePosition& startOfParagraphToMove, const VisiblePosition& endOfParagraphToMove, Element* blockElement, Node* outerNode);
     void cloneParagraphUnderNewElement(Position& start, Position& end, Node* outerNode, Element* blockElement);
     void cleanupAfterDeletion(VisiblePosition destination = VisiblePosition());
-    
+
     bool breakOutOfEmptyListItem();
     bool breakOutOfEmptyMailBlockquotedParagraph();
-    
+
     Position positionAvoidingSpecialElementBoundary(const Position&);
-    
+
     PassRefPtr<Node> splitTreeToNode(Node*, Node*, bool splitAncestor = false);
 
     Vector<RefPtr<EditCommand> > m_commands;
@@ -174,7 +174,7 @@
 
     RefPtr<EditCommandComposition> m_composition;
 };
-    
+
 void applyCommand(PassRefPtr<CompositeEditCommand>);
 
 inline CompositeEditCommand* toCompositeEditCommand(EditCommand* command)
diff --git a/Source/core/editing/CreateLinkCommand.cpp b/Source/core/editing/CreateLinkCommand.cpp
index 9d3bae2..d21924b 100644
--- a/Source/core/editing/CreateLinkCommand.cpp
+++ b/Source/core/editing/CreateLinkCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -31,7 +31,7 @@
 
 namespace WebCore {
 
-CreateLinkCommand::CreateLinkCommand(Document* document, const String& url) 
+CreateLinkCommand::CreateLinkCommand(Document* document, const String& url)
     : CompositeEditCommand(document)
 {
     m_url = url;
@@ -41,10 +41,10 @@
 {
     if (endingSelection().isNone())
         return;
-        
+
     RefPtr<HTMLAnchorElement> anchorElement = HTMLAnchorElement::create(document());
     anchorElement->setHref(m_url);
-    
+
     if (endingSelection().isRange())
         applyStyledElement(anchorElement.get());
     else {
diff --git a/Source/core/editing/CreateLinkCommand.h b/Source/core/editing/CreateLinkCommand.h
index 0744ceb..cfe9c99 100644
--- a/Source/core/editing/CreateLinkCommand.h
+++ b/Source/core/editing/CreateLinkCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CreateLinkCommand_h
diff --git a/Source/core/editing/DeleteFromTextNodeCommand.cpp b/Source/core/editing/DeleteFromTextNodeCommand.cpp
index dbfcbd4..2841a49 100644
--- a/Source/core/editing/DeleteFromTextNodeCommand.cpp
+++ b/Source/core/editing/DeleteFromTextNodeCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -55,7 +55,7 @@
     m_text = m_node->substringData(m_offset, m_count, ec);
     if (ec)
         return;
-    
+
     // Need to notify this before actually deleting the text
     if (AXObjectCache* cache = document()->existingAXObjectCache())
         cache->nodeTextChangeNotification(m_node.get(), AXObjectCache::AXTextDeleted, m_offset, m_text);
diff --git a/Source/core/editing/DeleteFromTextNodeCommand.h b/Source/core/editing/DeleteFromTextNodeCommand.h
index aeeba83..688c117 100644
--- a/Source/core/editing/DeleteFromTextNodeCommand.h
+++ b/Source/core/editing/DeleteFromTextNodeCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DeleteFromTextNodeCommand_h
@@ -44,11 +44,11 @@
 
     virtual void doApply() OVERRIDE;
     virtual void doUnapply() OVERRIDE;
-    
+
 #ifndef NDEBUG
     virtual void getNodesInCommand(HashSet<Node*>&) OVERRIDE;
 #endif
-    
+
     RefPtr<Text> m_node;
     unsigned m_offset;
     unsigned m_count;
diff --git a/Source/core/editing/DeleteSelectionCommand.cpp b/Source/core/editing/DeleteSelectionCommand.cpp
index 6bc3a1b..112cb1e 100644
--- a/Source/core/editing/DeleteSelectionCommand.cpp
+++ b/Source/core/editing/DeleteSelectionCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -59,11 +59,11 @@
 {
     if (!isTableRow(row))
         return false;
-        
+
     for (Node* child = row->firstChild(); child; child = child->nextSibling())
         if (isTableCell(child) && !isTableCellEmpty(child))
             return false;
-    
+
     return true;
 }
 
@@ -108,31 +108,31 @@
 {
     Node* startSpecialContainer = 0;
     Node* endSpecialContainer = 0;
- 
+
     start = m_selectionToDelete.start();
     end = m_selectionToDelete.end();
- 
+
     // For HRs, we'll get a position at (HR,1) when hitting delete from the beginning of the previous line, or (HR,0) when forward deleting,
     // but in these cases, we want to delete it, so manually expand the selection
     if (start.deprecatedNode()->hasTagName(hrTag))
         start = positionBeforeNode(start.deprecatedNode());
     else if (end.deprecatedNode()->hasTagName(hrTag))
         end = positionAfterNode(end.deprecatedNode());
-    
+
     // FIXME: This is only used so that moveParagraphs can avoid the bugs in special element expansion.
     if (!m_expandForSpecialElements)
         return;
-    
+
     while (1) {
         startSpecialContainer = 0;
         endSpecialContainer = 0;
-    
+
         Position s = positionBeforeContainingSpecialElement(start, &startSpecialContainer);
         Position e = positionAfterContainingSpecialElement(end, &endSpecialContainer);
-        
+
         if (!startSpecialContainer && !endSpecialContainer)
             break;
-            
+
         if (VisiblePosition(start) != m_selectionToDelete.visibleStart() || VisiblePosition(end) != m_selectionToDelete.visibleEnd())
             break;
 
@@ -168,27 +168,27 @@
         newExtent = end;
     } else {
         newBase = end;
-        newExtent = start;        
+        newExtent = start;
     }
-    setStartingSelection(VisibleSelection(newBase, newExtent, startingSelection().isDirectional())); 
+    setStartingSelection(VisibleSelection(newBase, newExtent, startingSelection().isDirectional()));
 }
-    
+
 void DeleteSelectionCommand::initializePositionData()
 {
     Position start, end;
     initializeStartEnd(start, end);
-    
+
     m_upstreamStart = start.upstream();
     m_downstreamStart = start.downstream();
     m_upstreamEnd = end.upstream();
     m_downstreamEnd = end.downstream();
-    
+
     m_startRoot = editableRootForPosition(start);
     m_endRoot = editableRootForPosition(end);
-    
+
     m_startTableRow = enclosingNodeOfType(start, &isTableRow);
     m_endTableRow = enclosingNodeOfType(end, &isTableRow);
-    
+
     // Don't move content out of a table cell.
     // If the cell is non-editable, enclosingNodeOfType won't return it by default, so
     // tell that function that we don't care if it returns non-editable nodes.
@@ -197,24 +197,24 @@
     // FIXME: This isn't right.  A borderless table with two rows and a single column would appear as two paragraphs.
     if (endCell && endCell != startCell)
         m_mergeBlocksAfterDelete = false;
-    
+
     // Usually the start and the end of the selection to delete are pulled together as a result of the deletion.
-    // Sometimes they aren't (like when no merge is requested), so we must choose one position to hold the caret 
+    // Sometimes they aren't (like when no merge is requested), so we must choose one position to hold the caret
     // and receive the placeholder after deletion.
     VisiblePosition visibleEnd(m_downstreamEnd);
     if (m_mergeBlocksAfterDelete && !isEndOfParagraph(visibleEnd))
         m_endingPosition = m_downstreamEnd;
     else
         m_endingPosition = m_downstreamStart;
-    
-    // We don't want to merge into a block if it will mean changing the quote level of content after deleting 
-    // selections that contain a whole number paragraphs plus a line break, since it is unclear to most users 
-    // that such a selection actually ends at the start of the next paragraph. This matches TextEdit behavior 
+
+    // We don't want to merge into a block if it will mean changing the quote level of content after deleting
+    // selections that contain a whole number paragraphs plus a line break, since it is unclear to most users
+    // that such a selection actually ends at the start of the next paragraph. This matches TextEdit behavior
     // for indented paragraphs.
     // Only apply this rule if the endingSelection is a range selection.  If it is a caret, then other operations have created
     // the selection we're deleting (like the process of creating a selection to delete during a backspace), and the user isn't in the situation described above.
-    if (numEnclosingMailBlockquotes(start) != numEnclosingMailBlockquotes(end) 
-            && isStartOfParagraph(visibleEnd) && isStartOfParagraph(VisiblePosition(start)) 
+    if (numEnclosingMailBlockquotes(start) != numEnclosingMailBlockquotes(end)
+            && isStartOfParagraph(visibleEnd) && isStartOfParagraph(VisiblePosition(start))
             && endingSelection().isRange()) {
         m_mergeBlocksAfterDelete = false;
         m_pruneStartBlockIfNecessary = true;
@@ -225,7 +225,7 @@
     m_trailingWhitespace = m_downstreamEnd.trailingWhitespacePosition(VP_DEFAULT_AFFINITY);
 
     if (m_smartDelete) {
-    
+
         // skip smart delete if the selection to delete already starts or ends with whitespace
         Position pos = VisiblePosition(m_upstreamStart, m_selectionToDelete.affinity()).deepEquivalent();
         bool skipSmartDelete = pos.trailingWhitespacePosition(VP_DEFAULT_AFFINITY, true).isNotNull();
@@ -245,7 +245,7 @@
 
             setStartingSelectionOnSmartDelete(m_upstreamStart, m_upstreamEnd);
         }
-        
+
         // trailing whitespace is only considered for smart delete if there is no leading
         // whitespace, as in the case where you double-click the first word of a paragraph.
         if (!skipSmartDelete && !hasLeadingWhitespaceBeforeAdjustment && m_downstreamEnd.trailingWhitespacePosition(VP_DEFAULT_AFFINITY, true).isNotNull()) {
@@ -259,7 +259,7 @@
             setStartingSelectionOnSmartDelete(m_downstreamStart, m_downstreamEnd);
         }
     }
-    
+
     // We must pass call parentAnchoredEquivalent on the positions since some editing positions
     // that appear inside their nodes aren't really inside them.  [hr, 0] is one example.
     // FIXME: parentAnchoredEquivalent should eventually be moved into enclosing element getters
@@ -278,12 +278,12 @@
 
 void DeleteSelectionCommand::saveTypingStyleState()
 {
-    // A common case is deleting characters that are all from the same text node. In 
-    // that case, the style at the start of the selection before deletion will be the 
+    // A common case is deleting characters that are all from the same text node. In
+    // that case, the style at the start of the selection before deletion will be the
     // same as the style at the start of the selection after deletion (since those
     // two positions will be identical). Therefore there is no need to save the
-    // typing style at the start of the selection, nor is there a reason to 
-    // compute the style at the start of the selection after deletion (see the 
+    // typing style at the start of the selection, nor is there a reason to
+    // compute the style at the start of the selection after deletion (see the
     // early return in calculateTypingStyleAfterDelete).
     if (m_upstreamStart.deprecatedNode() == m_downstreamEnd.deprecatedNode() && m_upstreamStart.deprecatedNode()->isTextNode())
         return;
@@ -328,7 +328,7 @@
         m_startsAtEmptyLine = true;
         m_endingPosition = m_downstreamEnd;
     }
-    
+
     return false;
 }
 
@@ -345,7 +345,7 @@
 {
     if (!node)
         return;
-        
+
     if (m_startRoot != m_endRoot && !(node->isDescendantOf(m_startRoot.get()) && node->isDescendantOf(m_endRoot.get()))) {
         // If a node is not in both the start and end editable roots, remove it only if its inside an editable region.
         if (!node->parentNode()->rendererIsEditable()) {
@@ -362,12 +362,12 @@
                     return;
                 child = nextChild;
             }
-            
+
             // Don't remove editable regions that are inside non-editable ones, just clear them.
             return;
         }
     }
-    
+
     if (isTableStructureNode(node.get()) || node->isRootEditableElement()) {
         // Do not remove an element of table structure; remove its contents.
         // Likewise for the root editable element.
@@ -377,7 +377,7 @@
             child = child->nextSibling();
             removeNode(remove, shouldAssumeContentIsAlwaysEditable);
         }
-        
+
         // Make sure empty cell has some height, if a placeholder can be inserted.
         document()->updateLayoutIgnorePendingStylesheets();
         RenderObject *r = node->renderer();
@@ -388,17 +388,17 @@
         }
         return;
     }
-    
+
     if (node == m_startBlock && !isEndOfBlock(VisiblePosition(firstPositionInNode(m_startBlock.get())).previous()))
         m_needPlaceholder = true;
     else if (node == m_endBlock && !isStartOfBlock(VisiblePosition(lastPositionInNode(m_startBlock.get())).next()))
         m_needPlaceholder = true;
-    
+
     // FIXME: Update the endpoints of the range being deleted.
     updatePositionForNodeRemoval(m_endingPosition, node.get());
     updatePositionForNodeRemoval(m_leadingWhitespace, node.get());
     updatePositionForNodeRemoval(m_trailingWhitespace, node.get());
-    
+
     CompositeEditCommand::removeNode(node, shouldAssumeContentIsAlwaysEditable);
 }
 
@@ -420,7 +420,7 @@
     updatePositionForTextRemoval(node.get(), offset, count, m_leadingWhitespace);
     updatePositionForTextRemoval(node.get(), offset, count, m_trailingWhitespace);
     updatePositionForTextRemoval(node.get(), offset, count, m_downstreamEnd);
-    
+
     CompositeEditCommand::deleteTextFromNode(node, offset, count);
 }
 
@@ -449,7 +449,7 @@
 
     int startOffset = m_upstreamStart.deprecatedEditingOffset();
     Node* startNode = m_upstreamStart.deprecatedNode();
-    
+
     makeStylingElementsDirectChildrenOfEditableRootToPreventStyleLoss();
 
     // Never remove the start block unless it's a table, in which case we won't merge content in.
@@ -495,7 +495,7 @@
         bool startNodeWasDescendantOfEndNode = m_upstreamStart.deprecatedNode()->isDescendantOf(m_downstreamEnd.deprecatedNode());
         // The selection to delete spans more than one node.
         RefPtr<Node> node(startNode);
-        
+
         if (startOffset > 0) {
             if (startNode->isTextNode()) {
                 // in a text node that needs to be trimmed
@@ -509,7 +509,7 @@
             Text* text = toText(m_upstreamEnd.deprecatedNode());
             deleteTextFromNode(text, 0, m_upstreamEnd.deprecatedEditingOffset());
         }
-        
+
         // handle deleting all nodes that are completely selected
         while (node && node != m_downstreamEnd.deprecatedNode()) {
             if (comparePositions(firstPositionInOrBeforeNode(node.get()), m_downstreamEnd) >= 0) {
@@ -531,7 +531,7 @@
                     node = NodeTraversal::next(node.get());
             }
         }
-        
+
         if (m_downstreamEnd.deprecatedNode() != startNode && !m_upstreamStart.deprecatedNode()->isDescendantOf(m_downstreamEnd.deprecatedNode()) && m_downstreamEnd.anchorNode()->inDocument() && m_downstreamEnd.deprecatedEditingOffset() >= caretMinOffset(m_downstreamEnd.deprecatedNode())) {
             if (m_downstreamEnd.atLastEditingPositionForNode() && !canHaveChildrenForEditing(m_downstreamEnd.deprecatedNode())) {
                 // The node itself is fully selected, not just its contents.  Delete it.
@@ -545,7 +545,7 @@
                     }
                 // Remove children of m_downstreamEnd.deprecatedNode() that come after m_upstreamStart.
                 // Don't try to remove children if m_upstreamStart was inside m_downstreamEnd.deprecatedNode()
-                // and m_upstreamStart has been removed from the document, because then we don't 
+                // and m_upstreamStart has been removed from the document, because then we don't
                 // know how many children to remove.
                 // FIXME: Make m_upstreamStart a position we update as we remove content, then we can
                 // always know which children to remove.
@@ -596,25 +596,25 @@
         }
         return;
     }
-    
+
     // It shouldn't have been asked to both try and merge content into the start block and prune it.
     ASSERT(!m_pruneStartBlockIfNecessary);
 
     // FIXME: Deletion should adjust selection endpoints as it removes nodes so that we never get into this state (4099839).
     if (!m_downstreamEnd.anchorNode()->inDocument() || !m_upstreamStart.anchorNode()->inDocument())
          return;
-         
+
     // FIXME: The deletion algorithm shouldn't let this happen.
     if (comparePositions(m_upstreamStart, m_downstreamEnd) > 0)
         return;
-        
+
     // There's nothing to merge.
     if (m_upstreamStart == m_downstreamEnd)
         return;
-        
+
     VisiblePosition startOfParagraphToMove(m_downstreamEnd);
     VisiblePosition mergeDestination(m_upstreamStart);
-    
+
     // m_downstreamEnd's block has been emptied out by deletion.  There is no content inside of it to
     // move, so just remove it.
     Element* endBlock = enclosingBlock(m_downstreamEnd.deprecatedNode());
@@ -622,21 +622,21 @@
         removeNode(enclosingBlock(m_downstreamEnd.deprecatedNode()));
         return;
     }
-    
+
     // We need to merge into m_upstreamStart's block, but it's been emptied out and collapsed by deletion.
     if (!mergeDestination.deepEquivalent().deprecatedNode() || !mergeDestination.deepEquivalent().deprecatedNode()->isDescendantOf(enclosingBlock(m_upstreamStart.containerNode())) || m_startsAtEmptyLine) {
         insertNodeAt(createBreakElement(document()).get(), m_upstreamStart);
         mergeDestination = VisiblePosition(m_upstreamStart);
     }
-    
+
     if (mergeDestination == startOfParagraphToMove)
         return;
-        
+
     VisiblePosition endOfParagraphToMove = endOfParagraph(startOfParagraphToMove);
-    
+
     if (mergeDestination == endOfParagraphToMove)
         return;
-    
+
     // The rule for merging into an empty block is: only do so if its farther to the right.
     // FIXME: Consider RTL.
     if (!m_startsAtEmptyLine && isStartOfParagraph(mergeDestination) && startOfParagraphToMove.absoluteCaretBounds().x() > mergeDestination.absoluteCaretBounds().x()) {
@@ -646,8 +646,8 @@
             return;
         }
     }
-    
-    // Block images, tables and horizontal rules cannot be made inline with content at mergeDestination.  If there is 
+
+    // Block images, tables and horizontal rules cannot be made inline with content at mergeDestination.  If there is
     // any (!isStartOfParagraph(mergeDestination)), don't merge, just move the caret to just before the selection we deleted.
     // See https://bugs.webkit.org/show_bug.cgi?id=25439
     if (isRenderedAsNonInlineTableImageOrHR(startOfParagraphToMove.deepEquivalent().deprecatedNode()) && !isStartOfParagraph(mergeDestination)) {
@@ -678,7 +678,7 @@
             row = previousRow.get();
         }
     }
-    
+
     // Remove empty rows after the start row.
     if (m_startTableRow && m_startTableRow->inDocument() && m_startTableRow != m_endTableRow) {
         Node* row = m_startTableRow->nextSibling();
@@ -689,7 +689,7 @@
             row = nextRow.get();
         }
     }
-    
+
     if (m_endTableRow && m_endTableRow->inDocument() && m_endTableRow != m_startTableRow)
         if (isTableRowEmpty(m_endTableRow.get())) {
             // Don't remove m_endTableRow if it's where we're putting the ending selection.
@@ -706,13 +706,13 @@
 {
     if (!m_typingStyle)
         return;
-        
+
     // Compute the difference between the style before the delete and the style now
     // after the delete has been done. Set this style on the frame, so other editing
     // commands being composed with this one will work, and also cache it on the command,
-    // so the Frame::appliedEditing can set it after the whole composite command 
+    // so the Frame::appliedEditing can set it after the whole composite command
     // has completed.
-    
+
     // If we deleted into a blockquote, but are now no longer in a blockquote, use the alternate typing style
     if (m_deleteIntoBlockquoteStyle && !enclosingNodeOfType(m_endingPosition, isMailBlockquote, CanCrossEditingBoundary))
         m_typingStyle = m_deleteIntoBlockquoteStyle;
@@ -723,7 +723,7 @@
         m_typingStyle = 0;
     // This is where we've deleted all traces of a style but not a whole paragraph (that's handled above).
     // In this case if we start typing, the new characters should have the same style as the just deleted ones,
-    // but, if we change the selection, come back and start typing that style should be lost.  Also see 
+    // but, if we change the selection, come back and start typing that style should be lost.  Also see
     // preserveTypingStyle() below.
     document()->frame()->selection()->setTypingStyle(m_typingStyle);
 }
@@ -745,12 +745,12 @@
 {
     Node* node = m_endingPosition.containerNode();
     Node* rootNode = node->rootEditableElement();
-   
+
     while (node != rootNode) {
         if (isRemovableBlock(node)) {
             if (node == m_endingPosition.anchorNode())
                 updatePositionForNodeRemovalPreservingChildren(m_endingPosition, node);
-            
+
             CompositeEditCommand::removeNodePreservingChildren(node);
             node = m_endingPosition.anchorNode();
         } else
@@ -770,7 +770,7 @@
 
     // save this to later make the selection with
     EAffinity affinity = m_selectionToDelete.affinity();
-    
+
     Position downstreamEnd = m_selectionToDelete.end().downstream();
     bool rootWillStayOpenWithoutPlaceholder = downstreamEnd.containerNode() == downstreamEnd.containerNode()->rootEditableElement()
         || (downstreamEnd.containerNode()->isTextNode() && downstreamEnd.containerNode()->parentNode() == downstreamEnd.containerNode()->rootEditableElement());
@@ -786,16 +786,16 @@
             if (m_selectionToDelete.end().deprecatedNode()->isDescendantOf(table))
                 m_needPlaceholder = false;
     }
-        
-    
+
+
     // set up our state
     initializePositionData();
 
     // Delete any text that may hinder our ability to fixup whitespace after the delete
-    deleteInsignificantTextDownstream(m_trailingWhitespace);    
+    deleteInsignificantTextDownstream(m_trailingWhitespace);
 
     saveTypingStyleState();
-    
+
     // deleting just a BR is handled specially, at least because we do not
     // want to replace it with a placeholder BR!
     if (handleSpecialCaseBRDelete()) {
@@ -805,17 +805,17 @@
         rebalanceWhitespace();
         return;
     }
-    
+
     handleGeneralDelete();
-    
+
     fixupWhitespace();
-    
+
     mergeParagraphs();
-    
+
     removePreviouslySelectedEmptyTableRows();
-    
+
     RefPtr<Node> placeholder = m_needPlaceholder ? createBreakElement(document()).get() : 0;
-    
+
     if (placeholder) {
         if (m_sanitizeMarkup)
             removeRedundantBlocks();
diff --git a/Source/core/editing/DeleteSelectionCommand.h b/Source/core/editing/DeleteSelectionCommand.h
index 735e957..22a5410 100644
--- a/Source/core/editing/DeleteSelectionCommand.h
+++ b/Source/core/editing/DeleteSelectionCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DeleteSelectionCommand_h
@@ -32,7 +32,7 @@
 
 class EditingStyle;
 
-class DeleteSelectionCommand : public CompositeEditCommand { 
+class DeleteSelectionCommand : public CompositeEditCommand {
 public:
     static PassRefPtr<DeleteSelectionCommand> create(Document* document, bool smartDelete = false, bool mergeBlocksAfterDelete = true, bool replace = false, bool expandForSpecialElements = false, bool sanitizeMarkup = true)
     {
@@ -49,7 +49,7 @@
 
     virtual void doApply();
     virtual EditAction editingAction() const;
-    
+
     virtual bool preservesTypingStyle() const;
 
     void initializeStartEnd(Position&, Position&);
diff --git a/Source/core/editing/EditAction.h b/Source/core/editing/EditAction.h
index 912e931..56f7062 100644
--- a/Source/core/editing/EditAction.h
+++ b/Source/core/editing/EditAction.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef EditAction_h
@@ -67,7 +67,7 @@
         EditActionInsertList,
         EditActionIndent,
         EditActionOutdent
-    } EditAction;    
+    } EditAction;
 }
 
 #endif
diff --git a/Source/core/editing/EditCommand.cpp b/Source/core/editing/EditCommand.cpp
index 2fac607..6105101 100644
--- a/Source/core/editing/EditCommand.cpp
+++ b/Source/core/editing/EditCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/editing/EditCommand.h b/Source/core/editing/EditCommand.h
index 447ccc2..99b5367 100644
--- a/Source/core/editing/EditCommand.h
+++ b/Source/core/editing/EditCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef EditCommand_h
diff --git a/Source/core/editing/EditingBehavior.h b/Source/core/editing/EditingBehavior.h
index 262960b..6c2f994 100644
--- a/Source/core/editing/EditingBehavior.h
+++ b/Source/core/editing/EditingBehavior.h
@@ -62,7 +62,7 @@
 
     // On Mac, when processing a contextual click, the object being clicked upon should be selected.
     bool shouldSelectOnContextualMenuClick() const { return m_type == EditingMacBehavior; }
-    
+
     // On Mac and Windows, pressing backspace (when it isn't handled otherwise) should navigate back.
     bool shouldNavigateBackOnBackspace() const
     {
diff --git a/Source/core/editing/EditingStyle.cpp b/Source/core/editing/EditingStyle.cpp
index 59edb02..82e5cd2 100644
--- a/Source/core/editing/EditingStyle.cpp
+++ b/Source/core/editing/EditingStyle.cpp
@@ -261,7 +261,7 @@
 {
     RefPtr<CSSValue> value = attributeValueAsCSSValue(element);
     RefPtr<CSSValue> styleValue = style->getPropertyCSSValue(m_propertyID);
-    
+
     return compareCSSValuePtr(value, styleValue);
 }
 
@@ -276,7 +276,7 @@
     ASSERT(element);
     if (!element->hasAttribute(m_attrName))
         return 0;
-    
+
     RefPtr<MutableStylePropertySet> dummyStyle;
     dummyStyle = MutableStylePropertySet::create();
     dummyStyle->setProperty(m_propertyID, element->getAttribute(m_attrName));
@@ -365,11 +365,11 @@
 {
     if (!colorValue || !colorValue->isPrimitiveValue())
         return Color::transparent;
-    
+
     CSSPrimitiveValue* primitiveColor = static_cast<CSSPrimitiveValue*>(colorValue);
     if (primitiveColor->isRGBColor())
         return primitiveColor->getRGBA32Value();
-    
+
     RGBA32 rgba = 0;
     CSSParser::parseColor(rgba, colorValue->cssText());
     return rgba;
@@ -457,7 +457,7 @@
 
 void EditingStyle::removeTextFillAndStrokeColorsIfNeeded(RenderStyle* renderStyle)
 {
-    // If a node's text fill color is invalid, then its children use 
+    // If a node's text fill color is invalid, then its children use
     // their font-color as their text fill color (they don't
     // inherit it).  Likewise for stroke color.
     if (!renderStyle->textFillColor().isValid())
@@ -901,7 +901,7 @@
 
     if (!elementIsSpanOrElementEquivalent && !matchedAttributes)
         return false; // element is not a span, a html element equivalent, or font element.
-    
+
     if (element->getAttribute(HTMLNames::classAttr) == AppleStyleSpanClass)
         matchedAttributes++;
 
@@ -1032,7 +1032,7 @@
 
         // Call collapseTextDecorationProperties first or otherwise it'll copy the value over from in-effect to text-decorations.
         wrappingStyle->collapseTextDecorationProperties();
-        
+
         return wrappingStyle.release();
     }
 
@@ -1101,7 +1101,7 @@
                 style->mergeAndOverrideOnConflict(static_cast<CSSStyleRule*>(matchedRules->item(i))->styleRule()->properties());
         }
     }
-    
+
     return style.release();
 }
 
@@ -1109,7 +1109,7 @@
 {
     RefPtr<MutableStylePropertySet> styleFromMatchedRules = styleFromMatchedRulesForElement(element,
         StyleResolver::AuthorCSSRules | StyleResolver::CrossOriginCSSRules);
-    // Styles from the inline style declaration, held in the variable "style", take precedence 
+    // Styles from the inline style declaration, held in the variable "style", take precedence
     // over those from matched rules.
     if (m_mutableStyle)
         styleFromMatchedRules->mergeAndOverrideOnConflict(m_mutableStyle.get());
@@ -1122,7 +1122,7 @@
 {
     mergeStyleFromRules(element);
 
-    // The property value, if it's a percentage, may not reflect the actual computed value.  
+    // The property value, if it's a percentage, may not reflect the actual computed value.
     // For example: style="height: 1%; overflow: visible;" in quirksmode
     // FIXME: There are others like this, see <rdar://problem/5195123> Slashdot copy/paste fidelity problem
     RefPtr<CSSComputedStyleDeclaration> computedStyleForElement = CSSComputedStyleDeclaration::create(element);
@@ -1218,13 +1218,13 @@
 
     Position position = adjustedSelectionStartForStyleComputation(selection);
 
-    // If the pos is at the end of a text node, then this node is not fully selected. 
-    // Move it to the next deep equivalent position to avoid removing the style from this node. 
-    // e.g. if pos was at Position("hello", 5) in <b>hello<div>world</div></b>, we want Position("world", 0) instead. 
-    // We only do this for range because caret at Position("hello", 5) in <b>hello</b>world should give you font-weight: bold. 
-    Node* positionNode = position.containerNode(); 
-    if (selection.isRange() && positionNode && positionNode->isTextNode() && position.computeOffsetInContainerNode() == positionNode->maxCharacterOffset()) 
-        position = nextVisuallyDistinctCandidate(position); 
+    // If the pos is at the end of a text node, then this node is not fully selected.
+    // Move it to the next deep equivalent position to avoid removing the style from this node.
+    // e.g. if pos was at Position("hello", 5) in <b>hello<div>world</div></b>, we want Position("world", 0) instead.
+    // We only do this for range because caret at Position("hello", 5) in <b>hello</b>world should give you font-weight: bold.
+    Node* positionNode = position.containerNode();
+    if (selection.isRange() && positionNode && positionNode->isTextNode() && position.computeOffsetInContainerNode() == positionNode->maxCharacterOffset())
+        position = nextVisuallyDistinctCandidate(position);
 
     Element* element = position.element();
     if (!element)
@@ -1323,7 +1323,7 @@
         // In the range case, make sure that the embedding element persists until the end of the range.
         if (selection.isRange() && !end.deprecatedNode()->isDescendantOf(node))
             return NaturalWritingDirection;
-        
+
         foundDirection = directionValue == CSSValueLtr ? LeftToRightWritingDirection : RightToLeftWritingDirection;
     }
     hasNestedOrMultipleEmbeddings = false;
@@ -1331,7 +1331,7 @@
 }
 
 static void reconcileTextDecorationProperties(MutableStylePropertySet* style)
-{    
+{
     RefPtr<CSSValue> textDecorationsInEffect = style->getPropertyCSSValue(CSSPropertyWebkitTextDecorationsInEffect);
     RefPtr<CSSValue> textDecoration = style->getPropertyCSSValue(CSSPropertyTextDecoration);
     // We shouldn't have both text-decoration and -webkit-text-decorations-in-effect because that wouldn't make sense.
@@ -1605,7 +1605,7 @@
     RefPtr<CSSValue> cssValue = style->getPropertyCSSValueInternal(CSSPropertyBackgroundColor);
     return isTransparentColorValue(cssValue.get());
 }
-    
+
 bool hasTransparentBackgroundColor(StylePropertySet* style)
 {
     RefPtr<CSSValue> cssValue = style->getPropertyCSSValue(CSSPropertyBackgroundColor);
diff --git a/Source/core/editing/Editor.cpp b/Source/core/editing/Editor.cpp
index b287f81..9bbc1f1 100644
--- a/Source/core/editing/Editor.cpp
+++ b/Source/core/editing/Editor.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -145,7 +145,7 @@
     if (event->isPaste()) {
         if (event->pastingFragment())
             replaceSelectionWithFragment(event->pastingFragment(), false, event->shouldSmartReplace(), event->shouldMatchStyle());
-        else 
+        else
             replaceSelectionWithText(event->data(), false, event->shouldSmartReplace());
         return true;
     }
@@ -201,14 +201,14 @@
         return 0;
     if (!document->isImageDocument())
         return 0;
-    
+
     HTMLElement* body = document->body();
     if (!body)
         return 0;
-    
+
     Node* node = body->firstChild();
     if (!node)
-        return 0;    
+        return 0;
     if (!node->hasTagName(imgTag))
         return 0;
     return toHTMLImageElement(node);
@@ -239,7 +239,7 @@
     Node* endContainer = range->endContainer();
     if (!startContainer || !endContainer)
         return false;
-    
+
     if (!startContainer->rendererIsEditable() || !endContainer->rendererIsEditable())
         return false;
 
@@ -254,10 +254,10 @@
 }
 
 bool Editor::smartInsertDeleteEnabled()
-{   
+{
     return client() && client()->smartInsertDeleteEnabled();
 }
-    
+
 bool Editor::canSmartCopyOrDelete()
 {
     return client() && client()->smartInsertDeleteEnabled() && m_frame->selection()->granularity() == WordGranularity;
@@ -315,7 +315,7 @@
 {
     if (m_frame->selection()->isNone())
         return;
-    
+
     applyCommand(DeleteSelectionCommand::create(m_frame->document(), smartDelete));
 }
 
@@ -365,11 +365,11 @@
 {
     if (!client())
         return false;
-    
+
     if (fragment) {
         Node* child = fragment->firstChild();
         if (child && fragment->lastChild() == child && child->isCharacterDataNode())
-            return client()->shouldInsertText(static_cast<CharacterData*>(child)->data(), replacingDOMRange.get(), givenAction);        
+            return client()->shouldInsertText(static_cast<CharacterData*>(child)->data(), replacingDOMRange.get(), givenAction);
     }
 
     return client()->shouldInsertNode(fragment.get(), replacingDOMRange.get(), givenAction);
@@ -402,7 +402,7 @@
 
 void Editor::replaceSelectionWithText(const String& text, bool selectReplacement, bool smartReplace)
 {
-    replaceSelectionWithFragment(createFragmentFromText(selectedRange().get(), text), selectReplacement, smartReplace, true); 
+    replaceSelectionWithFragment(createFragmentFromText(selectedRange().get(), text), selectReplacement, smartReplace, true);
 }
 
 PassRefPtr<Range> Editor::selectedRange()
@@ -416,7 +416,7 @@
 {
     if (!range || range->collapsed(IGNORE_EXCEPTION))
         return false;
-    
+
     if (!canDeleteRange(range))
         return false;
 
@@ -424,7 +424,7 @@
 }
 
 bool Editor::tryDHTMLCopy()
-{   
+{
     if (m_frame->selection()->isInPasswordField())
         return false;
 
@@ -435,7 +435,7 @@
 {
     if (m_frame->selection()->isInPasswordField())
         return false;
-    
+
     return !dispatchCPPEvent(eventNames().cutEvent, ClipboardWritable);
 }
 
@@ -504,7 +504,7 @@
 {
     if (!canEditRichly())
         return 0;
-        
+
     RefPtr<Node> newList = InsertListCommand::insertList(m_frame->document(), InsertListCommand::OrderedList);
     revealSelectionAfterEditingOperation();
     return newList;
@@ -514,7 +514,7 @@
 {
     if (!canEditRichly())
         return 0;
-        
+
     RefPtr<Node> newList = InsertListCommand::insertList(m_frame->document(), InsertListCommand::UnorderedList);
     revealSelectionAfterEditingOperation();
     return newList;
@@ -534,7 +534,7 @@
 {
     if (!canEditRichly() || m_frame->selection()->isNone())
         return 0;
-    
+
     RefPtr<Node> newList = IncreaseSelectionListLevelCommand::increaseSelectionListLevel(m_frame->document());
     revealSelectionAfterEditingOperation();
     return newList;
@@ -544,7 +544,7 @@
 {
     if (!canEditRichly() || m_frame->selection()->isNone())
         return 0;
-    
+
     RefPtr<Node> newList = IncreaseSelectionListLevelCommand::increaseSelectionListLevelOrdered(m_frame->document());
     revealSelectionAfterEditingOperation();
     return newList.release();
@@ -554,7 +554,7 @@
 {
     if (!canEditRichly() || m_frame->selection()->isNone())
         return 0;
-    
+
     RefPtr<Node> newList = IncreaseSelectionListLevelCommand::increaseSelectionListLevelUnordered(m_frame->document());
     revealSelectionAfterEditingOperation();
     return newList.release();
@@ -564,7 +564,7 @@
 {
     if (!canEditRichly() || m_frame->selection()->isNone())
         return;
-    
+
     DecreaseSelectionListLevelCommand::decreaseSelectionListLevel(m_frame->document());
     revealSelectionAfterEditingOperation();
 }
@@ -574,19 +574,19 @@
     applyCommand(RemoveFormatCommand::create(m_frame->document()));
 }
 
-void Editor::clearLastEditCommand() 
+void Editor::clearLastEditCommand()
 {
     m_lastEditCommand.clear();
 }
 
-// Returns whether caller should continue with "the default processing", which is the same as 
+// Returns whether caller should continue with "the default processing", which is the same as
 // the event handler NOT setting the return value to false
 bool Editor::dispatchCPPEvent(const AtomicString &eventType, ClipboardAccessPolicy policy)
 {
     Node* target = findEventTargetFromSelection();
     if (!target)
         return true;
-    
+
     RefPtr<Clipboard> clipboard = newGeneralClipboard(policy, m_frame);
 
     RefPtr<Event> evt = ClipboardEvent::create(eventType, true, true, clipboard);
@@ -600,7 +600,7 @@
 
     // invalidate clipboard here for security
     clipboard->setAccessPolicy(ClipboardNumb);
-    
+
     return !noDefaultProcessing;
 }
 
@@ -635,12 +635,12 @@
         break;
     }
 }
-    
+
 bool Editor::shouldApplyStyle(StylePropertySet* style, Range* range)
-{   
+{
     return client()->shouldApplyStyle(style, range);
 }
-    
+
 void Editor::applyParagraphStyle(StylePropertySet* style, EditAction editingAction)
 {
     switch (m_frame->selection()->selectionType()) {
@@ -668,7 +668,7 @@
 {
     if (!style || style->isEmpty() || !canEditRichly())
         return;
-    
+
     if (client() && client()->shouldApplyStyle(style, m_frame->selection()->toNormalizedRange().get()))
         applyParagraphStyle(style, editingAction);
 }
@@ -978,7 +978,7 @@
         if (!node)
             return;
     }
-    
+
     applyCommand(SimplifyMarkupCommand::create(m_frame->document(), startNode, (endNode) ? NodeTraversal::next(endNode) : 0));
 }
 
@@ -1108,7 +1108,7 @@
     case RTL:
         return RightToLeftWritingDirection;
     }
-    
+
     return result;
 }
 
@@ -1117,7 +1117,7 @@
     RefPtr<Range> range = compositionRange();
     if (!range)
         return;
-    
+
     // The composition can start inside a composed character sequence, so we have to override checks.
     // See <http://bugs.webkit.org/show_bug.cgi?id=15781>
     VisibleSelection selection;
@@ -1179,7 +1179,7 @@
         setIgnoreCompositionSelectionChange(false);
         return;
     }
-    
+
     // Dispatch a compositionend event to the focused node.
     // We should send this event before sending a TextEvent as written in Section 6.2.2 and 6.2.3 of
     // the DOM Event specification.
@@ -1292,7 +1292,7 @@
 
             unsigned start = min(baseOffset + selectionStart, extentOffset);
             unsigned end = min(max(start, baseOffset + selectionEnd), extentOffset);
-            RefPtr<Range> selectedRange = Range::create(baseNode->document(), baseNode, start, baseNode, end);                
+            RefPtr<Range> selectedRange = Range::create(baseNode->document(), baseNode, start, baseNode, end);
             m_frame->selection()->setSelectedRange(selectedRange.get(), DOWNSTREAM, false);
         }
     }
@@ -1304,7 +1304,7 @@
 {
     if (!client())
         return;
-        
+
     RefPtr<Range> selectedRange = frame()->selection()->toNormalizedRange();
     if (selectedRange)
         frame()->document()->markers()->removeMarkers(selectedRange.get(), DocumentMarker::Spelling);
@@ -1314,7 +1314,7 @@
 {
     // The basic approach is to search in two phases - from the selection end to the end of the doc, and
     // then we wrap and search from the doc start to (approximately) where we started.
-    
+
     // Start at the end of the selection, search to edge of document.  Starting at the selection end makes
     // repeated "check spelling" commands work.
     VisibleSelection selection(frame()->selection()->selection());
@@ -1336,20 +1336,20 @@
     if (!isEditablePosition(position)) {
         // This shouldn't happen in very often because the Spelling menu items aren't enabled unless the
         // selection is editable.
-        // This can happen in Mail for a mix of non-editable and editable content (like Stationary), 
+        // This can happen in Mail for a mix of non-editable and editable content (like Stationary),
         // when spell checking the whole document before sending the message.
         // In that case the document might not be editable, but there are editable pockets that need to be spell checked.
 
         position = firstEditablePositionAfterPositionInRoot(position, frame()->document()->documentElement()).deepEquivalent();
         if (position.isNull())
             return;
-        
+
         Position rangeCompliantPosition = position.parentAnchoredEquivalent();
         spellingSearchRange->setStart(rangeCompliantPosition.deprecatedNode(), rangeCompliantPosition.deprecatedEditingOffset(), IGNORE_EXCEPTION);
         startedWithSelection = false; // won't need to wrap
     }
-    
-    // topNode defines the whole range we want to operate on 
+
+    // topNode defines the whole range we want to operate on
     Node* topNode = highestEditableRoot(position);
     // FIXME: lastOffsetForEditing() is wrong here if editingIgnoresContent(highestEditableRoot()) returns true (e.g. a <table>)
     spellingSearchRange->setEnd(topNode, lastOffsetForEditing(topNode), IGNORE_EXCEPTION);
@@ -1365,17 +1365,17 @@
 
     if (spellingSearchRange->collapsed(IGNORE_EXCEPTION))
         return; // nothing to search in
-    
+
     // Get the spell checker if it is available
     if (!client())
         return;
-        
+
     // We go to the end of our first range instead of the start of it, just to be sure
     // we don't get foiled by any word boundary problems at the start.  It means we might
     // do a tiny bit more searching.
     Node* searchEndNodeAfterWrap = spellingSearchRange->endContainer();
     int searchEndOffsetAfterWrap = spellingSearchRange->endOffset();
-    
+
     int misspellingOffset = 0;
     GrammarDetail grammarDetail;
     int grammarPhraseOffset = 0;
@@ -1406,18 +1406,18 @@
             chars.advance(misspellingOffset);
             grammarSearchRange->setEnd(chars.range()->startContainer(), chars.range()->startOffset(), IGNORE_EXCEPTION);
         }
-    
+
         if (isGrammarCheckingEnabled())
             badGrammarPhrase = TextCheckingHelper(client(), grammarSearchRange).findFirstBadGrammar(grammarDetail, grammarPhraseOffset, false);
     }
-    
+
     // If we found neither bad grammar nor a misspelled word, wrap and try again (but don't bother if we started at the beginning of the
     // block rather than at a selection).
     if (startedWithSelection && !misspelledWord && !badGrammarPhrase) {
         spellingSearchRange->setStart(topNode, 0, IGNORE_EXCEPTION);
         // going until the end of the very first chunk we tested is far enough
         spellingSearchRange->setEnd(searchEndNodeAfterWrap, searchEndOffsetAfterWrap, IGNORE_EXCEPTION);
-        
+
         if (unifiedTextCheckerEnabled()) {
             grammarSearchRange = spellingSearchRange->cloneRange(IGNORE_EXCEPTION);
             foundItem = TextCheckingHelper(client(), spellingSearchRange).findFirstMisspellingOrBadGrammar(isGrammarCheckingEnabled(), isSpelling, foundOffset, grammarDetail);
@@ -1442,29 +1442,29 @@
                 badGrammarPhrase = TextCheckingHelper(client(), grammarSearchRange).findFirstBadGrammar(grammarDetail, grammarPhraseOffset, false);
         }
     }
-    
+
     if (!badGrammarPhrase.isEmpty()) {
         // We found bad grammar. Since we only searched for bad grammar up to the first misspelled word, the bad grammar
         // takes precedence and we ignore any potential misspelled word. Select the grammar detail, update the spelling
         // panel, and store a marker so we draw the green squiggle later.
-        
+
         ASSERT(badGrammarPhrase.length() > 0);
         ASSERT(grammarDetail.location != -1 && grammarDetail.length > 0);
-        
+
         // FIXME 4859190: This gets confused with doubled punctuation at the end of a paragraph
         RefPtr<Range> badGrammarRange = TextIterator::subrange(grammarSearchRange.get(), grammarPhraseOffset + grammarDetail.location, grammarDetail.length);
         frame()->selection()->setSelection(VisibleSelection(badGrammarRange.get(), SEL_DEFAULT_AFFINITY));
         frame()->selection()->revealSelection();
-        
+
         frame()->document()->markers()->addMarker(badGrammarRange.get(), DocumentMarker::Grammar, grammarDetail.userDescription);
     } else if (!misspelledWord.isEmpty()) {
         // We found a misspelling, but not any earlier bad grammar. Select the misspelling, update the spelling panel, and store
         // a marker so we draw the red squiggle later.
-        
+
         RefPtr<Range> misspellingRange = TextIterator::subrange(spellingSearchRange.get(), misspellingOffset, misspelledWord.length());
         frame()->selection()->setSelection(VisibleSelection(misspellingRange.get(), DOWNSTREAM));
         frame()->selection()->revealSelection();
-        
+
         client()->updateSpellingUIWithMisspelledWord(misspelledWord);
         frame()->document()->markers()->addMarker(misspellingRange.get(), DocumentMarker::Spelling);
     }
@@ -1511,7 +1511,7 @@
         client()->showSpellingUI(false);
         return;
     }
-    
+
     advanceToNextMisspelling(true);
     client()->showSpellingUI(true);
 }
@@ -1563,7 +1563,7 @@
     // Autocorrect the misspelled word.
     if (!misspellingRange)
         return;
-    
+
     // Get the misspelled word.
     const String misspelledWord = plainText(misspellingRange.get());
     String autocorrectedString = textChecker()->getAutoCorrectSuggestionForMisspelledWord(misspelledWord);
@@ -1588,25 +1588,25 @@
 
     if (!isGrammarCheckingEnabled())
         return;
-    
+
     // Check grammar of entire sentence
     markBadGrammar(VisibleSelection(startOfSentence(wordStart), endOfSentence(wordStart)));
 }
-    
+
 void Editor::markMisspellingsOrBadGrammar(const VisibleSelection& selection, bool checkSpelling, RefPtr<Range>& firstMisspellingRange)
 {
     // This function is called with a selection already expanded to word boundaries.
     // Might be nice to assert that here.
-    
+
     // This function is used only for as-you-type checking, so if that's off we do nothing. Note that
     // grammar checking can only be on if spell checking is also on.
     if (!isContinuousSpellCheckingEnabled())
         return;
-    
+
     RefPtr<Range> searchRange(selection.toNormalizedRange());
     if (!searchRange)
         return;
-    
+
     // If we're not in an editable node, bail.
     Node* editableNode = searchRange->startContainer();
     if (!editableNode || !editableNode->rendererIsEditable())
@@ -1618,7 +1618,7 @@
     // Get the spell checker if it is available
     if (!client())
         return;
-    
+
     TextCheckingHelper checker(client(), searchRange);
     if (checkSpelling)
         checker.markAllMisspellings(firstMisspellingRange);
@@ -1645,7 +1645,7 @@
 {
     markMisspellingsOrBadGrammar(selection, true, firstMisspellingRange);
 }
-    
+
 void Editor::markBadGrammar(const VisibleSelection& selection)
 {
     RefPtr<Range> firstMisspellingRange;
@@ -1818,7 +1818,7 @@
         startOfFirstWord = startOfWord(startOfSelection, RightWordIfOnBoundary);
         endOfFirstWord = endOfWord(startOfSelection, RightWordIfOnBoundary);
     }
-    
+
     if (endOfLastWord.isNull()) {
         startOfLastWord = startOfWord(endOfSelection, LeftWordIfOnBoundary);
         endOfLastWord = endOfWord(endOfSelection, LeftWordIfOnBoundary);
@@ -1862,7 +1862,7 @@
     Document* document = m_frame->documentAtPoint(windowPoint);
     if (!document)
         return 0;
-    
+
     Frame* frame = document->frame();
     ASSERT(frame);
     FrameView* frameView = frame->view();
@@ -2319,7 +2319,7 @@
     }
 
     return false;
-}       
+}
 
 TextCheckingTypeMask Editor::resolveTextCheckingTypeMask(TextCheckingTypeMask textCheckingOptions)
 {
diff --git a/Source/core/editing/Editor.h b/Source/core/editing/Editor.h
index 5d70302..e78c9c0 100644
--- a/Source/core/editing/Editor.h
+++ b/Source/core/editing/Editor.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Editor_h
@@ -64,9 +64,9 @@
 struct TextCheckingResult;
 
 struct CompositionUnderline {
-    CompositionUnderline() 
+    CompositionUnderline()
         : startOffset(0), endOffset(0), thick(false) { }
-    CompositionUnderline(unsigned s, unsigned e, const Color& c, bool t) 
+    CompositionUnderline(unsigned s, unsigned e, const Color& c, bool t)
         : startOffset(s), endOffset(e), color(c), thick(t) { }
     unsigned startOffset;
     unsigned endOffset;
@@ -131,7 +131,7 @@
     bool selectionStartHasStyle(CSSPropertyID, const String& value) const;
     TriState selectionHasStyle(CSSPropertyID, const String& value) const;
     String selectionStartCSSPropertyValue(CSSPropertyID);
-    
+
     TriState selectionUnorderedListState() const;
     TriState selectionOrderedListState() const;
     PassRefPtr<Node> insertOrderedList();
@@ -142,7 +142,7 @@
     PassRefPtr<Node> increaseSelectionListLevelOrdered();
     PassRefPtr<Node> increaseSelectionListLevelUnordered();
     void decreaseSelectionListLevel();
-   
+
     void removeFormattingAndStyle();
 
     void clearLastEditCommand();
@@ -150,7 +150,7 @@
     bool deleteWithDirection(SelectionDirection, TextGranularity, bool killRing, bool isTypingAction);
     void deleteSelectionWithSmartDelete(bool smartDelete);
     bool dispatchCPPEvent(const AtomicString&, ClipboardAccessPolicy);
-    
+
     Node* removedAnchor() const { return m_removedAnchor.get(); }
     void setRemovedAnchor(PassRefPtr<Node> n) { m_removedAnchor = n; }
 
@@ -232,7 +232,7 @@
 
     void setBaseWritingDirection(WritingDirection);
 
-    // smartInsertDeleteEnabled and selectTrailingWhitespaceEnabled are 
+    // smartInsertDeleteEnabled and selectTrailingWhitespaceEnabled are
     // mutually exclusive, meaning that enabling one will disable the other.
     bool smartInsertDeleteEnabled();
     bool isSelectTrailingWhitespaceEnabled();
@@ -275,7 +275,7 @@
     EditingBehavior behavior() const;
 
     PassRefPtr<Range> selectedRange();
-    
+
     void addToKillRing(Range*, bool prepend);
 
     void pasteAsFragment(PassRefPtr<DocumentFragment>, bool smartReplace, bool matchStyle);
@@ -283,7 +283,7 @@
 
     // This is only called on the mac where paste is implemented primarily at the WebKit level.
     void pasteAsPlainTextBypassingDHTML();
- 
+
     void clearMisspellingsAndBadGrammar(const VisibleSelection&);
     void markMisspellingsAndBadGrammar(const VisibleSelection&);
 
@@ -322,7 +322,7 @@
     void replaceSelectionWithText(const String&, bool selectReplacement, bool smartReplace);
     bool selectionStartHasMarkerFor(DocumentMarker::MarkerType, int from, int length) const;
     void updateMarkersForWordsAffectedByEditing(bool onlyHandleWordsContainingSelection);
-    
+
     void simplifyMarkup(Node* startNode, Node* endNode);
 
     void deviceScaleFactorChanged();
diff --git a/Source/core/editing/EditorCommand.cpp b/Source/core/editing/EditorCommand.cpp
index dda179f..17bdd23 100644
--- a/Source/core/editing/EditorCommand.cpp
+++ b/Source/core/editing/EditorCommand.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -1251,7 +1251,7 @@
 static bool enabledDelete(Frame* frame, Event* event, EditorCommandSource source)
 {
     switch (source) {
-    case CommandFromMenuOrKeyBinding:    
+    case CommandFromMenuOrKeyBinding:
         return frame->editor()->canDelete();
     case CommandFromDOM:
     case CommandFromDOMWithUserInterface:
@@ -1489,7 +1489,7 @@
         { "InsertHorizontalRule", { executeInsertHorizontalRule, supported, enabledInRichlyEditableText, stateNone, valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled } },
         { "InsertImage", { executeInsertImage, supported, enabledInRichlyEditableText, stateNone, valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled } },
         { "InsertLineBreak", { executeInsertLineBreak, supported, enabledInEditableText, stateNone, valueNull, isTextInsertion, doNotAllowExecutionWhenDisabled } },
-        { "InsertNewline", { executeInsertNewline, supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, valueNull, isTextInsertion, doNotAllowExecutionWhenDisabled } },    
+        { "InsertNewline", { executeInsertNewline, supportedFromMenuOrKeyBinding, enabledInEditableText, stateNone, valueNull, isTextInsertion, doNotAllowExecutionWhenDisabled } },
         { "InsertNewlineInQuotedContent", { executeInsertNewlineInQuotedContent, supported, enabledInRichlyEditableText, stateNone, valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled } },
         { "InsertOrderedList", { executeInsertOrderedList, supported, enabledInRichlyEditableText, stateOrderedList, valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled } },
         { "InsertParagraph", { executeInsertParagraph, supported, enabledInEditableText, stateNone, valueNull, notTextInsertion, doNotAllowExecutionWhenDisabled } },
diff --git a/Source/core/editing/EditorInsertAction.h b/Source/core/editing/EditorInsertAction.h
index b8b137d..92ee906 100644
--- a/Source/core/editing/EditorInsertAction.h
+++ b/Source/core/editing/EditorInsertAction.h
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #ifndef EditorInsertAction_h
 #define EditorInsertAction_h
 
diff --git a/Source/core/editing/FormatBlockCommand.cpp b/Source/core/editing/FormatBlockCommand.cpp
index ff6b7a5..ecc7e98 100644
--- a/Source/core/editing/FormatBlockCommand.cpp
+++ b/Source/core/editing/FormatBlockCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -44,7 +44,7 @@
     return node->isElementNode() && isElementForFormatBlock(toElement(node)->tagQName());
 }
 
-FormatBlockCommand::FormatBlockCommand(Document* document, const QualifiedName& tagName) 
+FormatBlockCommand::FormatBlockCommand(Document* document, const QualifiedName& tagName)
     : ApplyBlockElementCommand(document, tagName)
     , m_didApply(false)
 {
@@ -94,7 +94,7 @@
     if (wasEndOfParagraph && !isEndOfParagraph(lastParagraphInBlockNode) && !isStartOfParagraph(lastParagraphInBlockNode))
         insertBlockPlaceholder(lastParagraphInBlockNode);
 }
-    
+
 Element* FormatBlockCommand::elementForFormatBlockCommand(Range* range)
 {
     if (!range)
diff --git a/Source/core/editing/FormatBlockCommand.h b/Source/core/editing/FormatBlockCommand.h
index f5f810b..c917832 100644
--- a/Source/core/editing/FormatBlockCommand.h
+++ b/Source/core/editing/FormatBlockCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FormatBlockCommand_h
@@ -44,7 +44,7 @@
     {
         return adoptRef(new FormatBlockCommand(document, tagName));
     }
-    
+
     virtual bool preservesTypingStyle() const { return true; }
 
     static Element* elementForFormatBlockCommand(Range*);
diff --git a/Source/core/editing/FrameSelection.cpp b/Source/core/editing/FrameSelection.cpp
index 8ae0f56..bd8ed46 100644
--- a/Source/core/editing/FrameSelection.cpp
+++ b/Source/core/editing/FrameSelection.cpp
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
-  
+
 #include "config.h"
 #include "core/editing/FrameSelection.h"
 
@@ -307,7 +307,7 @@
 
     m_selection = s;
     setCaretRectNeedsUpdate();
-    
+
     if (!s.isNone() && !(options & DoNotSetFocus))
         setFocusedNodeIfNeeded();
 
@@ -418,8 +418,8 @@
         ExceptionCode ec = 0;
         Range::CompareResults compareResult = range->compareNode(node, ec);
         if (!ec && (compareResult == Range::NODE_BEFORE_AND_AFTER || compareResult == Range::NODE_INSIDE)) {
-            // If we did nothing here, when this node's renderer was destroyed, the rect that it 
-            // occupied would be invalidated, but, selection gaps that change as a result of 
+            // If we did nothing here, when this node's renderer was destroyed, the rect that it
+            // occupied would be invalidated, but, selection gaps that change as a result of
             // the removal wouldn't be invalidated.
             // FIXME: Don't do so much unnecessary invalidation.
             clearRenderTreeSelection = true;
@@ -822,7 +822,7 @@
 #endif
     return pos;
 }
-       
+
 VisiblePosition FrameSelection::modifyExtendingBackward(TextGranularity granularity)
 {
     VisiblePosition pos(m_selection.extent(), m_selection.affinity());
@@ -949,7 +949,7 @@
 static bool isBoundary(TextGranularity granularity)
 {
     return granularity == LineBoundary || granularity == ParagraphBoundary || granularity == DocumentBoundary;
-}    
+}
 
 bool FrameSelection::modify(EAlteration alter, SelectionDirection direction, TextGranularity granularity, EUserTriggered userTriggered)
 {
@@ -1044,7 +1044,7 @@
         }
         break;
     }
-    
+
     if (granularity == LineGranularity || granularity == ParagraphGranularity)
         m_xPosForVerticalArrowNavigation = x;
 
@@ -1174,7 +1174,7 @@
     Frame* frame = pos.anchorNode()->document()->frame();
     if (!frame)
         return x;
-        
+
     if (m_xPosForVerticalArrowNavigation == NoXPosForVerticalArrowNavigation()) {
         VisiblePosition visiblePosition(pos, m_selection.affinity());
         // VisiblePosition creation can fail here if a node containing the selection becomes visibility:hidden
@@ -1183,7 +1183,7 @@
         m_xPosForVerticalArrowNavigation = x;
     } else
         x = m_xPosForVerticalArrowNavigation;
-        
+
     return x;
 }
 
@@ -1341,7 +1341,7 @@
     RenderObject* caretPainter = caretRenderer(node);
     if (!caretPainter)
         return IntRect();
-    
+
     LayoutRect localRect(rect);
     if (caretPainter->isBox())
         toRenderBox(caretPainter)->flipForWritingMode(localRect);
@@ -1388,7 +1388,7 @@
     IntRect oldAbsCaretBounds = m_absCaretBounds;
     m_absCaretBounds = absoluteBoundsForLocalRect(m_selection.start().deprecatedNode(), localCaretRectWithoutUpdate());
     m_absCaretBoundsDirty = false;
-    
+
     if (oldAbsCaretBounds == m_absCaretBounds)
         return false;
 
@@ -1423,15 +1423,15 @@
 void CaretBase::invalidateCaretRect(Node* node, bool caretRectChanged)
 {
     // EDIT FIXME: This is an unfortunate hack.
-    // Basically, we can't trust this layout position since we 
-    // can't guarantee that the check to see if we are in unrendered 
+    // Basically, we can't trust this layout position since we
+    // can't guarantee that the check to see if we are in unrendered
     // content will work at this point. We may have to wait for
     // a layout and re-render of the document to happen. So, resetting this
     // flag will cause another caret layout to happen the first time
     // that we try to paint the caret after this call. That one will work since
     // it happens after the document has accounted for any editing
     // changes which may have been done.
-    // And, we need to leave this layout here so the caret moves right 
+    // And, we need to leave this layout here so the caret moves right
     // away after clicking.
     m_caretRectNeedsUpdate = true;
 
@@ -1489,7 +1489,7 @@
             fprintf(stderr, "%s#text (empty)\n", selected ? "==> " : "    ");
             return;
         }
-        
+
         static const int max = 36;
         String text = textRenderer->text();
         int textLength = text.length();
@@ -1503,11 +1503,11 @@
             int pos;
             InlineTextBox* box = textRenderer->findNextInlineTextBox(offset, pos);
             text = text.substring(box->start(), box->len());
-            
+
             String show;
             int mid = max / 2;
             int caret = 0;
-            
+
             // text is shorter than max
             if (textLength < max) {
                 show = text;
@@ -1525,7 +1525,7 @@
                 show = "..." + text.right(max - 3);
                 caret = pos - (textLength - show.length());
             }
-            
+
             show.replace('\n', ' ');
             show.replace('\r', ' ');
             fprintf(stderr, "==> #text : \"%s\" at offset %d\n", show.utf8().data(), pos);
@@ -1546,27 +1546,27 @@
 bool FrameSelection::contains(const LayoutPoint& point)
 {
     Document* document = m_frame->document();
-    
+
     // Treat a collapsed selection like no selection.
     if (!isRange())
         return false;
-    if (!document->renderer()) 
+    if (!document->renderer())
         return false;
-    
+
     HitTestRequest request(HitTestRequest::ReadOnly | HitTestRequest::Active | HitTestRequest::DisallowShadowContent);
     HitTestResult result(point);
     document->renderView()->hitTest(request, result);
     Node* innerNode = result.innerNode();
     if (!innerNode || !innerNode->renderer())
         return false;
-    
+
     VisiblePosition visiblePos(innerNode->renderer()->positionForPoint(result.localPoint()));
     if (visiblePos.isNull())
         return false;
-        
+
     if (m_selection.visibleStart().isNull() || m_selection.visibleEnd().isNull())
         return false;
-        
+
     Position start(m_selection.visibleStart().deepEquivalent());
     Position end(m_selection.visibleEnd().deepEquivalent());
     Position p(visiblePos.deepEquivalent());
@@ -1604,7 +1604,7 @@
     ContainerNode* ownerElementParent = ownerElement->parentNode();
     if (!ownerElementParent)
         return;
-        
+
     // This method's purpose is it to make it easier to select iframes (in order to delete them).  Don't do anything if the iframe isn't deletable.
     if (!ownerElementParent->rendererIsEditable())
         return;
@@ -1924,7 +1924,7 @@
     }
 
     if (Element* target = rootEditableElement()) {
-        // Walk up the DOM tree to search for a node to focus. 
+        // Walk up the DOM tree to search for a node to focus.
         while (target) {
             // We don't want to set focus on a subframe when selecting in a parent frame,
             // so add the !isFrameElement check here. There's probably a better way to make this
diff --git a/Source/core/editing/FrameSelection.h b/Source/core/editing/FrameSelection.h
index 95fdf72..8fc4642 100644
--- a/Source/core/editing/FrameSelection.h
+++ b/Source/core/editing/FrameSelection.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FrameSelection_h
@@ -139,7 +139,7 @@
     bool rendererIsEditable() const { return m_selection.rendererIsEditable(); }
     bool isContentEditable() const { return m_selection.isContentEditable(); }
     bool isContentRichlyEditable() const { return m_selection.isContentRichlyEditable(); }
-     
+
     void moveTo(const Range*, EAffinity, EUserTriggered = NotUserTriggered);
     void moveTo(const VisiblePosition&, EUserTriggered = NotUserTriggered, CursorAlignOnScroll = AlignCursorOnScrollIfNeeded);
     void moveTo(const VisiblePosition&, const VisiblePosition&, EUserTriggered = NotUserTriggered);
@@ -171,7 +171,7 @@
 
     void setStart(const VisiblePosition &, EUserTriggered = NotUserTriggered);
     void setEnd(const VisiblePosition &, EUserTriggered = NotUserTriggered);
-    
+
     void setBase(const VisiblePosition&, EUserTriggered = NotUserTriggered);
     void setBase(const Position&, EAffinity, EUserTriggered = NotUserTriggered);
     void setExtent(const VisiblePosition&, EUserTriggered = NotUserTriggered);
@@ -201,7 +201,7 @@
     bool isCaretOrRange() const { return m_selection.isCaretOrRange(); }
     bool isInPasswordField() const;
     bool isAll(EditingBoundaryCrossingRule rule = CannotCrossEditingBoundary) const { return m_selection.isAll(rule); }
-    
+
     PassRefPtr<Range> toNormalizedRange() const { return m_selection.toNormalizedRange(); }
 
     void debugRenderer(RenderObject*, bool selected) const;
@@ -282,7 +282,7 @@
     VisiblePosition modifyMovingBackward(TextGranularity);
 
     LayoutUnit lineDirectionPointForBlockDirectionNavigation(EPositionType);
-    
+
     void notifyAccessibilityForSelectionChange();
 
     void focusedOrActiveStateChanged();
@@ -295,7 +295,7 @@
     bool shouldBlinkCaret() const;
 
     bool dispatchSelectStart();
-  
+
     bool visualWordMovementEnabled() const;
 
     Frame* m_frame;
diff --git a/Source/core/editing/HTMLInterchange.cpp b/Source/core/editing/HTMLInterchange.cpp
index 27938e5..c63d98c 100644
--- a/Source/core/editing/HTMLInterchange.cpp
+++ b/Source/core/editing/HTMLInterchange.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/editing/HTMLInterchange.h b/Source/core/editing/HTMLInterchange.h
index c933623..b306437 100644
--- a/Source/core/editing/HTMLInterchange.h
+++ b/Source/core/editing/HTMLInterchange.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLInterchange_h
diff --git a/Source/core/editing/IndentOutdentCommand.cpp b/Source/core/editing/IndentOutdentCommand.cpp
index 348f012..da3dbb6 100644
--- a/Source/core/editing/IndentOutdentCommand.cpp
+++ b/Source/core/editing/IndentOutdentCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -64,7 +64,7 @@
     // FIXME: we need to deal with the case where there is no li (malformed HTML)
     if (!selectedListItem->hasTagName(liTag))
         return false;
-    
+
     // FIXME: previousElementSibling does not ignore non-rendered content like <span></span>.  Should we?
     Element* previousList = selectedListItem->previousElementSibling();
     Element* nextList = selectedListItem->nextElementSibling();
@@ -126,13 +126,13 @@
     // Use InsertListCommand to remove the selection from the list
     if (enclosingNode->hasTagName(olTag)) {
         applyCommandToComposite(InsertListCommand::create(document(), InsertListCommand::OrderedList));
-        return;        
+        return;
     }
     if (enclosingNode->hasTagName(ulTag)) {
         applyCommandToComposite(InsertListCommand::create(document(), InsertListCommand::UnorderedList));
         return;
     }
-    
+
     // The selection is inside a blockquote i.e. enclosingNode is a blockquote
     VisiblePosition positionInEnclosingBlock = VisiblePosition(firstPositionInNode(enclosingNode));
     // If the blockquote is inline, the start of the enclosing block coincides with
@@ -189,7 +189,7 @@
         outdentParagraph();
         return;
     }
-    
+
     Position originalSelectionEnd = endingSelection().end();
     VisiblePosition endOfCurrentParagraph = endOfParagraph(startOfSelection);
     VisiblePosition endAfterSelection = endOfParagraph(endOfParagraph(endOfSelection).next());
@@ -200,15 +200,15 @@
             setEndingSelection(VisibleSelection(originalSelectionEnd, DOWNSTREAM));
         else
             setEndingSelection(endOfCurrentParagraph);
-        
+
         outdentParagraph();
-        
+
         // outdentParagraph could move more than one paragraph if the paragraph
         // is in a list item. As a result, endAfterSelection and endOfNextParagraph
         // could refer to positions no longer in the document.
         if (endAfterSelection.isNotNull() && !endAfterSelection.deepEquivalent().anchorNode()->inDocument())
             break;
-            
+
         if (endOfNextParagraph.isNotNull() && !endOfNextParagraph.deepEquivalent().anchorNode()->inDocument()) {
             endOfCurrentParagraph = endingSelection().end();
             endOfNextParagraph = endOfParagraph(endOfCurrentParagraph.next());
diff --git a/Source/core/editing/IndentOutdentCommand.h b/Source/core/editing/IndentOutdentCommand.h
index c3bacf9..7a49ac5 100644
--- a/Source/core/editing/IndentOutdentCommand.h
+++ b/Source/core/editing/IndentOutdentCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef IndentOutdentCommand_h
diff --git a/Source/core/editing/InsertIntoTextNodeCommand.cpp b/Source/core/editing/InsertIntoTextNodeCommand.cpp
index 5ddb508..613dfc9 100644
--- a/Source/core/editing/InsertIntoTextNodeCommand.cpp
+++ b/Source/core/editing/InsertIntoTextNodeCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -71,7 +71,7 @@
 {
     if (!m_node->rendererIsEditable())
         return;
-        
+
     // Need to notify this before actually deleting the text
     if (AXObjectCache* cache = document()->existingAXObjectCache())
         cache->nodeTextChangeNotification(m_node.get(), AXObjectCache::AXTextDeleted, m_offset, m_text);
diff --git a/Source/core/editing/InsertIntoTextNodeCommand.h b/Source/core/editing/InsertIntoTextNodeCommand.h
index 3da364a..d8eea7a 100644
--- a/Source/core/editing/InsertIntoTextNodeCommand.h
+++ b/Source/core/editing/InsertIntoTextNodeCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef InsertIntoTextNodeCommand_h
@@ -44,11 +44,11 @@
 
     virtual void doApply() OVERRIDE;
     virtual void doUnapply() OVERRIDE;
-    
+
 #ifndef NDEBUG
     virtual void getNodesInCommand(HashSet<Node*>&) OVERRIDE;
 #endif
-    
+
     RefPtr<Text> m_node;
     unsigned m_offset;
     String m_text;
diff --git a/Source/core/editing/InsertLineBreakCommand.cpp b/Source/core/editing/InsertLineBreakCommand.cpp
index 9a4e722..22d9ff2 100644
--- a/Source/core/editing/InsertLineBreakCommand.cpp
+++ b/Source/core/editing/InsertLineBreakCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -43,7 +43,7 @@
 
 using namespace HTMLNames;
 
-InsertLineBreakCommand::InsertLineBreakCommand(Document* document) 
+InsertLineBreakCommand::InsertLineBreakCommand(Document* document)
     : CompositeEditCommand(document)
 {
 }
@@ -93,9 +93,9 @@
     VisibleSelection selection = endingSelection();
     if (!selection.isNonOrphanedCaretOrRange())
         return;
-    
+
     VisiblePosition caret(selection.visibleStart());
-    // FIXME: If the node is hidden, we should still be able to insert text. 
+    // FIXME: If the node is hidden, we should still be able to insert text.
     // For now, we return to avoid a crash.  https://bugs.webkit.org/show_bug.cgi?id=40342
     if (caret.isNull())
         return;
@@ -103,7 +103,7 @@
     Position pos(caret.deepEquivalent());
 
     pos = positionAvoidingSpecialElementBoundary(pos);
-    
+
     pos = positionOutsideTabSpan(pos);
 
     RefPtr<Node> nodeToInsert;
@@ -111,26 +111,26 @@
         nodeToInsert = createBreakElement(document());
     else
         nodeToInsert = document()->createTextNode("\n");
-    
+
     // FIXME: Need to merge text nodes when inserting just after or before text.
 
     if (isEndOfParagraph(caret) && !lineBreakExistsAtVisiblePosition(caret)) {
         bool needExtraLineBreak = !pos.deprecatedNode()->hasTagName(hrTag) && !isHTMLTableElement(pos.deprecatedNode());
 
         insertNodeAt(nodeToInsert.get(), pos);
-        
+
         if (needExtraLineBreak)
             insertNodeBefore(nodeToInsert->cloneNode(false), nodeToInsert);
-        
+
         VisiblePosition endingPosition(positionBeforeNode(nodeToInsert.get()));
         setEndingSelection(VisibleSelection(endingPosition, endingSelection().isDirectional()));
     } else if (pos.deprecatedEditingOffset() <= caretMinOffset(pos.deprecatedNode())) {
         insertNodeAt(nodeToInsert.get(), pos);
-        
+
         // Insert an extra br or '\n' if the just inserted one collapsed.
         if (!isStartOfParagraph(positionBeforeNode(nodeToInsert.get())))
             insertNodeBefore(nodeToInsert->cloneNode(false).get(), nodeToInsert.get());
-        
+
         setEndingSelection(VisibleSelection(positionInParentAfterNode(nodeToInsert.get()), DOWNSTREAM, endingSelection().isDirectional()));
     // If we're inserting after all of the rendered text in a text node, or into a non-text node,
     // a simple insertion is sufficient.
@@ -143,7 +143,7 @@
         splitTextNode(textNode, pos.deprecatedEditingOffset());
         insertNodeBefore(nodeToInsert, textNode);
         Position endingPosition = firstPositionInNode(textNode);
-        
+
         // Handle whitespace that occurs after the split
         document()->updateLayoutIgnorePendingStylesheets();
         if (!endingPosition.isRenderedCharacter()) {
@@ -160,7 +160,7 @@
                 endingPosition = firstPositionInNode(nbspNode.get());
             }
         }
-        
+
         setEndingSelection(VisibleSelection(endingPosition, DOWNSTREAM, endingSelection().isDirectional()));
     }
 
@@ -176,9 +176,9 @@
         applyStyle(typingStyle.get(), firstPositionInOrBeforeNode(nodeToInsert.get()), lastPositionInOrAfterNode(nodeToInsert.get()));
         // Even though this applyStyle operates on a Range, it still sets an endingSelection().
         // It tries to set a VisibleSelection around the content it operated on. So, that VisibleSelection
-        // will either (a) select the line break we inserted, or it will (b) be a caret just 
+        // will either (a) select the line break we inserted, or it will (b) be a caret just
         // before the line break (if the line break is at the end of a block it isn't selectable).
-        // So, this next call sets the endingSelection() to a caret just after the line break 
+        // So, this next call sets the endingSelection() to a caret just after the line break
         // that we inserted, or just before it if it's at the end of a block.
         setEndingSelection(endingSelection().visibleEnd());
     }
diff --git a/Source/core/editing/InsertLineBreakCommand.h b/Source/core/editing/InsertLineBreakCommand.h
index 417c1c1..f1f5d6b 100644
--- a/Source/core/editing/InsertLineBreakCommand.h
+++ b/Source/core/editing/InsertLineBreakCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef InsertLineBreakCommand_h
diff --git a/Source/core/editing/InsertListCommand.cpp b/Source/core/editing/InsertListCommand.cpp
index 477f088..ac1d950 100644
--- a/Source/core/editing/InsertListCommand.cpp
+++ b/Source/core/editing/InsertListCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -98,7 +98,7 @@
     return true;
 }
 
-InsertListCommand::InsertListCommand(Document* document, Type type) 
+InsertListCommand::InsertListCommand(Document* document, Type type)
     : CompositeEditCommand(document), m_type(type)
 {
 }
@@ -110,16 +110,16 @@
 
     if (!endingSelection().rootEditableElement())
         return;
-    
+
     VisiblePosition visibleEnd = endingSelection().visibleEnd();
     VisiblePosition visibleStart = endingSelection().visibleStart();
-    // When a selection ends at the start of a paragraph, we rarely paint 
-    // the selection gap before that paragraph, because there often is no gap.  
-    // In a case like this, it's not obvious to the user that the selection 
-    // ends "inside" that paragraph, so it would be confusing if InsertUn{Ordered}List 
+    // When a selection ends at the start of a paragraph, we rarely paint
+    // the selection gap before that paragraph, because there often is no gap.
+    // In a case like this, it's not obvious to the user that the selection
+    // ends "inside" that paragraph, so it would be confusing if InsertUn{Ordered}List
     // operated on that paragraph.
-    // FIXME: We paint the gap before some paragraphs that are indented with left 
-    // margin/padding, but not others.  We should make the gap painting more consistent and 
+    // FIXME: We paint the gap before some paragraphs that are indented with left
+    // margin/padding, but not others.  We should make the gap painting more consistent and
     // then use a left margin/padding rule here.
     if (visibleEnd != visibleStart && isStartOfParagraph(visibleEnd, CanSkipOverEditingBoundary))
         setEndingSelection(VisibleSelection(visibleStart, visibleEnd.previous(CannotCrossEditingBoundary), endingSelection().isDirectional()));
@@ -138,10 +138,10 @@
             RefPtr<Range> currentSelection = endingSelection().firstRange();
             VisiblePosition startOfCurrentParagraph = startOfSelection;
             while (!inSameParagraph(startOfCurrentParagraph, startOfLastParagraph, CanCrossEditingBoundary)) {
-                // doApply() may operate on and remove the last paragraph of the selection from the document 
-                // if it's in the same list item as startOfCurrentParagraph.  Return early to avoid an 
+                // doApply() may operate on and remove the last paragraph of the selection from the document
+                // if it's in the same list item as startOfCurrentParagraph.  Return early to avoid an
                 // infinite loop and because there is no more work to be done.
-                // FIXME(<rdar://problem/5983974>): The endingSelection() may be incorrect here.  Compute 
+                // FIXME(<rdar://problem/5983974>): The endingSelection() may be incorrect here.  Compute
                 // the new location of endOfSelection and use it as the end of the new selection.
                 if (!startOfLastParagraph.deepEquivalent().anchorNode()->inDocument())
                     return;
@@ -166,8 +166,8 @@
                 }
 
                 // Fetch the start of the selection after moving the first paragraph,
-                // because moving the paragraph will invalidate the original start.  
-                // We'll use the new start to restore the original selection after 
+                // because moving the paragraph will invalidate the original start.
+                // We'll use the new start to restore the original selection after
                 // we modified all selected paragraphs.
                 if (startOfCurrentParagraph == startOfSelection)
                     startOfSelection = endingSelection().visibleStart();
@@ -219,7 +219,7 @@
 
             Node* firstChildInList = enclosingListChild(VisiblePosition(firstPositionInNode(listNode.get())).deepEquivalent().deprecatedNode(), listNode.get());
             Node* outerBlock = firstChildInList->isBlockFlowElement() ? firstChildInList : listNode.get();
-            
+
             moveParagraphWithClones(firstPositionInNode(listNode.get()), lastPositionInNode(listNode.get()), newList.get(), outerBlock);
 
             // Manually remove listNode because moveParagraphWithClones sometimes leaves it behind in the document.
@@ -241,7 +241,7 @@
 
             return;
         }
-        
+
         unlistifyParagraph(endingSelection().visibleStart(), listNode.get(), listChildNode);
     }
 
@@ -281,12 +281,12 @@
     }
 
     if (nextListChild && previousListChild) {
-        // We want to pull listChildNode out of listNode, and place it before nextListChild 
-        // and after previousListChild, so we split listNode and insert it between the two lists.  
+        // We want to pull listChildNode out of listNode, and place it before nextListChild
+        // and after previousListChild, so we split listNode and insert it between the two lists.
         // But to split listNode, we must first split ancestors of listChildNode between it and listNode,
         // if any exist.
         // FIXME: We appear to split at nextListChild as opposed to listChildNode so that when we remove
-        // listChildNode below in moveParagraphs, previousListChild will be removed along with it if it is 
+        // listChildNode below in moveParagraphs, previousListChild will be removed along with it if it is
         // unrendered. But we ought to remove nextListChild too, if it is unrendered.
         splitElement(listNode, splitTreeToNode(nextListChild, listNode));
         insertNodeBefore(nodeToInsert, listNode);
@@ -328,7 +328,7 @@
 {
     VisiblePosition start = startOfParagraph(originalStart, CanSkipOverEditingBoundary);
     VisiblePosition end = endOfParagraph(start, CanSkipOverEditingBoundary);
-    
+
     if (start.isNull() || end.isNull())
         return 0;
 
@@ -351,8 +351,8 @@
         appendNode(listItemElement, listElement);
 
         if (start == end && isBlock(start.deepEquivalent().deprecatedNode())) {
-            // Inserting the list into an empty paragraph that isn't held open 
-            // by a br or a '\n', will invalidate start and end.  Insert 
+            // Inserting the list into an empty paragraph that isn't held open
+            // by a br or a '\n', will invalidate start and end.  Insert
             // a placeholder and then recompute start and end.
             RefPtr<Node> placeholder = insertBlockPlaceholder(start.deepEquivalent());
             start = positionBeforeNode(placeholder.get());
@@ -360,9 +360,9 @@
         }
 
         // Insert the list at a position visually equivalent to start of the
-        // paragraph that is being moved into the list. 
-        // Try to avoid inserting it somewhere where it will be surrounded by 
-        // inline ancestors of start, since it is easier for editing to produce 
+        // paragraph that is being moved into the list.
+        // Try to avoid inserting it somewhere where it will be surrounded by
+        // inline ancestors of start, since it is easier for editing to produce
         // clean markup when inline elements are pushed down as far as possible.
         Position insertionPos(start.deepEquivalent().upstream());
         // Also avoid the containing list item.
diff --git a/Source/core/editing/InsertListCommand.h b/Source/core/editing/InsertListCommand.h
index e900a54..13526e1 100644
--- a/Source/core/editing/InsertListCommand.h
+++ b/Source/core/editing/InsertListCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef InsertListCommand_h
@@ -42,7 +42,7 @@
     }
 
     static PassRefPtr<HTMLElement> insertList(Document*, Type);
-    
+
     virtual bool preservesTypingStyle() const { return true; }
 
 private:
diff --git a/Source/core/editing/InsertNodeBeforeCommand.cpp b/Source/core/editing/InsertNodeBeforeCommand.cpp
index 87660f6..d48a13b 100644
--- a/Source/core/editing/InsertNodeBeforeCommand.cpp
+++ b/Source/core/editing/InsertNodeBeforeCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/editing/InsertNodeBeforeCommand.h b/Source/core/editing/InsertNodeBeforeCommand.h
index 0a5255e..8e4b440 100644
--- a/Source/core/editing/InsertNodeBeforeCommand.h
+++ b/Source/core/editing/InsertNodeBeforeCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef InsertNodeBeforeCommand_h
@@ -43,11 +43,11 @@
 
     virtual void doApply() OVERRIDE;
     virtual void doUnapply() OVERRIDE;
-    
+
 #ifndef NDEBUG
     virtual void getNodesInCommand(HashSet<Node*>&) OVERRIDE;
 #endif
-    
+
     RefPtr<Node> m_insertChild;
     RefPtr<Node> m_refChild;
     ShouldAssumeContentIsAlwaysEditable m_shouldAssumeContentIsAlwaysEditable;
diff --git a/Source/core/editing/InsertParagraphSeparatorCommand.cpp b/Source/core/editing/InsertParagraphSeparatorCommand.cpp
index 3eca035..84f830e 100644
--- a/Source/core/editing/InsertParagraphSeparatorCommand.cpp
+++ b/Source/core/editing/InsertParagraphSeparatorCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -58,7 +58,7 @@
     return curBlock;
 }
 
-InsertParagraphSeparatorCommand::InsertParagraphSeparatorCommand(Document *document, bool mustUseDefaultParagraphElement, bool pasteBlockqutoeIntoUnquotedArea) 
+InsertParagraphSeparatorCommand::InsertParagraphSeparatorCommand(Document *document, bool mustUseDefaultParagraphElement, bool pasteBlockqutoeIntoUnquotedArea)
     : CompositeEditCommand(document)
     , m_mustUseDefaultParagraphElement(mustUseDefaultParagraphElement)
     , m_pasteBlockqutoeIntoUnquotedArea(pasteBlockqutoeIntoUnquotedArea)
@@ -107,7 +107,7 @@
 {
     if (m_mustUseDefaultParagraphElement)
         return true;
-    
+
     // Assumes that if there was a range selection, it was already deleted.
     if (!isEndOfBlock(endingSelection().visibleStart()))
         return false;
@@ -122,7 +122,7 @@
 void InsertParagraphSeparatorCommand::getAncestorsInsideBlock(const Node* insertionNode, Element* outerBlock, Vector<RefPtr<Element> >& ancestors)
 {
     ancestors.clear();
-    
+
     // Build up list of ancestors elements between the insertion node and the outer block.
     if (insertionNode != outerBlock) {
         for (Element* n = insertionNode->parentElement(); n && n != outerBlock; n = n->parentElement())
@@ -141,7 +141,7 @@
         appendNode(child, parent);
         parent = child.release();
     }
-    
+
     return parent.release();
 }
 
@@ -149,11 +149,11 @@
 {
     if (!endingSelection().isNonOrphanedCaretOrRange())
         return;
-    
+
     Position insertionPosition = endingSelection().start();
-        
+
     EAffinity affinity = endingSelection().affinity();
-        
+
     // Delete the current selection.
     if (endingSelection().isRange()) {
         calculateStyleBeforeInsertion(insertionPosition);
@@ -161,7 +161,7 @@
         insertionPosition = endingSelection().start();
         affinity = endingSelection().affinity();
     }
-    
+
     // FIXME: The parentAnchoredEquivalent conversion needs to be moved into enclosingBlock.
     RefPtr<Element> startBlock = enclosingBlock(insertionPosition.parentAnchoredEquivalent().containerNode());
     Position canonicalPos = VisiblePosition(insertionPosition).deepEquivalent();
@@ -175,7 +175,7 @@
         applyCommandToComposite(InsertLineBreakCommand::create(document()));
         return;
     }
-    
+
     // Use the leftmost candidate.
     insertionPosition = insertionPosition.upstream();
     if (!insertionPosition.isCandidate())
@@ -203,14 +203,14 @@
     if (startBlock->isRootEditableElement()) {
         blockToInsert = createDefaultParagraphElement(document());
         nestNewBlock = true;
-    } else if (shouldUseDefaultParagraphElement(startBlock.get())) 
+    } else if (shouldUseDefaultParagraphElement(startBlock.get()))
         blockToInsert = createDefaultParagraphElement(document());
     else
         blockToInsert = startBlock->cloneElementWithoutChildren();
 
     //---------------------------------------------------------------------
     // Handle case when position is in the last visible position in its block,
-    // including when the block is empty. 
+    // including when the block is empty.
     if (isLastInBlock) {
         if (nestNewBlock) {
             if (isFirstInBlock && !lineBreakExistsAtVisiblePosition(visiblePos)) {
@@ -238,24 +238,24 @@
         }
 
         // Recreate the same structure in the new paragraph.
-        
+
         Vector<RefPtr<Element> > ancestors;
-        getAncestorsInsideBlock(positionOutsideTabSpan(insertionPosition).deprecatedNode(), startBlock.get(), ancestors);      
+        getAncestorsInsideBlock(positionOutsideTabSpan(insertionPosition).deprecatedNode(), startBlock.get(), ancestors);
         RefPtr<Element> parent = cloneHierarchyUnderNewBlock(ancestors, blockToInsert);
-        
+
         appendBlockPlaceholder(parent);
 
         setEndingSelection(VisibleSelection(firstPositionInNode(parent.get()), DOWNSTREAM, endingSelection().isDirectional()));
         return;
     }
-    
+
 
     //---------------------------------------------------------------------
     // Handle case when position is in the first visible position in its block, and
     // similar case where previous position is in another, presumeably nested, block.
     if (isFirstInBlock || !inSameBlock(visiblePos, visiblePos.previous())) {
         Node *refNode;
-        
+
         insertionPosition = positionOutsideTabSpan(insertionPosition);
 
         if (isFirstInBlock && !nestNewBlock)
@@ -273,16 +273,16 @@
 
         // find ending selection position easily before inserting the paragraph
         insertionPosition = insertionPosition.downstream();
-        
+
         insertNodeBefore(blockToInsert, refNode);
 
         // Recreate the same structure in the new paragraph.
 
         Vector<RefPtr<Element> > ancestors;
         getAncestorsInsideBlock(positionAvoidingSpecialElementBoundary(positionOutsideTabSpan(insertionPosition)).deprecatedNode(), startBlock.get(), ancestors);
-        
+
         appendBlockPlaceholder(cloneHierarchyUnderNewBlock(ancestors, blockToInsert));
-        
+
         // In this case, we need to set the new ending selection.
         setEndingSelection(VisibleSelection(insertionPosition, DOWNSTREAM, endingSelection().isDirectional()));
         return;
@@ -292,8 +292,8 @@
     // Handle the (more complicated) general case,
 
     // All of the content in the current block after visiblePos is
-    // about to be wrapped in a new paragraph element.  Add a br before 
-    // it if visiblePos is at the start of a paragraph so that the 
+    // about to be wrapped in a new paragraph element.  Add a br before
+    // it if visiblePos is at the start of a paragraph so that the
     // content will move down a line.
     if (isStartOfParagraph(visiblePos)) {
         RefPtr<Element> br = createBreakElement(document());
@@ -306,8 +306,8 @@
             return;
         }
     }
-    
-    // Move downstream. Typing style code will take care of carrying along the 
+
+    // Move downstream. Typing style code will take care of carrying along the
     // style of the upstream position.
     insertionPosition = insertionPosition.downstream();
 
@@ -335,7 +335,7 @@
         ASSERT(!textNode->renderer() || textNode->renderer()->style()->collapseWhiteSpace());
         replaceTextInNodePreservingMarkers(textNode, leadingWhitespace.deprecatedEditingOffset(), 1, nonBreakingSpaceString());
     }
-    
+
     // Split at pos if in the middle of a text node.
     Position positionAfterSplit;
     if (insertionPosition.anchorType() == Position::PositionIsOffsetInAnchor && insertionPosition.containerNode()->isTextNode()) {
@@ -362,7 +362,7 @@
     document()->updateLayoutIgnorePendingStylesheets();
 
     // If the paragraph separator was inserted at the end of a paragraph, an empty line must be
-    // created.  All of the nodes, starting at visiblePos, are about to be added to the new paragraph 
+    // created.  All of the nodes, starting at visiblePos, are about to be added to the new paragraph
     // element.  If the first node to be inserted won't be one that will hold an empty line open, add a br.
     if (isEndOfParagraph(visiblePos) && !lineBreakExistsAtVisiblePosition(visiblePos))
         appendNode(createBreakElement(document()).get(), blockToInsert.get());
@@ -387,7 +387,7 @@
         }
 
         moveRemainingSiblingsToNewParent(n, blockToInsert.get(), blockToInsert);
-    }            
+    }
 
     // Handle whitespace that occurs after the split
     if (positionAfterSplit.isNotNull()) {
diff --git a/Source/core/editing/InsertParagraphSeparatorCommand.h b/Source/core/editing/InsertParagraphSeparatorCommand.h
index dcf970c..006c76c 100644
--- a/Source/core/editing/InsertParagraphSeparatorCommand.h
+++ b/Source/core/editing/InsertParagraphSeparatorCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef InsertParagraphSeparatorCommand_h
diff --git a/Source/core/editing/InsertTextCommand.cpp b/Source/core/editing/InsertTextCommand.cpp
index 345ad9c..e9fb8d3 100644
--- a/Source/core/editing/InsertTextCommand.cpp
+++ b/Source/core/editing/InsertTextCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -36,7 +36,7 @@
 
 namespace WebCore {
 
-InsertTextCommand::InsertTextCommand(Document* document, const String& text, bool selectInsertedText, RebalanceType rebalanceType) 
+InsertTextCommand::InsertTextCommand(Document* document, const String& text, bool selectInsertedText, RebalanceType rebalanceType)
     : CompositeEditCommand(document)
     , m_text(text)
     , m_selectInsertedText(selectInsertedText)
@@ -141,7 +141,7 @@
             return;
         deleteSelection(false, true, true, false, false);
         // deleteSelection eventually makes a new endingSelection out of a Position. If that Position doesn't have
-        // a renderer (e.g. it is on a <frameset> in the DOM), the VisibleSelection cannot be canonicalized to 
+        // a renderer (e.g. it is on a <frameset> in the DOM), the VisibleSelection cannot be canonicalized to
         // anything other than NoSelection. The rest of this function requires a real endingSelection, so bail out.
         if (endingSelection().isNone())
             return;
@@ -151,9 +151,9 @@
     }
 
     Position startPosition(endingSelection().start());
-    
+
     Position placeholder;
-    // We want to remove preserved newlines and brs that will collapse (and thus become unnecessary) when content 
+    // We want to remove preserved newlines and brs that will collapse (and thus become unnecessary) when content
     // is inserted just before them.
     // FIXME: We shouldn't really have to do this, but removing placeholders is a workaround for 9661.
     // If the caret is just before a placeholder, downstream will normalize the caret to it.
@@ -167,10 +167,10 @@
         // we get a chance to insert into it.  We check for a placeholder now, though, because doing so requires
         // the creation of a VisiblePosition, and if we did that post-insertion it would force a layout.
     }
-    
+
     // Insert the character at the leftmost candidate.
     startPosition = startPosition.upstream();
-    
+
     // It is possible for the node that contains startPosition to contain only unrendered whitespace,
     // and so deleteInsignificantText could remove it.  Save the position before the node in case that happens.
     Position positionBeforeStartNode(positionInParentBeforeNode(startPosition.containerNode()));
@@ -179,11 +179,11 @@
         startPosition = positionBeforeStartNode;
     if (!startPosition.isCandidate())
         startPosition = startPosition.downstream();
-    
+
     startPosition = positionAvoidingSpecialElementBoundary(startPosition);
-    
+
     Position endPosition;
-    
+
     if (m_text == "\t") {
         endPosition = insertTab(startPosition);
         startPosition = endPosition.previous();
@@ -244,10 +244,10 @@
         insertTextIntoNode(textNode, offset, "\t");
         return Position(textNode.release(), offset + 1);
     }
-    
+
     // create new tab span
     RefPtr<Element> spanNode = createTabSpanElement(document());
-    
+
     // place it
     if (!node->isTextNode()) {
         insertNodeAt(spanNode.get(), insertPos);
diff --git a/Source/core/editing/InsertTextCommand.h b/Source/core/editing/InsertTextCommand.h
index 1bf5ebd..3663bc4 100644
--- a/Source/core/editing/InsertTextCommand.h
+++ b/Source/core/editing/InsertTextCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef InsertTextCommand_h
@@ -70,7 +70,7 @@
 
     Position positionInsideTextNode(const Position&);
     Position insertTab(const Position&);
-    
+
     bool performTrivialReplace(const String&, bool selectInsertedText);
     bool performOverwrite(const String&, bool selectInsertedText);
     void setEndingSelectionWithoutValidation(const Position& startPosition, const Position& endPosition);
diff --git a/Source/core/editing/MarkupAccumulator.h b/Source/core/editing/MarkupAccumulator.h
index 498548a..a126567 100644
--- a/Source/core/editing/MarkupAccumulator.h
+++ b/Source/core/editing/MarkupAccumulator.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MarkupAccumulator_h
diff --git a/Source/core/editing/MergeIdenticalElementsCommand.cpp b/Source/core/editing/MergeIdenticalElementsCommand.cpp
index 57bb161..a23bfc0 100644
--- a/Source/core/editing/MergeIdenticalElementsCommand.cpp
+++ b/Source/core/editing/MergeIdenticalElementsCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/editing/MergeIdenticalElementsCommand.h b/Source/core/editing/MergeIdenticalElementsCommand.h
index f9fab99..0b1003d 100644
--- a/Source/core/editing/MergeIdenticalElementsCommand.h
+++ b/Source/core/editing/MergeIdenticalElementsCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MergeIdenticalElementsCommand_h
@@ -42,11 +42,11 @@
 
     virtual void doApply() OVERRIDE;
     virtual void doUnapply() OVERRIDE;
-    
+
 #ifndef NDEBUG
     virtual void getNodesInCommand(HashSet<Node*>&) OVERRIDE;
 #endif
-    
+
     RefPtr<Element> m_element1;
     RefPtr<Element> m_element2;
     RefPtr<Node> m_atChild;
diff --git a/Source/core/editing/ModifySelectionListLevel.cpp b/Source/core/editing/ModifySelectionListLevel.cpp
index 63362cc..f0e5f64 100644
--- a/Source/core/editing/ModifySelectionListLevel.cpp
+++ b/Source/core/editing/ModifySelectionListLevel.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -35,7 +35,7 @@
 
 namespace WebCore {
 
-ModifySelectionListLevelCommand::ModifySelectionListLevelCommand(Document* document) 
+ModifySelectionListLevelCommand::ModifySelectionListLevelCommand(Document* document)
     : CompositeEditCommand(document)
 {
 }
@@ -60,7 +60,7 @@
     Node* endListChild = selection.isRange() ? enclosingListChild(selection.end().anchorNode()) : startListChild;
     if (!endListChild)
         return false;
-    
+
     // For a range selection we want the following behavior:
     //      - the start and end must be within the same overall list
     //      - the start must be at or above the level of the rest of the range
@@ -75,7 +75,7 @@
         if (!endListChild)
             return false;
     }
-    
+
     // if the selection ends on a list item with a sublist, include the entire sublist
     if (endListChild->renderer()->isListItem()) {
         RenderObject* r = endListChild->renderer()->nextSibling();
@@ -145,12 +145,12 @@
 {
     if (!getStartEndListChildren(selection, start, end))
         return false;
-        
+
     // start must not be the first child (because you need a prior one
     // to increase relative to)
     if (!start->renderer()->previousSibling())
         return false;
-    
+
     return true;
 }
 
@@ -233,7 +233,7 @@
     return increaseSelectionListLevel(document, UnorderedList);
 }
 
-DecreaseSelectionListLevelCommand::DecreaseSelectionListLevelCommand(Document* document) 
+DecreaseSelectionListLevelCommand::DecreaseSelectionListLevelCommand(Document* document)
     : ModifySelectionListLevelCommand(document)
 {
 }
@@ -243,11 +243,11 @@
 {
     if (!getStartEndListChildren(selection, start, end))
         return false;
-    
+
     // there must be a destination list to move the items to
     if (!isListElement(start->parentNode()->parentNode()))
         return false;
-        
+
     return true;
 }
 
@@ -270,7 +270,7 @@
             removeNode(listNode);
     } else if (!nextItem) {
         // at end of list, move the child(ren) to after the sublist
-        insertSiblingNodeRangeAfter(startListChild, endListChild, listNode);    
+        insertSiblingNodeRangeAfter(startListChild, endListChild, listNode);
     } else if (listNode) {
         // in the middle of list, split the list and move the children to the divide
         splitElement(listNode, startListChild);
diff --git a/Source/core/editing/ModifySelectionListLevel.h b/Source/core/editing/ModifySelectionListLevel.h
index ad03f2a..9c2f5e7 100644
--- a/Source/core/editing/ModifySelectionListLevel.h
+++ b/Source/core/editing/ModifySelectionListLevel.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ModifySelectionListLevel_h
@@ -36,13 +36,13 @@
 class ModifySelectionListLevelCommand : public CompositeEditCommand {
 protected:
     explicit ModifySelectionListLevelCommand(Document*);
-    
+
     void appendSiblingNodeRange(Node* startNode, Node* endNode, Element* newParent);
     void insertSiblingNodeRangeBefore(Node* startNode, Node* endNode, Node* refNode);
     void insertSiblingNodeRangeAfter(Node* startNode, Node* endNode, Node* refNode);
 
 private:
-    virtual bool preservesTypingStyle() const;    
+    virtual bool preservesTypingStyle() const;
 };
 
 // IncreaseSelectionListLevelCommand moves the selected list items one level deeper.
@@ -61,7 +61,7 @@
     {
         return adoptRef(new IncreaseSelectionListLevelCommand(document, type));
     }
-    
+
     IncreaseSelectionListLevelCommand(Document*, Type);
 
     virtual void doApply();
diff --git a/Source/core/editing/MoveSelectionCommand.cpp b/Source/core/editing/MoveSelectionCommand.cpp
index e9d628f..4fad6f0 100644
--- a/Source/core/editing/MoveSelectionCommand.cpp
+++ b/Source/core/editing/MoveSelectionCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -31,7 +31,7 @@
 
 namespace WebCore {
 
-MoveSelectionCommand::MoveSelectionCommand(PassRefPtr<DocumentFragment> fragment, const Position& position, bool smartInsert, bool smartDelete) 
+MoveSelectionCommand::MoveSelectionCommand(PassRefPtr<DocumentFragment> fragment, const Position& position, bool smartInsert, bool smartDelete)
     : CompositeEditCommand(position.anchorNode()->document()), m_fragment(fragment), m_position(position), m_smartInsert(smartInsert), m_smartDelete(smartDelete)
 {
     ASSERT(m_fragment);
@@ -60,7 +60,7 @@
 
     // If the node for the destination has been removed as a result of the deletion,
     // set the destination to the ending point after the deletion.
-    // Fixes: <rdar://problem/3910425> REGRESSION (Mail): Crash in ReplaceSelectionCommand; 
+    // Fixes: <rdar://problem/3910425> REGRESSION (Mail): Crash in ReplaceSelectionCommand;
     //        selection is empty, leading to null deref
     if (!pos.anchorNode()->inDocument())
         pos = endingSelection().start();
diff --git a/Source/core/editing/MoveSelectionCommand.h b/Source/core/editing/MoveSelectionCommand.h
index 7c93ff5..f952d5f 100644
--- a/Source/core/editing/MoveSelectionCommand.h
+++ b/Source/core/editing/MoveSelectionCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MoveSelectionCommand_h
@@ -44,7 +44,7 @@
 
     virtual void doApply();
     virtual EditAction editingAction() const;
-    
+
     RefPtr<DocumentFragment> m_fragment;
     Position m_position;
     bool m_smartInsert;
diff --git a/Source/core/editing/RemoveCSSPropertyCommand.cpp b/Source/core/editing/RemoveCSSPropertyCommand.cpp
index d5a07b3..caaa174 100644
--- a/Source/core/editing/RemoveCSSPropertyCommand.cpp
+++ b/Source/core/editing/RemoveCSSPropertyCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/editing/RemoveCSSPropertyCommand.h b/Source/core/editing/RemoveCSSPropertyCommand.h
index dea0f43..7bdf5ad 100644
--- a/Source/core/editing/RemoveCSSPropertyCommand.h
+++ b/Source/core/editing/RemoveCSSPropertyCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RemoveCSSPropertyCommand_h
@@ -46,11 +46,11 @@
 
     virtual void doApply() OVERRIDE;
     virtual void doUnapply() OVERRIDE;
-    
+
 #ifndef NDEBUG
     virtual void getNodesInCommand(HashSet<Node*>&) OVERRIDE;
 #endif
-    
+
     RefPtr<Element> m_element;
     CSSPropertyID m_property;
     String m_oldValue;
diff --git a/Source/core/editing/RemoveFormatCommand.h b/Source/core/editing/RemoveFormatCommand.h
index 89947b5..d8032ea 100644
--- a/Source/core/editing/RemoveFormatCommand.h
+++ b/Source/core/editing/RemoveFormatCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RemoveFormatCommand_h
diff --git a/Source/core/editing/RemoveNodeCommand.cpp b/Source/core/editing/RemoveNodeCommand.cpp
index ca456a7..01ec7a2 100644
--- a/Source/core/editing/RemoveNodeCommand.cpp
+++ b/Source/core/editing/RemoveNodeCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/editing/RemoveNodeCommand.h b/Source/core/editing/RemoveNodeCommand.h
index a4317c5..d34fe2e 100644
--- a/Source/core/editing/RemoveNodeCommand.h
+++ b/Source/core/editing/RemoveNodeCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RemoveNodeCommand_h
diff --git a/Source/core/editing/RemoveNodePreservingChildrenCommand.cpp b/Source/core/editing/RemoveNodePreservingChildrenCommand.cpp
index 23e8737..977f3cc 100644
--- a/Source/core/editing/RemoveNodePreservingChildrenCommand.cpp
+++ b/Source/core/editing/RemoveNodePreservingChildrenCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/editing/RemoveNodePreservingChildrenCommand.h b/Source/core/editing/RemoveNodePreservingChildrenCommand.h
index 5c1f3a9..6c9fdc8 100644
--- a/Source/core/editing/RemoveNodePreservingChildrenCommand.h
+++ b/Source/core/editing/RemoveNodePreservingChildrenCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RemoveNodePreservingChildrenCommand_h
diff --git a/Source/core/editing/ReplaceNodeWithSpanCommand.cpp b/Source/core/editing/ReplaceNodeWithSpanCommand.cpp
index df7d37a..8141f80 100644
--- a/Source/core/editing/ReplaceNodeWithSpanCommand.cpp
+++ b/Source/core/editing/ReplaceNodeWithSpanCommand.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/editing/ReplaceNodeWithSpanCommand.h b/Source/core/editing/ReplaceNodeWithSpanCommand.h
index 247b8de..4282b2c 100644
--- a/Source/core/editing/ReplaceNodeWithSpanCommand.h
+++ b/Source/core/editing/ReplaceNodeWithSpanCommand.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -52,7 +52,7 @@
 
     virtual void doApply() OVERRIDE;
     virtual void doUnapply() OVERRIDE;
-    
+
 #ifndef NDEBUG
     virtual void getNodesInCommand(HashSet<Node*>&) OVERRIDE;
 #endif
diff --git a/Source/core/editing/ReplaceSelectionCommand.cpp b/Source/core/editing/ReplaceSelectionCommand.cpp
index c391e24..5639956 100644
--- a/Source/core/editing/ReplaceSelectionCommand.cpp
+++ b/Source/core/editing/ReplaceSelectionCommand.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -75,10 +75,10 @@
     Node* lastChild() const;
 
     bool isEmpty() const;
-    
+
     bool hasInterchangeNewlineAtStart() const { return m_hasInterchangeNewlineAtStart; }
     bool hasInterchangeNewlineAtEnd() const { return m_hasInterchangeNewlineAtEnd; }
-    
+
     void removeNode(PassRefPtr<Node>);
     void removeNodePreservingChildren(PassRefPtr<Node>);
 
@@ -87,7 +87,7 @@
     void removeUnrenderedNodes(Node*);
     void restoreAndRemoveTestRenderingNodesToFragment(Element*);
     void removeInterchangeNodes(Node*);
-    
+
     void insertNodeBefore(PassRefPtr<Node> node, Node* refNode);
 
     RefPtr<Document> m_document;
@@ -105,7 +105,7 @@
 static bool isInterchangeConvertedSpaceSpan(const Node *node)
 {
     DEFINE_STATIC_LOCAL(String, convertedSpaceSpanClassString, (AppleConvertedSpace));
-    return node->isHTMLElement() && 
+    return node->isHTMLElement() &&
            static_cast<const HTMLElement *>(node)->getAttribute(classAttr) == convertedSpaceSpanClassString;
 }
 
@@ -126,8 +126,8 @@
 
         if (pos.containerNode()->nonShadowBoundaryParentNode())
             nextPosition = positionInParentAfterNode(pos.containerNode());
-        
-        if (nextPosition == pos 
+
+        if (nextPosition == pos
             || enclosingBlock(nextPosition.containerNode()) != enclosingBlockNode
             || VisiblePosition(pos) != VisiblePosition(nextPosition))
             break;
@@ -138,7 +138,7 @@
 ReplacementFragment::ReplacementFragment(Document* document, DocumentFragment* fragment, const VisibleSelection& selection)
     : m_document(document),
       m_fragment(fragment),
-      m_hasInterchangeNewlineAtStart(false), 
+      m_hasInterchangeNewlineAtStart(false),
       m_hasInterchangeNewlineAtEnd(false)
 {
     if (!m_document)
@@ -147,14 +147,14 @@
         return;
     if (!m_fragment->firstChild())
         return;
-    
+
     RefPtr<Element> editableRoot = selection.rootEditableElement();
     ASSERT(editableRoot);
     if (!editableRoot)
         return;
-    
+
     Node* shadowAncestorNode = editableRoot->deprecatedShadowAncestorNode();
-    
+
     if (!editableRoot->getAttributeEventListener(eventNames().webkitBeforeTextInsertedEvent) &&
         // FIXME: Remove these checks once textareas and textfields actually register an event handler.
         !(shadowAncestorNode && shadowAncestorNode->renderer() && shadowAncestorNode->renderer()->isTextControl()) &&
@@ -168,7 +168,7 @@
         removeInterchangeNodes(m_fragment.get());
         return;
     }
-    
+
     RefPtr<Range> range = VisibleSelection::selectionFromContentsOfNode(holder.get()).toNormalizedRange();
     String text = plainText(range.get(), static_cast<TextIteratorBehavior>(TextIteratorEmitsOriginalText | TextIteratorIgnoresStyleVisibility));
 
@@ -198,14 +198,14 @@
     return (!m_fragment || !m_fragment->firstChild()) && !m_hasInterchangeNewlineAtStart && !m_hasInterchangeNewlineAtEnd;
 }
 
-Node *ReplacementFragment::firstChild() const 
-{ 
-    return m_fragment ? m_fragment->firstChild() : 0; 
+Node *ReplacementFragment::firstChild() const
+{
+    return m_fragment ? m_fragment->firstChild() : 0;
 }
 
-Node *ReplacementFragment::lastChild() const 
-{ 
-    return m_fragment ? m_fragment->lastChild() : 0; 
+Node *ReplacementFragment::lastChild() const
+{
+    return m_fragment ? m_fragment->lastChild() : 0;
 }
 
 void ReplacementFragment::removeNodePreservingChildren(PassRefPtr<Node> node)
@@ -224,11 +224,11 @@
 {
     if (!node)
         return;
-    
+
     ContainerNode* parent = node->nonShadowBoundaryParentNode();
     if (!parent)
         return;
-    
+
     parent->removeChild(node.get(), ASSERT_NO_EXCEPTION);
 }
 
@@ -236,11 +236,11 @@
 {
     if (!node || !refNode)
         return;
-        
+
     ContainerNode* parent = refNode->nonShadowBoundaryParentNode();
     if (!parent)
         return;
-        
+
     parent->insertBefore(node, refNode, ASSERT_NO_EXCEPTION);
 }
 
@@ -259,7 +259,7 @@
 {
     if (!holder)
         return;
-    
+
     while (RefPtr<Node> node = holder->firstChild()) {
         holder->removeChild(node.get(), ASSERT_NO_EXCEPTION);
         m_fragment->appendChild(node.get(), ASSERT_NO_EXCEPTION);
@@ -310,7 +310,7 @@
         }
         node = node->lastChild();
     }
-    
+
     node = container->firstChild();
     while (node) {
         RefPtr<Node> next = NodeTraversal::next(node);
@@ -326,10 +326,10 @@
 {
     if (!node)
         return;
-    
+
     if (!m_firstNodeInserted)
         m_firstNodeInserted = node;
-    
+
     m_lastNodeInserted = node;
 }
 
@@ -386,16 +386,16 @@
 {
     if (m_movingParagraph)
         return false;
-    
+
     VisiblePosition startOfInsertedContent(positionAtStartOfInsertedContent());
     VisiblePosition prev = startOfInsertedContent.previous(CannotCrossEditingBoundary);
     if (prev.isNull())
         return false;
-    
+
     // When we have matching quote levels, its ok to merge more frequently.
     // For a successful merge, we still need to make sure that the inserted content starts with the beginning of a paragraph.
-    // And we should only merge here if the selection start was inside a mail blockquote.  This prevents against removing a 
-    // blockquote from newly pasted quoted content that was pasted into an unquoted position.  If that unquoted position happens 
+    // And we should only merge here if the selection start was inside a mail blockquote.  This prevents against removing a
+    // blockquote from newly pasted quoted content that was pasted into an unquoted position.  If that unquoted position happens
     // to be right after another blockquote, we don't want to merge and risk stripping a valid block (and newline) from the pasted content.
     if (isStartOfParagraph(startOfInsertedContent) && selectionStartWasInsideMailBlockquote && hasMatchingQuoteLevel(prev, positionAtEndOfInsertedContent()))
         return true;
@@ -429,7 +429,7 @@
 {
     if (!a)
         return false;
-        
+
     return a->hasTagName(h1Tag)
         || a->hasTagName(h2Tag)
         || a->hasTagName(h3Tag)
@@ -447,7 +447,7 @@
 {
     if (source.isNull() || destination.isNull())
         return false;
-        
+
     Node* sourceNode = source.deepEquivalent().deprecatedNode();
     Node* destinationNode = destination.deepEquivalent().deprecatedNode();
     Node* sourceBlock = enclosingBlock(sourceNode);
@@ -712,7 +712,7 @@
     }
 }
 
-// Remove style spans before insertion if they are unnecessary.  It's faster because we'll 
+// Remove style spans before insertion if they are unnecessary.  It's faster because we'll
 // avoid doing a layout.
 static bool handleStyleSpansBeforeInsertion(ReplacementFragment& fragment, const Position& insertionPos)
 {
@@ -741,11 +741,11 @@
     return true;
 }
 
-// At copy time, WebKit wraps copied content in a span that contains the source document's 
-// default styles.  If the copied Range inherits any other styles from its ancestors, we put 
+// At copy time, WebKit wraps copied content in a span that contains the source document's
+// default styles.  If the copied Range inherits any other styles from its ancestors, we put
 // those styles on a second span.
-// This function removes redundant styles from those spans, and removes the spans if all their 
-// styles are redundant. 
+// This function removes redundant styles from those spans, and removes the spans if all their
+// styles are redundant.
 // We should remove the Apple-style-span class when we're done, see <rdar://problem/5685600>.
 // We should remove styles from spans that are overridden by all of their children, either here
 // or at copy time.
@@ -761,8 +761,8 @@
             break;
         }
     }
-    
-    // There might not be any style spans if we're pasting from another application or if 
+
+    // There might not be any style spans if we're pasting from another application or if
     // we are here because of a document.execCommand("InsertHTML", ...) call.
     if (!wrappingStyleSpan)
         return;
@@ -779,8 +779,8 @@
     // This operation requires that only editing styles to be removed from sourceDocumentStyle.
     style->prepareToApplyAt(firstPositionInNode(context));
 
-    // Remove block properties in the span's style. This prevents properties that probably have no effect 
-    // currently from affecting blocks later if the style is cloned for a new block element during a future 
+    // Remove block properties in the span's style. This prevents properties that probably have no effect
+    // currently from affecting blocks later if the style is cloned for a new block element during a future
     // editing operation.
     // FIXME: They *can* have an effect currently if blocks beneath the style span aren't individually marked
     // with block styles by the editing engine used to style them.  WebKit doesn't do this, but others might.
@@ -800,22 +800,22 @@
 
     VisiblePosition startOfInsertedContent(positionAtStartOfInsertedContent());
     VisiblePosition endOfInsertedContent(positionAtEndOfInsertedContent());
-    
+
     // Bail to avoid infinite recursion.
     if (m_movingParagraph) {
         ASSERT_NOT_REACHED();
         return;
     }
-    
-    // Merging two paragraphs will destroy the moved one's block styles.  Always move the end of inserted forward 
-    // to preserve the block style of the paragraph already in the document, unless the paragraph to move would 
+
+    // Merging two paragraphs will destroy the moved one's block styles.  Always move the end of inserted forward
+    // to preserve the block style of the paragraph already in the document, unless the paragraph to move would
     // include the what was the start of the selection that was pasted into, so that we preserve that paragraph's
     // block styles.
     bool mergeForward = !(inSameParagraph(startOfInsertedContent, endOfInsertedContent) && !isStartOfParagraph(startOfInsertedContent));
-    
+
     VisiblePosition destination = mergeForward ? endOfInsertedContent.next() : endOfInsertedContent;
     VisiblePosition startOfParagraphToMove = mergeForward ? startOfParagraph(endOfInsertedContent) : endOfInsertedContent.next();
-   
+
     // Merging forward could result in deleting the destination anchor node.
     // To avoid this, we add a placeholder node before the start of the paragraph.
     if (endOfParagraph(startOfParagraphToMove) == destination) {
@@ -825,7 +825,7 @@
     }
 
     moveParagraph(startOfParagraphToMove, endOfParagraph(startOfParagraphToMove), destination);
-    
+
     // Merging forward will remove m_endOfInsertedContent from the document.
     if (mergeForward) {
         if (m_startOfInsertedContent.isOrphan())
@@ -893,12 +893,12 @@
     ReplacementFragment fragment(document(), m_documentFragment.get(), selection);
     if (performTrivialReplace(fragment))
         return;
-    
+
     // We can skip matching the style if the selection is plain text.
     if ((selection.start().deprecatedNode()->renderer() && selection.start().deprecatedNode()->renderer()->style()->userModify() == READ_WRITE_PLAINTEXT_ONLY)
         && (selection.end().deprecatedNode()->renderer() && selection.end().deprecatedNode()->renderer()->style()->userModify() == READ_WRITE_PLAINTEXT_ONLY))
         m_matchStyle = false;
-    
+
     if (m_matchStyle) {
         m_insertionStyle = EditingStyle::create(selection.start());
         m_insertionStyle->mergeTypingStyle(document());
@@ -906,12 +906,12 @@
 
     VisiblePosition visibleStart = selection.visibleStart();
     VisiblePosition visibleEnd = selection.visibleEnd();
-    
+
     bool selectionEndWasEndOfParagraph = isEndOfParagraph(visibleEnd);
     bool selectionStartWasStartOfParagraph = isStartOfParagraph(visibleStart);
-    
+
     Node* startBlock = enclosingBlock(visibleStart.deepEquivalent().deprecatedNode());
-    
+
     Position insertionPos = selection.start();
     bool startIsInsideMailBlockquote = enclosingNodeOfType(insertionPos, isMailBlockquote, CanCrossEditingBoundary);
     bool selectionIsPlainText = !selection.isContentRichlyEditable();
@@ -920,16 +920,16 @@
     if ((selectionStartWasStartOfParagraph && selectionEndWasEndOfParagraph && !startIsInsideMailBlockquote) ||
         startBlock == currentRoot || isListItem(startBlock) || selectionIsPlainText)
         m_preventNesting = false;
-    
+
     if (selection.isRange()) {
         // When the end of the selection being pasted into is at the end of a paragraph, and that selection
         // spans multiple blocks, not merging may leave an empty line.
-        // When the start of the selection being pasted into is at the start of a block, not merging 
+        // When the start of the selection being pasted into is at the start of a block, not merging
         // will leave hanging block(s).
-        // Merge blocks if the start of the selection was in a Mail blockquote, since we handle  
-        // that case specially to prevent nesting. 
+        // Merge blocks if the start of the selection was in a Mail blockquote, since we handle
+        // that case specially to prevent nesting.
         bool mergeBlocksAfterDelete = startIsInsideMailBlockquote || isEndOfParagraph(visibleEnd) || isStartOfBlock(visibleStart);
-        // FIXME: We should only expand to include fully selected special elements if we are copying a 
+        // FIXME: We should only expand to include fully selected special elements if we are copying a
         // selection and pasting it on top of itself.
         deleteSelection(false, mergeBlocksAfterDelete, true, false);
         visibleStart = endingSelection().visibleStart();
@@ -953,8 +953,8 @@
             }
         }
         // We split the current paragraph in two to avoid nesting the blocks from the fragment inside the current block.
-        // For example paste <div>foo</div><div>bar</div><div>baz</div> into <div>x^x</div>, where ^ is the caret.  
-        // As long as the  div styles are the same, visually you'd expect: <div>xbar</div><div>bar</div><div>bazx</div>, 
+        // For example paste <div>foo</div><div>bar</div><div>baz</div> into <div>x^x</div>, where ^ is the caret.
+        // As long as the  div styles are the same, visually you'd expect: <div>xbar</div><div>bar</div><div>bazx</div>,
         // not <div>xbar<div>bar</div><div>bazx</div></div>.
         // Don't do this if the selection started in a Mail blockquote.
         if (m_preventNesting && !startIsInsideMailBlockquote && !isEndOfParagraph(visibleStart) && !isStartOfParagraph(visibleStart)) {
@@ -963,37 +963,37 @@
         }
         insertionPos = endingSelection().start();
     }
-    
-    // We don't want any of the pasted content to end up nested in a Mail blockquote, so first break 
+
+    // We don't want any of the pasted content to end up nested in a Mail blockquote, so first break
     // out of any surrounding Mail blockquotes. Unless we're inserting in a table, in which case
     // breaking the blockquote will prevent the content from actually being inserted in the table.
-    if (startIsInsideMailBlockquote && m_preventNesting && !(enclosingNodeOfType(insertionPos, &isTableStructureNode))) { 
-        applyCommandToComposite(BreakBlockquoteCommand::create(document())); 
-        // This will leave a br between the split. 
-        Node* br = endingSelection().start().deprecatedNode(); 
-        ASSERT(br->hasTagName(brTag)); 
-        // Insert content between the two blockquotes, but remove the br (since it was just a placeholder). 
+    if (startIsInsideMailBlockquote && m_preventNesting && !(enclosingNodeOfType(insertionPos, &isTableStructureNode))) {
+        applyCommandToComposite(BreakBlockquoteCommand::create(document()));
+        // This will leave a br between the split.
+        Node* br = endingSelection().start().deprecatedNode();
+        ASSERT(br->hasTagName(brTag));
+        // Insert content between the two blockquotes, but remove the br (since it was just a placeholder).
         insertionPos = positionInParentBeforeNode(br);
         removeNode(br);
     }
-    
+
     // Inserting content could cause whitespace to collapse, e.g. inserting <div>foo</div> into hello^ world.
     prepareWhitespaceAtPositionForSplit(insertionPos);
 
     // If the downstream node has been removed there's no point in continuing.
     if (!insertionPos.downstream().deprecatedNode())
       return;
-    
-    // NOTE: This would be an incorrect usage of downstream() if downstream() were changed to mean the last position after 
-    // p that maps to the same visible position as p (since in the case where a br is at the end of a block and collapsed 
-    // away, there are positions after the br which map to the same visible position as [br, 0]).  
+
+    // NOTE: This would be an incorrect usage of downstream() if downstream() were changed to mean the last position after
+    // p that maps to the same visible position as p (since in the case where a br is at the end of a block and collapsed
+    // away, there are positions after the br which map to the same visible position as [br, 0]).
     Node* endBR = insertionPos.downstream().deprecatedNode()->hasTagName(brTag) ? insertionPos.downstream().deprecatedNode() : 0;
     VisiblePosition originalVisPosBeforeEndBR;
     if (endBR)
         originalVisPosBeforeEndBR = VisiblePosition(positionBeforeNode(endBR), DOWNSTREAM).previous();
-    
+
     startBlock = enclosingBlock(insertionPos.deprecatedNode());
-    
+
     // Adjust insertionPos to prevent nesting.
     // If the start was in a Mail blockquote, we will have already handled adjusting insertionPos above.
     if (m_preventNesting && startBlock && !isTableCell(startBlock) && !startIsInsideMailBlockquote) {
@@ -1004,10 +1004,10 @@
         else if (isStartOfBlock(visibleInsertionPos))
             insertionPos = positionInParentBeforeNode(startBlock);
     }
-    
+
     // Paste at start or end of link goes outside of link.
     insertionPos = positionAvoidingSpecialElementBoundary(insertionPos);
-    
+
     // FIXME: Can this wait until after the operation has been performed?  There doesn't seem to be
     // any work performed after this that queries or uses the typing style.
     if (Frame* frame = document()->frame())
@@ -1059,8 +1059,8 @@
     // 2) Remove redundant styles and style tags, this inner <b> for example: <b>foo <b>bar</b> baz</b>.
     // 3) Merge the start of the added content with the content before the position being pasted into.
     // 4) Do one of the following: a) expand the last br if the fragment ends with one and it collapsed,
-    // b) merge the last paragraph of the incoming fragment with the paragraph that contained the 
-    // end of the selection that was pasted into, or c) handle an interchange newline at the end of the 
+    // b) merge the last paragraph of the incoming fragment with the paragraph that contained the
+    // end of the selection that was pasted into, or c) handle an interchange newline at the end of the
     // incoming fragment.
     // 5) Add spaces for smart replace.
     // 6) Select the replacement if requested, and match style if requested.
@@ -1068,7 +1068,7 @@
     InsertedNodes insertedNodes;
     RefPtr<Node> refNode = fragment.firstChild();
     RefPtr<Node> node = refNode->nextSibling();
-    
+
     fragment.removeNode(refNode);
 
     Node* blockStart = enclosingBlock(insertionPos.deprecatedNode());
@@ -1127,7 +1127,7 @@
             removeNode(nodeToRemove);
         }
     }
-    
+
     makeInsertedContentRoundTrippableWithHTMLTreeBuilder(insertedNodes);
 
     removeRedundantStylesAndKeepStyleSpanInline(insertedNodes);
@@ -1142,7 +1142,7 @@
     // Determine whether or not we should merge the end of inserted content with what's after it before we do
     // the start merge so that the start merge doesn't effect our decision.
     m_shouldMergeEnd = shouldMergeEnd(selectionEndWasEndOfParagraph);
-    
+
     if (shouldMergeStart(selectionStartWasStartOfParagraph, fragment.hasInterchangeNewlineAtStart(), startIsInsideMailBlockquote)) {
         VisiblePosition startOfParagraphToMove = positionAtStartOfInsertedContent();
         VisiblePosition destination = startOfParagraphToMove.previous();
@@ -1152,13 +1152,13 @@
         Node* destinationNode = destination.deepEquivalent().deprecatedNode();
         if (m_shouldMergeEnd && destinationNode != enclosingInline(destinationNode) && enclosingInline(destinationNode)->nextSibling())
             insertNodeBefore(createBreakElement(document()), refNode.get());
-        
+
         // Merging the the first paragraph of inserted content with the content that came
-        // before the selection that was pasted into would also move content after 
-        // the selection that was pasted into if: only one paragraph was being pasted, 
-        // and it was not wrapped in a block, the selection that was pasted into ended 
+        // before the selection that was pasted into would also move content after
+        // the selection that was pasted into if: only one paragraph was being pasted,
+        // and it was not wrapped in a block, the selection that was pasted into ended
         // at the end of a block and the next paragraph didn't start at the start of a block.
-        // Insert a line break just after the inserted content to separate it from what 
+        // Insert a line break just after the inserted content to separate it from what
         // comes after and prevent that from happening.
         VisiblePosition endOfInsertedContent = positionAtEndOfInsertedContent();
         if (startOfParagraph(endOfInsertedContent) == startOfParagraphToMove) {
@@ -1204,7 +1204,7 @@
             // Select up to the beginning of the next paragraph.
             lastPositionToSelect = next.deepEquivalent().downstream();
         }
-        
+
     } else
         mergeEndIfNeeded();
 
@@ -1218,7 +1218,7 @@
     // no style matching is necessary.
     if (plainTextFragment)
         m_matchStyle = false;
-        
+
     completeHTMLReplacement(lastPositionToSelect);
 }
 
@@ -1226,17 +1226,17 @@
 {
     if (!endBR || !endBR->inDocument())
         return false;
-        
+
     VisiblePosition visiblePos(positionBeforeNode(endBR));
-    
+
     // Don't remove the br if nothing was inserted.
     if (visiblePos.previous() == originalVisPosBeforeEndBR)
         return false;
-    
+
     // Remove the br if it is collapsed away and so is unnecessary.
     if (!document()->inNoQuirksMode() && isEndOfBlock(visiblePos) && !isStartOfParagraph(visiblePos))
         return true;
-        
+
     // A br that was originally holding a line open should be displaced by inserted content or turned into a line break.
     // A br that was originally acting as a line break should still be acting as a line break, not as a placeholder.
     return isStartOfParagraph(visiblePos) && isEndOfParagraph(visiblePos);
@@ -1458,7 +1458,7 @@
 
 // During simple pastes, where we're just pasting a text node into a run of text, we insert the text node
 // directly into the text node that holds the selection.  This is much faster than the generalized code in
-// ReplaceSelectionCommand, and works around <https://bugs.webkit.org/show_bug.cgi?id=6148> since we don't 
+// ReplaceSelectionCommand, and works around <https://bugs.webkit.org/show_bug.cgi?id=6148> since we don't
 // split text nodes.
 bool ReplaceSelectionCommand::performTrivialReplace(const ReplacementFragment& fragment)
 {
diff --git a/Source/core/editing/ReplaceSelectionCommand.h b/Source/core/editing/ReplaceSelectionCommand.h
index 112508e..fce407d 100644
--- a/Source/core/editing/ReplaceSelectionCommand.h
+++ b/Source/core/editing/ReplaceSelectionCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ReplaceSelectionCommand_h
@@ -57,7 +57,7 @@
 
     virtual void doApply();
     virtual EditAction editingAction() const;
-    
+
     class InsertedNodes {
     public:
         void respondToNodeInsertion(Node*);
@@ -78,21 +78,21 @@
 
     void updateNodesInserted(Node*);
     bool shouldRemoveEndBR(Node*, const VisiblePosition&);
-    
+
     bool shouldMergeStart(bool, bool, bool);
     bool shouldMergeEnd(bool selectionEndWasEndOfParagraph);
     bool shouldMerge(const VisiblePosition&, const VisiblePosition&);
-    
+
     void mergeEndIfNeeded();
-    
+
     void removeUnrenderedTextNodesAtEnds(InsertedNodes&);
-    
+
     void removeRedundantStylesAndKeepStyleSpanInline(InsertedNodes&);
     void makeInsertedContentRoundTrippableWithHTMLTreeBuilder(InsertedNodes&);
     void moveNodeOutOfAncestor(PassRefPtr<Node>, PassRefPtr<Node> ancestor);
     void handleStyleSpans(InsertedNodes&);
     void handlePasteAsQuotationNode();
-    
+
     VisiblePosition positionAtStartOfInsertedContent() const;
     VisiblePosition positionAtEndOfInsertedContent() const;
 
diff --git a/Source/core/editing/SetNodeAttributeCommand.cpp b/Source/core/editing/SetNodeAttributeCommand.cpp
index 697234f..1218e02 100644
--- a/Source/core/editing/SetNodeAttributeCommand.cpp
+++ b/Source/core/editing/SetNodeAttributeCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -31,7 +31,7 @@
 
 namespace WebCore {
 
-SetNodeAttributeCommand::SetNodeAttributeCommand(PassRefPtr<Element> element, 
+SetNodeAttributeCommand::SetNodeAttributeCommand(PassRefPtr<Element> element,
         const QualifiedName& attribute, const AtomicString& value)
     : SimpleEditCommand(element->document())
     , m_element(element)
diff --git a/Source/core/editing/SetNodeAttributeCommand.h b/Source/core/editing/SetNodeAttributeCommand.h
index e9daafb..6c218c5 100644
--- a/Source/core/editing/SetNodeAttributeCommand.h
+++ b/Source/core/editing/SetNodeAttributeCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SetNodeAttributeCommand_h
diff --git a/Source/core/editing/SimplifyMarkupCommand.cpp b/Source/core/editing/SimplifyMarkupCommand.cpp
index 2692b09..67defe9 100644
--- a/Source/core/editing/SimplifyMarkupCommand.cpp
+++ b/Source/core/editing/SimplifyMarkupCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -34,24 +34,24 @@
 
 namespace WebCore {
 
-SimplifyMarkupCommand::SimplifyMarkupCommand(Document* document, Node* firstNode, Node* nodeAfterLast) 
+SimplifyMarkupCommand::SimplifyMarkupCommand(Document* document, Node* firstNode, Node* nodeAfterLast)
     : CompositeEditCommand(document), m_firstNode(firstNode), m_nodeAfterLast(nodeAfterLast)
 {
 }
-    
+
 void SimplifyMarkupCommand::doApply()
 {
     Node* rootNode = m_firstNode->parentNode();
     Vector<RefPtr<Node> > nodesToRemove;
-    
+
     // Walk through the inserted nodes, to see if there are elements that could be removed
     // without affecting the style. The goal is to produce leaner markup even when starting
     // from a verbose fragment.
-    // We look at inline elements as well as non top level divs that don't have attributes. 
+    // We look at inline elements as well as non top level divs that don't have attributes.
     for (Node* node = m_firstNode.get(); node && node != m_nodeAfterLast; node = NodeTraversal::next(node)) {
         if (node->firstChild() || (node->isTextNode() && node->nextSibling()))
             continue;
-        
+
         Node* startingNode = node->parentNode();
         if (!startingNode)
             continue;
@@ -63,23 +63,23 @@
         while (currentNode != rootNode) {
             if (currentNode->parentNode() != rootNode && isRemovableBlock(currentNode))
                 nodesToRemove.append(currentNode);
-            
+
             currentNode = currentNode->parentNode();
             if (!currentNode)
                 break;
 
             if (!currentNode->renderer() || !currentNode->renderer()->isRenderInline() || toRenderInline(currentNode->renderer())->alwaysCreateLineBoxes())
                 continue;
-            
+
             if (currentNode->firstChild() != currentNode->lastChild()) {
                 topNodeWithStartingStyle = 0;
                 break;
             }
-            
+
             unsigned context;
             if (currentNode->renderStyle()->diff(startingStyle, context) == StyleDifferenceEqual)
                 topNodeWithStartingStyle = currentNode;
-            
+
         }
         if (topNodeWithStartingStyle) {
             for (Node* node = startingNode; node != topNodeWithStartingStyle; node = node->parentNode())
@@ -111,7 +111,7 @@
     RefPtr<ContainerNode> parent = highestAncestorToRemove->parentNode();
     if (!parent) // Parent has already been removed.
         return -1;
-    
+
     if (pastLastNodeToRemove == startNodeIndex + 1)
         return 0;
 
diff --git a/Source/core/editing/SimplifyMarkupCommand.h b/Source/core/editing/SimplifyMarkupCommand.h
index 0060e44..8cb3f36 100644
--- a/Source/core/editing/SimplifyMarkupCommand.h
+++ b/Source/core/editing/SimplifyMarkupCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SimplifyMarkupCommand_h
diff --git a/Source/core/editing/SmartReplace.h b/Source/core/editing/SmartReplace.h
index abce578..e5912f4 100644
--- a/Source/core/editing/SmartReplace.h
+++ b/Source/core/editing/SmartReplace.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/editing/SmartReplaceCF.cpp b/Source/core/editing/SmartReplaceCF.cpp
index 3d141c0..063597c 100644
--- a/Source/core/editing/SmartReplaceCF.cpp
+++ b/Source/core/editing/SmartReplaceCF.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -36,13 +36,13 @@
 
 static CFMutableCharacterSetRef getSmartSet(bool isPreviousCharacter)
 {
-    static CFMutableCharacterSetRef preSmartSet = NULL; 
+    static CFMutableCharacterSetRef preSmartSet = NULL;
     static CFMutableCharacterSetRef postSmartSet = NULL;
     CFMutableCharacterSetRef smartSet = isPreviousCharacter ? preSmartSet : postSmartSet;
     if (!smartSet) {
         smartSet = CFCharacterSetCreateMutable(kCFAllocatorDefault);
         CFCharacterSetAddCharactersInString(smartSet, isPreviousCharacter ? CFSTR("([\"\'#$/-`{") : CFSTR(")].,;:?\'!\"%*-/}"));
-        CFCharacterSetUnion(smartSet, CFCharacterSetGetPredefined(kCFCharacterSetWhitespaceAndNewline));        
+        CFCharacterSetUnion(smartSet, CFCharacterSetGetPredefined(kCFCharacterSetWhitespaceAndNewline));
         // Adding CJK ranges
         CFCharacterSetAddCharactersInRange(smartSet, CFRangeMake(0x1100, 256)); // Hangul Jamo (0x1100 - 0x11FF)
         CFCharacterSetAddCharactersInRange(smartSet, CFRangeMake(0x2E80, 352)); // CJK & Kangxi Radicals (0x2E80 - 0x2FDF)
@@ -58,7 +58,7 @@
         if (isPreviousCharacter)
             preSmartSet = smartSet;
         else {
-            CFCharacterSetUnion(smartSet, CFCharacterSetGetPredefined(kCFCharacterSetPunctuation));       
+            CFCharacterSetUnion(smartSet, CFCharacterSetGetPredefined(kCFCharacterSetPunctuation));
             postSmartSet = smartSet;
         }
     }
diff --git a/Source/core/editing/SmartReplaceICU.cpp b/Source/core/editing/SmartReplaceICU.cpp
index 329ae4c..fe13985 100644
--- a/Source/core/editing/SmartReplaceICU.cpp
+++ b/Source/core/editing/SmartReplaceICU.cpp
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -47,7 +47,7 @@
 // except we use icu in place of CoreFoundations character classes.
 static USet* getSmartSet(bool isPreviousCharacter)
 {
-    static USet* preSmartSet = NULL; 
+    static USet* preSmartSet = NULL;
     static USet* postSmartSet = NULL;
     USet* smartSet = isPreviousCharacter ? preSmartSet : postSmartSet;
     if (!smartSet) {
diff --git a/Source/core/editing/SpellChecker.cpp b/Source/core/editing/SpellChecker.cpp
index 417dfd1..9603d24 100644
--- a/Source/core/editing/SpellChecker.cpp
+++ b/Source/core/editing/SpellChecker.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/editing/SpellChecker.h b/Source/core/editing/SpellChecker.h
index a3f48d9..44a6b5a 100644
--- a/Source/core/editing/SpellChecker.h
+++ b/Source/core/editing/SpellChecker.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SpellChecker_h
diff --git a/Source/core/editing/SplitElementCommand.cpp b/Source/core/editing/SplitElementCommand.cpp
index d3e9251..69323c3 100644
--- a/Source/core/editing/SplitElementCommand.cpp
+++ b/Source/core/editing/SplitElementCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -46,13 +46,13 @@
 {
     if (m_atChild->parentNode() != m_element2)
         return;
-    
+
     Vector<RefPtr<Node> > children;
     for (Node* node = m_element2->firstChild(); node != m_atChild; node = node->nextSibling())
         children.append(node);
-    
+
     ExceptionCode ec = 0;
-    
+
     ContainerNode* parent = m_element2->parentNode();
     if (!parent || !parent->rendererIsEditable())
         return;
@@ -67,11 +67,11 @@
     for (size_t i = 0; i < size; ++i)
         m_element1->appendChild(children[i], ec);
 }
-    
+
 void SplitElementCommand::doApply()
 {
     m_element1 = m_element2->cloneElementWithoutChildren();
-    
+
     executeApply();
 }
 
@@ -101,7 +101,7 @@
 {
     if (!m_element1)
         return;
-    
+
     executeApply();
 }
 
@@ -113,5 +113,5 @@
     addNodeAndDescendants(m_atChild.get(), nodes);
 }
 #endif
-    
+
 } // namespace WebCore
diff --git a/Source/core/editing/SplitElementCommand.h b/Source/core/editing/SplitElementCommand.h
index ebfe61d..c873826 100644
--- a/Source/core/editing/SplitElementCommand.h
+++ b/Source/core/editing/SplitElementCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SplitElementCommand_h
diff --git a/Source/core/editing/SplitTextNodeCommand.cpp b/Source/core/editing/SplitTextNodeCommand.cpp
index f4263e1..002af62 100644
--- a/Source/core/editing/SplitTextNodeCommand.cpp
+++ b/Source/core/editing/SplitTextNodeCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -108,5 +108,5 @@
     addNodeAndDescendants(m_text2.get(), nodes);
 }
 #endif
-    
+
 } // namespace WebCore
diff --git a/Source/core/editing/SplitTextNodeCommand.h b/Source/core/editing/SplitTextNodeCommand.h
index 5e3b8fd..36503c1 100644
--- a/Source/core/editing/SplitTextNodeCommand.h
+++ b/Source/core/editing/SplitTextNodeCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SplitTextNodeCommand_h
@@ -46,7 +46,7 @@
     virtual void doUnapply() OVERRIDE;
     virtual void doReapply() OVERRIDE;
     void insertText1AndTrimText2();
-    
+
 #ifndef NDEBUG
     virtual void getNodesInCommand(HashSet<Node*>&) OVERRIDE;
 #endif
diff --git a/Source/core/editing/SplitTextNodeContainingElementCommand.cpp b/Source/core/editing/SplitTextNodeContainingElementCommand.cpp
index 3bc6922..a29ef84 100644
--- a/Source/core/editing/SplitTextNodeContainingElementCommand.cpp
+++ b/Source/core/editing/SplitTextNodeContainingElementCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/editing/SplitTextNodeContainingElementCommand.h b/Source/core/editing/SplitTextNodeContainingElementCommand.h
index f2b501e..ba9da5b 100644
--- a/Source/core/editing/SplitTextNodeContainingElementCommand.h
+++ b/Source/core/editing/SplitTextNodeContainingElementCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SplitTextNodeContainingElementCommand_h
diff --git a/Source/core/editing/TextAffinity.h b/Source/core/editing/TextAffinity.h
index 5310ca9..c5b1789 100644
--- a/Source/core/editing/TextAffinity.h
+++ b/Source/core/editing/TextAffinity.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextAffinity_h
diff --git a/Source/core/editing/TextCheckingHelper.cpp b/Source/core/editing/TextCheckingHelper.cpp
index e45ebf5..9bc38fe 100644
--- a/Source/core/editing/TextCheckingHelper.cpp
+++ b/Source/core/editing/TextCheckingHelper.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -189,7 +189,7 @@
     ASSERT(m_checkingRange);
     if (m_text.isEmpty())
         m_text = plainText(paragraphRange().get());
-    return m_text; 
+    return m_text;
 }
 
 int TextCheckingParagraph::checkingStart() const
@@ -232,16 +232,16 @@
 {
     WordAwareIterator it(m_range.get());
     firstMisspellingOffset = 0;
-    
+
     String firstMisspelling;
     int currentChunkOffset = 0;
 
     while (!it.atEnd()) {
         int length = it.length();
-        
+
         // Skip some work for one-space-char hunks
         if (!(length == 1 && it.characterAt(0) == ' ')) {
-            
+
             int misspellingLocation = -1;
             int misspellingLength = 0;
             m_client->textChecker()->checkSpellingOfString(it.substring(0, length), &misspellingLocation, &misspellingLength);
@@ -255,9 +255,9 @@
             ASSERT(misspellingLocation < length);
             ASSERT(misspellingLength <= length);
             ASSERT(misspellingLocation + misspellingLength <= length);
-            
+
             if (misspellingLocation >= 0 && misspellingLength > 0 && misspellingLocation < length && misspellingLength <= length && misspellingLocation + misspellingLength <= length) {
-                
+
                 // Compute range of misspelled word
                 RefPtr<Range> misspellingRange = TextIterator::subrange(m_range.get(), currentChunkOffset + misspellingLocation, misspellingLength);
 
@@ -280,7 +280,7 @@
         currentChunkOffset += length;
         it.advance();
     }
-    
+
     return firstMisspelling;
 }
 
@@ -292,7 +292,7 @@
     String firstFoundItem;
     String misspelledWord;
     String badGrammarPhrase;
-    
+
     // Initialize out parameters; these will be updated if we find something to return.
     outIsSpelling = true;
     outFirstFoundOffset = 0;
@@ -300,7 +300,7 @@
     outGrammarDetail.length = 0;
     outGrammarDetail.guesses.clear();
     outGrammarDetail.userDescription = "";
-    
+
     // Expand the search range to encompass entire paragraphs, since text checking needs that much context.
     // Determine the character offset from the start of the paragraph to the start of the original search range,
     // since we will want to ignore results in this area.
@@ -308,11 +308,11 @@
     setStart(paragraphRange.get(), startOfParagraph(m_range->startPosition()));
     int totalRangeLength = TextIterator::rangeLength(paragraphRange.get());
     setEnd(paragraphRange.get(), endOfParagraph(m_range->startPosition()));
-    
+
     RefPtr<Range> offsetAsRange = Range::create(paragraphRange->startContainer()->document(), paragraphRange->startPosition(), m_range->startPosition());
     int rangeStartOffset = TextIterator::rangeLength(offsetAsRange.get());
     int totalLengthProcessed = 0;
-    
+
     bool firstIteration = true;
     bool lastIteration = false;
     while (totalLengthProcessed < totalRangeLength) {
@@ -335,11 +335,11 @@
                 int grammarPhraseLocation = 0;
                 int grammarDetailLocation = 0;
                 unsigned grammarDetailIndex = 0;
-                
+
                 Vector<TextCheckingResult> results;
                 TextCheckingTypeMask checkingTypes = checkGrammar ? (TextCheckingTypeSpelling | TextCheckingTypeGrammar) : TextCheckingTypeSpelling;
                 checkTextOfParagraph(m_client->textChecker(), paragraphString, checkingTypes, results);
-                
+
                 for (unsigned i = 0; i < results.size(); i++) {
                     const TextCheckingResult* result = &results[i];
                     if (result->type == TextCheckingTypeSpelling && result->location >= currentStartOffset && result->location + result->length <= currentEndOffset) {
@@ -417,29 +417,29 @@
     for (unsigned i = 0; i < grammarDetails.size(); i++) {
         const GrammarDetail* detail = &grammarDetails[i];
         ASSERT(detail->length > 0 && detail->location >= 0);
-        
+
         int detailStartOffsetInParagraph = badGrammarPhraseLocation + detail->location;
-        
+
         // Skip this detail if it starts before the original search range
         if (detailStartOffsetInParagraph < startOffset)
             continue;
-        
+
         // Skip this detail if it starts after the original search range
         if (detailStartOffsetInParagraph >= endOffset)
             continue;
-        
+
         if (markAll) {
             RefPtr<Range> badGrammarRange = TextIterator::subrange(m_range.get(), badGrammarPhraseLocation - startOffset + detail->location, detail->length);
             badGrammarRange->startContainer()->document()->markers()->addMarker(badGrammarRange.get(), DocumentMarker::Grammar, detail->userDescription);
         }
-        
+
         // Remember this detail only if it's earlier than our current candidate (the details aren't in a guaranteed order)
         if (earliestDetailIndex < 0 || earliestDetailLocationSoFar > detail->location) {
             earliestDetailIndex = i;
             earliestDetailLocationSoFar = detail->location;
         }
     }
-    
+
     return earliestDetailIndex;
 }
 
@@ -451,14 +451,14 @@
     outGrammarDetail.guesses.clear();
     outGrammarDetail.userDescription = "";
     outGrammarPhraseOffset = 0;
-    
+
     String firstBadGrammarPhrase;
 
     // Expand the search range to encompass entire paragraphs, since grammar checking needs that much context.
     // Determine the character offset from the start of the paragraph to the start of the original search range,
     // since we will want to ignore results in this area.
     TextCheckingParagraph paragraph(m_range);
-    
+
     // Start checking from beginning of paragraph, but skip past results that occur before the start of the original search range.
     int startOffset = 0;
     while (startOffset < paragraph.checkingEnd()) {
@@ -466,7 +466,7 @@
         int badGrammarPhraseLocation = -1;
         int badGrammarPhraseLength = 0;
         m_client->textChecker()->checkGrammarOfString(paragraph.textSubstring(startOffset), grammarDetails, &badGrammarPhraseLocation, &badGrammarPhraseLength);
-        
+
         if (!badGrammarPhraseLength) {
             ASSERT(badGrammarPhraseLocation == -1);
             return String();
@@ -475,7 +475,7 @@
         ASSERT(badGrammarPhraseLocation >= 0);
         badGrammarPhraseLocation += startOffset;
 
-        
+
         // Found some bad grammar. Find the earliest detail range that starts in our search range (if any).
         int badGrammarIndex = findFirstGrammarDetail(grammarDetails, badGrammarPhraseLocation, badGrammarPhraseLength, paragraph.checkingStart(), paragraph.checkingEnd(), markAll);
         if (badGrammarIndex >= 0) {
@@ -488,7 +488,7 @@
         if (badGrammarIndex >= 0 && firstBadGrammarPhrase.isEmpty()) {
             outGrammarPhraseOffset = badGrammarPhraseLocation - paragraph.checkingStart();
             firstBadGrammarPhrase = paragraph.textSubstring(badGrammarPhraseLocation, badGrammarPhraseLength);
-            
+
             // Found one. We're done now, unless we're marking each instance.
             if (!markAll)
                 break;
@@ -498,7 +498,7 @@
         // beyond this phrase.
         startOffset = badGrammarPhraseLocation + badGrammarPhraseLength;
     }
-    
+
     return firstBadGrammarPhrase;
 }
 
diff --git a/Source/core/editing/TextGranularity.h b/Source/core/editing/TextGranularity.h
index 09cc4ed..4aea8d8 100644
--- a/Source/core/editing/TextGranularity.h
+++ b/Source/core/editing/TextGranularity.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextGranularity_h
diff --git a/Source/core/editing/TextInsertionBaseCommand.cpp b/Source/core/editing/TextInsertionBaseCommand.cpp
index 33fa855..e9a9b23 100644
--- a/Source/core/editing/TextInsertionBaseCommand.cpp
+++ b/Source/core/editing/TextInsertionBaseCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -75,7 +75,7 @@
     Node* node = selection.rootEditableElement();
     if (!node)
         return false;
-    
+
     RefPtr<BeforeTextInsertedEvent> event = BeforeTextInsertedEvent::create(String("\n"));
     node->dispatchEvent(event, IGNORE_EXCEPTION);
     return event->text().length();
diff --git a/Source/core/editing/TextInsertionBaseCommand.h b/Source/core/editing/TextInsertionBaseCommand.h
index 628b42e..7b7cfc1 100644
--- a/Source/core/editing/TextInsertionBaseCommand.h
+++ b/Source/core/editing/TextInsertionBaseCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextInsertionBaseCommand_h
diff --git a/Source/core/editing/TextIterator.cpp b/Source/core/editing/TextIterator.cpp
index 693af04..d11344e 100644
--- a/Source/core/editing/TextIterator.cpp
+++ b/Source/core/editing/TextIterator.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -316,11 +316,11 @@
 
     // handle remembered node that needed a newline after the text node's newline
     if (m_needsAnotherNewline) {
-        // Emit the extra newline, and position it *inside* m_node, after m_node's 
-        // contents, in case it's a block, in the same way that we position the first 
-        // newline.  The range for the emitted newline should start where the line 
+        // Emit the extra newline, and position it *inside* m_node, after m_node's
+        // contents, in case it's a block, in the same way that we position the first
+        // newline.  The range for the emitted newline should start where the line
         // break begins.
-        // FIXME: It would be cleaner if we emitted two newlines during the last 
+        // FIXME: It would be cleaner if we emitted two newlines during the last
         // iteration, instead of using m_needsAnotherNewline.
         Node* baseNode = m_node->lastChild() ? m_node->lastChild() : m_node;
         emitCharacter('\n', baseNode->parentNode(), baseNode, 1, 1);
@@ -354,7 +354,7 @@
             m_node = 0;
             return;
         }
-        
+
         RenderObject* renderer = m_node->renderer();
         if (!renderer) {
             m_handledNode = true;
@@ -404,7 +404,7 @@
                     next = m_node->nextSibling();
                 }
             }
-            m_fullyClippedStack.pop();            
+            m_fullyClippedStack.pop();
         }
 
         // set the new current node
@@ -470,7 +470,7 @@
         return false;
 
     RenderText* renderer = toRenderText(m_node->renderer());
-        
+
     m_lastTextNode = m_node;
     String str = renderer->text();
 
@@ -527,7 +527,7 @@
         for (InlineTextBox* textBox = renderer->firstTextBox(); textBox; textBox = textBox->nextTextBox()) {
             m_sortedTextBoxes.append(textBox);
         }
-        std::sort(m_sortedTextBoxes.begin(), m_sortedTextBoxes.end(), InlineTextBox::compareByStart); 
+        std::sort(m_sortedTextBoxes.begin(), m_sortedTextBoxes.end(), InlineTextBox::compareByStart);
         m_sortedTextBoxesPosition = 0;
         m_textBox = m_sortedTextBoxes.isEmpty() ? 0 : m_sortedTextBoxes[0];
     }
@@ -537,7 +537,7 @@
 }
 
 void TextIterator::handleTextBox()
-{    
+{
     RenderText* renderer = m_firstLetterText ? m_firstLetterText : toRenderText(m_node->renderer());
     if (renderer->style()->visibility() != VISIBLE && !m_ignoresStyleVisibility) {
         m_textBox = 0;
@@ -566,13 +566,13 @@
         }
         unsigned textBoxEnd = textBoxStart + m_textBox->len();
         unsigned runEnd = min(textBoxEnd, end);
-        
+
         // Determine what the next text box will be, but don't advance yet
         InlineTextBox* nextTextBox = 0;
         if (renderer->containsReversedText()) {
             if (m_sortedTextBoxesPosition + 1 < m_sortedTextBoxes.size())
                 nextTextBox = m_sortedTextBoxes[m_sortedTextBoxesPosition + 1];
-        } else 
+        } else
             nextTextBox = m_textBox->nextTextBox();
         ASSERT(!nextTextBox || nextTextBox->renderer() == renderer);
 
@@ -587,7 +587,7 @@
                 size_t subrunEnd = str.find('\n', runStart);
                 if (subrunEnd == notFound || subrunEnd > runEnd)
                     subrunEnd = runEnd;
-    
+
                 m_offset = subrunEnd;
                 emitText(m_node, renderer, runStart, subrunEnd);
             }
@@ -681,8 +681,8 @@
     }
 
     if (m_emitsCharactersBetweenAllVisiblePositions) {
-        // We want replaced elements to behave like punctuation for boundary 
-        // finding, and to simply take up space for the selection preservation 
+        // We want replaced elements to behave like punctuation for boundary
+        // finding, and to simply take up space for the selection preservation
         // code in moveParagraphs, so we use a comma.
         emitCharacter(',', m_node->parentNode(), m_node, 0, 1);
         return true;
@@ -724,11 +724,11 @@
 static bool shouldEmitTabBeforeNode(Node* node)
 {
     RenderObject* r = node->renderer();
-    
+
     // Table cells are delimited by tabs.
     if (!r || !isTableCell(node))
         return false;
-    
+
     // Want a tab before every cell other than the first one
     RenderTableCell* rc = toRenderTableCell(r);
     RenderTable* t = rc->table();
@@ -770,12 +770,12 @@
                 || node->hasTagName(trTag)
                 || node->hasTagName(ulTag));
     }
-    
+
     // Need to make an exception for table cells, because they are blocks, but we
     // want them tab-delimited rather than having newlines before and after.
     if (isTableCell(node))
         return false;
-    
+
     // Need to make an exception for table row elements, because they are neither
     // "inline" or "RenderBlock", but we want newlines for them.
     if (r->isTableRow()) {
@@ -783,7 +783,7 @@
         if (t && !t->isInline())
             return true;
     }
-    
+
     return !r->isInline() && r->isRenderBlock()
         && !r->isFloatingOrOutOfFlowPositioned() && !r->isBody() && !r->isRubyText();
 }
@@ -803,7 +803,7 @@
 
 static bool shouldEmitNewlineBeforeNode(Node* node)
 {
-    return shouldEmitNewlinesBeforeAndAfterNode(node); 
+    return shouldEmitNewlinesBeforeAndAfterNode(node);
 }
 
 static bool shouldEmitExtraNewlineForNode(Node* node)
@@ -815,7 +815,7 @@
     RenderObject* r = node->renderer();
     if (!r || !r->isBox())
         return false;
-    
+
     // NOTE: We only do this for a select set of nodes, and fwiw WinIE appears
     // not to do this at all
     if (node->hasTagName(h1Tag)
@@ -833,7 +833,7 @@
                 return true;
         }
     }
-    
+
     return false;
 }
 
@@ -864,16 +864,16 @@
 {
     if (m_emitsCharactersBetweenAllVisiblePositions && m_node->renderer() && m_node->renderer()->isTable())
         return true;
-        
+
     // Leave element positioned flush with start of a paragraph
     // (e.g. do not insert tab before a table cell at the start of a paragraph)
     if (m_lastCharacter == '\n')
         return false;
-    
+
     // Otherwise, show the position if we have emitted any characters
     if (m_hasEmitted)
         return true;
-    
+
     // We've not emitted anything yet. Generally, there is no need for any positioning then.
     // The only exception is when the element is visually not in the same line as
     // the start of the range (e.g. the range starts at the end of the previous paragraph).
@@ -885,7 +885,7 @@
     // No character needed if this is the first node in the range.
     if (m_node == m_startContainer)
         return false;
-    
+
     // If we are outside the start container's subtree, assume we need to emit.
     // FIXME: m_startContainer could be an inline block
     if (!m_node->isDescendantOf(m_startContainer))
@@ -899,9 +899,9 @@
     // immaterial since we likely would have already emitted something by now.
     if (m_startOffset == 0)
         return false;
-        
+
     // If this node is unrendered or invisible the VisiblePosition checks below won't have much meaning.
-    // Additionally, if the range we are iterating over contains huge sections of unrendered content, 
+    // Additionally, if the range we are iterating over contains huge sections of unrendered content,
     // we would create VisiblePositions on every call to this function without this check.
     if (!m_node->renderer() || m_node->renderer()->style()->visibility() != VISIBLE
         || (m_node->renderer()->isBlockFlow() && !toRenderBlock(m_node->renderer())->height() && !m_node->hasTagName(bodyTag)))
@@ -924,10 +924,10 @@
 void TextIterator::representNodeOffsetZero()
 {
     // Emit a character to show the positioning of m_node.
-    
-    // When we haven't been emitting any characters, shouldRepresentNodeOffsetZero() can 
+
+    // When we haven't been emitting any characters, shouldRepresentNodeOffsetZero() can
     // create VisiblePositions, which is expensive.  So, we perform the inexpensive checks
-    // on m_node to see if it necessitates emitting a character first and will early return 
+    // on m_node to see if it necessitates emitting a character first and will early return
     // before encountering shouldRepresentNodeOffsetZero()s worse case behavior.
     if (shouldEmitTabBeforeNode(m_node)) {
         if (shouldRepresentNodeOffsetZero())
@@ -961,9 +961,9 @@
     // therefore look like a blank line.
     if (!m_hasEmitted)
         return;
-        
-    // Emit with a position *inside* m_node, after m_node's contents, in 
-    // case it is a block, because the run should start where the 
+
+    // Emit with a position *inside* m_node, after m_node's contents, in
+    // case it is a block, because the run should start where the
     // emitted character is positioned visually.
     Node* baseNode = m_node->lastChild() ? m_node->lastChild() : m_node;
     // FIXME: This shouldn't require the m_lastTextNode to be true, but we can't change that without making
@@ -973,7 +973,7 @@
     if (m_lastTextNode && shouldEmitNewlineAfterNode(m_node)) {
         // use extra newline to represent margin bottom, as needed
         bool addNewline = shouldEmitExtraNewlineForNode(m_node);
-        
+
         // FIXME: We need to emit a '\n' as we leave an empty block(s) that
         // contain a VisiblePosition when doing selection preservation.
         if (m_lastCharacter != '\n') {
@@ -986,7 +986,7 @@
             // insert a newline with a position following this block's contents.
             emitCharacter('\n', baseNode->parentNode(), baseNode, 1, 1);
     }
-    
+
     // If nothing was emitted, see if we need to emit a space.
     if (!m_positionNode && shouldEmitSpaceBeforeAndAfterNode(m_node))
         emitCharacter(' ', baseNode->parentNode(), baseNode, 1, 1);
@@ -995,14 +995,14 @@
 void TextIterator::emitCharacter(UChar c, Node* textNode, Node* offsetBaseNode, int textStartOffset, int textEndOffset)
 {
     m_hasEmitted = true;
-    
+
     // remember information with which to construct the TextIterator::range()
     // NOTE: textNode is often not a text node, so the range will specify child nodes of positionNode
     m_positionNode = textNode;
     m_positionOffsetBaseNode = offsetBaseNode;
     m_positionStartOffset = textStartOffset;
     m_positionEndOffset = textEndOffset;
- 
+
     // remember information with which to construct the TextIterator::characters() and length()
     m_singleCharacterBuffer = c;
     ASSERT(m_singleCharacterBuffer);
@@ -1055,10 +1055,10 @@
     // otherwise, return the end of the overall range we were given
     if (m_endContainer)
         return Range::create(m_endContainer->document(), m_endContainer, m_endOffset, m_endContainer, m_endOffset);
-        
+
     return 0;
 }
-    
+
 Node* TextIterator::node() const
 {
     RefPtr<Range> textRange = range();
@@ -1070,7 +1070,7 @@
         return 0;
     if (node->offsetInCharacters())
         return node;
-    
+
     return node->childNode(textRange->startOffset());
 }
 
@@ -1125,7 +1125,7 @@
     }
 
     m_node = endNode;
-    setUpFullyClippedStack(m_fullyClippedStack, m_node);    
+    setUpFullyClippedStack(m_fullyClippedStack, m_node);
     m_offset = endOffset;
     m_handledNode = false;
     m_handledChildren = endOffset == 0;
@@ -1134,7 +1134,7 @@
     m_startOffset = startOffset;
     m_endNode = endNode;
     m_endOffset = endOffset;
-    
+
 #ifndef NDEBUG
     // Need this just because of the assert.
     m_positionNode = endNode;
@@ -1219,11 +1219,11 @@
         }
 
         // For the purpose of word boundary detection,
-        // we should iterate all visible text and trailing (collapsed) whitespaces. 
+        // we should iterate all visible text and trailing (collapsed) whitespaces.
         m_offset = m_node ? maxOffsetIncludingCollapsedSpaces(m_node) : 0;
         m_handledNode = false;
         m_handledChildren = false;
-        
+
         if (m_positionNode)
             return;
     }
@@ -1295,8 +1295,8 @@
 bool SimplifiedBackwardsTextIterator::handleReplacedElement()
 {
     unsigned index = m_node->nodeIndex();
-    // We want replaced elements to behave like punctuation for boundary 
-    // finding, and to simply take up space for the selection preservation 
+    // We want replaced elements to behave like punctuation for boundary
+    // finding, and to simply take up space for the selection preservation
     // code in moveParagraphs, so we use a comma.  Unconditionally emit
     // here because this iterator is only used for boundary finding.
     emitCharacter(',', m_node->parentNode(), index, index + 1);
@@ -1304,7 +1304,7 @@
 }
 
 bool SimplifiedBackwardsTextIterator::handleNonTextNode()
-{    
+{
     // We can use a linefeed in place of a tab because this simple iterator is only used to
     // find boundaries, not actual content.  A linefeed breaks words, sentences, and paragraphs.
     if (shouldEmitNewlineForNode(m_node, m_emitsOriginalText) || shouldEmitNewlineAfterNode(m_node) || shouldEmitTabBeforeNode(m_node)) {
@@ -1351,7 +1351,7 @@
 {
     if (m_positionNode)
         return Range::create(m_positionNode->document(), m_positionNode, m_positionStartOffset, m_positionNode, m_positionEndOffset);
-    
+
     return Range::create(m_startNode->document(), m_startNode, m_startOffset, m_startNode, m_startOffset);
 }
 
@@ -1390,7 +1390,7 @@
         ASSERT(count == 0);
         return;
     }
-    
+
     m_atBreak = false;
 
     // easy if there is enough left in the current m_textIterator run
@@ -1404,7 +1404,7 @@
     // exhaust the current m_textIterator run
     count -= remaining;
     m_offset += remaining;
-    
+
     // move to a subsequent m_textIterator run
     for (m_textIterator.advance(); !atEnd(); m_textIterator.advance()) {
         int runLength = m_textIterator.length();
@@ -1417,7 +1417,7 @@
                 m_offset += count;
                 return;
             }
-            
+
             // exhaust this m_textIterator run
             count -= runLength;
             m_offset += runLength;
@@ -1451,8 +1451,8 @@
         it.advance(length - 1);
     RefPtr<Range> end = it.range();
 
-    return Range::create(start->startContainer()->document(), 
-        start->startContainer(), start->startOffset(), 
+    return Range::create(start->startContainer()->document(),
+        start->startContainer(), start->startOffset(),
         end->endContainer(), end->endOffset());
 }
 
@@ -1512,7 +1512,7 @@
                 m_offset += count;
                 return;
             }
-            
+
             count -= runLength;
             m_offset += runLength;
         }
@@ -1556,7 +1556,7 @@
 
     if (m_textIterator.atEnd())
         return;
-    
+
     while (1) {
         // If this chunk ends in whitespace we can just use it as our chunk.
         if (isSpaceOrNewline(m_textIterator.characterAt(m_textIterator.length() - 1)))
@@ -2221,7 +2221,7 @@
     int length = 0;
     for (TextIterator it(r, forSelectionPreservation ? TextIteratorEmitsCharactersBetweenAllVisiblePositions : TextIteratorDefaultBehavior); !it.atEnd(); it.advance())
         length += it.length();
-    
+
     return length;
 }
 
@@ -2242,24 +2242,24 @@
     RefPtr<Range> textRunRange;
 
     TextIterator it(rangeOfContents(scope).get(), forSelectionPreservation ? TextIteratorEmitsCharactersBetweenAllVisiblePositions : TextIteratorDefaultBehavior);
-    
+
     // FIXME: the atEnd() check shouldn't be necessary, workaround for <http://bugs.webkit.org/show_bug.cgi?id=6289>.
     if (rangeLocation == 0 && rangeLength == 0 && it.atEnd()) {
         textRunRange = it.range();
-        
+
         resultRange->setStart(textRunRange->startContainer(), 0, ASSERT_NO_EXCEPTION);
         resultRange->setEnd(textRunRange->startContainer(), 0, ASSERT_NO_EXCEPTION);
-        
+
         return resultRange.release();
     }
 
     for (; !it.atEnd(); it.advance()) {
         int len = it.length();
         textRunRange = it.range();
-        
+
         bool foundStart = rangeLocation >= docTextPosition && rangeLocation <= docTextPosition + len;
         bool foundEnd = rangeEnd >= docTextPosition && rangeEnd <= docTextPosition + len;
-        
+
         // Fix textRunRange->endPosition(), but only if foundStart || foundEnd, because it is only
         // in those cases that textRunRange is used.
         if (foundEnd) {
@@ -2310,15 +2310,15 @@
         }
         docTextPosition += len;
     }
-    
+
     if (!startRangeFound)
         return 0;
-    
+
     if (rangeLength != 0 && rangeEnd > docTextPosition) { // rangeEnd is out of bounds
         int exception = 0;
         resultRange->setEnd(textRunRange->endContainer(), textRunRange->endOffset(), exception);
     }
-    
+
     return resultRange.release();
 }
 
@@ -2363,7 +2363,7 @@
     TextIteratorBehavior behavior = defaultBehavior;
     if (!isDisplayString)
         behavior = static_cast<TextIteratorBehavior>(behavior | TextIteratorEmitsTextsWithoutTranscoding);
-    
+
     for (TextIterator it(r, behavior); !it.atEnd(); it.advance()) {
         it.appendTextToStringBuilder(builder);
         bufferLength += it.length();
diff --git a/Source/core/editing/TextIterator.h b/Source/core/editing/TextIterator.h
index 716e73c..ecc4c41 100644
--- a/Source/core/editing/TextIterator.h
+++ b/Source/core/editing/TextIterator.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextIterator_h
@@ -47,7 +47,7 @@
     TextIteratorStopsOnFormControls = 1 << 6,
     TextIteratorEmitsImageAltText = 1 << 7,
 };
-    
+
 // FIXME: Can't really answer this question correctly without knowing the white-space mode.
 // FIXME: Move this somewhere else in the editing directory. It doesn't belong here.
 inline bool isCollapsibleWhitespace(UChar c)
@@ -91,7 +91,7 @@
 
     bool atEnd() const { return !m_positionNode || m_shouldStop; }
     void advance();
-    
+
     int length() const { return m_textLength; }
     UChar characterAt(unsigned index) const;
     String substring(unsigned position, unsigned length) const;
@@ -115,12 +115,12 @@
 
     PassRefPtr<Range> range() const;
     Node* node() const;
-     
+
     static int rangeLength(const Range*, bool spacesForReplacedElements = false);
     static PassRefPtr<Range> rangeFromLocationAndLength(ContainerNode* scope, int rangeLocation, int rangeLength, bool spacesForReplacedElements = false);
     static bool getLocationAndLengthFromRange(Node* scope, const Range*, size_t& location, size_t& length);
     static PassRefPtr<Range> subrange(Range* entireRange, int characterOffset, int characterCount);
-    
+
 private:
     int startOffset() const { return m_positionStartOffset; }
     const String& string() const { return m_text; }
@@ -137,7 +137,7 @@
     void emitCharacter(UChar, Node* textNode, Node* offsetBaseNode, int textStartOffset, int textEndOffset);
     void emitText(Node* textNode, RenderObject* renderObject, int textStartOffset, int textEndOffset);
     void emitText(Node* textNode, int textStartOffset, int textEndOffset);
-    
+
     // Current position, not necessarily of the text being returned, but position
     // as we walk through the DOM tree.
     Node* m_node;
@@ -145,14 +145,14 @@
     bool m_handledNode;
     bool m_handledChildren;
     BitStack m_fullyClippedStack;
-    
+
     // The range.
     Node* m_startContainer;
     int m_startOffset;
     Node* m_endContainer;
     int m_endOffset;
     Node* m_pastEndNode;
-    
+
     // The current text and its position, in the form to be returned from the iterator.
     Node* m_positionNode;
     mutable Node* m_positionOffsetBaseNode;
@@ -170,26 +170,26 @@
     InlineTextBox* m_remainingTextBox;
     // Used to point to RenderText object for :first-letter.
     RenderText *m_firstLetterText;
-    
+
     // Used to do the whitespace collapsing logic.
-    Node* m_lastTextNode;    
+    Node* m_lastTextNode;
     bool m_lastTextNodeEndedWithCollapsedSpace;
     UChar m_lastCharacter;
 
     // Used for whitespace characters that aren't in the DOM, so we can point at them.
     // If non-zero, overrides m_text.
     UChar m_singleCharacterBuffer;
-    
+
     // Used when text boxes are out of order (Hebrew/Arabic w/ embeded LTR text)
     Vector<InlineTextBox*> m_sortedTextBoxes;
     size_t m_sortedTextBoxesPosition;
-    
+
     // Used when deciding whether to emit a "positioning" (e.g. newline) before any other content
     bool m_hasEmitted;
-    
+
     // Used by selection preservation code.  There should be one character emitted between every VisiblePosition
     // in the Range used to create the TextIterator.
-    // FIXME <rdar://problem/6028818>: This functionality should eventually be phased out when we rewrite 
+    // FIXME <rdar://problem/6028818>: This functionality should eventually be phased out when we rewrite
     // moveParagraphs to not clone/destroy moved content.
     bool m_emitsCharactersBetweenAllVisiblePositions;
     bool m_entersTextControls;
@@ -271,9 +271,9 @@
     int m_textLength;
 
     // Used to do the whitespace logic.
-    Node* m_lastTextNode;    
+    Node* m_lastTextNode;
     UChar m_lastCharacter;
-    
+
     // Used for whitespace characters that aren't in the DOM, so we can point at them.
     UChar m_singleCharacterBuffer;
 
@@ -298,12 +298,12 @@
 class CharacterIterator {
 public:
     explicit CharacterIterator(const Range*, TextIteratorBehavior = TextIteratorDefaultBehavior);
-    
+
     void advance(int numCharacters);
-    
+
     bool atBreak() const { return m_atBreak; }
     bool atEnd() const { return m_textIterator.atEnd(); }
-    
+
     int length() const { return m_textIterator.length() - m_runOffset; }
     UChar characterAt(unsigned index) const { return m_textIterator.characterAt(m_runOffset + index); }
 
@@ -311,7 +311,7 @@
     void appendTextTo(BufferType& output) { m_textIterator.appendTextTo(output, m_runOffset); }
 
     String string(int numChars);
-    
+
     int characterOffset() const { return m_offset; }
     PassRefPtr<Range> range() const;
 
@@ -319,10 +319,10 @@
     int m_offset;
     int m_runOffset;
     bool m_atBreak;
-    
+
     TextIterator m_textIterator;
 };
-    
+
 class BackwardsCharacterIterator {
 public:
     explicit BackwardsCharacterIterator(const Range*, TextIteratorBehavior = TextIteratorDefaultBehavior);
@@ -350,7 +350,7 @@
 
     bool atEnd() const { return !m_didLookAhead && m_textIterator.atEnd(); }
     void advance();
-    
+
     String substring(unsigned position, unsigned length) const;
     UChar characterAt(unsigned index) const;
     int length() const;
diff --git a/Source/core/editing/TypingCommand.cpp b/Source/core/editing/TypingCommand.cpp
index 7f04841..6c52965 100644
--- a/Source/core/editing/TypingCommand.cpp
+++ b/Source/core/editing/TypingCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -54,7 +54,7 @@
     , m_selectInsertedText(selectInsertedText)
     , m_text(text)
     { }
-    
+
     void operator()(size_t lineOffset, size_t lineLength, bool isLastLine) const
     {
         if (isLastLine) {
@@ -66,7 +66,7 @@
             m_typingCommand->insertParagraphSeparator();
         }
     }
-    
+
 private:
     TypingCommand* m_typingCommand;
     bool m_selectInsertedText;
@@ -93,7 +93,7 @@
 void TypingCommand::deleteSelection(Document* document, Options options)
 {
     ASSERT(document);
-    
+
     Frame* frame = document->frame();
     ASSERT(frame);
 
@@ -161,7 +161,7 @@
 
     if (!text.isEmpty())
         document->frame()->editor()->updateMarkersForWordsAffectedByEditing(isSpaceOrNewline(text[0]));
-    
+
     insertText(document, text, frame->selection()->selection(), options, composition);
 }
 
@@ -176,7 +176,7 @@
     VisibleSelection currentSelection = frame->selection()->selection();
 
     String newText = dispatchBeforeTextInsertedEvent(text, selectionForInsertion, compositionType == TextCompositionUpdate);
-    
+
     // Set the starting and ending selection appropriately if we are using a selection
     // that is different from the current selection.  In the future, we should change EditCommand
     // to deal with custom selections in a general way that can be used by all of the commands.
@@ -253,7 +253,7 @@
 {
     if (!endingSelection().isNonOrphanedCaretOrRange())
         return;
-        
+
     if (m_commandType == DeleteKey)
         if (m_commands.isEmpty())
             m_openedByBackwardDelete = true;
@@ -301,10 +301,10 @@
 
     frame->editor()->spellChecker()->cancelCheck();
 
-    // Take a look at the selection that results after typing and determine whether we need to spellcheck. 
+    // Take a look at the selection that results after typing and determine whether we need to spellcheck.
     // Since the word containing the current selection is never marked, this does a check to
     // see if typing made a new word that is not in the current selection. Basically, you
-    // get this by being at the end of a word and typing a space.    
+    // get this by being at the end of a word and typing a space.
     VisiblePosition start(endingSelection().start(), endingSelection().affinity());
     VisiblePosition previous = start.previous();
     if (previous.isNotNull()) {
@@ -375,7 +375,7 @@
         insertParagraphSeparator();
         return;
     }
-        
+
     applyCommandToComposite(BreakBlockquoteCommand::create(document()));
     typingAddedToOpenCommand(InsertParagraphSeparatorInQuotedContent);
 }
@@ -485,14 +485,14 @@
         ASSERT_NOT_REACHED();
         break;
     }
-    
+
     ASSERT(!selectionToDelete.isNone());
     if (selectionToDelete.isNone())
         return;
-    
+
     if (selectionToDelete.isCaret() || !frame->selection()->shouldDeleteSelection(selectionToDelete))
         return;
-    
+
     if (killRing)
         frame->editor()->addToKillRing(selectionToDelete.toNormalizedRange().get(), false);
     // Make undo select everything that has been deleted, unless an undo will undo more than just this deletion.
@@ -578,14 +578,14 @@
         ASSERT_NOT_REACHED();
         break;
     }
-    
+
     ASSERT(!selectionToDelete.isNone());
     if (selectionToDelete.isNone())
         return;
-    
+
     if (selectionToDelete.isCaret() || !frame->selection()->shouldDeleteSelection(selectionToDelete))
         return;
-        
+
     if (killRing)
         frame->editor()->addToKillRing(selectionToDelete.toNormalizedRange().get(), false);
     // make undo select what was deleted
diff --git a/Source/core/editing/TypingCommand.h b/Source/core/editing/TypingCommand.h
index 446d8dc..70136e2 100644
--- a/Source/core/editing/TypingCommand.h
+++ b/Source/core/editing/TypingCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TypingCommand_h
@@ -32,12 +32,12 @@
 
 class TypingCommand : public TextInsertionBaseCommand {
 public:
-    enum ETypingCommand { 
+    enum ETypingCommand {
         DeleteSelection,
-        DeleteKey, 
-        ForwardDeleteKey, 
-        InsertText, 
-        InsertLineBreak, 
+        DeleteKey,
+        ForwardDeleteKey,
+        InsertText,
+        InsertLineBreak,
         InsertParagraphSeparator,
         InsertParagraphSeparatorInQuotedContent
     };
@@ -126,7 +126,7 @@
     TextCompositionType m_compositionType;
     bool m_killRing;
     bool m_preservesTypingStyle;
-    
+
     // Undoing a series of backward deletes will restore a selection around all of the
     // characters that were deleted, but only if the typing command being undone
     // was opened with a backward delete.
diff --git a/Source/core/editing/UnlinkCommand.cpp b/Source/core/editing/UnlinkCommand.cpp
index ce4c0d0..0341fb5 100644
--- a/Source/core/editing/UnlinkCommand.cpp
+++ b/Source/core/editing/UnlinkCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/editing/UnlinkCommand.h b/Source/core/editing/UnlinkCommand.h
index fd28c15..6295d60 100644
--- a/Source/core/editing/UnlinkCommand.h
+++ b/Source/core/editing/UnlinkCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef UnlinkCommand_h
diff --git a/Source/core/editing/VisiblePosition.cpp b/Source/core/editing/VisiblePosition.cpp
index 934ea6a..0aafd6c 100644
--- a/Source/core/editing/VisiblePosition.cpp
+++ b/Source/core/editing/VisiblePosition.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -53,9 +53,9 @@
 void VisiblePosition::init(const Position& position, EAffinity affinity)
 {
     m_affinity = affinity;
-    
+
     m_deepPosition = canonicalPosition(position);
-    
+
     // When not at a line wrap, make sure to end up with DOWNSTREAM affinity.
     if (m_affinity == UPSTREAM && (isNull() || inSameLine(VisiblePosition(position, DOWNSTREAM), *this)))
         m_affinity = DOWNSTREAM;
@@ -79,14 +79,14 @@
     ASSERT(rule == CanCrossEditingBoundary || rule == CannotCrossEditingBoundary);
     // find first previous DOM position that is visible
     Position pos = previousVisuallyDistinctCandidate(m_deepPosition);
-    
+
     // return null visible position if there is no previous visible position
     if (pos.atStartOfTree())
         return VisiblePosition();
-        
+
     VisiblePosition prev = VisiblePosition(pos, DOWNSTREAM);
     ASSERT(prev != *this);
-    
+
 #ifndef NDEBUG
     // we should always be able to make the affinity DOWNSTREAM, because going previous from an
     // UPSTREAM position can never yield another UPSTREAM position (unless line wrap length is 0!).
@@ -99,7 +99,7 @@
 
     if (rule == CanCrossEditingBoundary)
         return prev;
-    
+
     return honorEditingBoundaryAtOrBefore(prev);
 }
 
@@ -440,19 +440,19 @@
 {
     if (pos.isNull())
         return pos;
-    
+
     Node* highestRoot = highestEditableRoot(deepEquivalent());
-    
+
     // Return empty position if pos is not somewhere inside the editable region containing this position
     if (highestRoot && !pos.deepEquivalent().deprecatedNode()->isDescendantOf(highestRoot))
         return VisiblePosition();
-        
+
     // Return pos itself if the two are from the very same editable region, or both are non-editable
     // FIXME: In the non-editable case, just because the new position is non-editable doesn't mean movement
     // to it is allowed.  VisibleSelection::adjustForEditableContent has this problem too.
     if (highestEditableRoot(pos.deepEquivalent()) == highestRoot)
         return pos;
-  
+
     // Return empty position if this position is non-editable, but pos is editable
     // FIXME: Move to the previous non-editable region.
     if (!highestRoot)
@@ -466,13 +466,13 @@
 {
     if (pos.isNull())
         return pos;
-    
+
     Node* highestRoot = highestEditableRoot(deepEquivalent());
-    
+
     // Return empty position if pos is not somewhere inside the editable region containing this position
     if (highestRoot && !pos.deepEquivalent().deprecatedNode()->isDescendantOf(highestRoot))
         return VisiblePosition();
-    
+
     // Return pos itself if the two are from the very same editable region, or both are non-editable
     // FIXME: In the non-editable case, just because the new position is non-editable doesn't mean movement
     // to it is allowed.  VisibleSelection::adjustForEditableContent has this problem too.
@@ -506,7 +506,7 @@
     // paths that pass selection endpoints, and updateLayout can change the selection.
     Position position = passedPosition;
 
-    // FIXME (9535):  Canonicalizing to the leftmost candidate means that if we're at a line wrap, we will 
+    // FIXME (9535):  Canonicalizing to the leftmost candidate means that if we're at a line wrap, we will
     // ask renderers to paint downstream carets for other renderers.
     // To fix this, we need to either a) add code to all paintCarets to pass the responsibility off to
     // the appropriate renderer for VisiblePosition's like these, or b) canonicalize to the rightmost candidate
@@ -526,7 +526,7 @@
     if (candidate.isCandidate())
         return candidate;
 
-    // When neither upstream or downstream gets us to a candidate (upstream/downstream won't leave 
+    // When neither upstream or downstream gets us to a candidate (upstream/downstream won't leave
     // blocks or enter new ones), we search forward and backward until we find one.
     Position next = canonicalizeCandidate(nextCandidate(position));
     Position prev = canonicalizeCandidate(previousCandidate(position));
@@ -539,12 +539,12 @@
         return next.isNotNull() ? next : prev;
 
     Node* editingRoot = editableRootForPosition(position);
-        
-    // If the html element is editable, descending into its body will look like a descent 
+
+    // If the html element is editable, descending into its body will look like a descent
     // from non-editable to editable content since rootEditableElement() always stops at the body.
     if ((editingRoot && isHTMLHtmlElement(editingRoot)) || position.deprecatedNode()->isDocumentNode())
         return next.isNotNull() ? next : prev;
-        
+
     bool prevIsInSameEditableElement = prevNode && editableRootForPosition(prev) == editingRoot;
     bool nextIsInSameEditableElement = nextNode && editableRootForPosition(next) == editingRoot;
     if (prevIsInSameEditableElement && !nextIsInSameEditableElement)
@@ -562,7 +562,7 @@
     bool prevIsOutsideOriginalBlock = !prevNode->isDescendantOf(originalBlock) && prevNode != originalBlock;
     if (nextIsOutsideOriginalBlock && !prevIsOutsideOriginalBlock)
         return prev;
-        
+
     return next;
 }
 
@@ -598,7 +598,7 @@
         return IntRect();
     }
     Node* node = m_deepPosition.anchorNode();
-    
+
     renderer = node->renderer();
     if (!renderer)
         return LayoutRect();
@@ -668,7 +668,7 @@
 {
     if (start.isNull() || end.isNull())
         return 0;
-    
+
     Position s = start.deepEquivalent().parentAnchoredEquivalent();
     Position e = end.deepEquivalent().parentAnchoredEquivalent();
     if (s.isNull() || e.isNull())
diff --git a/Source/core/editing/VisiblePosition.h b/Source/core/editing/VisiblePosition.h
index c40b22e..4b2dd42 100644
--- a/Source/core/editing/VisiblePosition.h
+++ b/Source/core/editing/VisiblePosition.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef VisiblePosition_h
@@ -81,7 +81,7 @@
 
     // FIXME: This does not handle [table, 0] correctly.
     Element* rootEditableElement() const { return m_deepPosition.isNotNull() ? m_deepPosition.deprecatedNode()->rootEditableElement() : 0; }
-    
+
     void getInlineBoxAndOffset(InlineBox*& inlineBox, int& caretOffset) const
     {
         m_deepPosition.getInlineBoxAndOffset(m_affinity, inlineBox, caretOffset);
@@ -99,13 +99,13 @@
     // Abs x/y position of the caret ignoring transforms.
     // FIXME: navigation with transforms should be smarter.
     int lineDirectionPointForBlockDirectionNavigation() const;
-    
+
 #ifndef NDEBUG
     void debugPosition(const char* msg = "") const;
     void formatForDebugger(char* buffer, unsigned length) const;
     void showTreeForThis() const;
 #endif
-    
+
 private:
     void init(const Position&, EAffinity);
     Position canonicalPosition(const Position&);
@@ -122,7 +122,7 @@
 {
     return a.deepEquivalent() == b.deepEquivalent();
 }
- 
+
 inline bool operator!=(const VisiblePosition& a, const VisiblePosition& b)
 {
     return !(a == b);
diff --git a/Source/core/editing/VisibleSelection.cpp b/Source/core/editing/VisibleSelection.cpp
index 6b69829..f31895c 100644
--- a/Source/core/editing/VisibleSelection.cpp
+++ b/Source/core/editing/VisibleSelection.cpp
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
-  
+
 #include "config.h"
 #include "core/editing/VisibleSelection.h"
 
@@ -154,18 +154,18 @@
     if (isCaret()) {
         // If the selection is a caret, move the range start upstream. This helps us match
         // the conventions of text editors tested, which make style determinations based
-        // on the character before the caret, if any. 
+        // on the character before the caret, if any.
         s = m_start.upstream().parentAnchoredEquivalent();
         e = s;
     } else {
         // If the selection is a range, select the minimum range that encompasses the selection.
-        // Again, this is to match the conventions of text editors tested, which make style 
-        // determinations based on the first character of the selection. 
-        // For instance, this operation helps to make sure that the "X" selected below is the 
-        // only thing selected. The range should not be allowed to "leak" out to the end of the 
-        // previous text node, or to the beginning of the next text node, each of which has a 
+        // Again, this is to match the conventions of text editors tested, which make style
+        // determinations based on the first character of the selection.
+        // For instance, this operation helps to make sure that the "X" selected below is the
+        // only thing selected. The range should not be allowed to "leak" out to the end of the
+        // previous text node, or to the beginning of the next text node, each of which has a
         // different style.
-        // 
+        //
         // On a treasure map, <b>X</b> marks the spot.
         //                       ^ selected
         //
@@ -302,15 +302,15 @@
             side = RightWordIfOnBoundary;
             if (isEndOfEditableOrNonEditableContent(originalEnd) || (isEndOfLine(originalEnd) && !isStartOfLine(originalEnd) && !isEndOfParagraph(originalEnd)))
                 side = LeftWordIfOnBoundary;
-                
+
             VisiblePosition wordEnd(endOfWord(originalEnd, side));
             VisiblePosition end(wordEnd);
-            
+
             if (isEndOfParagraph(originalEnd) && !isEmptyTableCell(m_start.deprecatedNode())) {
-                // Select the paragraph break (the space from the end of a paragraph to the start of 
+                // Select the paragraph break (the space from the end of a paragraph to the start of
                 // the next one) to match TextEdit.
                 end = wordEnd.next();
-                
+
                 if (Node* table = isFirstPositionAfterTable(end)) {
                     // The paragraph break after the last paragraph in the last cell of a block table ends
                     // at the start of the paragraph after the table.
@@ -319,12 +319,12 @@
                     else
                         end = wordEnd;
                 }
-                
+
                 if (end.isNull())
                     end = wordEnd;
-                    
+
             }
-                
+
             m_end = end.deepEquivalent();
             break;
         }
@@ -336,7 +336,7 @@
         case LineGranularity: {
             m_start = startOfLine(VisiblePosition(m_start, m_affinity)).deepEquivalent();
             VisiblePosition end = endOfLine(VisiblePosition(m_end, m_affinity));
-            // If the end of this line is at the end of a paragraph, include the space 
+            // If the end of this line is at the end of a paragraph, include the space
             // after the end of the line in the selection.
             if (isEndOfParagraph(end)) {
                 VisiblePosition next = end.next();
@@ -356,11 +356,11 @@
                 pos = pos.previous();
             m_start = startOfParagraph(pos).deepEquivalent();
             VisiblePosition visibleParagraphEnd = endOfParagraph(VisiblePosition(m_end, m_affinity));
-            
+
             // Include the "paragraph break" (the space from the end of this paragraph to the start
             // of the next one) in the selection.
             VisiblePosition end(visibleParagraphEnd.next());
-             
+
             if (Node* table = isFirstPositionAfterTable(end)) {
                 // The paragraph break after the last paragraph in the last cell of a block table ends
                 // at the start of the paragraph after the table, not at the position just after the table.
@@ -370,10 +370,10 @@
                 else
                     end = visibleParagraphEnd;
             }
-             
+
             if (end.isNull())
                 end = visibleParagraphEnd;
-                
+
             m_end = end.deepEquivalent();
             break;
         }
@@ -390,7 +390,7 @@
             m_end = endOfSentence(VisiblePosition(m_end, m_affinity)).deepEquivalent();
             break;
     }
-    
+
     // Make sure we do not have a dangling start or end.
     if (m_start.isNull())
         m_start = m_end;
@@ -426,7 +426,7 @@
         // This is a somewhat arbitrary choice, but experience shows that it is
         // useful to make to make the selection "canonical" (if only for
         // purposes of comparing selections). This is an ideal point of the code
-        // to do this operation, since all selection changes that result in a RANGE 
+        // to do this operation, since all selection changes that result in a RANGE
         // come through here before anyone uses it.
         // FIXME: Canonicalizing is good, but haven't we already done it (when we
         // set these two positions to VisiblePosition deepEquivalent()s above)?
@@ -487,7 +487,7 @@
     TreeScope* treeScope = endContainerNode->treeScope();
 
     ASSERT(currentPosition.containerNode()->treeScope() != treeScope);
-    
+
     if (Node* ancestor = treeScope->ancestorInThisScope(currentPosition.containerNode())) {
         if (ancestor->contains(endContainerNode))
             return positionBeforeNode(ancestor);
@@ -527,13 +527,13 @@
     Node* baseRoot = highestEditableRoot(m_base);
     Node* startRoot = highestEditableRoot(m_start);
     Node* endRoot = highestEditableRoot(m_end);
-    
+
     Node* baseEditableAncestor = lowestEditableAncestor(m_base.containerNode());
-    
+
     // The base, start and end are all in the same region.  No adjustment necessary.
     if (baseRoot == startRoot && baseRoot == endRoot)
         return;
-    
+
     // The selection is based in editable content.
     if (baseRoot) {
         // If the start is outside the base's editable root, cap it at the start of that root.
@@ -560,12 +560,12 @@
     } else {
         // FIXME: Non-editable pieces inside editable content should be atomic, in the same way that editable
         // pieces in non-editable content are atomic.
-    
-        // The selection ends in editable content or non-editable content inside a different editable ancestor, 
+
+        // The selection ends in editable content or non-editable content inside a different editable ancestor,
         // move backward until non-editable content inside the same lowest editable ancestor is reached.
         Node* endEditableAncestor = lowestEditableAncestor(m_end.containerNode());
         if (endRoot || endEditableAncestor != baseEditableAncestor) {
-            
+
             Position p = previousVisuallyDistinctCandidate(m_end);
             Node* shadowAncestor = endRoot ? endRoot->shadowHost() : 0;
             if (p.isNull() && shadowAncestor)
@@ -591,9 +591,9 @@
             m_end = previous.deepEquivalent();
         }
 
-        // The selection starts in editable content or non-editable content inside a different editable ancestor, 
+        // The selection starts in editable content or non-editable content inside a different editable ancestor,
         // move forward until non-editable content inside the same lowest editable ancestor is reached.
-        Node* startEditableAncestor = lowestEditableAncestor(m_start.containerNode());      
+        Node* startEditableAncestor = lowestEditableAncestor(m_start.containerNode());
         if (startRoot || startEditableAncestor != baseEditableAncestor) {
             Position p = nextVisuallyDistinctCandidate(m_start);
             Node* shadowAncestor = startRoot ? startRoot->shadowHost() : 0;
@@ -607,7 +607,7 @@
                     p = positionBeforeNode(shadowAncestor);
             }
             VisiblePosition next(p);
-            
+
             if (next.isNull()) {
                 // The selection crosses an Editing boundary.  This is a
                 // programmer error in the editing code.  Happy debugging!
@@ -620,7 +620,7 @@
             m_start = next.deepEquivalent();
         }
     }
-    
+
     // Correct the extent if necessary.
     if (baseEditableAncestor != lowestEditableAncestor(m_extent.containerNode()))
         m_extent = m_baseIsFirst ? m_end : m_start;
diff --git a/Source/core/editing/VisibleSelection.h b/Source/core/editing/VisibleSelection.h
index bb7c528..5e515f8 100644
--- a/Source/core/editing/VisibleSelection.h
+++ b/Source/core/editing/VisibleSelection.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef VisibleSelection_h
@@ -47,7 +47,7 @@
     VisibleSelection(const Position&, const Position&, EAffinity = SEL_DEFAULT_AFFINITY, bool isDirectional = false);
 
     VisibleSelection(const Range*, EAffinity = SEL_DEFAULT_AFFINITY, bool isDirectional = false);
-    
+
     VisibleSelection(const VisiblePosition&, bool isDirectional = false);
     VisibleSelection(const VisiblePosition&, const VisiblePosition&, bool isDirectional = false);
 
@@ -62,12 +62,12 @@
     void setBase(const VisiblePosition&);
     void setExtent(const Position&);
     void setExtent(const VisiblePosition&);
-    
+
     Position base() const { return m_base; }
     Position extent() const { return m_extent; }
     Position start() const { return m_start; }
     Position end() const { return m_end; }
-    
+
     VisiblePosition visibleStart() const { return VisiblePosition(m_start, isRange() ? DOWNSTREAM : affinity()); }
     VisiblePosition visibleEnd() const { return VisiblePosition(m_end, isRange() ? UPSTREAM : affinity()); }
     VisiblePosition visibleBase() const { return VisiblePosition(m_base, isRange() ? (isBaseFirst() ? UPSTREAM : DOWNSTREAM) : affinity()); }
@@ -89,7 +89,7 @@
     void appendTrailingWhitespace();
 
     bool expandUsingGranularity(TextGranularity granularity);
-    
+
     // We don't yet support multi-range selections, so we only ever have one range to return.
     PassRefPtr<Range> firstRange() const;
 
@@ -97,7 +97,7 @@
     // for historical reasons.  toNormalizedRange contracts the range around
     // text, and moves the caret upstream before returning the range.
     PassRefPtr<Range> toNormalizedRange() const;
-    
+
     Element* rootEditableElement() const;
     bool isContentEditable() const;
     bool rendererIsEditable() const;
diff --git a/Source/core/editing/VisibleUnits.h b/Source/core/editing/VisibleUnits.h
index a4b914b..f1b9871 100644
--- a/Source/core/editing/VisibleUnits.h
+++ b/Source/core/editing/VisibleUnits.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef VisibleUnits_h
diff --git a/Source/core/editing/WrapContentsInDummySpanCommand.cpp b/Source/core/editing/WrapContentsInDummySpanCommand.cpp
index 593f41f..5013f92 100644
--- a/Source/core/editing/WrapContentsInDummySpanCommand.cpp
+++ b/Source/core/editing/WrapContentsInDummySpanCommand.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -55,10 +55,10 @@
 void WrapContentsInDummySpanCommand::doApply()
 {
     m_dummySpan = createStyleSpanElement(document());
-    
+
     executeApply();
 }
-    
+
 void WrapContentsInDummySpanCommand::doUnapply()
 {
     ASSERT(m_element);
@@ -80,7 +80,7 @@
 void WrapContentsInDummySpanCommand::doReapply()
 {
     ASSERT(m_element);
-    
+
     if (!m_dummySpan || !m_element->rendererIsEditable())
         return;
 
@@ -94,5 +94,5 @@
     addNodeAndDescendants(m_dummySpan.get(), nodes);
 }
 #endif
-    
+
 } // namespace WebCore
diff --git a/Source/core/editing/WrapContentsInDummySpanCommand.h b/Source/core/editing/WrapContentsInDummySpanCommand.h
index 07a13f1..514f305 100644
--- a/Source/core/editing/WrapContentsInDummySpanCommand.h
+++ b/Source/core/editing/WrapContentsInDummySpanCommand.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WrapContentsInDummySpanCommand_h
diff --git a/Source/core/editing/WritingDirection.h b/Source/core/editing/WritingDirection.h
index b3cff66..3cf789f 100644
--- a/Source/core/editing/WritingDirection.h
+++ b/Source/core/editing/WritingDirection.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WritingDirection_h
diff --git a/Source/core/editing/chromium/EditorChromium.cpp b/Source/core/editing/chromium/EditorChromium.cpp
index 97f7ca9..f8b8be7 100644
--- a/Source/core/editing/chromium/EditorChromium.cpp
+++ b/Source/core/editing/chromium/EditorChromium.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/editing/htmlediting.cpp b/Source/core/editing/htmlediting.cpp
index c00896f..756ee45 100644
--- a/Source/core/editing/htmlediting.cpp
+++ b/Source/core/editing/htmlediting.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -109,11 +109,11 @@
     Node* node = position.deprecatedNode();
     if (!node)
         return 0;
-        
+
     Node* highestRoot = editableRootForPosition(position, editableType);
     if (!highestRoot)
         return 0;
-    
+
     node = highestRoot;
     while (node) {
         if (node->rendererIsEditable(editableType))
@@ -122,7 +122,7 @@
             break;
         node = node->parentNode();
     }
-    
+
     return highestRoot;
 }
 
@@ -130,7 +130,7 @@
 {
     if (!node)
         return 0;
-    
+
     Node* lowestRoot = 0;
     while (node) {
         if (node->rendererIsEditable())
@@ -139,7 +139,7 @@
             break;
         node = node->parentNode();
     }
-    
+
     return lowestRoot;
 }
 
@@ -155,7 +155,7 @@
 
     if (node->renderer() && node->renderer()->isTable())
         node = node->parentNode();
-    
+
     return node->rendererIsEditable(editableType);
 }
 
@@ -164,17 +164,17 @@
     Node* node = pos.deprecatedNode();
     return (node == editableRootForPosition(pos) || node == enclosingNodeOfType(pos, &isTableCell));
 }
-    
-    
+
+
 bool isRichlyEditablePosition(const Position& p, EditableType editableType)
 {
     Node* node = p.deprecatedNode();
     if (!node)
         return false;
-        
+
     if (node->renderer() && node->renderer()->isTable())
         node = node->parentNode();
-    
+
     return node->rendererIsRichlyEditable(editableType);
 }
 
@@ -183,10 +183,10 @@
     Node* node = p.containerNode();
     if (!node)
         return 0;
-        
+
     if (node->renderer() && node->renderer()->isTable())
         node = node->parentNode();
-    
+
     return node->rootEditableElement(editableType);
 }
 
@@ -268,10 +268,10 @@
 
     while (p.deprecatedNode() && !isEditablePosition(p) && p.deprecatedNode()->isDescendantOf(highestRoot))
         p = isAtomicNode(p.deprecatedNode()) ? positionInParentAfterNode(p.deprecatedNode()) : nextVisuallyDistinctCandidate(p);
-    
+
     if (p.deprecatedNode() && p.deprecatedNode() != highestRoot && !p.deprecatedNode()->isDescendantOf(highestRoot))
         return VisiblePosition();
-    
+
     return VisiblePosition(p);
 }
 
@@ -290,13 +290,13 @@
 
         p = firstPositionInOrBeforeNode(shadowAncestor);
     }
-    
+
     while (p.deprecatedNode() && !isEditablePosition(p) && p.deprecatedNode()->isDescendantOf(highestRoot))
         p = isAtomicNode(p.deprecatedNode()) ? positionInParentBeforeNode(p.deprecatedNode()) : previousVisuallyDistinctCandidate(p);
-    
+
     if (p.deprecatedNode() && p.deprecatedNode() != highestRoot && !p.deprecatedNode()->isDescendantOf(highestRoot))
         return VisiblePosition();
-    
+
     return VisiblePosition(p);
 }
 
@@ -313,8 +313,8 @@
 }
 
 // FIXME: Deploy this in all of the places where enclosingBlockFlow/enclosingBlockFlowOrTableElement are used.
-// FIXME: Pass a position to this function. The enclosing block of [table, x] for example, should be the 
-// block that contains the table and not the table, and this function should be the only one responsible for 
+// FIXME: Pass a position to this function. The enclosing block of [table, x] for example, should be the
+// block that contains the table and not the table, and this function should be the only one responsible for
 // knowing about these kinds of special cases.
 Element* enclosingBlock(Node* node, EditingBoundaryCrossingRule rule)
 {
@@ -372,7 +372,7 @@
             rebalancedString[i] = ' ';
             previousCharacterWasSpace = true;
         }
-            
+
     }
 
     return String::adopt(rebalancedString);
@@ -395,7 +395,7 @@
 {
     if (!n)
         return false;
-        
+
     if (!n->isHTMLElement())
         return false;
 
@@ -405,7 +405,7 @@
     RenderObject* renderer = n->renderer();
     if (!renderer)
         return false;
-        
+
     if (renderer->style()->display() == TABLE || renderer->style()->display() == INLINE_TABLE)
         return true;
 
@@ -414,7 +414,7 @@
 
     if (renderer->style()->position() != StaticPosition)
         return true;
-        
+
     return false;
 }
 
@@ -479,7 +479,7 @@
     Position upstream(visiblePosition.deepEquivalent().upstream());
     if (upstream.deprecatedNode() && upstream.deprecatedNode()->renderer() && upstream.deprecatedNode()->renderer()->isTable() && upstream.atLastEditingPositionForNode())
         return upstream.deprecatedNode();
-    
+
     return 0;
 }
 
@@ -488,7 +488,7 @@
     Position downstream(visiblePosition.deepEquivalent().downstream());
     if (downstream.deprecatedNode() && downstream.deprecatedNode()->renderer() && downstream.deprecatedNode()->renderer()->isTable() && downstream.atFirstEditingPositionForNode())
         return downstream.deprecatedNode();
-    
+
     return 0;
 }
 
@@ -541,7 +541,7 @@
 {
     if (p.isNull())
         return 0;
-        
+
     Node* root = highestEditableRoot(p);
     for (Node* n = p.deprecatedNode(); n; n = n->parentNode()) {
         if (root && !n->rendererIsEditable())
@@ -551,7 +551,7 @@
         if (n == root)
             return 0;
     }
-    
+
     return 0;
 }
 
@@ -561,7 +561,7 @@
     ASSERT(rule == CanCrossEditingBoundary || rule == CannotCrossEditingBoundary);
     if (p.isNull())
         return 0;
-        
+
     Node* root = rule == CannotCrossEditingBoundary ? highestEditableRoot(p) : 0;
     for (Node* n = p.deprecatedNode(); n; n = n->parentNode()) {
         // Don't return a non-editable node if the input position was editable, since
@@ -573,7 +573,7 @@
         if (n == root)
             return 0;
     }
-    
+
     return 0;
 }
 
@@ -589,7 +589,7 @@
         if (n == root)
             break;
     }
-    
+
     return highest;
 }
 
@@ -630,7 +630,7 @@
 {
     if (p.isNull())
         return 0;
-    
+
     Node* node = p.deprecatedNode();
     while (node && !(node->isElementNode() && node->isLink()))
         node = node->parentNode();
@@ -641,16 +641,16 @@
 {
     if (!node)
         return 0;
-        
+
     Node* root = highestEditableRoot(firstPositionInOrBeforeNode(node));
-    
+
     for (ContainerNode* n = node->parentNode(); n; n = n->parentNode()) {
         if (n->hasTagName(ulTag) || n->hasTagName(olTag))
             return toHTMLElement(n);
         if (n == root)
             return 0;
     }
-    
+
     return 0;
 }
 
@@ -661,7 +661,7 @@
     // Check for a list item element, or for a node whose parent is a list element. Such a node
     // will appear visually as a list item (but without a list marker)
     Node* root = highestEditableRoot(firstPositionInOrBeforeNode(node));
-    
+
     // FIXME: This function is inappropriately named if it starts with node instead of node->parentNode()
     for (Node* n = node; n && n->parentNode(); n = n->parentNode()) {
         if (n->hasTagName(liTag) || (isListElement(n->parentNode()) && n != root))
@@ -669,7 +669,7 @@
         if (n == root || isTableCell(n))
             return 0;
     }
-    
+
     return 0;
 }
 
@@ -680,7 +680,7 @@
         if (isListElement(n))
             return toHTMLElement(n);
     }
-    
+
     return 0;
 }
 
@@ -693,7 +693,7 @@
         if (isListItem(listItem))
             return 0;
     }
-    
+
     return 0;
 }
 
@@ -710,10 +710,10 @@
 
     if (firstInListChild != visiblePos || lastInListChild != visiblePos)
         return 0;
-    
+
     if (embeddedSublist(listChildNode) || appendedSublist(listChildNode))
         return 0;
-        
+
     return listChildNode;
 }
 
@@ -768,7 +768,7 @@
     RenderObject* r = node->renderer();
     if (!r)
         return node->hasTagName(tdTag) || node->hasTagName(thTag);
-    
+
     return r->isTableCell();
 }
 
@@ -862,7 +862,7 @@
 {
     return isTabSpanTextNode(node) ? node->parentNode() : 0;
 }
-    
+
 Position positionOutsideTabSpan(const Position& pos)
 {
     Node* node = pos.containerNode();
@@ -923,7 +923,7 @@
     for (Node* n = p.deprecatedNode(); n; n = n->parentNode())
         if (isMailBlockquote(n))
             num++;
-    
+
     return num;
 }
 
@@ -961,7 +961,7 @@
 {
     if (!node || !node->hasTagName(blockquoteTag))
         return false;
-        
+
     return toElement(node)->getAttribute("type") == "cite";
 }
 
@@ -972,7 +972,7 @@
     return r ? r->caretMinOffset() : 0;
 }
 
-// If a node can contain candidates for VisiblePositions, return the offset of the last candidate, otherwise 
+// If a node can contain candidates for VisiblePositions, return the offset of the last candidate, otherwise
 // return the number of children for container nodes and the length for unrendered text nodes.
 int caretMaxOffset(const Node* n)
 {
@@ -992,16 +992,16 @@
 {
     if (position.isNull())
         return false;
-    
+
     if (position.anchorNode()->hasTagName(brTag) && position.atFirstEditingPositionForNode())
         return true;
-    
+
     if (!position.anchorNode()->renderer())
         return false;
-    
+
     if (!position.anchorNode()->isTextNode() || !position.anchorNode()->renderer()->style()->preserveNewline())
         return false;
-    
+
     Text* textNode = toText(position.anchorNode());
     unsigned offset = position.offsetInContainerNode();
     return offset < textNode->length() && textNode->data()[offset] == '\n';
@@ -1015,7 +1015,7 @@
     VisibleSelection newSelection(original);
     VisiblePosition startOfSelection(newSelection.visibleStart());
     VisiblePosition endOfSelection(newSelection.visibleEnd());
-    
+
     // If the end of the selection to modify is just after a table, and
     // if the start of the selection is inside that table, then the last paragraph
     // that we'll want modify is the last one inside the table, not the table itself
@@ -1023,7 +1023,7 @@
     if (Node* table = isFirstPositionAfterTable(endOfSelection))
         if (startOfSelection.deepEquivalent().deprecatedNode()->isDescendantOf(table))
             newSelection = VisibleSelection(startOfSelection, endOfSelection.previous(CannotCrossEditingBoundary));
-    
+
     // If the start of the selection to modify is just before a table,
     // and if the end of the selection is inside that table, then the first paragraph
     // we'll want to modify is the first one inside the table, not the paragraph
@@ -1031,14 +1031,14 @@
     if (Node* table = isLastPositionBeforeTable(startOfSelection))
         if (endOfSelection.deepEquivalent().deprecatedNode()->isDescendantOf(table))
             newSelection = VisibleSelection(startOfSelection.next(CannotCrossEditingBoundary), endOfSelection);
-    
+
     return newSelection;
 }
 
-// FIXME: indexForVisiblePosition and visiblePositionForIndex use TextIterators to convert between 
-// VisiblePositions and indices. But TextIterator iteration using TextIteratorEmitsCharactersBetweenAllVisiblePositions 
-// does not exactly match VisiblePosition iteration, so using them to preserve a selection during an editing 
-// opertion is unreliable. TextIterator's TextIteratorEmitsCharactersBetweenAllVisiblePositions mode needs to be fixed, 
+// FIXME: indexForVisiblePosition and visiblePositionForIndex use TextIterators to convert between
+// VisiblePositions and indices. But TextIterator iteration using TextIteratorEmitsCharactersBetweenAllVisiblePositions
+// does not exactly match VisiblePosition iteration, so using them to preserve a selection during an editing
+// opertion is unreliable. TextIterator's TextIteratorEmitsCharactersBetweenAllVisiblePositions mode needs to be fixed,
 // or these functions need to be changed to iterate using actual VisiblePositions.
 // FIXME: Deploy these functions everywhere that TextIterators are used to convert between VisiblePositions and indices.
 int indexForVisiblePosition(const VisiblePosition& visiblePosition, RefPtr<ContainerNode>& scope)
@@ -1063,7 +1063,7 @@
 VisiblePosition visiblePositionForIndex(int index, ContainerNode* scope)
 {
     RefPtr<Range> range = TextIterator::rangeFromLocationAndLength(scope, index, 0, true);
-    // Check for an invalid index. Certain editing operations invalidate indices because 
+    // Check for an invalid index. Certain editing operations invalidate indices because
     // of problems with TextIteratorEmitsCharactersBetweenAllVisiblePositions.
     if (!range)
         return VisiblePosition();
@@ -1133,12 +1133,12 @@
         || node->hasTagName(h4Tag)
         || node->hasTagName(h5Tag);
 }
-    
+
 Position adjustedSelectionStartForStyleComputation(const VisibleSelection& selection)
 {
     // This function is used by range style computations to avoid bugs like:
     // <rdar://problem/4017641> REGRESSION (Mail): you can only bold/unbold a selection starting from end of line once
-    // It is important to skip certain irrelevant content at the start of the selection, so we do not wind up 
+    // It is important to skip certain irrelevant content at the start of the selection, so we do not wind up
     // with a spurious "mixed" style.
 
     VisiblePosition visiblePosition = selection.start();
diff --git a/Source/core/editing/htmlediting.h b/Source/core/editing/htmlediting.h
index de1496f..aa5c2ca 100644
--- a/Source/core/editing/htmlediting.h
+++ b/Source/core/editing/htmlediting.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef htmlediting_h
@@ -117,12 +117,12 @@
 // -------------------------------------------------------------------------
 // Position
 // -------------------------------------------------------------------------
-    
+
 // Functions returning Position
-    
+
 Position nextCandidate(const Position&);
 Position previousCandidate(const Position&);
-    
+
 Position nextVisuallyDistinctCandidate(const Position&);
 Position previousVisuallyDistinctCandidate(const Position&);
 
@@ -145,7 +145,7 @@
 }
 
 // comparision functions on Position
-    
+
 int comparePositions(const Position&, const Position&);
 
 // boolean functions on Position
@@ -165,16 +165,16 @@
 // -------------------------------------------------------------------------
 // VisiblePosition
 // -------------------------------------------------------------------------
-    
+
 // Functions returning VisiblePosition
-    
+
 VisiblePosition firstEditablePositionAfterPositionInRoot(const Position&, Node*);
 VisiblePosition lastEditablePositionBeforePositionInRoot(const Position&, Node*);
 VisiblePosition visiblePositionBeforeNode(Node*);
 VisiblePosition visiblePositionAfterNode(Node*);
 
 bool lineBreakExistsAtVisiblePosition(const VisiblePosition&);
-    
+
 int comparePositions(const VisiblePosition&, const VisiblePosition&);
 
 int indexForVisiblePosition(const VisiblePosition&, RefPtr<ContainerNode>& scope);
@@ -191,9 +191,9 @@
 // -------------------------------------------------------------------------
 // HTMLElement
 // -------------------------------------------------------------------------
-    
+
 // Functions returning HTMLElement
-    
+
 PassRefPtr<HTMLElement> createDefaultParagraphElement(Document*);
 PassRefPtr<HTMLElement> createBreakElement(Document*);
 PassRefPtr<HTMLElement> createOrderedListElement(Document*);
@@ -209,9 +209,9 @@
 // -------------------------------------------------------------------------
 // Element
 // -------------------------------------------------------------------------
-    
+
 // Functions returning Element
-    
+
 PassRefPtr<Element> createTabSpanElement(Document*);
 PassRefPtr<Element> createTabSpanElement(Document*, PassRefPtr<Node> tabTextNode);
 PassRefPtr<Element> createTabSpanElement(Document*, const String& tabText);
@@ -221,9 +221,9 @@
 Element* unsplittableElementForPosition(const Position&);
 
 // Boolean functions on Element
-    
+
 bool canMergeLists(Element* firstList, Element* secondList);
-    
+
 // -------------------------------------------------------------------------
 // VisibleSelection
 // -------------------------------------------------------------------------
@@ -232,7 +232,7 @@
 VisibleSelection selectionForParagraphIteration(const VisibleSelection&);
 
 Position adjustedSelectionStartForStyleComputation(const VisibleSelection&);
-    
+
 
 // Miscellaneous functions on Text
 inline bool isWhitespace(UChar c)
diff --git a/Source/core/editing/markup.cpp b/Source/core/editing/markup.cpp
index bb695bf..e5b0060 100644
--- a/Source/core/editing/markup.cpp
+++ b/Source/core/editing/markup.cpp
@@ -23,7 +23,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -112,7 +112,7 @@
     for (size_t i = 0; i < numChanges; ++i)
         changes[i].apply();
 }
-    
+
 class StyledMarkupAccumulator : public MarkupAccumulator {
 public:
     enum RangeFullySelectsNode { DoesFullySelectNode, DoesNotFullySelectNode };
@@ -213,7 +213,7 @@
 }
 
 void StyledMarkupAccumulator::appendText(StringBuilder& out, Text* text)
-{    
+{
     const bool parentIsTextarea = text->parentElement() && text->parentElement()->tagQName() == textareaTag;
     const bool wrappingSpan = shouldApplyWrappingStyle(text) && !parentIsTextarea;
     if (wrappingSpan) {
@@ -240,7 +240,7 @@
     if (wrappingSpan)
         out.append(styleNodeCloseTag());
 }
-    
+
 String StyledMarkupAccumulator::renderedText(const Node* node, const Range* range)
 {
     if (!node->isTextNode())
@@ -352,7 +352,7 @@
         ASSERT(n);
         if (!n)
             break;
-        
+
         next = NodeTraversal::next(n);
         bool openedTag = false;
 
@@ -500,7 +500,7 @@
     ASSERT(commonAncestor);
     Node* specialCommonAncestor = 0;
     if (shouldAnnotate == AnnotateForInterchange) {
-        // Include ancestors that aren't completely inside the range but are required to retain 
+        // Include ancestors that aren't completely inside the range but are required to retain
         // the structure and appearance of the copied markup.
         specialCommonAncestor = ancestorToRetainStructureAndAppearance(commonAncestor);
 
@@ -526,7 +526,7 @@
 
     // If a single tab is selected, commonAncestor will be a text node inside a tab span.
     // If two or more tabs are selected, commonAncestor will be the tab span.
-    // In either case, if there is a specialCommonAncestor already, it will necessarily be above 
+    // In either case, if there is a specialCommonAncestor already, it will necessarily be above
     // any tab span that needs to be included.
     if (!specialCommonAncestor && isTabSpanTextNode(commonAncestor))
         specialCommonAncestor = commonAncestor->parentNode();
@@ -539,7 +539,7 @@
     return specialCommonAncestor;
 }
 
-// FIXME: Shouldn't we omit style info when annotate == DoNotAnnotateForInterchange? 
+// FIXME: Shouldn't we omit style info when annotate == DoNotAnnotateForInterchange?
 // FIXME: At least, annotation and style info should probably not be included in range.markupString()
 static String createMarkupInternal(Document* document, const Range* range, const Range* updatedRange, Vector<Node*>* nodes,
     EAnnotateForInterchange shouldAnnotate, bool convertBlocksToInlines, EAbsoluteURLs shouldResolveURLs, Node* constrainingAncestor)
@@ -612,9 +612,9 @@
             }
             if (nodes)
                 nodes->append(ancestor);
-            
+
             lastClosed = ancestor;
-            
+
             if (ancestor == specialCommonAncestor)
                 break;
         }
@@ -790,10 +790,10 @@
 {
     if (!node->isElementNode() || !node->hasTagName(divTag) || toElement(node)->hasAttributes())
         return false;
-    
+
     if (node->childNodeCount() == 1 && (node->firstChild()->isTextNode() || (node->firstChild()->firstChild())))
         return true;
-    
+
     return (node->childNodeCount() == 2 && isTabSpanTextNode(node->firstChild()->firstChild()) && node->firstChild()->nextSibling()->isTextNode());
 }
 
@@ -811,7 +811,7 @@
 
     Document* document = styleNode->document();
     RefPtr<DocumentFragment> fragment = document->createDocumentFragment();
-    
+
     if (text.isEmpty())
         return fragment.release();
 
@@ -824,7 +824,7 @@
         fragment->appendChild(document->createTextNode(string), ASSERT_NO_EXCEPTION);
         if (string.endsWith('\n')) {
             RefPtr<Element> element = createBreakElement(document);
-            element->setAttribute(classAttr, AppleInterchangeNewline);            
+            element->setAttribute(classAttr, AppleInterchangeNewline);
             fragment->appendChild(element.release(), ASSERT_NO_EXCEPTION);
         }
         return fragment.release();
@@ -893,16 +893,16 @@
 {
     if (!node)
         return String();
-        
+
     Document* document = node->document();
     if (!document)
         return String();
-        
+
     Frame* frame = document->frame();
     if (!frame)
         return String();
 
-    // FIXME: This is never "for interchange". Is that right?    
+    // FIXME: This is never "for interchange". Is that right?
     String markupString = createMarkup(node, IncludeNode, 0);
     Node::NodeType nodeType = node->nodeType();
     if (nodeType != Node::DOCUMENT_NODE && nodeType != Node::DOCUMENT_TYPE_NODE)
@@ -919,17 +919,17 @@
     Node* node = range->startContainer();
     if (!node)
         return String();
-        
+
     Document* document = node->document();
     if (!document)
         return String();
-        
+
     Frame* frame = document->frame();
     if (!frame)
         return String();
 
     // FIXME: This is always "for interchange". Is that right? See the previous method.
-    return frame->documentTypeString() + createMarkup(range, 0, AnnotateForInterchange);        
+    return frame->documentTypeString() + createMarkup(range, 0, AnnotateForInterchange);
 }
 
 String urlToMarkup(const KURL& url, const String& title)
@@ -964,7 +964,7 @@
 PassRefPtr<DocumentFragment> createFragmentForTransformToFragment(const String& sourceString, const String& sourceMIMEType, Document* outputDoc)
 {
     RefPtr<DocumentFragment> fragment = outputDoc->createDocumentFragment();
-    
+
     if (sourceMIMEType == "text/html") {
         // As far as I can tell, there isn't a spec for how transformToFragment is supposed to work.
         // Based on the documentation I can find, it looks like we want to start parsing the fragment in the InBody insertion mode.
@@ -979,9 +979,9 @@
         if (!successfulParse)
             return 0;
     }
-    
+
     // FIXME: Do we need to mess with URLs here?
-    
+
     return fragment.release();
 }
 
diff --git a/Source/core/editing/markup.h b/Source/core/editing/markup.h
index 3c1b435..acb34df 100644
--- a/Source/core/editing/markup.h
+++ b/Source/core/editing/markup.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef markup_h
diff --git a/Source/core/fileapi/BlobBuilder.cpp b/Source/core/fileapi/BlobBuilder.cpp
index 039c8af..dfd1562 100644
--- a/Source/core/fileapi/BlobBuilder.cpp
+++ b/Source/core/fileapi/BlobBuilder.cpp
@@ -60,7 +60,7 @@
 
 void BlobBuilder::append(const String& text, const String& endingType)
 {
-    CString utf8Text = UTF8Encoding().encode(text, WTF::EntitiesForUnencodables);
+    CString utf8Text = UTF8Encoding().normalizeAndEncode(text, WTF::EntitiesForUnencodables);
 
     Vector<char>& buffer = getBuffer();
     size_t oldSize = buffer.size();
diff --git a/Source/core/fileapi/File.cpp b/Source/core/fileapi/File.cpp
index 257b47c..5a971a8 100644
--- a/Source/core/fileapi/File.cpp
+++ b/Source/core/fileapi/File.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/fileapi/File.h b/Source/core/fileapi/File.h
index 3234892..063315d 100644
--- a/Source/core/fileapi/File.h
+++ b/Source/core/fileapi/File.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef File_h
diff --git a/Source/core/fileapi/File.idl b/Source/core/fileapi/File.idl
index 4e653fd..bfdf6b1 100644
--- a/Source/core/fileapi/File.idl
+++ b/Source/core/fileapi/File.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface File : Blob {
diff --git a/Source/core/fileapi/FileList.cpp b/Source/core/fileapi/FileList.cpp
index 2f4f95e..1b507c6 100644
--- a/Source/core/fileapi/FileList.cpp
+++ b/Source/core/fileapi/FileList.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/fileapi/FileList.h b/Source/core/fileapi/FileList.h
index fbd29bf..75e07ae 100644
--- a/Source/core/fileapi/FileList.h
+++ b/Source/core/fileapi/FileList.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FileList_h
diff --git a/Source/core/fileapi/FileList.idl b/Source/core/fileapi/FileList.idl
index b0a09ef..a2a2472 100644
--- a/Source/core/fileapi/FileList.idl
+++ b/Source/core/fileapi/FileList.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/fileapi/FileReader.cpp b/Source/core/fileapi/FileReader.cpp
index a6189a7..5535a8b 100644
--- a/Source/core/fileapi/FileReader.cpp
+++ b/Source/core/fileapi/FileReader.cpp
@@ -236,7 +236,7 @@
     fireEvent(eventNames().progressEvent);
     fireEvent(eventNames().loadEvent);
     fireEvent(eventNames().loadendEvent);
-    
+
     // All possible events have fired and we're done, no more pending activity.
     unsetPendingActivity(this);
 }
@@ -253,7 +253,7 @@
     m_error = FileError::create(static_cast<FileError::ErrorCode>(errorCode));
     fireEvent(eventNames().errorEvent);
     fireEvent(eventNames().loadendEvent);
-    
+
     // All possible events have fired and we're done, no more pending activity.
     unsetPendingActivity(this);
 }
diff --git a/Source/core/fileapi/FileReaderLoader.cpp b/Source/core/fileapi/FileReaderLoader.cpp
index 5a97eeb..1cd33de 100644
--- a/Source/core/fileapi/FileReaderLoader.cpp
+++ b/Source/core/fileapi/FileReaderLoader.cpp
@@ -315,7 +315,7 @@
     default:
         ASSERT_NOT_REACHED();
     }
-    
+
     return m_stringResult;
 }
 
@@ -327,7 +327,7 @@
     // Decode the data.
     // The File API spec says that we should use the supplied encoding if it is valid. However, we choose to ignore this
     // requirement in order to be consistent with how WebKit decodes the web content: always has the BOM override the
-    // provided encoding.     
+    // provided encoding.
     // FIXME: consider supporting incremental decoding to improve the perf.
     StringBuilder builder;
     if (!m_decoder)
diff --git a/Source/core/history/HistoryItem.cpp b/Source/core/history/HistoryItem.cpp
index f538b79..1a2c317 100644
--- a/Source/core/history/HistoryItem.cpp
+++ b/Source/core/history/HistoryItem.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -89,7 +89,7 @@
 {
     if (item.m_formData)
         m_formData = item.m_formData->copy();
-        
+
     unsigned size = item.m_children.size();
     m_children.reserveInitialCapacity(size);
     for (unsigned i = 0; i < size; ++i)
@@ -371,10 +371,10 @@
 
     if (stateObject() || otherItem->stateObject())
         return documentSequenceNumber() == otherItem->documentSequenceNumber();
-    
+
     if ((url().hasFragmentIdentifier() || otherItem->url().hasFragmentIdentifier()) && equalIgnoringFragmentIdentifier(url(), otherItem->url()))
-        return documentSequenceNumber() == otherItem->documentSequenceNumber();        
-    
+        return documentSequenceNumber() == otherItem->documentSequenceNumber();
+
     return hasSameDocumentTree(otherItem);
 }
 
@@ -384,7 +384,7 @@
 {
     if (documentSequenceNumber() != otherItem->documentSequenceNumber())
         return false;
-        
+
     if (children().size() != otherItem->children().size())
         return false;
 
@@ -404,7 +404,7 @@
 {
     if (target() != otherItem->target())
         return false;
-        
+
     if (children().size() != otherItem->children().size())
         return false;
 
@@ -424,7 +424,7 @@
 void HistoryItem::setFormInfoFromRequest(const ResourceRequest& request)
 {
     m_referrer = request.httpReferrer();
-    
+
     if (equalIgnoringCase(request.httpMethod(), "POST")) {
         // FIXME: Eventually we have to make this smart enough to handle the case where
         // we have a stream for the body to handle the "data interspersed with files" feature.
@@ -472,7 +472,7 @@
     prefix.append("\0", 1);
 
     fprintf(stderr, "%s+-%s (%p)\n", prefix.data(), m_urlString.utf8().data(), this);
-    
+
     int totalSubItems = 0;
     for (unsigned i = 0; i < m_children.size(); ++i)
         totalSubItems += m_children[i]->showTreeWithIndent(indentLevel + 1);
@@ -480,7 +480,7 @@
 }
 
 #endif
-                
+
 } // namespace WebCore
 
 #ifndef NDEBUG
diff --git a/Source/core/history/HistoryItem.h b/Source/core/history/HistoryItem.h
index 50c92e1..5b7119c 100644
--- a/Source/core/history/HistoryItem.h
+++ b/Source/core/history/HistoryItem.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HistoryItem_h
@@ -44,7 +44,7 @@
 typedef Vector<RefPtr<HistoryItem> > HistoryItemVector;
 
 class HistoryItem : public RefCounted<HistoryItem> {
-public: 
+public:
     static PassRefPtr<HistoryItem> create() { return adoptRef(new HistoryItem); }
     static PassRefPtr<HistoryItem> create(const String& urlString)
     {
@@ -61,31 +61,31 @@
     const String& originalURLString() const;
     const String& urlString() const;
     const String& title() const;
-    
+
     double lastVisitedTime() const;
-    
+
     void setAlternateTitle(const String& alternateTitle);
     const String& alternateTitle() const;
-    
+
     const String& parent() const;
     KURL url() const;
     KURL originalURL() const;
     const String& referrer() const;
     const String& target() const;
     bool isTargetItem() const;
-    
+
     FormData* formData();
     String formContentType() const;
-    
+
     int visitCount() const;
 
     const IntPoint& scrollPoint() const;
     void setScrollPoint(const IntPoint&);
     void clearScrollPoint();
-    
+
     float pageScaleFactor() const;
     void setPageScaleFactor(float);
-    
+
     const Vector<String>& documentState() const;
     void setDocumentState(const Vector<String>&);
     void clearDocumentState();
@@ -98,7 +98,7 @@
     void setParent(const String&);
     void setTitle(const String&);
     void setIsTargetItem(bool);
-    
+
     void setStateObject(PassRefPtr<SerializedScriptValue> object);
     SerializedScriptValue* stateObject() const { return m_stateObject.get(); }
 
@@ -121,7 +121,7 @@
     const HistoryItemVector& children() const;
     void clearChildren();
     bool isAncestorOf(const HistoryItem*) const;
-    
+
     bool shouldDoSameDocumentNavigationTo(HistoryItem* otherItem) const;
     bool hasSameFrames(HistoryItem* otherItem) const;
 
@@ -141,7 +141,7 @@
     explicit HistoryItem(const HistoryItem&);
 
     void recordVisitAtTime(double);
-    
+
     bool hasSameDocumentTree(HistoryItem* otherItem) const;
 
     String m_urlString;
@@ -151,15 +151,15 @@
     String m_parent;
     String m_title;
     String m_displayTitle;
-    
+
     double m_lastVisitedTime;
 
     IntPoint m_scrollPoint;
     float m_pageScaleFactor;
     Vector<String> m_documentState;
-    
+
     HistoryItemVector m_children;
-    
+
     bool m_isTargetItem;
     int m_visitCount;
 
@@ -176,7 +176,7 @@
 
     // Support for HTML5 History
     RefPtr<SerializedScriptValue> m_stateObject;
-    
+
     // info used to repost form data
     RefPtr<FormData> m_formData;
     String m_formContentType;
diff --git a/Source/core/html/BaseClickableWithKeyInputType.h b/Source/core/html/BaseClickableWithKeyInputType.h
index bf76f55..918fdae 100644
--- a/Source/core/html/BaseClickableWithKeyInputType.h
+++ b/Source/core/html/BaseClickableWithKeyInputType.h
@@ -42,7 +42,7 @@
     static void handleKeypressEvent(HTMLInputElement*, KeyboardEvent*);
     static void handleKeyupEvent(InputType&, KeyboardEvent*);
     static void accessKeyAction(HTMLInputElement*, bool sendMouseEvents);
-    
+
 protected:
     BaseClickableWithKeyInputType(HTMLInputElement* element) : InputType(element) { }
 
diff --git a/Source/core/html/BaseMultipleFieldsDateAndTimeInputType.cpp b/Source/core/html/BaseMultipleFieldsDateAndTimeInputType.cpp
index 478e66c..94b8ea7 100644
--- a/Source/core/html/BaseMultipleFieldsDateAndTimeInputType.cpp
+++ b/Source/core/html/BaseMultipleFieldsDateAndTimeInputType.cpp
@@ -371,7 +371,7 @@
     m_isDestroyingShadowSubtree = false;
 }
 
-void BaseMultipleFieldsDateAndTimeInputType::handleFocusEvent(Node* oldFocusedNode, FocusDirection direction)
+void BaseMultipleFieldsDateAndTimeInputType::handleFocusEvent(Element* oldFocusedElement, FocusDirection direction)
 {
     DateTimeEditElement* edit = dateTimeEditElement();
     if (!edit || m_isDestroyingShadowSubtree)
@@ -380,7 +380,7 @@
         if (element()->document()->page())
             element()->document()->page()->focusController()->advanceFocus(direction, 0);
     } else if (direction == FocusDirectionNone || direction == FocusDirectionMouse) {
-        edit->focusByOwner(oldFocusedNode);
+        edit->focusByOwner(oldFocusedElement);
     } else
         edit->focusByOwner();
 }
@@ -392,7 +392,7 @@
         if (event->defaultHandled())
             return;
     }
-        
+
     if (DateTimeEditElement* edit = dateTimeEditElement())
         edit->defaultEventHandler(event);
 }
diff --git a/Source/core/html/BaseMultipleFieldsDateAndTimeInputType.h b/Source/core/html/BaseMultipleFieldsDateAndTimeInputType.h
index 4726dfc..0c03377 100644
--- a/Source/core/html/BaseMultipleFieldsDateAndTimeInputType.h
+++ b/Source/core/html/BaseMultipleFieldsDateAndTimeInputType.h
@@ -93,7 +93,7 @@
     virtual void destroyShadowSubtree() OVERRIDE FINAL;
     virtual void disabledAttributeChanged() OVERRIDE FINAL;
     virtual void forwardEvent(Event*) OVERRIDE FINAL;
-    virtual void handleFocusEvent(Node* oldFocusedNode, FocusDirection) OVERRIDE;
+    virtual void handleFocusEvent(Element* oldFocusedElement, FocusDirection) OVERRIDE;
     virtual void handleKeydownEvent(KeyboardEvent*) OVERRIDE FINAL;
     virtual bool hasBadInput() const OVERRIDE;
     virtual bool hasCustomFocusLogic() const OVERRIDE FINAL;
diff --git a/Source/core/html/ColorInputType.cpp b/Source/core/html/ColorInputType.cpp
index a0fc7dd..5a839f0 100644
--- a/Source/core/html/ColorInputType.cpp
+++ b/Source/core/html/ColorInputType.cpp
@@ -124,7 +124,7 @@
     colorSwatch->setPseudo(AtomicString("-webkit-color-swatch", AtomicString::ConstructFromLiteral));
     wrapperElement->appendChild(colorSwatch.release(), ASSERT_NO_EXCEPTION);
     element()->userAgentShadowRoot()->appendChild(wrapperElement.release(), ASSERT_NO_EXCEPTION);
-    
+
     updateColorSwatch();
 }
 
diff --git a/Source/core/html/FormAssociatedElement.cpp b/Source/core/html/FormAssociatedElement.cpp
index 21cb452..a31e058 100644
--- a/Source/core/html/FormAssociatedElement.cpp
+++ b/Source/core/html/FormAssociatedElement.cpp
@@ -158,7 +158,7 @@
 {
     HTMLFormElement* originalForm = m_form;
     setForm(findAssociatedForm(toHTMLElement(this), m_form));
-    HTMLElement* element = toHTMLElement(this);     
+    HTMLElement* element = toHTMLElement(this);
     if (m_form && m_form != originalForm && m_form->inDocument())
         element->document()->didAssociateFormControl(element);
 }
diff --git a/Source/core/html/FormController.h b/Source/core/html/FormController.h
index 5609075..49ffe45 100644
--- a/Source/core/html/FormController.h
+++ b/Source/core/html/FormController.h
@@ -81,7 +81,7 @@
     ~FormController();
 
     CheckedRadioButtons& checkedRadioButtons() { return m_checkedRadioButtons; }
-    
+
     void registerFormElementWithState(HTMLFormControlElementWithState*);
     void unregisterFormElementWithState(HTMLFormControlElementWithState*);
     // This should be callled only by Document::formElementsState().
diff --git a/Source/core/html/FormData.idl b/Source/core/html/FormData.idl
index 3652d4e..0391d3a 100644
--- a/Source/core/html/FormData.idl
+++ b/Source/core/html/FormData.idl
@@ -34,7 +34,7 @@
 ] interface FormData {
     // void append(DOMString name, DOMString value);
     // void append(DOMString name, Blob value, optional DOMString filename);
-    [Custom] void append([Default=Undefined] optional DOMString name, 
+    [Custom] void append([Default=Undefined] optional DOMString name,
                          [Default=Undefined] optional DOMString value,
                          [Default=Undefined] optional DOMString filename);
 };
diff --git a/Source/core/html/HTMLAllCollection.cpp b/Source/core/html/HTMLAllCollection.cpp
index 792a648..a7f5b64 100644
--- a/Source/core/html/HTMLAllCollection.cpp
+++ b/Source/core/html/HTMLAllCollection.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/HTMLAllCollection.h b/Source/core/html/HTMLAllCollection.h
index 4d73dbd..3c41251 100644
--- a/Source/core/html/HTMLAllCollection.h
+++ b/Source/core/html/HTMLAllCollection.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLAllCollection_h
diff --git a/Source/core/html/HTMLAllCollection.idl b/Source/core/html/HTMLAllCollection.idl
index 659e087..5eae2ee 100644
--- a/Source/core/html/HTMLAllCollection.idl
+++ b/Source/core/html/HTMLAllCollection.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/HTMLAnchorElement.cpp b/Source/core/html/HTMLAnchorElement.cpp
index 398ac18..1ea7351 100644
--- a/Source/core/html/HTMLAnchorElement.cpp
+++ b/Source/core/html/HTMLAnchorElement.cpp
@@ -167,7 +167,7 @@
 
     if (!isFocusable())
         return false;
-    
+
     Page* page = document()->page();
     if (!page)
         return false;
@@ -251,7 +251,7 @@
         EditableLinkBehavior editableLinkBehavior = EditableLinkDefaultBehavior;
         if (Settings* settings = document()->settings())
             editableLinkBehavior = settings->editableLinkBehavior();
-            
+
         switch (editableLinkBehavior) {
             default:
             case EditableLinkDefaultBehavior:
@@ -267,13 +267,13 @@
                 if (down && document()->frame() && document()->frame()->selection()->rootEditableElement() == rootEditableElement())
                     return;
                 break;
-            
+
             case EditableLinkOnlyLiveWithShiftKey:
                 return;
         }
 
     }
-    
+
     ContainerNode::setActive(down, pause);
 }
 
diff --git a/Source/core/html/HTMLAnchorElement.h b/Source/core/html/HTMLAnchorElement.h
index a63c563..3687904 100644
--- a/Source/core/html/HTMLAnchorElement.h
+++ b/Source/core/html/HTMLAnchorElement.h
@@ -98,7 +98,7 @@
 
     bool hasRel(uint32_t relation) const;
     void setRel(const String&);
-    
+
     LinkHash visitedLinkHash() const;
     void invalidateCachedVisitedLinkHash() { m_cachedVisitedLinkHash = 0; }
 
@@ -150,7 +150,7 @@
 {
     if (!m_cachedVisitedLinkHash)
         m_cachedVisitedLinkHash = WebCore::visitedLinkHash(document()->baseURL(), fastGetAttribute(HTMLNames::hrefAttr));
-    return m_cachedVisitedLinkHash; 
+    return m_cachedVisitedLinkHash;
 }
 
 // Functions shared with the other anchor elements (i.e., SVG).
diff --git a/Source/core/html/HTMLAppletElement.h b/Source/core/html/HTMLAppletElement.h
index dd3ea7e..179317b 100644
--- a/Source/core/html/HTMLAppletElement.h
+++ b/Source/core/html/HTMLAppletElement.h
@@ -35,7 +35,7 @@
     HTMLAppletElement(const QualifiedName&, Document*, bool createdByParser);
 
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
-    
+
     virtual bool rendererIsNeeded(const NodeRenderingContext&) OVERRIDE;
     virtual RenderObject* createRenderer(RenderStyle*) OVERRIDE;
 
diff --git a/Source/core/html/HTMLAreaElement.cpp b/Source/core/html/HTMLAreaElement.cpp
index 87ca99e..c105381 100644
--- a/Source/core/html/HTMLAreaElement.cpp
+++ b/Source/core/html/HTMLAreaElement.cpp
@@ -86,7 +86,7 @@
 
     if (!m_region->contains(location))
         return false;
-    
+
     result.setInnerNode(this);
     result.setURLElement(this);
     return true;
@@ -96,7 +96,7 @@
 {
     if (!obj)
         return Path();
-    
+
     // FIXME: This doesn't work correctly with transforms.
     FloatPoint absPos = obj->localToAbsolute();
 
@@ -104,7 +104,7 @@
     LayoutSize size = m_lastSize;
     if (m_shape == Default)
         size = obj->absoluteOutlineBounds().size();
-    
+
     Path p = getRegion(size);
     float zoomFactor = obj->style()->effectiveZoom();
     if (zoomFactor != 1.0f) {
@@ -116,7 +116,7 @@
     p.translate(toFloatSize(absPos));
     return p;
 }
-    
+
 LayoutRect HTMLAreaElement::computeRect(RenderObject* obj) const
 {
     return enclosingLayoutRect(computePath(obj).boundingRect());
@@ -187,7 +187,7 @@
 
     if (!mapElement)
         return 0;
-    
+
     return toHTMLMapElement(mapElement)->imageElement();
 }
 
@@ -195,7 +195,7 @@
 {
     return isFocusable();
 }
-    
+
 bool HTMLAreaElement::isMouseFocusable() const
 {
     return isFocusable();
@@ -209,7 +209,7 @@
 
     return supportsFocus() && Element::tabIndex() >= 0;
 }
-    
+
 void HTMLAreaElement::setFocus(bool shouldBeFocused)
 {
     if (focused() == shouldBeFocused)
@@ -227,7 +227,7 @@
 
     toRenderImage(renderer)->areaElementFocusChanged(this);
 }
-    
+
 void HTMLAreaElement::updateFocusAppearance(bool restorePreviousSelection)
 {
     if (!isFocusable())
@@ -239,7 +239,7 @@
 
     imageElement->updateFocusAppearance(restorePreviousSelection);
 }
-    
+
 bool HTMLAreaElement::supportsFocus() const
 {
     // If the AREA element was a link, it should support focus.
diff --git a/Source/core/html/HTMLAreaElement.h b/Source/core/html/HTMLAreaElement.h
index 056758a..dd02949 100644
--- a/Source/core/html/HTMLAreaElement.h
+++ b/Source/core/html/HTMLAreaElement.h
@@ -45,7 +45,7 @@
 
     // The parent map's image.
     HTMLImageElement* imageElement() const;
-    
+
 private:
     HTMLAreaElement(const QualifiedName&, Document*);
 
diff --git a/Source/core/html/HTMLAudioElement.idl b/Source/core/html/HTMLAudioElement.idl
index b4e9004..ce003cf 100644
--- a/Source/core/html/HTMLAudioElement.idl
+++ b/Source/core/html/HTMLAudioElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/HTMLBodyElement.cpp b/Source/core/html/HTMLBodyElement.cpp
index 97fd499..e9a386b 100644
--- a/Source/core/html/HTMLBodyElement.cpp
+++ b/Source/core/html/HTMLBodyElement.cpp
@@ -311,7 +311,7 @@
     Document* document = this->document();
     document->updateLayoutIgnorePendingStylesheets();
     FrameView* view = document->view();
-    return view ? adjustForZoom(view->contentsHeight(), document) : 0;    
+    return view ? adjustForZoom(view->contentsHeight(), document) : 0;
 }
 
 int HTMLBodyElement::scrollWidth()
@@ -320,7 +320,7 @@
     Document* document = this->document();
     document->updateLayoutIgnorePendingStylesheets();
     FrameView* view = document->view();
-    return view ? adjustForZoom(view->contentsWidth(), document) : 0;    
+    return view ? adjustForZoom(view->contentsWidth(), document) : 0;
 }
 
 void HTMLBodyElement::addSubresourceAttributeURLs(ListHashSet<KURL>& urls) const
diff --git a/Source/core/html/HTMLBodyElement.h b/Source/core/html/HTMLBodyElement.h
index a5941f7..961f90f 100644
--- a/Source/core/html/HTMLBodyElement.h
+++ b/Source/core/html/HTMLBodyElement.h
@@ -76,20 +76,20 @@
 
     virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE;
     virtual void didNotifySubtreeInsertions(ContainerNode*) OVERRIDE;
-    
+
     virtual bool isURLAttribute(const Attribute&) const OVERRIDE;
-    
+
     virtual bool supportsFocus() const;
 
     virtual int scrollLeft();
     virtual void setScrollLeft(int scrollLeft);
-    
+
     virtual int scrollTop();
     virtual void setScrollTop(int scrollTop);
-    
+
     virtual int scrollHeight();
     virtual int scrollWidth();
-    
+
     virtual void addSubresourceAttributeURLs(ListHashSet<KURL>&) const;
 };
 
diff --git a/Source/core/html/HTMLButtonElement.h b/Source/core/html/HTMLButtonElement.h
index 37d545e..e31e41d 100644
--- a/Source/core/html/HTMLButtonElement.h
+++ b/Source/core/html/HTMLButtonElement.h
@@ -33,7 +33,7 @@
     static PassRefPtr<HTMLButtonElement> create(const QualifiedName&, Document*, HTMLFormElement*);
 
     void setType(const AtomicString&);
-    
+
     String value() const;
 
     virtual bool willRespondToMouseClickEvents() OVERRIDE;
@@ -56,7 +56,7 @@
 
     virtual bool appendFormData(FormDataList&, bool);
 
-    virtual bool isEnumeratable() const { return true; } 
+    virtual bool isEnumeratable() const { return true; }
     virtual bool supportLabels() const OVERRIDE { return true; }
 
     virtual bool isSuccessfulSubmitButton() const;
diff --git a/Source/core/html/HTMLCanvasElement.h b/Source/core/html/HTMLCanvasElement.h
index 386dc77..3d31d77 100644
--- a/Source/core/html/HTMLCanvasElement.h
+++ b/Source/core/html/HTMLCanvasElement.h
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLCanvasElement_h
@@ -77,10 +77,10 @@
     bool accelerationDisabled() const { return m_accelerationDisabled; }
 
     void setSize(const IntSize& newSize)
-    { 
+    {
         if (newSize == size() && m_deviceScaleFactor == 1)
             return;
-        m_ignoreReset = true; 
+        m_ignoreReset = true;
         setWidth(newSize.width());
         setHeight(newSize.height());
         m_ignoreReset = false;
diff --git a/Source/core/html/HTMLCanvasElement.idl b/Source/core/html/HTMLCanvasElement.idl
index 28af6fa..c095796 100644
--- a/Source/core/html/HTMLCanvasElement.idl
+++ b/Source/core/html/HTMLCanvasElement.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface HTMLCanvasElement : HTMLElement {
diff --git a/Source/core/html/HTMLCollection.cpp b/Source/core/html/HTMLCollection.cpp
index 2e74168..613c57a 100644
--- a/Source/core/html/HTMLCollection.cpp
+++ b/Source/core/html/HTMLCollection.cpp
@@ -374,7 +374,7 @@
 
     return cachedItemOffset() < offset && distanceFromLastItem < offset - cachedItemOffset();
 }
-    
+
 bool ALWAYS_INLINE LiveNodeListBase::isFirstItemCloserThanCachedItem(unsigned offset) const
 {
     ASSERT(isItemCacheValid());
@@ -402,7 +402,7 @@
 
     item(UINT_MAX);
     ASSERT(isLengthCacheValid());
-    
+
     return cachedLength();
 }
 
@@ -511,7 +511,7 @@
 {
     if (!element->isHTMLElement())
         return false;
-    
+
     HTMLElement* e = toHTMLElement(element);
     if (!checkName)
         return e->getIdAttribute() == name;
diff --git a/Source/core/html/HTMLDocument.cpp b/Source/core/html/HTMLDocument.cpp
index 1af0f73..33f5417 100644
--- a/Source/core/html/HTMLDocument.cpp
+++ b/Source/core/html/HTMLDocument.cpp
@@ -244,7 +244,7 @@
 }
 
 void HTMLDocument::removeNamedItem(const AtomicString& name)
-{ 
+{
     removeItemFromMap(m_namedItemCounts, name);
 }
 
@@ -254,7 +254,7 @@
 }
 
 void HTMLDocument::removeExtraNamedItem(const AtomicString& name)
-{ 
+{
     removeItemFromMap(m_extraNamedItemCounts, name);
 }
 
diff --git a/Source/core/html/HTMLElement.cpp b/Source/core/html/HTMLElement.cpp
index 2b9bf86..f3bb23f 100644
--- a/Source/core/html/HTMLElement.cpp
+++ b/Source/core/html/HTMLElement.cpp
@@ -196,7 +196,7 @@
 {
     if (!attrName.namespaceURI().isNull())
         return AtomicString();
-    
+
     typedef HashMap<AtomicString, AtomicString> StringToStringMap;
     DEFINE_STATIC_LOCAL(StringToStringMap, attributeNameToEventNameMap, ());
     if (!attributeNameToEventNameMap.size()) {
@@ -326,7 +326,7 @@
     Node* next = node->nextSibling();
     if (!next || !next->isTextNode())
         return;
-    
+
     RefPtr<Text> textNode = toText(node.get());
     RefPtr<Text> textNext = toText(next);
     textNode->appendData(textNext->data());
@@ -348,7 +348,7 @@
     RefPtr<DocumentFragment> fragment = createFragmentForInnerOuterHTML(html, parent.get(), AllowScriptingContent, ec);
     if (ec)
         return;
-      
+
     parent->replaceChild(fragment.release(), this, ec);
     RefPtr<Node> node = next ? next->previousSibling() : 0;
     if (!ec && node && node->isTextNode())
@@ -398,7 +398,7 @@
         return;
     }
     if (hasLocalName(colTag) || hasLocalName(colgroupTag) || hasLocalName(framesetTag) ||
-        hasLocalName(headTag) || hasLocalName(htmlTag) || hasLocalName(tableTag) || 
+        hasLocalName(headTag) || hasLocalName(htmlTag) || hasLocalName(tableTag) ||
         hasLocalName(tbodyTag) || hasLocalName(tfootTag) || hasLocalName(theadTag) ||
         hasLocalName(trTag)) {
         ec = NoModificationAllowedError;
@@ -446,7 +446,7 @@
         return;
     }
     if (hasLocalName(colTag) || hasLocalName(colgroupTag) || hasLocalName(framesetTag) ||
-        hasLocalName(headTag) || hasLocalName(htmlTag) || hasLocalName(tableTag) || 
+        hasLocalName(headTag) || hasLocalName(htmlTag) || hasLocalName(tableTag) ||
         hasLocalName(tbodyTag) || hasLocalName(tfootTag) || hasLocalName(theadTag) ||
         hasLocalName(trTag)) {
         ec = NoModificationAllowedError;
@@ -463,7 +463,7 @@
     RefPtr<Node> next = nextSibling();
     RefPtr<Node> newChild;
     ec = 0;
-    
+
     // Convert text to fragment with <br> tags instead of linebreaks if needed.
     if (text.contains('\r') || text.contains('\n'))
         newChild = textToFragment(text, ec);
@@ -520,7 +520,7 @@
         }
         return 0;
     }
-    
+
     // IE throws COM Exception E_INVALIDARG; this is the best DOM exception alternative.
     ec = NotSupportedError;
     return 0;
@@ -535,7 +535,7 @@
     }
 
     Node* returnValue = insertAdjacent(where, newChild, ec);
-    return toElement(returnValue); 
+    return toElement(returnValue);
 }
 
 // Step 3 of http://www.whatwg.org/specs/web-apps/current-work/multipage/apis-in-html-documents.html#insertadjacenthtml()
@@ -853,7 +853,7 @@
     Node* node = firstChild();
     while (node) {
         // Skip bdi, script, style and text form controls.
-        if (equalIgnoringCase(node->nodeName(), "bdi") || node->hasTagName(scriptTag) || node->hasTagName(styleTag) 
+        if (equalIgnoringCase(node->nodeName(), "bdi") || node->hasTagName(scriptTag) || node->hasTagName(styleTag)
             || (node->isElementNode() && toElement(node)->isTextFormControl())) {
             node = NodeTraversal::nextSkippingChildren(node, this);
             continue;
diff --git a/Source/core/html/HTMLElement.idl b/Source/core/html/HTMLElement.idl
index 8bcdc4b..1156124 100644
--- a/Source/core/html/HTMLElement.idl
+++ b/Source/core/html/HTMLElement.idl
@@ -21,7 +21,7 @@
 [
     CustomToV8
 ] interface HTMLElement : Element {
-             // iht.com relies on id returning the empty string when no id is present. 
+             // iht.com relies on id returning the empty string when no id is present.
              // Other browsers do this as well. So we don't convert null to JS null.
              [Reflect] attribute DOMString id;
              [Reflect] attribute DOMString title;
diff --git a/Source/core/html/HTMLEmbedElement.cpp b/Source/core/html/HTMLEmbedElement.cpp
index 6aabaf2..7ada15b 100644
--- a/Source/core/html/HTMLEmbedElement.cpp
+++ b/Source/core/html/HTMLEmbedElement.cpp
@@ -52,7 +52,7 @@
     return adoptRef(new HTMLEmbedElement(tagName, document, createdByParser));
 }
 
-static inline RenderWidget* findWidgetRenderer(const Node* n) 
+static inline RenderWidget* findWidgetRenderer(const Node* n)
 {
     if (!n->renderer())
         do
diff --git a/Source/core/html/HTMLFontElement.cpp b/Source/core/html/HTMLFontElement.cpp
index 3eaaf9d..ab8a2b2 100644
--- a/Source/core/html/HTMLFontElement.cpp
+++ b/Source/core/html/HTMLFontElement.cpp
@@ -154,19 +154,19 @@
         // FIXME: The spec says that we're supposed to use CSSValueXxSmall here.
         size = CSSValueXSmall;
         break;
-    case 2: 
+    case 2:
         size = CSSValueSmall;
         break;
-    case 3: 
+    case 3:
         size = CSSValueMedium;
         break;
-    case 4: 
+    case 4:
         size = CSSValueLarge;
         break;
-    case 5: 
+    case 5:
         size = CSSValueXLarge;
         break;
-    case 6: 
+    case 6:
         size = CSSValueXxLarge;
         break;
     case 7:
diff --git a/Source/core/html/HTMLFontElement.h b/Source/core/html/HTMLFontElement.h
index d1f11ee..212c5ab 100644
--- a/Source/core/html/HTMLFontElement.h
+++ b/Source/core/html/HTMLFontElement.h
@@ -31,7 +31,7 @@
 class HTMLFontElement FINAL : public HTMLElement {
 public:
     static PassRefPtr<HTMLFontElement> create(const QualifiedName&, Document*);
-    
+
     static bool cssValueFromFontSizeNumber(const String&, CSSValueID&);
 
 private:
diff --git a/Source/core/html/HTMLFormControlElement.cpp b/Source/core/html/HTMLFormControlElement.cpp
index a94e8f2..29a6c6a 100644
--- a/Source/core/html/HTMLFormControlElement.cpp
+++ b/Source/core/html/HTMLFormControlElement.cpp
@@ -200,9 +200,9 @@
 }
 
 static void focusPostAttach(Node* element)
-{ 
-    toElement(element)->focus(); 
-    element->deref(); 
+{
+    toElement(element)->focus();
+    element->deref();
 }
 
 void HTMLFormControlElement::attach(const AttachContext& context)
@@ -327,10 +327,10 @@
     return false;
 }
 
-void HTMLFormControlElement::dispatchFocusEvent(PassRefPtr<Node> oldFocusedNode, FocusDirection direction)
+void HTMLFormControlElement::dispatchFocusEvent(Element* oldFocusedElement, FocusDirection direction)
 {
     m_wasFocusedByMouse = direction == FocusDirectionMouse;
-    HTMLElement::dispatchFocusEvent(oldFocusedNode, direction);
+    HTMLElement::dispatchFocusEvent(oldFocusedElement, direction);
 }
 
 bool HTMLFormControlElement::shouldHaveFocusAppearance() const
@@ -469,9 +469,9 @@
     setNeedsValidityCheck();
 }
 
-void HTMLFormControlElement::dispatchBlurEvent(PassRefPtr<Node> newFocusedNode)
+void HTMLFormControlElement::dispatchBlurEvent(Element* newFocusedElement)
 {
-    HTMLElement::dispatchBlurEvent(newFocusedNode);
+    HTMLElement::dispatchBlurEvent(newFocusedElement);
     hideVisibleValidationMessage();
 }
 
diff --git a/Source/core/html/HTMLFormControlElement.h b/Source/core/html/HTMLFormControlElement.h
index 9db6fe9..d6848c9 100644
--- a/Source/core/html/HTMLFormControlElement.h
+++ b/Source/core/html/HTMLFormControlElement.h
@@ -121,13 +121,12 @@
     virtual bool isKeyboardFocusable(KeyboardEvent*) const;
     virtual bool shouldShowFocusRingOnMouseFocus() const;
     virtual bool shouldHaveFocusAppearance() const OVERRIDE;
-    virtual void dispatchFocusEvent(PassRefPtr<Node> oldFocusedNode, FocusDirection) OVERRIDE;
+    virtual void dispatchFocusEvent(Element* oldFocusedElement, FocusDirection) OVERRIDE;
+    virtual void dispatchBlurEvent(Element* newFocusedElement) OVERRIDE;
     virtual void willCallDefaultEventHandler(const Event&) OVERRIDE;
 
     virtual void didRecalcStyle(StyleChange) OVERRIDE;
 
-    virtual void dispatchBlurEvent(PassRefPtr<Node> newFocusedNode);
-
     // This must be called any time the result of willValidate() has changed.
     void setNeedsWillValidateCheck();
     virtual bool recalcWillValidate() const;
diff --git a/Source/core/html/HTMLFormElement.cpp b/Source/core/html/HTMLFormElement.cpp
index ce3447a..1941b31 100644
--- a/Source/core/html/HTMLFormElement.cpp
+++ b/Source/core/html/HTMLFormElement.cpp
@@ -478,7 +478,7 @@
         else
             left = middle + 1;
     }
-    
+
     ASSERT(left < m_associatedElementsBeforeIndex || left >= m_associatedElementsAfterIndex);
     position = element->compareDocumentPosition(toHTMLElement(m_associatedElements[left]));
     if (position & DOCUMENT_POSITION_FOLLOWING)
diff --git a/Source/core/html/HTMLFrameElement.cpp b/Source/core/html/HTMLFrameElement.cpp
index f3ade9c..712877d 100644
--- a/Source/core/html/HTMLFrameElement.cpp
+++ b/Source/core/html/HTMLFrameElement.cpp
@@ -74,7 +74,7 @@
 void HTMLFrameElement::attach(const AttachContext& context)
 {
     HTMLFrameElementBase::attach(context);
-    
+
     if (HTMLFrameSetElement* frameSetElement = containingFrameSetElement(this)) {
         if (!m_frameBorderSet)
             m_frameBorder = frameSetElement->hasFrameBorder();
diff --git a/Source/core/html/HTMLFrameElement.h b/Source/core/html/HTMLFrameElement.h
index 087d7ab..70c0b6a 100644
--- a/Source/core/html/HTMLFrameElement.h
+++ b/Source/core/html/HTMLFrameElement.h
@@ -43,7 +43,7 @@
 
     virtual bool rendererIsNeeded(const NodeRenderingContext&);
     virtual RenderObject* createRenderer(RenderStyle*);
-    
+
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
 
     virtual bool allowFullScreen() const { return false; }
diff --git a/Source/core/html/HTMLFrameElementBase.cpp b/Source/core/html/HTMLFrameElementBase.cpp
index 892878e..6855ed9 100644
--- a/Source/core/html/HTMLFrameElementBase.cpp
+++ b/Source/core/html/HTMLFrameElementBase.cpp
@@ -57,7 +57,7 @@
 
     const KURL& completeURL = document()->completeURL(m_URL);
 
-    if (protocolIsJavaScript(completeURL)) { 
+    if (protocolIsJavaScript(completeURL)) {
         Document* contentDoc = this->contentDocument();
         if (contentDoc && !ScriptController::canAccessFromCurrentOrigin(contentDoc->frame()))
             return false;
diff --git a/Source/core/html/HTMLFrameElementBase.h b/Source/core/html/HTMLFrameElementBase.h
index ef09c0e..f5c5be9 100644
--- a/Source/core/html/HTMLFrameElementBase.h
+++ b/Source/core/html/HTMLFrameElementBase.h
@@ -35,7 +35,7 @@
     void setLocation(const String&);
 
     virtual ScrollbarMode scrollingMode() const { return m_scrolling; }
-    
+
     int marginWidth() const { return m_marginWidth; }
     int marginHeight() const { return m_marginHeight; }
 
@@ -57,7 +57,7 @@
 private:
     virtual bool supportsFocus() const;
     virtual void setFocus(bool) OVERRIDE;
-    
+
     virtual bool isURLAttribute(const Attribute&) const OVERRIDE;
     virtual bool isHTMLContentAttribute(const Attribute&) const OVERRIDE;
 
diff --git a/Source/core/html/HTMLFrameSetElement.cpp b/Source/core/html/HTMLFrameSetElement.cpp
index 02d929f..a0e74fd 100644
--- a/Source/core/html/HTMLFrameSetElement.cpp
+++ b/Source/core/html/HTMLFrameSetElement.cpp
@@ -150,7 +150,7 @@
 bool HTMLFrameSetElement::rendererIsNeeded(const NodeRenderingContext& context)
 {
     // For compatibility, frames render even when display: none is set.
-    // However, we delay creating a renderer until stylesheets have loaded. 
+    // However, we delay creating a renderer until stylesheets have loaded.
     return context.style()->isStyleAvailable();
 }
 
@@ -158,7 +158,7 @@
 {
     if (style->hasContent())
         return RenderObject::createObject(this, style);
-    
+
     return new (document()->renderArena()) RenderFrameSet(this);
 }
 
diff --git a/Source/core/html/HTMLFrameSetElement.h b/Source/core/html/HTMLFrameSetElement.h
index 9b01d46..8643977 100644
--- a/Source/core/html/HTMLFrameSetElement.h
+++ b/Source/core/html/HTMLFrameSetElement.h
@@ -87,7 +87,7 @@
 
     int m_border;
     bool m_borderSet;
-    
+
     bool m_borderColorSet;
 
     bool m_frameborder;
diff --git a/Source/core/html/HTMLImageElement.cpp b/Source/core/html/HTMLImageElement.cpp
index 14763c6..709a0ee 100644
--- a/Source/core/html/HTMLImageElement.cpp
+++ b/Source/core/html/HTMLImageElement.cpp
@@ -349,7 +349,7 @@
         return false;
 
     const AtomicString& usemap = fastGetAttribute(usemapAttr);
-    
+
     // If the usemap attribute starts with '#', it refers to a map element in the document.
     if (usemap.string()[0] == '#')
         return false;
diff --git a/Source/core/html/HTMLImageElement.idl b/Source/core/html/HTMLImageElement.idl
index 360b2b5..1056b5d 100644
--- a/Source/core/html/HTMLImageElement.idl
+++ b/Source/core/html/HTMLImageElement.idl
@@ -33,7 +33,7 @@
     [Reflect] attribute DOMString useMap;
     [Reflect] attribute long vspace;
     attribute long width;
-    
+
     // Extensions
     readonly attribute boolean complete;
     [Reflect,URL] attribute DOMString lowsrc;
diff --git a/Source/core/html/HTMLImport.cpp b/Source/core/html/HTMLImport.cpp
index 8e349be..e55f843 100644
--- a/Source/core/html/HTMLImport.cpp
+++ b/Source/core/html/HTMLImport.cpp
@@ -42,4 +42,14 @@
     return true;
 }
 
+Frame* HTMLImport::frame()
+{
+    return master()->frame();
+}
+
+Document* HTMLImport::master()
+{
+    return controller()->document();
+}
+
 } // namespace WebCore
diff --git a/Source/core/html/HTMLImport.h b/Source/core/html/HTMLImport.h
index afcec17..910ad65 100644
--- a/Source/core/html/HTMLImport.h
+++ b/Source/core/html/HTMLImport.h
@@ -34,6 +34,7 @@
 namespace WebCore {
 
 class Document;
+class Frame;
 class HTMLImportsController;
 
 class HTMLImport {
@@ -41,11 +42,14 @@
     virtual ~HTMLImport() { }
 
     bool haveChildrenLoaded();
+    Frame* frame();
+    Document* master();
 
     virtual HTMLImportsController* controller() = 0;
     virtual HTMLImport* parent() = 0;
     virtual Document* document() = 0;
     virtual void wasDetachedFromDocument() = 0;
+    virtual void didFinishParsing() = 0;
 };
 
 } // namespace WebCore
diff --git a/Source/core/html/HTMLImportsController.cpp b/Source/core/html/HTMLImportsController.cpp
index 91c9320..2825c42 100644
--- a/Source/core/html/HTMLImportsController.cpp
+++ b/Source/core/html/HTMLImportsController.cpp
@@ -38,6 +38,7 @@
 #include "core/loader/DocumentWriter.h"
 #include "core/loader/cache/CachedScript.h"
 #include "core/loader/cache/ResourceFetcher.h"
+#include "core/page/ContentSecurityPolicy.h"
 #include "weborigin/SecurityOrigin.h"
 
 namespace WebCore {
@@ -82,7 +83,8 @@
         HTMLImportsController::provideTo(m_owner->document());
     }
 
-    HTMLImportsController* controller = m_owner->document()->import()->controller();
+    HTMLImport* parent = m_owner->document()->import();
+    HTMLImportsController* controller = parent->controller();
     if (RefPtr<HTMLImportLoader> found = controller->findLinkFor(builder.url())) {
         m_loader = found;
         return;
@@ -90,11 +92,11 @@
 
     FetchRequest request = builder.build(true);
     request.setPotentiallyCrossOriginEnabled(controller->securityOrigin(), DoNotAllowStoredCredentials);
-    CachedResourceHandle<CachedRawResource> resource = controller->fetcher()->requestRawResource(request);
+    CachedResourceHandle<CachedRawResource> resource = m_owner->document()->fetcher()->requestImport(request);
     if (!resource)
         return;
 
-    m_loader = HTMLImportLoader::create(controller, builder.url(), resource);
+    m_loader = HTMLImportLoader::create(parent, builder.url(), resource);
 }
 
 void LinkImport::ownerRemoved()
@@ -131,7 +133,7 @@
 
 void HTMLImportLoader::responseReceived(CachedResource*, const ResourceResponse& response)
 {
-    setState(startParsing(response));
+    setState(startWritingAndParsing(response));
 }
 
 void HTMLImportLoader::dataReceived(CachedResource*, const char* data, int length)
@@ -142,7 +144,7 @@
 
 void HTMLImportLoader::notifyFinished(CachedResource*)
 {
-    setState(finish());
+    setState(finishWriting());
 }
 
 void HTMLImportLoader::setState(State state)
@@ -152,40 +154,40 @@
 
     m_state = state;
 
+    if (m_state == StateReady || m_state == StateError || m_state == StateWritten) {
+        if (RefPtr<DocumentWriter> writer = m_writer.release())
+            writer->end();
+    }
+
     if (m_state == StateReady || m_state == StateError)
         dispose();
 }
 
 void HTMLImportLoader::dispose()
 {
-    if (m_writer) {
-        m_writer->end();
-        m_writer.clear();
-    }
-
     if (m_resource) {
         m_resource->removeClient(this);
         m_resource = 0;
     }
 
-
     if (HTMLImportsController* controller = this->controller())
         controller->didLoad(this);
 }
 
-HTMLImportLoader::State HTMLImportLoader::startParsing(const ResourceResponse& response)
+HTMLImportLoader::State HTMLImportLoader::startWritingAndParsing(const ResourceResponse& response)
 {
     // Current canAccess() implementation isn't sufficient for catching cross-domain redirects: http://crbug.com/256976
-    if (!controller()->fetcher()->canAccess(m_resource.get()))
+    if (!m_parent->document()->fetcher()->canAccess(m_resource.get()))
         return StateError;
 
-    m_importedDocument = HTMLDocument::create(DocumentInit(response.url(), 0, this));
+    m_importedDocument = HTMLDocument::create(DocumentInit(response.url(), 0, this).withRegistrationContext(controller()->document()->registrationContext()));
+    m_importedDocument->initContentSecurityPolicy(ContentSecurityPolicyResponseHeaders(response));
     m_writer = DocumentWriter::create(m_importedDocument.get(), response.mimeType(), response.textEncodingName());
 
     return StateLoading;
 }
 
-HTMLImportLoader::State HTMLImportLoader::finish()
+HTMLImportLoader::State HTMLImportLoader::finishWriting()
 {
     if (!m_parent)
         return StateError;
@@ -193,6 +195,14 @@
     // We don't take such a case as an error because the partially-loaded document has been visible from script at this point.
     if (m_resource->loadFailedOrCanceled() && !m_writer)
         return StateError;
+
+    return StateWritten;
+}
+
+HTMLImportLoader::State HTMLImportLoader::finishParsing()
+{
+    if (!m_parent)
+        return StateError;
     return StateReady;
 }
 
@@ -232,6 +242,12 @@
     ASSERT_NOT_REACHED();
 }
 
+void HTMLImportLoader::didFinishParsing()
+{
+    setState(finishParsing());
+}
+
+
 void HTMLImportsController::provideTo(Document* master)
 {
     DEFINE_STATIC_LOCAL(const char*, name, ("HTMLImportsController"));
@@ -301,8 +317,12 @@
 bool HTMLImportsController::haveChildrenLoaded(HTMLImport* parent) const
 {
     for (size_t i = 0; i < m_imports.size(); ++i) {
-        if (!m_imports[i]->isDone() && m_imports[i]->parent() == parent)
-            return false;
+        if (!m_imports[i]->isDone()) {
+            for (HTMLImport* ancestor = m_imports[i]->parent(); ancestor; ancestor = ancestor->parent()) {
+                if (ancestor == parent)
+                    return false;
+            }
+        }
     }
 
     return true;
@@ -328,4 +348,8 @@
     clear();
 }
 
+void HTMLImportsController::didFinishParsing()
+{
+}
+
 } // namespace WebCore
diff --git a/Source/core/html/HTMLImportsController.h b/Source/core/html/HTMLImportsController.h
index 92b2a23..030763b 100644
--- a/Source/core/html/HTMLImportsController.h
+++ b/Source/core/html/HTMLImportsController.h
@@ -75,6 +75,7 @@
 public:
     enum State {
         StateLoading,
+        StateWritten,
         StateError,
         StateReady
     };
@@ -93,6 +94,7 @@
     virtual HTMLImport* parent() OVERRIDE;
     virtual Document* document() OVERRIDE;
     virtual void wasDetachedFromDocument() OVERRIDE;
+    virtual void didFinishParsing() OVERRIDE;
 
 private:
     HTMLImportLoader(HTMLImport*, const KURL&, const CachedResourceHandle<CachedScript>&);
@@ -102,8 +104,10 @@
     virtual void dataReceived(CachedResource*, const char* data, int length) OVERRIDE;
     virtual void notifyFinished(CachedResource*) OVERRIDE;
 
-    State startParsing(const ResourceResponse&);
-    State finish();
+    State startWritingAndParsing(const ResourceResponse&);
+    State finishWriting();
+    State finishParsing();
+
     void setState(State);
     void dispose();
 
@@ -128,6 +132,7 @@
     virtual HTMLImport* parent() OVERRIDE;
     virtual Document* document() OVERRIDE;
     virtual void wasDetachedFromDocument() OVERRIDE;
+    virtual void didFinishParsing() OVERRIDE;
 
     void addImport(PassRefPtr<HTMLImportLoader>);
     void showSecurityErrorMessage(const String&);
diff --git a/Source/core/html/HTMLInputElement.cpp b/Source/core/html/HTMLInputElement.cpp
index 07a317a..6c8b487 100644
--- a/Source/core/html/HTMLInputElement.cpp
+++ b/Source/core/html/HTMLInputElement.cpp
@@ -407,9 +407,9 @@
     return m_inputType->shouldUseInputMethod();
 }
 
-void HTMLInputElement::handleFocusEvent(Node* oldFocusedNode, FocusDirection direction)
+void HTMLInputElement::handleFocusEvent(Element* oldFocusedElement, FocusDirection direction)
 {
-    m_inputType->handleFocusEvent(oldFocusedNode, direction);
+    m_inputType->handleFocusEvent(oldFocusedElement, direction);
 }
 
 void HTMLInputElement::handleBlurEvent()
diff --git a/Source/core/html/HTMLInputElement.h b/Source/core/html/HTMLInputElement.h
index 97d068b..e718c3c 100644
--- a/Source/core/html/HTMLInputElement.h
+++ b/Source/core/html/HTMLInputElement.h
@@ -362,7 +362,7 @@
     virtual void updatePlaceholderText();
     virtual bool isEmptyValue() const OVERRIDE { return innerTextValue().isEmpty(); }
     virtual bool isEmptySuggestedValue() const { return suggestedValue().isEmpty(); }
-    virtual void handleFocusEvent(Node* oldFocusedNode, FocusDirection) OVERRIDE;
+    virtual void handleFocusEvent(Element* oldFocusedElement, FocusDirection) OVERRIDE;
     virtual void handleBlurEvent();
 
     virtual bool isOptionalFormControl() const { return !isRequiredFormControl(); }
@@ -371,7 +371,7 @@
     virtual void requiredAttributeChanged() OVERRIDE;
 
     void updateType();
-    
+
     virtual void subtreeHasChanged();
 
     void resetListAttributeTargetObserver();
diff --git a/Source/core/html/HTMLLIElement.idl b/Source/core/html/HTMLLIElement.idl
index ba3eaae..f79f1cb 100644
--- a/Source/core/html/HTMLLIElement.idl
+++ b/Source/core/html/HTMLLIElement.idl
@@ -19,6 +19,6 @@
 
 interface HTMLLIElement : HTMLElement {
     [Reflect] attribute DOMString type;
-    [Reflect] attribute long value;    
+    [Reflect] attribute long value;
 };
 
diff --git a/Source/core/html/HTMLLabelElement.cpp b/Source/core/html/HTMLLabelElement.cpp
index 44ac76d..9f3d061 100644
--- a/Source/core/html/HTMLLabelElement.cpp
+++ b/Source/core/html/HTMLLabelElement.cpp
@@ -108,7 +108,7 @@
 {
     if (over == hovered())
         return;
-        
+
     // Update our status first.
     HTMLElement::setHovered(over);
 
@@ -139,10 +139,10 @@
             element->focus();
 
         processingClick = false;
-        
+
         evt->setDefaultHandled();
     }
-    
+
     HTMLElement::defaultEventHandler(evt);
 }
 
diff --git a/Source/core/html/HTMLLegendElement.cpp b/Source/core/html/HTMLLegendElement.cpp
index d73f0cc..9589512 100644
--- a/Source/core/html/HTMLLegendElement.cpp
+++ b/Source/core/html/HTMLLegendElement.cpp
@@ -71,7 +71,7 @@
 {
     if (isFocusable())
         Element::focus(true, direction);
-        
+
     // To match other browsers' behavior, never restore previous selection.
     if (HTMLFormControlElement* control = associatedControl())
         control->focus(false, direction);
@@ -94,5 +94,5 @@
 
     return static_cast<HTMLFieldSetElement*>(fieldset)->form();
 }
-    
+
 } // namespace
diff --git a/Source/core/html/HTMLLinkElement.cpp b/Source/core/html/HTMLLinkElement.cpp
index a899316..374ba16 100644
--- a/Source/core/html/HTMLLinkElement.cpp
+++ b/Source/core/html/HTMLLinkElement.cpp
@@ -344,10 +344,10 @@
 
     if (!m_relAttribute.isStyleSheet())
         return;
-    
+
     // Append the URL of this link element.
     addSubresourceURL(urls, href());
-    
+
     // Walk the URLs linked by the linked-to stylesheet.
     if (CSSStyleSheet* styleSheet = const_cast<HTMLLinkElement*>(this)->sheet())
         styleSheet->contents()->addSubresourceStyleURLs(urls);
diff --git a/Source/core/html/HTMLMapElement.cpp b/Source/core/html/HTMLMapElement.cpp
index 7c6ea39..2d5d65f 100644
--- a/Source/core/html/HTMLMapElement.cpp
+++ b/Source/core/html/HTMLMapElement.cpp
@@ -85,7 +85,7 @@
     for (unsigned i = 0; Node* curr = images->item(i); i++) {
         if (!curr->hasTagName(imgTag))
             continue;
-        
+
         // The HTMLImageElement's useMap() value includes the '#' symbol at the beginning,
         // which has to be stripped off.
         HTMLImageElement* imageElement = toHTMLImageElement(curr);
@@ -93,8 +93,8 @@
         if (equalIgnoringCase(useMapName, m_name))
             return imageElement;
     }
-    
-    return 0;    
+
+    return 0;
 }
 
 void HTMLMapElement::parseAttribute(const QualifiedName& name, const AtomicString& value)
diff --git a/Source/core/html/HTMLMapElement.h b/Source/core/html/HTMLMapElement.h
index e56929b..7ded16e 100644
--- a/Source/core/html/HTMLMapElement.h
+++ b/Source/core/html/HTMLMapElement.h
@@ -29,7 +29,7 @@
 
 class HitTestResult;
 class HTMLImageElement;
-    
+
 class HTMLMapElement FINAL : public HTMLElement {
 public:
     static PassRefPtr<HTMLMapElement> create(Document*);
@@ -39,7 +39,7 @@
     const AtomicString& getName() const { return m_name; }
 
     bool mapMouseEvent(LayoutPoint location, const LayoutSize&, HitTestResult&);
-    
+
     HTMLImageElement* imageElement();
     PassRefPtr<HTMLCollection> areas();
 
diff --git a/Source/core/html/HTMLMarqueeElement.cpp b/Source/core/html/HTMLMarqueeElement.cpp
index 6c5362c..ccd1f12 100644
--- a/Source/core/html/HTMLMarqueeElement.cpp
+++ b/Source/core/html/HTMLMarqueeElement.cpp
@@ -126,7 +126,7 @@
     int scrollAmount = fastGetAttribute(scrollamountAttr).toInt(&ok);
     return ok && scrollAmount >= 0 ? scrollAmount : RenderStyle::initialMarqueeIncrement().intValue();
 }
-    
+
 void HTMLMarqueeElement::setScrollAmount(int scrollAmount, ExceptionCode& ec)
 {
     if (scrollAmount < 0)
@@ -134,7 +134,7 @@
     else
         setIntegralAttribute(scrollamountAttr, scrollAmount);
 }
-    
+
 int HTMLMarqueeElement::scrollDelay() const
 {
     bool ok;
@@ -149,14 +149,14 @@
     else
         setIntegralAttribute(scrolldelayAttr, scrollDelay);
 }
-    
+
 int HTMLMarqueeElement::loop() const
 {
     bool ok;
     int loopValue = fastGetAttribute(loopAttr).toInt(&ok);
     return ok && loopValue > 0 ? loopValue : -1;
 }
-    
+
 void HTMLMarqueeElement::setLoop(int loop, ExceptionCode& ec)
 {
     if (loop <= 0 && loop != -1)
diff --git a/Source/core/html/HTMLMarqueeElement.h b/Source/core/html/HTMLMarqueeElement.h
index ad49859..0ca06ac 100644
--- a/Source/core/html/HTMLMarqueeElement.h
+++ b/Source/core/html/HTMLMarqueeElement.h
@@ -40,16 +40,16 @@
 
     void start();
     void stop();
-    
+
     int scrollAmount() const;
     void setScrollAmount(int, ExceptionCode&);
-    
+
     int scrollDelay() const;
     void setScrollDelay(int, ExceptionCode&);
-    
+
     int loop() const;
     void setLoop(int, ExceptionCode&);
-    
+
 private:
     HTMLMarqueeElement(const QualifiedName&, Document*);
 
diff --git a/Source/core/html/HTMLMarqueeElement.idl b/Source/core/html/HTMLMarqueeElement.idl
index 5b8e3a9..9fc56be 100644
--- a/Source/core/html/HTMLMarqueeElement.idl
+++ b/Source/core/html/HTMLMarqueeElement.idl
@@ -20,7 +20,7 @@
 interface HTMLMarqueeElement : HTMLElement {
     void start();
     void stop();
-    
+
     [Reflect] attribute DOMString behavior;
     [Reflect] attribute DOMString bgColor;
     [Reflect] attribute DOMString direction;
diff --git a/Source/core/html/HTMLMediaElement.h b/Source/core/html/HTMLMediaElement.h
index a9c707e..a59e984 100644
--- a/Source/core/html/HTMLMediaElement.h
+++ b/Source/core/html/HTMLMediaElement.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLMediaElement_h
@@ -85,7 +85,7 @@
     virtual bool supportsFullscreen() const { return false; };
 
     virtual bool supportsSave() const;
-    
+
     WebKit::WebLayer* platformLayer() const;
 
     enum DelayedActionType {
@@ -94,9 +94,9 @@
         TextTrackChangesNotification = 1 << 2
     };
     void scheduleDelayedAction(DelayedActionType);
-    
+
     bool inActiveDocument() const { return m_inActiveDocument; }
-    
+
 // DOM API
 // error state
     PassRefPtr<MediaError> error() const;
@@ -108,7 +108,7 @@
     enum NetworkState { NETWORK_EMPTY, NETWORK_IDLE, NETWORK_LOADING, NETWORK_NO_SOURCE };
     NetworkState networkState() const;
 
-    String preload() const;    
+    String preload() const;
     void setPreload(const String&);
 
     PassRefPtr<TimeRanges> buffered() const;
@@ -136,9 +136,9 @@
     PassRefPtr<TimeRanges> played();
     PassRefPtr<TimeRanges> seekable() const;
     bool ended() const;
-    bool autoplay() const;    
+    bool autoplay() const;
     void setAutoplay(bool b);
-    bool loop() const;    
+    bool loop() const;
     void setLoop(bool b);
     void play();
     void pause();
@@ -182,7 +182,7 @@
     void togglePlayState();
     void beginScrubbing();
     void endScrubbing();
-    
+
     bool canPlay() const;
 
     double percentLoaded() const;
@@ -249,7 +249,7 @@
     virtual ScriptExecutionContext* scriptExecutionContext() const OVERRIDE { return HTMLElement::scriptExecutionContext(); }
 
     bool hasSingleSecurityOrigin() const { return !m_player || m_player->hasSingleSecurityOrigin(); }
-    
+
     bool isFullscreen() const;
     void enterFullscreen();
     void exitFullscreen();
@@ -299,7 +299,7 @@
     enum DisplayMode { Unknown, None, Poster, PosterWaitingForVideo, Video };
     DisplayMode displayMode() const { return m_displayMode; }
     virtual void setDisplayMode(DisplayMode mode) { m_displayMode = mode; }
-    
+
     virtual bool isMediaElement() const { return true; }
 
     // Restrictions to change default behaviors.
@@ -311,12 +311,12 @@
         RequirePageConsentToLoadMediaRestriction = 1 << 3,
     };
     typedef unsigned BehaviorRestrictions;
-    
+
     bool userGestureRequiredForLoad() const { return m_restrictions & RequireUserGestureForLoadRestriction; }
     bool userGestureRequiredForRateChange() const { return m_restrictions & RequireUserGestureForRateChangeRestriction; }
     bool userGestureRequiredForFullscreen() const { return m_restrictions & RequireUserGestureForFullscreenRestriction; }
     bool pageConsentRequiredForLoad() const { return m_restrictions & RequirePageConsentToLoadMediaRestriction; }
-    
+
     void addBehaviorRestriction(BehaviorRestrictions restriction) { m_restrictions |= restriction; }
     void removeBehaviorRestriction(BehaviorRestrictions restriction) { m_restrictions &= ~restriction; }
 
@@ -339,7 +339,7 @@
     virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE;
     virtual void removedFrom(ContainerNode*) OVERRIDE;
     virtual void didRecalcStyle(StyleChange);
-    
+
     virtual void didBecomeFullscreenElement();
     virtual void willStopBeingFullscreenElement();
 
@@ -350,7 +350,7 @@
     virtual void stop();
 
     virtual void updateDisplayState() { }
-    
+
     void setReadyState(MediaPlayer::ReadyState);
     void setNetworkState(MediaPlayer::NetworkState);
 
@@ -387,10 +387,10 @@
     void finishSeek();
     void checkIfSeekNeeded();
     void addPlayedRange(double start, double end);
-    
+
     void scheduleTimeupdateEvent(bool periodicEvent);
     void scheduleEvent(const AtomicString& eventName);
-    
+
     // loading
     void selectMediaResource();
     void loadResource(const KURL&, ContentType&, const String& keySystem);
@@ -479,7 +479,7 @@
 
     double m_volume;
     double m_lastSeekTime;
-    
+
     unsigned m_previousProgress;
     double m_previousProgressTime;
 
@@ -488,7 +488,7 @@
 
     // The last time a timeupdate event was sent in movie time.
     double m_lastTimeUpdateEventMovieTime;
-    
+
     // Loading state.
     enum LoadState { WaitingForSource, LoadingFromSrcAttr, LoadingFromSourceElement };
     LoadState m_loadState;
@@ -498,7 +498,7 @@
     OwnPtr<MediaPlayer> m_player;
 
     BehaviorRestrictions m_restrictions;
-    
+
     MediaPlayer::Preload m_preload;
 
     DisplayMode m_displayMode;
@@ -533,7 +533,7 @@
     bool m_pausedInternal : 1;
 
     // Not all media engines provide enough information about a file to be able to
-    // support progress events so setting m_sendProgressEvents disables them 
+    // support progress events so setting m_sendProgressEvents disables them
     bool m_sendProgressEvents : 1;
 
     bool m_closedCaptionsVisible : 1;
diff --git a/Source/core/html/HTMLMenuElement.h b/Source/core/html/HTMLMenuElement.h
index a4c5b8c..e853a8e 100644
--- a/Source/core/html/HTMLMenuElement.h
+++ b/Source/core/html/HTMLMenuElement.h
@@ -30,7 +30,7 @@
 class HTMLMenuElement FINAL : public HTMLElement {
 public:
     static PassRefPtr<HTMLMenuElement> create(const QualifiedName&, Document*);
-    
+
 private:
     HTMLMenuElement(const QualifiedName&, Document*);
 };
diff --git a/Source/core/html/HTMLMeterElement.cpp b/Source/core/html/HTMLMeterElement.cpp
index 891cdb0..2af8a1a 100644
--- a/Source/core/html/HTMLMeterElement.cpp
+++ b/Source/core/html/HTMLMeterElement.cpp
@@ -173,7 +173,7 @@
             return GaugeRegionSuboptimal;
         return GaugeRegionEvenLessGood;
     }
-    
+
     if (highValue < optimumValue) {
         // The optimum range stays over high
         if (highValue <= theValue)
diff --git a/Source/core/html/HTMLNameCollection.cpp b/Source/core/html/HTMLNameCollection.cpp
index de2fa6d..6e637b2 100644
--- a/Source/core/html/HTMLNameCollection.cpp
+++ b/Source/core/html/HTMLNameCollection.cpp
@@ -62,7 +62,7 @@
     for (; current; current = ElementTraversal::next(current, ownerNode())) {
         switch (type()) {
         case WindowNamedItems:
-            // find only images, forms, applets, embeds and objects by name, 
+            // find only images, forms, applets, embeds and objects by name,
             // but anything by id
             if (current->hasTagName(imgTag)
                 || current->hasTagName(formTag)
@@ -76,7 +76,7 @@
                 return current;
             break;
         case DocumentNamedItems:
-            // find images, forms, applets, embeds, objects and iframes by name, 
+            // find images, forms, applets, embeds, objects and iframes by name,
             // applets and object by id, and images by id but only if they have
             // a name attribute (this very strange rule matches IE)
             if (current->hasTagName(formTag) || current->hasTagName(embedTag) || current->hasTagName(iframeTag)) {
diff --git a/Source/core/html/HTMLOListElement.h b/Source/core/html/HTMLOListElement.h
index 7bf0608..995654d 100644
--- a/Source/core/html/HTMLOListElement.h
+++ b/Source/core/html/HTMLOListElement.h
@@ -41,7 +41,7 @@
 
 private:
     HTMLOListElement(const QualifiedName&, Document*);
-        
+
     void updateItemValues();
 
     unsigned itemCount() const
diff --git a/Source/core/html/HTMLObjectElement.cpp b/Source/core/html/HTMLObjectElement.cpp
index 17a14cc..7d46e64 100644
--- a/Source/core/html/HTMLObjectElement.cpp
+++ b/Source/core/html/HTMLObjectElement.cpp
@@ -50,7 +50,7 @@
 
 using namespace HTMLNames;
 
-inline HTMLObjectElement::HTMLObjectElement(const QualifiedName& tagName, Document* document, HTMLFormElement* form, bool createdByParser) 
+inline HTMLObjectElement::HTMLObjectElement(const QualifiedName& tagName, Document* document, HTMLFormElement* form, bool createdByParser)
     : HTMLPlugInImageElement(tagName, document, createdByParser, ShouldNotPreferPlugInsForImages)
     , m_docNamedItem(true)
     , m_useFallbackContent(false)
@@ -132,7 +132,7 @@
         else if (equalIgnoringCase((*paramNames)[i], "data"))
             dataIndex = i;
     }
-    
+
     if (srcIndex == -1 && dataIndex != -1) {
         paramNames->append("src");
         paramValues->append((*paramValues)[dataIndex]);
@@ -144,7 +144,7 @@
 {
     HashSet<StringImpl*, CaseFoldingHash> uniqueParamNames;
     String urlParameter;
-    
+
     // Scan the PARAM children and store their name/value pairs.
     // Get the URL and type from the params if we don't already have them.
     for (Node* child = firstChild(); child; child = child->nextSibling()) {
@@ -171,7 +171,7 @@
                 serviceType = serviceType.left(pos);
         }
     }
-    
+
     // When OBJECT is used for an applet via Sun's Java plugin, the CODEBASE attribute in the tag
     // points to the Java plugin itself (an ActiveX component) while the actual applet CODEBASE is
     // in a PARAM tag. See <http://java.sun.com/products/plugin/1.2/docs/tags.html>. This means
@@ -182,7 +182,7 @@
         codebase = "codebase";
         uniqueParamNames.add(codebase.impl()); // pretend we found it in a PARAM already
     }
-    
+
     // Turn the attributes of the <object> element into arrays, but don't override <param> values.
     if (hasAttributes()) {
         for (unsigned i = 0; i < attributeCount(); ++i) {
@@ -194,9 +194,9 @@
             }
         }
     }
-    
+
     mapDataParamToSrc(&paramNames, &paramValues);
-    
+
     // HTML5 says that an object resource's URL is specified by the object's data
     // attribute, not by a param element. However, for compatibility, allow the
     // resource's URL to be given by a param named "src", "movie", "code" or "url"
@@ -208,7 +208,7 @@
     }
 }
 
-    
+
 bool HTMLObjectElement::hasFallbackContent() const
 {
     for (Node* child = firstChild(); child; child = child->nextSibling()) {
@@ -221,7 +221,7 @@
     }
     return false;
 }
-    
+
 bool HTMLObjectElement::shouldAllowQuickTimeClassIdQuirk()
 {
     // This site-specific hack maintains compatibility with Mac OS X Wiki Server,
@@ -244,15 +244,15 @@
         if (equalIgnoringCase(metaElement->name(), "generator") && metaElement->content().startsWith("Mac OS X Server Web Services Server", false))
             return true;
     }
-    
+
     return false;
 }
-    
+
 bool HTMLObjectElement::hasValidClassId()
 {
     if (MIMETypeRegistry::isJavaAppletMIMEType(serviceType()) && classId().startsWith("java:", false))
         return true;
-    
+
     if (shouldAllowQuickTimeClassIdQuirk())
         return true;
 
@@ -360,7 +360,7 @@
 {
     if (useFallbackContent())
         return;
-    
+
     if (!inDocument())
         return;
 
@@ -444,7 +444,7 @@
 {
     if (MIMETypeRegistry::isJavaAppletMIMEType(getAttribute(typeAttr)))
         return true;
-        
+
     for (Element* child = ElementTraversal::firstWithin(this); child; child = ElementTraversal::nextSkippingChildren(child, this)) {
         if (child->hasTagName(paramTag)
                 && equalIgnoringCase(child->getNameAttribute(), "type")
@@ -456,7 +456,7 @@
         if (child->hasTagName(appletTag))
             return true;
     }
-    
+
     return false;
 }
 
diff --git a/Source/core/html/HTMLObjectElement.h b/Source/core/html/HTMLObjectElement.h
index ce0ff8e..5b8d1d2 100644
--- a/Source/core/html/HTMLObjectElement.h
+++ b/Source/core/html/HTMLObjectElement.h
@@ -89,11 +89,11 @@
     void updateDocNamedItem();
 
     bool hasFallbackContent() const;
-    
+
     // FIXME: This function should not deal with url or serviceType
     // so that we can better share code between <object> and <embed>.
     void parametersForPlugin(Vector<String>& paramNames, Vector<String>& paramValues, String& url, String& serviceType);
-    
+
     bool shouldAllowQuickTimeClassIdQuirk();
     bool hasValidClassId();
 
diff --git a/Source/core/html/HTMLOptGroupElement.cpp b/Source/core/html/HTMLOptGroupElement.cpp
index 492f2b0..e88a4fd 100644
--- a/Source/core/html/HTMLOptGroupElement.cpp
+++ b/Source/core/html/HTMLOptGroupElement.cpp
@@ -126,24 +126,24 @@
 String HTMLOptGroupElement::groupLabelText() const
 {
     String itemText = document()->displayStringModifiedByEncoding(getAttribute(labelAttr));
-    
+
     // In WinIE, leading and trailing whitespace is ignored in options and optgroups. We match this behavior.
     itemText = itemText.stripWhiteSpace();
     // We want to collapse our whitespace too.  This will match other browsers.
     itemText = itemText.simplifyWhiteSpace();
-        
+
     return itemText;
 }
-    
+
 HTMLSelectElement* HTMLOptGroupElement::ownerSelectElement() const
 {
     ContainerNode* select = parentNode();
     while (select && !select->hasTagName(selectTag))
         select = select->parentNode();
-    
+
     if (!select)
        return 0;
-    
+
     return toHTMLSelectElement(select);
 }
 
diff --git a/Source/core/html/HTMLOptGroupElement.h b/Source/core/html/HTMLOptGroupElement.h
index ccf6758..116763e 100644
--- a/Source/core/html/HTMLOptGroupElement.h
+++ b/Source/core/html/HTMLOptGroupElement.h
@@ -27,7 +27,7 @@
 #include "core/html/HTMLElement.h"
 
 namespace WebCore {
-    
+
 class HTMLSelectElement;
 
 class HTMLOptGroupElement FINAL : public HTMLElement {
@@ -36,7 +36,7 @@
 
     virtual bool isDisabledFormControl() const OVERRIDE;
     HTMLSelectElement* ownerSelectElement() const;
-    
+
     String groupLabelText() const;
 
 private:
diff --git a/Source/core/html/HTMLOptionElement.cpp b/Source/core/html/HTMLOptionElement.cpp
index e44a404..6884d9a 100644
--- a/Source/core/html/HTMLOptionElement.cpp
+++ b/Source/core/html/HTMLOptionElement.cpp
@@ -147,7 +147,7 @@
         removeChildren();
         appendChild(Text::create(document(), text), ec, AttachLazily);
     }
-    
+
     if (selectIsMenuList && select->selectedIndex() != oldSelectedIndex)
         select->setSelectedIndex(oldSelectedIndex);
 }
@@ -289,7 +289,7 @@
 {
     const AtomicString& label = fastGetAttribute(labelAttr);
     if (!label.isNull())
-        return label; 
+        return label;
     return collectOptionInnerText().stripWhiteSpace(isHTMLSpace).simplifyWhiteSpace(isHTMLSpace);
 }
 
diff --git a/Source/core/html/HTMLOptionsCollection.idl b/Source/core/html/HTMLOptionsCollection.idl
index a6f232a..9f32344 100644
--- a/Source/core/html/HTMLOptionsCollection.idl
+++ b/Source/core/html/HTMLOptionsCollection.idl
@@ -30,7 +30,7 @@
 
     [Custom] Node namedItem([Default=Undefined] optional DOMString name);
 
-    [Custom, RaisesException] void add([Default=Undefined] optional HTMLOptionElement option, 
+    [Custom, RaisesException] void add([Default=Undefined] optional HTMLOptionElement option,
                       optional unsigned long index);
     [Custom] void remove([Default=Undefined] optional unsigned long index);
 };
diff --git a/Source/core/html/HTMLOutputElement.h b/Source/core/html/HTMLOutputElement.h
index 8981f7d..d0338d6 100644
--- a/Source/core/html/HTMLOutputElement.h
+++ b/Source/core/html/HTMLOutputElement.h
@@ -48,7 +48,7 @@
     void setDefaultValue(const String&);
     void setFor(const String&);
     DOMSettableTokenList* htmlFor() const;
-    
+
     virtual bool canContainRangeEndPoint() const { return false; }
 
 private:
diff --git a/Source/core/html/HTMLPlugInImageElement.cpp b/Source/core/html/HTMLPlugInImageElement.cpp
index 8a931c2..13b2a81 100644
--- a/Source/core/html/HTMLPlugInImageElement.cpp
+++ b/Source/core/html/HTMLPlugInImageElement.cpp
@@ -91,7 +91,7 @@
 }
 
 // We don't use m_url, as it may not be the final URL that the object loads,
-// depending on <param> values. 
+// depending on <param> values.
 bool HTMLPlugInImageElement::allowedToLoadFrameURL(const String& url)
 {
     KURL completeURL = document()->completeURL(url);
@@ -104,7 +104,7 @@
 }
 
 // We don't use m_url, or m_serviceType as they may not be the final values
-// that <object> uses depending on <param> values. 
+// that <object> uses depending on <param> values.
 bool HTMLPlugInImageElement::wouldLoadAsNetscapePlugin(const String& url, const String& serviceType)
 {
     ASSERT(document());
@@ -149,7 +149,7 @@
     PostAttachCallbackDisabler disabler(this);
 
     bool isImage = isImageType();
-    
+
     if (!isImage)
         queuePostAttachCallback(&HTMLPlugInImageElement::updateWidgetCallback, this);
 
@@ -191,10 +191,10 @@
     HTMLPlugInElement::finishParsingChildren();
     if (useFallbackContent())
         return;
-    
+
     setNeedsWidgetUpdate(true);
     if (inDocument())
-        setNeedsStyleRecalc();    
+        setNeedsStyleRecalc();
 }
 
 void HTMLPlugInImageElement::didMoveToNewDocument(Document* oldDocument)
diff --git a/Source/core/html/HTMLPlugInImageElement.h b/Source/core/html/HTMLPlugInImageElement.h
index fc79771..771d080 100644
--- a/Source/core/html/HTMLPlugInImageElement.h
+++ b/Source/core/html/HTMLPlugInImageElement.h
@@ -76,7 +76,7 @@
 
     // Plug-in URL might not be the same as url() with overriding parameters.
     void subframeLoaderWillCreatePlugIn(const KURL& plugInURL);
-    
+
 protected:
     HTMLPlugInImageElement(const QualifiedName& tagName, Document*, bool createdByParser, PreferPlugInsForImagesOption);
 
@@ -86,7 +86,7 @@
     String m_serviceType;
     String m_url;
     KURL m_loadedUrl;
-    
+
     static void updateWidgetCallback(Node*);
     virtual void attach(const AttachContext& = AttachContext()) OVERRIDE;
     virtual void detach(const AttachContext& = AttachContext()) OVERRIDE;
diff --git a/Source/core/html/HTMLPreElement.idl b/Source/core/html/HTMLPreElement.idl
index 807248c..3d035940 100644
--- a/Source/core/html/HTMLPreElement.idl
+++ b/Source/core/html/HTMLPreElement.idl
@@ -22,7 +22,7 @@
     // FIXME: DOM spec says that width should be of type DOMString
     // see http://bugs.webkit.org/show_bug.cgi?id=8992
     [Reflect] attribute long width;
-    
+
     // Extensions
     [Reflect] attribute boolean wrap;
 };
diff --git a/Source/core/html/HTMLProgressElement.cpp b/Source/core/html/HTMLProgressElement.cpp
index 98d7de6..4bf77c3 100644
--- a/Source/core/html/HTMLProgressElement.cpp
+++ b/Source/core/html/HTMLProgressElement.cpp
@@ -132,7 +132,7 @@
 {
     return fastHasAttribute(valueAttr);
 }
-    
+
 void HTMLProgressElement::didElementStateChange()
 {
     m_value->setWidthPercentage(position() * 100);
diff --git a/Source/core/html/HTMLQuoteElement.h b/Source/core/html/HTMLQuoteElement.h
index 2b85303..1b808c0 100644
--- a/Source/core/html/HTMLQuoteElement.h
+++ b/Source/core/html/HTMLQuoteElement.h
@@ -35,7 +35,7 @@
 
 private:
     HTMLQuoteElement(const QualifiedName&, Document*);
-    
+
     virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE;
     virtual bool isURLAttribute(const Attribute&) const OVERRIDE;
 };
diff --git a/Source/core/html/HTMLSelectElement.cpp b/Source/core/html/HTMLSelectElement.cpp
index 694c7ba..63e806c 100644
--- a/Source/core/html/HTMLSelectElement.cpp
+++ b/Source/core/html/HTMLSelectElement.cpp
@@ -129,7 +129,7 @@
 bool HTMLSelectElement::hasPlaceholderLabelOption() const
 {
     // The select element has no placeholder label option if it has an attribute "multiple" specified or a display size of non-1.
-    // 
+    //
     // The condition "size() > 1" is not compliant with the HTML5 spec as of Dec 3, 2010. "size() != 1" is correct.
     // Using "size() > 1" here because size() may be 0 in WebKit.
     // See the discussion at https://bugs.webkit.org/show_bug.cgi?id=43887
@@ -721,7 +721,7 @@
     }
     if (!inDocument())
         invalidateSelectedItems();
-    
+
     if (renderer()) {
         if (AXObjectCache* cache = renderer()->document()->existingAXObjectCache())
             cache->childrenChanged(this);
@@ -901,23 +901,23 @@
     return optionIndex;
 }
 
-void HTMLSelectElement::dispatchFocusEvent(PassRefPtr<Node> oldFocusedNode, FocusDirection direction)
+void HTMLSelectElement::dispatchFocusEvent(Element* oldFocusedElement, FocusDirection direction)
 {
     // Save the selection so it can be compared to the new selection when
     // dispatching change events during blur event dispatch.
     if (usesMenuList())
         saveLastSelection();
-    HTMLFormControlElementWithState::dispatchFocusEvent(oldFocusedNode, direction);
+    HTMLFormControlElementWithState::dispatchFocusEvent(oldFocusedElement, direction);
 }
 
-void HTMLSelectElement::dispatchBlurEvent(PassRefPtr<Node> newFocusedNode)
+void HTMLSelectElement::dispatchBlurEvent(Element* newFocusedElement)
 {
     // We only need to fire change events here for menu lists, because we fire
     // change events for list boxes whenever the selection change is actually made.
     // This matches other browsers' behavior.
     if (usesMenuList())
         dispatchChangeEventForMenuList();
-    HTMLFormControlElementWithState::dispatchBlurEvent(newFocusedNode);
+    HTMLFormControlElementWithState::dispatchBlurEvent(newFocusedElement);
 }
 
 void HTMLSelectElement::deselectItemsWithoutValidation(HTMLElement* excludeElement)
@@ -1028,7 +1028,7 @@
     // will be submitted (!successful). We won't send a unselected non-disabled
     // option as fallback. This behavior matches to other browsers.
     return successful;
-} 
+}
 
 void HTMLSelectElement::reset()
 {
@@ -1455,7 +1455,7 @@
 
     if (usesMenuList())
         menuListDefaultEventHandler(event);
-    else 
+    else
         listBoxDefaultEventHandler(event);
     if (event->defaultHandled())
         return;
@@ -1495,7 +1495,7 @@
 String HTMLSelectElement::optionAtIndex(int index) const
 {
     const Vector<HTMLElement*>& items = listItems();
-    
+
     HTMLElement* element = items[index];
     if (!element->hasTagName(optionTag) || toHTMLOptionElement(element)->isDisabledFormControl())
         return String();
@@ -1523,11 +1523,11 @@
 }
 
 void HTMLSelectElement::accessKeySetSelectedIndex(int index)
-{    
+{
     // First bring into focus the list box.
     if (!focused())
         accessKeyAction(false);
-    
+
     // If this index is already selected, unselect. otherwise update the selected index.
     const Vector<HTMLElement*>& items = listItems();
     int listIndex = optionToListIndex(index);
diff --git a/Source/core/html/HTMLSelectElement.h b/Source/core/html/HTMLSelectElement.h
index 6004c71..6c579aa 100644
--- a/Source/core/html/HTMLSelectElement.h
+++ b/Source/core/html/HTMLSelectElement.h
@@ -104,7 +104,7 @@
     void setActiveSelectionAnchorIndex(int);
     void setActiveSelectionEndIndex(int);
     void updateListBoxSelection(bool deselectOtherOptions);
-    
+
     // For use in the implementation of HTMLOptionElement.
     void optionSelectionStateChanged(HTMLOptionElement*, bool optionIsSelected);
     bool isParsingInProgress() const { return m_isParsingInProgress; }
@@ -116,12 +116,12 @@
 
 private:
     virtual const AtomicString& formControlType() const;
-    
+
     virtual bool shouldShowFocusRingOnMouseFocus() const OVERRIDE;
 
-    virtual void dispatchFocusEvent(PassRefPtr<Node> oldFocusedNode, FocusDirection) OVERRIDE;
-    virtual void dispatchBlurEvent(PassRefPtr<Node> newFocusedNode);
-    
+    virtual void dispatchFocusEvent(Element* oldFocusedElement, FocusDirection) OVERRIDE;
+    virtual void dispatchBlurEvent(Element* newFocusedElemnet) OVERRIDE;
+
     virtual bool canStartSelection() const { return false; }
 
     virtual bool isEnumeratable() const { return true; }
@@ -140,7 +140,7 @@
     virtual void defaultEventHandler(Event*);
 
     void dispatchChangeEventForMenuList();
-    
+
     void recalcListItems(bool updateSelectedStates = true) const;
 
     void deselectItems(HTMLOptionElement* excludeElement = 0);
diff --git a/Source/core/html/HTMLSourceElement.cpp b/Source/core/html/HTMLSourceElement.cpp
index 9c02a7b..f3e1024 100644
--- a/Source/core/html/HTMLSourceElement.cpp
+++ b/Source/core/html/HTMLSourceElement.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/HTMLSourceElement.h b/Source/core/html/HTMLSourceElement.h
index bd03ca8..1d13a9e 100644
--- a/Source/core/html/HTMLSourceElement.h
+++ b/Source/core/html/HTMLSourceElement.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLSourceElement_h
@@ -38,16 +38,16 @@
 
     String media() const;
     String type() const;
-    void setSrc(const String&);    
+    void setSrc(const String&);
     void setMedia(const String&);
     void setType(const String&);
-    
+
     void scheduleErrorEvent();
     void cancelPendingErrorEvent();
 
 private:
     HTMLSourceElement(const QualifiedName&, Document*);
-    
+
     virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE;
     virtual void removedFrom(ContainerNode*) OVERRIDE;
     virtual bool isURLAttribute(const Attribute&) const OVERRIDE;
diff --git a/Source/core/html/HTMLSourceElement.idl b/Source/core/html/HTMLSourceElement.idl
index 4502f86..0cad1e5 100644
--- a/Source/core/html/HTMLSourceElement.idl
+++ b/Source/core/html/HTMLSourceElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/HTMLStyleElement.cpp b/Source/core/html/HTMLStyleElement.cpp
index 1a26b6d..2d981d6 100644
--- a/Source/core/html/HTMLStyleElement.cpp
+++ b/Source/core/html/HTMLStyleElement.cpp
@@ -29,6 +29,7 @@
 #include "core/css/StyleSheetContents.h"
 #include "core/dom/ContextFeatures.h"
 #include "core/dom/Document.h"
+#include "core/dom/DocumentStyleSheetCollection.h"
 #include "core/dom/Event.h"
 #include "core/dom/EventSender.h"
 #include "core/dom/shadow/ShadowRoot.h"
@@ -90,41 +91,40 @@
     if (!inDocument())
         return;
 
-    bool scopedValueChanged = false;
     if (scoped) {
+        if (m_scopedStyleRegistrationState == RegisteredAsScoped)
+            return;
+
         // As any <style> in a shadow tree is treated as "scoped",
         // need to remove the <style> from its shadow root.
+        ContainerNode* scopingNode = 0;
         if (m_scopedStyleRegistrationState == RegisteredInShadowRoot) {
-            unregisterWithScopingNode(containingShadowRoot());
-            scopedValueChanged = true;
+            scopingNode = containingShadowRoot();
+            unregisterWithScopingNode(scopingNode);
         }
+        document()->styleSheetCollection()->removeStyleSheetCandidateNode(this, scopingNode);
+        registerWithScopingNode(true);
 
-        if (m_scopedStyleRegistrationState != RegisteredAsScoped) {
-            registerWithScopingNode(true);
-            scopedValueChanged = true;
-        }
-
-        if (scopedValueChanged)
-            document()->modifiedStyleSheet(sheet());
+        document()->styleSheetCollection()->addStyleSheetCandidateNode(this, false);
+        document()->modifiedStyleSheet(sheet());
         return;
     }
 
     // If the <style> was scoped, need to remove the <style> from the scoping
     // element, i.e. the parent node.
-    if (m_scopedStyleRegistrationState == RegisteredAsScoped) {
-        unregisterWithScopingNode(parentNode());
-        scopedValueChanged = true;
-    }
+    if (m_scopedStyleRegistrationState != RegisteredAsScoped)
+        return;
+
+    document()->styleSheetCollection()->removeStyleSheetCandidateNode(this, parentNode());
+    unregisterWithScopingNode(parentNode());
 
     // As any <style> in a shadow tree is treated as "scoped",
     // need to add the <style> to its shadow root.
-    if (isInShadowTree() && m_scopedStyleRegistrationState != RegisteredInShadowRoot) {
+    if (isInShadowTree())
         registerWithScopingNode(false);
-        scopedValueChanged = true;
-    }
 
-    if (scopedValueChanged)
-        document()->modifiedStyleSheet(sheet());
+    document()->styleSheetCollection()->addStyleSheetCandidateNode(this, false);
+    document()->modifiedStyleSheet(sheet());
 }
 
 void HTMLStyleElement::finishParsingChildren()
@@ -190,8 +190,8 @@
     // That is, because willRemove() is also called if an ancestor is removed from the document.
     // Now, if we want to register <style scoped> even if it's not inDocument,
     // we'd need to find a way to discern whether that is the case, or whether <style scoped> itself is about to be removed.
+    ContainerNode* scope = 0;
     if (m_scopedStyleRegistrationState != NotRegistered) {
-        ContainerNode* scope;
         if (m_scopedStyleRegistrationState == RegisteredInShadowRoot) {
             scope = containingShadowRoot();
             if (!scope)
@@ -202,7 +202,7 @@
     }
 
     if (insertionPoint->inDocument())
-        StyleElement::removedFromDocument(document(), this);
+        StyleElement::removedFromDocument(document(), this, scope);
 }
 
 void HTMLStyleElement::didNotifySubtreeInsertions(ContainerNode* insertionPoint)
@@ -274,7 +274,7 @@
 }
 
 void HTMLStyleElement::addSubresourceAttributeURLs(ListHashSet<KURL>& urls) const
-{    
+{
     HTMLElement::addSubresourceAttributeURLs(urls);
 
     if (CSSStyleSheet* styleSheet = const_cast<HTMLStyleElement*>(this)->sheet())
diff --git a/Source/core/html/HTMLStyleElement.h b/Source/core/html/HTMLStyleElement.h
index 084d4fd..27c0ca7 100644
--- a/Source/core/html/HTMLStyleElement.h
+++ b/Source/core/html/HTMLStyleElement.h
@@ -103,6 +103,12 @@
     ScopedStyleRegistrationState m_scopedStyleRegistrationState;
 };
 
+inline bool isHTMLStyleElement(Node* node)
+{
+    ASSERT(node);
+    return node->hasTagName(HTMLNames::styleTag);
+}
+
 inline HTMLStyleElement* toHTMLStyleElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || node->hasTagName(HTMLNames::styleTag));
diff --git a/Source/core/html/HTMLTableCellElement.cpp b/Source/core/html/HTMLTableCellElement.cpp
index 0c4b225..1327f0d 100644
--- a/Source/core/html/HTMLTableCellElement.cpp
+++ b/Source/core/html/HTMLTableCellElement.cpp
@@ -75,7 +75,7 @@
         if (node->hasTagName(tdTag) || node->hasTagName(thTag))
             index++;
     }
-    
+
     return index;
 }
 
diff --git a/Source/core/html/HTMLTableElement.cpp b/Source/core/html/HTMLTableElement.cpp
index 001f141..f0fa060 100644
--- a/Source/core/html/HTMLTableElement.cpp
+++ b/Source/core/html/HTMLTableElement.cpp
@@ -305,7 +305,7 @@
         addHTMLLengthToStyle(style, CSSPropertyWidth, value);
     else if (name == heightAttr)
         addHTMLLengthToStyle(style, CSSPropertyHeight, value);
-    else if (name == borderAttr) 
+    else if (name == borderAttr)
         addPropertyToPresentationAttributeStyle(style, CSSPropertyBorderWidth, parseBorderWidthAttribute(value), CSSPrimitiveValue::CSS_PX);
     else if (name == bordercolorAttr) {
         if (!value.isEmpty())
@@ -426,7 +426,7 @@
 {
     if (m_frameAttr)
         return 0;
-    
+
     if (!m_borderAttr && !m_borderColorAttr) {
         // Setting the border to 'hidden' allows it to win over any border
         // set on the table's cells during border-conflict resolution.
@@ -498,7 +498,7 @@
         style->setProperty(CSSPropertyBorderColor, cssValuePool().createInheritedValue());
         break;
     case NoBorders:
-        // If 'rules=none' then allow any borders set at cell level to take effect. 
+        // If 'rules=none' then allow any borders set at cell level to take effect.
         break;
     }
 
diff --git a/Source/core/html/HTMLTextAreaElement.cpp b/Source/core/html/HTMLTextAreaElement.cpp
index cf99917..5e06cf9 100644
--- a/Source/core/html/HTMLTextAreaElement.cpp
+++ b/Source/core/html/HTMLTextAreaElement.cpp
@@ -222,7 +222,7 @@
     const AtomicString& dirnameAttrValue = fastGetAttribute(dirnameAttr);
     if (!dirnameAttrValue.isNull())
         encoding.appendData(dirnameAttrValue, directionForFormData());
-    return true;    
+    return true;
 }
 
 void HTMLTextAreaElement::reset()
@@ -249,7 +249,7 @@
 void HTMLTextAreaElement::updateFocusAppearance(bool restorePreviousSelection)
 {
     if (!restorePreviousSelection || !hasCachedSelection()) {
-        // If this is the first focus, set a caret at the beginning of the text.  
+        // If this is the first focus, set a caret at the beginning of the text.
         // This matches some browsers' behavior; see bug 11746 Comment #15.
         // http://bugs.webkit.org/show_bug.cgi?id=11746#c15
         setSelectionRange(0, 0);
diff --git a/Source/core/html/HTMLTextAreaElement.h b/Source/core/html/HTMLTextAreaElement.h
index 09533a7..3deace8 100644
--- a/Source/core/html/HTMLTextAreaElement.h
+++ b/Source/core/html/HTMLTextAreaElement.h
@@ -52,7 +52,7 @@
     virtual bool valueMissing() const OVERRIDE;
     virtual bool tooLong() const OVERRIDE;
     bool isValidValue(const String&) const;
-    
+
     virtual HTMLElement* innerTextElement() const;
 
     void rendererWillBeDestroyed();
@@ -82,7 +82,7 @@
     virtual bool isRequiredFormControl() const { return isRequired(); }
 
     virtual void defaultEventHandler(Event*);
-    
+
     virtual void subtreeHasChanged();
 
     virtual bool isEnumeratable() const { return true; }
diff --git a/Source/core/html/HTMLTextFormControlElement.cpp b/Source/core/html/HTMLTextFormControlElement.cpp
index 70fe01d..cfc10a5 100644
--- a/Source/core/html/HTMLTextFormControlElement.cpp
+++ b/Source/core/html/HTMLTextFormControlElement.cpp
@@ -71,20 +71,20 @@
     return InsertionDone;
 }
 
-void HTMLTextFormControlElement::dispatchFocusEvent(PassRefPtr<Node> oldFocusedNode, FocusDirection direction)
+void HTMLTextFormControlElement::dispatchFocusEvent(Element* oldFocusedElement, FocusDirection direction)
 {
     if (supportsPlaceholder())
         updatePlaceholderVisibility(false);
-    handleFocusEvent(oldFocusedNode.get(), direction);
-    HTMLFormControlElementWithState::dispatchFocusEvent(oldFocusedNode, direction);
+    handleFocusEvent(oldFocusedElement, direction);
+    HTMLFormControlElementWithState::dispatchFocusEvent(oldFocusedElement, direction);
 }
 
-void HTMLTextFormControlElement::dispatchBlurEvent(PassRefPtr<Node> newFocusedNode)
+void HTMLTextFormControlElement::dispatchBlurEvent(Element* newFocusedElement)
 {
     if (supportsPlaceholder())
         updatePlaceholderVisibility(false);
     handleBlurEvent();
-    HTMLFormControlElementWithState::dispatchBlurEvent(newFocusedNode);
+    HTMLFormControlElementWithState::dispatchBlurEvent(newFocusedElement);
 }
 
 void HTMLTextFormControlElement::defaultEventHandler(Event* event)
@@ -623,7 +623,7 @@
     ASSERT(position.isNull() || position.anchorType() == Position::PositionIsOffsetInAnchor
         || position.containerNode() || !position.anchorNode()->shadowHost()
         || (position.anchorNode()->parentNode() && position.anchorNode()->parentNode()->isShadowRoot()));
-        
+
     Node* container = position.containerNode();
     if (!container)
         return 0;
diff --git a/Source/core/html/HTMLTextFormControlElement.h b/Source/core/html/HTMLTextFormControlElement.h
index c18ef23..36bd6c4 100644
--- a/Source/core/html/HTMLTextFormControlElement.h
+++ b/Source/core/html/HTMLTextFormControlElement.h
@@ -121,21 +121,21 @@
     // https://bugs.webkit.org/show_bug.cgi?id=92608
     virtual bool areAuthorShadowsAllowed() const OVERRIDE { return false; }
 
-    virtual void dispatchFocusEvent(PassRefPtr<Node> oldFocusedNode, FocusDirection) OVERRIDE;
-    virtual void dispatchBlurEvent(PassRefPtr<Node> newFocusedNode);
+    virtual void dispatchFocusEvent(Element* oldFocusedElement, FocusDirection) OVERRIDE;
+    virtual void dispatchBlurEvent(Element* newFocusedElement) OVERRIDE;
 
     // Returns true if user-editable value is empty. Used to check placeholder visibility.
     virtual bool isEmptyValue() const = 0;
     // Returns true if suggested value is empty. Used to check placeholder visibility.
     virtual bool isEmptySuggestedValue() const { return true; }
     // Called in dispatchFocusEvent(), after placeholder process, before calling parent's dispatchFocusEvent().
-    virtual void handleFocusEvent(Node* /* oldFocusedNode */, FocusDirection) { }
+    virtual void handleFocusEvent(Element* /* oldFocusedNode */, FocusDirection) { }
     // Called in dispatchBlurEvent(), after placeholder process, before calling parent's dispatchBlurEvent().
     virtual void handleBlurEvent() { }
 
     String m_textAsOfLastFormControlChangeEvent;
     bool m_lastChangeWasUserEdit;
-    
+
     int m_cachedSelectionStart;
     int m_cachedSelectionEnd;
     TextFieldSelectionDirection m_cachedSelectionDirection;
diff --git a/Source/core/html/HTMLTitleElement.cpp b/Source/core/html/HTMLTitleElement.cpp
index c467796..0b5a37c 100644
--- a/Source/core/html/HTMLTitleElement.cpp
+++ b/Source/core/html/HTMLTitleElement.cpp
@@ -136,7 +136,7 @@
     RefPtr<Node> protectFromMutationEvents(this);
 
     int numChildren = childNodeCount();
-    
+
     if (numChildren == 1 && firstChild()->isTextNode())
         toText(firstChild())->setData(value);
     else {
diff --git a/Source/core/html/HTMLVideoElement.cpp b/Source/core/html/HTMLVideoElement.cpp
index bbdf46b..5d58b9d 100644
--- a/Source/core/html/HTMLVideoElement.cpp
+++ b/Source/core/html/HTMLVideoElement.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -58,9 +58,9 @@
     return videoElement.release();
 }
 
-bool HTMLVideoElement::rendererIsNeeded(const NodeRenderingContext& context) 
+bool HTMLVideoElement::rendererIsNeeded(const NodeRenderingContext& context)
 {
-    return HTMLElement::rendererIsNeeded(context); 
+    return HTMLElement::rendererIsNeeded(context);
 }
 
 RenderObject* HTMLVideoElement::createRenderer(RenderStyle*)
@@ -78,7 +78,7 @@
             m_imageLoader = adoptPtr(new HTMLImageLoader(this));
         m_imageLoader->updateFromElement();
         if (renderer())
-            toRenderImage(renderer())->imageResource()->setCachedImage(m_imageLoader->image()); 
+            toRenderImage(renderer())->imageResource()->setCachedImage(m_imageLoader->image());
     }
 }
 
@@ -111,7 +111,7 @@
             m_imageLoader->updateFromElementIgnoringPreviousError();
         } else {
             if (renderer())
-                toRenderImage(renderer())->imageResource()->setCachedImage(0); 
+                toRenderImage(renderer())->imageResource()->setCachedImage(0);
         }
     } else
         HTMLMediaElement::parseAttribute(name, value);
@@ -120,7 +120,7 @@
 bool HTMLVideoElement::supportsFullscreen() const
 {
     Page* page = document() ? document()->page() : 0;
-    if (!page) 
+    if (!page)
         return false;
 
     if (!player() || !player()->supportsFullscreen())
@@ -149,14 +149,14 @@
     unsigned w = getAttribute(widthAttr).string().toUInt(&ok);
     return ok ? w : 0;
 }
-    
+
 unsigned HTMLVideoElement::height() const
 {
     bool ok;
     unsigned h = getAttribute(heightAttr).string().toUInt(&ok);
     return ok ? h : 0;
 }
-    
+
 bool HTMLVideoElement::isURLAttribute(const Attribute& attribute) const
 {
     return attribute.name() == posterAttr || HTMLMediaElement::isURLAttribute(attribute);
@@ -215,7 +215,7 @@
 {
     if (!player())
         return false;
-    
+
     return player()->hasVideo() && player()->readyState() >= MediaPlayer::HaveCurrentData;
 }
 
@@ -224,7 +224,7 @@
     if (isFullscreen())
         return;
 
-    // Generate an exception if this isn't called in response to a user gesture, or if the 
+    // Generate an exception if this isn't called in response to a user gesture, or if the
     // element does not support fullscreen.
     if ((userGestureRequiredForFullscreen() && !ScriptController::processingUserGesture()) || !supportsFullscreen()) {
         ec = InvalidStateError;
diff --git a/Source/core/html/HTMLVideoElement.h b/Source/core/html/HTMLVideoElement.h
index bf598aa..b668bae 100644
--- a/Source/core/html/HTMLVideoElement.h
+++ b/Source/core/html/HTMLVideoElement.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLVideoElement_h
@@ -39,10 +39,10 @@
 
     unsigned width() const;
     unsigned height() const;
-    
+
     unsigned videoWidth() const;
     unsigned videoHeight() const;
-    
+
     // Fullscreen
     void webkitEnterFullscreen(ExceptionCode&);
     void webkitExitFullscreen();
diff --git a/Source/core/html/HTMLVideoElement.idl b/Source/core/html/HTMLVideoElement.idl
index ef4bd8b..5d9d744 100644
--- a/Source/core/html/HTMLVideoElement.idl
+++ b/Source/core/html/HTMLVideoElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/HTMLViewSourceDocument.h b/Source/core/html/HTMLViewSourceDocument.h
index 45f870f..6fc8ccd 100644
--- a/Source/core/html/HTMLViewSourceDocument.h
+++ b/Source/core/html/HTMLViewSourceDocument.h
@@ -19,7 +19,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLViewSourceDocument_h
diff --git a/Source/core/html/ImageDocument.cpp b/Source/core/html/ImageDocument.cpp
index 3b046c4..31edf27 100644
--- a/Source/core/html/ImageDocument.cpp
+++ b/Source/core/html/ImageDocument.cpp
@@ -19,7 +19,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -75,7 +75,7 @@
 
     ImageDocument* m_doc;
 };
-    
+
 class ImageDocumentParser : public RawDataDocumentParser {
 public:
     static PassRefPtr<ImageDocumentParser> create(ImageDocument* document)
@@ -87,7 +87,7 @@
     {
         return toImageDocument(RawDataDocumentParser::document());
     }
-    
+
 private:
     ImageDocumentParser(ImageDocument* document)
         : RawDataDocumentParser(document)
@@ -145,7 +145,7 @@
 
     document()->finishedParsing();
 }
-    
+
 // --------
 
 ImageDocument::ImageDocument(const DocumentInit& initializer)
@@ -158,7 +158,7 @@
     setCompatibilityMode(QuirksMode);
     lockCompatibilityMode();
 }
-    
+
 PassRefPtr<DocumentParser> ImageDocument::createParser()
 {
     return ImageDocumentParser::create(this);
@@ -211,7 +211,7 @@
 
     LayoutSize imageSize = m_imageElement->cachedImage()->imageSizeForRenderer(m_imageElement->renderer(), pageZoomFactor(this));
     LayoutSize windowSize = LayoutSize(view->width(), view->height());
-    
+
     float widthScale = (float)windowSize.width() / imageSize.width();
     float heightScale = (float)windowSize.height() / imageSize.height();
 
@@ -228,7 +228,7 @@
     float scale = this->scale();
     m_imageElement->setWidth(static_cast<int>(imageSize.width() * scale));
     m_imageElement->setHeight(static_cast<int>(imageSize.height() * scale));
-    
+
     m_imageElement->setInlineStyleProperty(CSSPropertyCursor, CSSValueWebkitZoomIn);
 }
 
@@ -238,19 +238,19 @@
         return;
 
     m_shouldShrinkImage = !m_shouldShrinkImage;
-    
+
     if (m_shouldShrinkImage)
         windowSizeChanged();
     else {
         restoreImageSize();
-        
+
         updateLayout();
-        
+
         float scale = this->scale();
-        
+
         int scrollX = static_cast<int>(x / scale - (float)frame()->view()->width() / 2);
         int scrollY = static_cast<int>(y / scale - (float)frame()->view()->height() / 2);
-        
+
         frame()->view()->setScrollPosition(IntPoint(scrollX, scrollY));
     }
 }
@@ -258,15 +258,15 @@
 void ImageDocument::imageUpdated()
 {
     ASSERT(m_imageElement);
-    
+
     if (m_imageSizeIsKnown)
         return;
 
     if (m_imageElement->cachedImage()->imageSizeForRenderer(m_imageElement->renderer(), pageZoomFactor(this)).isEmpty())
         return;
-    
+
     m_imageSizeIsKnown = true;
-    
+
     if (shouldShrinkToFit()) {
         // Force resizing of the image
         windowSizeChanged();
@@ -277,16 +277,16 @@
 {
     if (!m_imageElement || !m_imageSizeIsKnown || m_imageElement->document() != this)
         return;
-    
+
     LayoutSize imageSize = m_imageElement->cachedImage()->imageSizeForRenderer(m_imageElement->renderer(), 1.0f);
     m_imageElement->setWidth(imageSize.width());
     m_imageElement->setHeight(imageSize.height());
-    
+
     if (imageFitsInWindow())
         m_imageElement->removeInlineStyleProperty(CSSPropertyCursor);
     else
         m_imageElement->setInlineStyleProperty(CSSPropertyCursor, CSSValueWebkitZoomOut);
-        
+
     m_didShrinkImage = false;
 }
 
@@ -301,8 +301,8 @@
 
     LayoutSize imageSize = m_imageElement->cachedImage()->imageSizeForRenderer(m_imageElement->renderer(), pageZoomFactor(this));
     LayoutSize windowSize = LayoutSize(view->width(), view->height());
-    
-    return imageSize.width() <= windowSize.width() && imageSize.height() <= windowSize.height();    
+
+    return imageSize.width() <= windowSize.width() && imageSize.height() <= windowSize.height();
 }
 
 void ImageDocument::windowSizeChanged()
@@ -311,7 +311,7 @@
         return;
 
     bool fitsInWindow = imageFitsInWindow();
-    
+
     // If the image has been explicitly zoomed in, restore the cursor if the image fits
     // and set it to a zoom out cursor if the image doesn't fit
     if (!m_shouldShrinkImage) {
@@ -321,7 +321,7 @@
             m_imageElement->setInlineStyleProperty(CSSPropertyCursor, CSSValueWebkitZoomOut);
         return;
     }
-    
+
     if (m_didShrinkImage) {
         // If the window has been resized so that the image fits, restore the image size
         // otherwise update the restored image size.
@@ -339,10 +339,10 @@
 }
 
 CachedImage* ImageDocument::cachedImage()
-{ 
+{
     if (!m_imageElement)
         createDocumentStructure();
-    
+
     return m_imageElement->cachedImage();
 }
 
diff --git a/Source/core/html/ImageDocument.h b/Source/core/html/ImageDocument.h
index 81a1675..fbe9e50 100644
--- a/Source/core/html/ImageDocument.h
+++ b/Source/core/html/ImageDocument.h
@@ -19,7 +19,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ImageDocument_h
@@ -59,15 +59,15 @@
     bool imageFitsInWindow() const;
     bool shouldShrinkToFit() const;
     float scale() const;
-    
+
     RefPtr<HTMLImageElement> m_imageElement;
-    
+
     // Whether enough of the image has been loaded to determine its size
     bool m_imageSizeIsKnown;
-    
+
     // Whether the image is shrunk to fit or not
     bool m_didShrinkImage;
-    
+
     // Whether the image should be shrunk or not
     bool m_shouldShrinkImage;
 };
diff --git a/Source/core/html/ImageInputType.cpp b/Source/core/html/ImageInputType.cpp
index 7c03d83..abfccc1 100644
--- a/Source/core/html/ImageInputType.cpp
+++ b/Source/core/html/ImageInputType.cpp
@@ -138,7 +138,7 @@
         return;
 
     RenderImageResource* imageResource = renderer->imageResource();
-    imageResource->setCachedImage(imageLoader->image()); 
+    imageResource->setCachedImage(imageLoader->image());
 
     // If we have no image at all because we have no src attribute, set
     // image height and width for the alt text instead.
diff --git a/Source/core/html/InputType.cpp b/Source/core/html/InputType.cpp
index d100660..644d327 100644
--- a/Source/core/html/InputType.cpp
+++ b/Source/core/html/InputType.cpp
@@ -541,7 +541,7 @@
     return false;
 }
 
-void InputType::handleFocusEvent(Node*, FocusDirection)
+void InputType::handleFocusEvent(Element*, FocusDirection)
 {
 }
 
diff --git a/Source/core/html/InputType.h b/Source/core/html/InputType.h
index 0545aac..a32b783 100644
--- a/Source/core/html/InputType.h
+++ b/Source/core/html/InputType.h
@@ -65,7 +65,7 @@
 
 struct ClickHandlingState {
     WTF_MAKE_FAST_ALLOCATED;
-  
+
 public:
     bool checked;
     bool indeterminate;
@@ -196,7 +196,7 @@
     virtual bool isKeyboardFocusable(KeyboardEvent*) const;
     virtual bool shouldShowFocusRingOnMouseFocus() const;
     virtual bool shouldUseInputMethod() const;
-    virtual void handleFocusEvent(Node* oldFocusedNode, FocusDirection);
+    virtual void handleFocusEvent(Element* oldFocusedElement, FocusDirection);
     virtual void handleBlurEvent();
     virtual void accessKeyAction(bool sendMouseEvents);
     virtual bool canBeSuccessfulSubmitButton();
diff --git a/Source/core/html/LinkRelAttribute.h b/Source/core/html/LinkRelAttribute.h
index 0092108..8dddfef 100644
--- a/Source/core/html/LinkRelAttribute.h
+++ b/Source/core/html/LinkRelAttribute.h
@@ -60,7 +60,7 @@
     bool m_isLinkPrerender : 1;
     bool m_isImport : 1;
 };
-    
+
 }
 
 #endif
diff --git a/Source/core/html/MediaController.cpp b/Source/core/html/MediaController.cpp
index f8f7b13..4e60eb9 100644
--- a/Source/core/html/MediaController.cpp
+++ b/Source/core/html/MediaController.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -92,8 +92,8 @@
     if (m_mediaElements.isEmpty())
         return TimeRanges::create();
 
-    // The buffered attribute must return a new static normalized TimeRanges object that represents 
-    // the intersection of the ranges of the media resources of the slaved media elements that the 
+    // The buffered attribute must return a new static normalized TimeRanges object that represents
+    // the intersection of the ranges of the media resources of the slaved media elements that the
     // user agent has buffered, at the time the attribute is evaluated.
     RefPtr<TimeRanges> bufferedRanges = m_mediaElements.first()->buffered();
     for (size_t index = 1; index < m_mediaElements.size(); ++index)
@@ -120,8 +120,8 @@
     if (m_mediaElements.isEmpty())
         return TimeRanges::create();
 
-    // The played attribute must return a new static normalized TimeRanges object that represents 
-    // the union of the ranges of the media resources of the slaved media elements that the 
+    // The played attribute must return a new static normalized TimeRanges object that represents
+    // the union of the ranges of the media resources of the slaved media elements that the
     // user agent has so far rendered, at the time the attribute is evaluated.
     RefPtr<TimeRanges> playedRanges = m_mediaElements.first()->played();
     for (size_t index = 1; index < m_mediaElements.size(); ++index)
@@ -159,18 +159,18 @@
 
 void MediaController::setCurrentTime(double time, ExceptionCode& ec)
 {
-    // When the user agent is to seek the media controller to a particular new playback position, 
+    // When the user agent is to seek the media controller to a particular new playback position,
     // it must follow these steps:
     // If the new playback position is less than zero, then set it to zero.
     time = max(0.0, time);
-    
-    // If the new playback position is greater than the media controller duration, then set it 
+
+    // If the new playback position is greater than the media controller duration, then set it
     // to the media controller duration.
     time = min(time, duration());
-    
+
     // Set the media controller position to the new playback position.
     m_clock->setCurrentTime(time);
-    
+
     // Seek each slaved media element to the new playback position relative to the media element timeline.
     for (size_t index = 0; index < m_mediaElements.size(); ++index)
         m_mediaElements[index]->seek(time, ec);
@@ -240,7 +240,7 @@
     if (m_clock->playRate() == rate)
         return;
 
-    // The playbackRate attribute, on setting, must set the MediaController's media controller 
+    // The playbackRate attribute, on setting, must set the MediaController's media controller
     // playback rate to the new value,
     m_clock->setPlayRate(rate);
 
@@ -256,13 +256,13 @@
     if (m_volume == level)
         return;
 
-    // If the new value is outside the range 0.0 to 1.0 inclusive, then, on setting, an 
+    // If the new value is outside the range 0.0 to 1.0 inclusive, then, on setting, an
     // IndexSizeError exception must be raised instead.
     if (level < 0 || level > 1) {
         ec = IndexSizeError;
         return;
     }
-        
+
     // The volume attribute, on setting, if the new value is in the range 0.0 to 1.0 inclusive,
     // must set the MediaController's media controller volume multiplier to the new value
     m_volume = level;
@@ -352,7 +352,7 @@
 {
     ReadyState oldReadyState = m_readyState;
     ReadyState newReadyState;
-    
+
     if (m_mediaElements.isEmpty()) {
         // If the MediaController has no slaved media elements, let new readiness state be 0.
         newReadyState = HAVE_NOTHING;
@@ -364,10 +364,10 @@
             newReadyState = min(newReadyState, m_mediaElements[index]->readyState());
     }
 
-    if (newReadyState == oldReadyState) 
+    if (newReadyState == oldReadyState)
         return;
 
-    // If the MediaController's most recently reported readiness state is greater than new readiness 
+    // If the MediaController's most recently reported readiness state is greater than new readiness
     // state then queue a task to fire a simple event at the MediaController object, whose name is the
     // event name corresponding to the value of new readiness state given in the table below. [omitted]
     if (oldReadyState > newReadyState) {
@@ -384,7 +384,7 @@
         nextState = static_cast<ReadyState>(nextState + 1);
         // 3. Queue a task to fire a simple event at the MediaController object, whose name is the
         // event name corresponding to the value of next state given in the table below. [omitted]
-        scheduleEvent(eventNameForReadyState(nextState));        
+        scheduleEvent(eventNameForReadyState(nextState));
         // If next state is less than new readiness state, then return to the step labeled loop
     } while (nextState < newReadyState);
 
@@ -397,7 +397,7 @@
     PlaybackState oldPlaybackState = m_playbackState;
     PlaybackState newPlaybackState;
 
-    // Initialize new playback state by setting it to the state given for the first matching 
+    // Initialize new playback state by setting it to the state given for the first matching
     // condition from the following list:
     if (m_mediaElements.isEmpty()) {
         // If the MediaController has no slaved media elements
@@ -424,9 +424,9 @@
 
     // and the new playback state is ended,
     if (newPlaybackState == ENDED) {
-        // then queue a task that, if the MediaController object is a playing media controller, and 
-        // all of the MediaController's slaved media elements have still ended playback, and the 
-        // media controller playback rate is still positive or zero, 
+        // then queue a task that, if the MediaController object is a playing media controller, and
+        // all of the MediaController's slaved media elements have still ended playback, and the
+        // media controller playback rate is still positive or zero,
         if (!m_paused && hasEnded()) {
             // changes the MediaController object to a paused media controller
             m_paused = true;
@@ -437,7 +437,7 @@
     }
 
     // If the MediaController's most recently reported playback state is not equal to new playback state
-    // then queue a task to fire a simple event at the MediaController object, whose name is playing 
+    // then queue a task to fire a simple event at the MediaController object, whose name is playing
     // if new playback state is playing, ended if new playback state is ended, and waiting otherwise.
     AtomicString eventName;
     switch (newPlaybackState) {
@@ -486,30 +486,30 @@
 
 bool MediaController::isBlocked() const
 {
-    // A MediaController is a blocked media controller if the MediaController is a paused media 
+    // A MediaController is a blocked media controller if the MediaController is a paused media
     // controller,
     if (m_paused)
         return true;
-    
+
     if (m_mediaElements.isEmpty())
         return false;
-    
+
     bool allPaused = true;
     for (size_t index = 0; index < m_mediaElements.size(); ++index) {
         HTMLMediaElement* element = m_mediaElements[index];
         //  or if any of its slaved media elements are blocked media elements,
         if (element->isBlocked())
             return true;
-        
-        // or if any of its slaved media elements whose autoplaying flag is true still have their 
+
+        // or if any of its slaved media elements whose autoplaying flag is true still have their
         // paused attribute set to true,
         if (element->isAutoplaying() && element->paused())
             return true;
-        
+
         if (!element->paused())
             allPaused = false;
     }
-    
+
     // or if all of its slaved media elements have their paused attribute set to true.
     return allPaused;
 }
@@ -524,7 +524,7 @@
     // playback state be ended.
     if (m_mediaElements.isEmpty())
         return false;
-    
+
     bool allHaveEnded = true;
     for (size_t index = 0; index < m_mediaElements.size(); ++index) {
         if (!m_mediaElements[index]->ended())
diff --git a/Source/core/html/MediaController.h b/Source/core/html/MediaController.h
index cb05e8c..ec9f485 100644
--- a/Source/core/html/MediaController.h
+++ b/Source/core/html/MediaController.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MediaController_h
diff --git a/Source/core/html/MediaController.idl b/Source/core/html/MediaController.idl
index 8516705..b988d1a 100644
--- a/Source/core/html/MediaController.idl
+++ b/Source/core/html/MediaController.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/MediaControllerInterface.h b/Source/core/html/MediaControllerInterface.h
index d81283a..8adb9c8 100644
--- a/Source/core/html/MediaControllerInterface.h
+++ b/Source/core/html/MediaControllerInterface.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MediaControllerInterface_h
@@ -37,32 +37,32 @@
 class MediaControllerInterface {
 public:
     virtual ~MediaControllerInterface() { };
-    
+
     // MediaController IDL:
     virtual PassRefPtr<TimeRanges> buffered() const = 0;
     virtual PassRefPtr<TimeRanges> seekable() const = 0;
     virtual PassRefPtr<TimeRanges> played() = 0;
-    
+
     virtual double duration() const = 0;
     virtual double currentTime() const = 0;
     virtual void setCurrentTime(double, ExceptionCode&) = 0;
-    
+
     virtual bool paused() const = 0;
     virtual void play() = 0;
     virtual void pause() = 0;
-    
+
     virtual double defaultPlaybackRate() const = 0;
     virtual void setDefaultPlaybackRate(double) = 0;
-    
+
     virtual double playbackRate() const = 0;
     virtual void setPlaybackRate(double) = 0;
-    
+
     virtual double volume() const = 0;
     virtual void setVolume(double, ExceptionCode&) = 0;
-    
+
     virtual bool muted() const = 0;
     virtual void setMuted(bool) = 0;
-    
+
     enum ReadyState { HAVE_NOTHING, HAVE_METADATA, HAVE_CURRENT_DATA, HAVE_FUTURE_DATA, HAVE_ENOUGH_DATA };
     virtual ReadyState readyState() const = 0;
 
diff --git a/Source/core/html/MediaDocument.cpp b/Source/core/html/MediaDocument.cpp
index 496ae2f..5292264 100644
--- a/Source/core/html/MediaDocument.cpp
+++ b/Source/core/html/MediaDocument.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -55,7 +55,7 @@
     {
         return adoptRef(new MediaDocumentParser(document));
     }
-    
+
 private:
     explicit MediaDocumentParser(Document* document)
         : RawDataDocumentParser(document)
diff --git a/Source/core/html/MediaDocument.h b/Source/core/html/MediaDocument.h
index ae68d81..b5d264e 100644
--- a/Source/core/html/MediaDocument.h
+++ b/Source/core/html/MediaDocument.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MediaDocument_h
diff --git a/Source/core/html/MediaError.h b/Source/core/html/MediaError.h
index 8449b5a..86ace11 100644
--- a/Source/core/html/MediaError.h
+++ b/Source/core/html/MediaError.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MediaError_h
diff --git a/Source/core/html/MediaError.idl b/Source/core/html/MediaError.idl
index 16d339f..3d35b71 100644
--- a/Source/core/html/MediaError.idl
+++ b/Source/core/html/MediaError.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/MediaFragmentURIParser.cpp b/Source/core/html/MediaFragmentURIParser.cpp
index 59042b1..3289ec0 100644
--- a/Source/core/html/MediaFragmentURIParser.cpp
+++ b/Source/core/html/MediaFragmentURIParser.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -106,8 +106,8 @@
     unsigned end = fragmentString.length();
     while (offset < end) {
         // http://www.w3.org/2008/WebVideo/Fragments/WD-media-fragments-spec/#processing-name-value-components
-        // 1. Parse the octet string according to the namevalues syntax, yielding a list of 
-        //    name-value pairs, where name and value are both octet string. In accordance 
+        // 1. Parse the octet string according to the namevalues syntax, yielding a list of
+        //    name-value pairs, where name and value are both octet string. In accordance
         //    with RFC 3986, the name and value components must be parsed and separated before
         //    percent-encoded octets are decoded.
         size_t parameterStart = offset;
@@ -129,7 +129,7 @@
         String value;
         if (equalOffset != parameterEnd)
             value = decodeURLEscapeSequences(fragmentString.substring(equalOffset + 1, parameterEnd - equalOffset - 1));
-        
+
         //  b. Convert name and value to Unicode strings by interpreting them as UTF-8. If either
         //     name or value are not valid UTF-8 strings, then remove the name-value pair from the list.
         bool validUTF8 = true;
@@ -141,7 +141,7 @@
             value = value.utf8(String::StrictConversion).data();
             validUTF8 = !value.isEmpty();
         }
-        
+
         if (validUTF8)
             m_fragments.append(std::make_pair(name, value));
 
@@ -165,7 +165,7 @@
         ASSERT(fragment.second.is8Bit());
 
         // http://www.w3.org/2008/WebVideo/Fragments/WD-media-fragments-spec/#naming-time
-        // Temporal clipping is denoted by the name t, and specified as an interval with a begin 
+        // Temporal clipping is denoted by the name t, and specified as an interval with a begin
         // time and an end time
         if (fragment.first != "t")
             continue;
@@ -175,7 +175,7 @@
         // SMPTE, or as real-world clock time (clock) RFC 2326. Begin and end times are always specified
         // in the same format. The format is specified by name, followed by a colon (:), with npt: being
         // the default.
-        
+
         double start = MediaPlayer::invalidTime();
         double end = MediaPlayer::invalidTime();
         if (parseNPTFragment(fragment.second.characters8(), fragment.second.length(), start, end)) {
@@ -187,8 +187,8 @@
             // occurs multiple times, only the last occurrence of that dimension is used:
             // http://www.w3.org/2008/WebVideo/Fragments/WD-media-fragments-spec/#error-uri-general
             // Multiple occurrences of the same dimension: only the last valid occurrence of a dimension
-            // (e.g., t=10 in #t=2&t=10) is interpreted, all previous occurrences (valid or invalid) 
-            // SHOULD be ignored by the UA. 
+            // (e.g., t=10 in #t=2&t=10) is interpreted, all previous occurrences (valid or invalid)
+            // SHOULD be ignored by the UA.
         }
     }
     m_fragments.clear();
@@ -202,7 +202,7 @@
 
     if (offset == length)
         return false;
-    
+
     // http://www.w3.org/2008/WebVideo/Fragments/WD-media-fragments-spec/#naming-time
     // If a single number only is given, this corresponds to the begin time except if it is preceded
     // by a comma that would in this case indicate the end time.
@@ -226,7 +226,7 @@
 
     if (offset != length)
         return false;
-    
+
     if (startTime >= endTime)
         return false;
 
@@ -255,7 +255,7 @@
     // ; defined in RFC 2326
     // npt-sec       = 1*DIGIT [ "." *DIGIT ]                     ; definitions taken
     // npt-hhmmss    = npt-hh ":" npt-mm ":" npt-ss [ "." *DIGIT] ; from RFC 2326
-    // npt-mmss      = npt-mm ":" npt-ss [ "." *DIGIT] 
+    // npt-mmss      = npt-mm ":" npt-ss [ "." *DIGIT]
     // npt-hh        =   1*DIGIT     ; any positive number
     // npt-mm        =   2DIGIT      ; 0-59
     // npt-ss        =   2DIGIT      ; 0-59
@@ -276,7 +276,7 @@
         time = value1 + fraction;
         return true;
     }
-    
+
     if (digits1.length() < 2)
         return false;
     if (digits1.length() > 2)
@@ -311,7 +311,7 @@
 
     if (offset < length && timeString[offset] == '.')
         fraction = collectFraction(timeString, length, offset).toDouble();
-    
+
     time = (value1 * secondsPerHour) + (value2 * secondsPerMinute) + value3 + fraction;
     return true;
 }
diff --git a/Source/core/html/MediaFragmentURIParser.h b/Source/core/html/MediaFragmentURIParser.h
index 50c95c7..9348be0 100644
--- a/Source/core/html/MediaFragmentURIParser.h
+++ b/Source/core/html/MediaFragmentURIParser.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MediaFragmentURIParser_h
@@ -35,7 +35,7 @@
 
 class MediaFragmentURIParser FINAL {
 public:
-    
+
     MediaFragmentURIParser(const KURL&);
 
     double startTime();
@@ -46,7 +46,7 @@
 private:
 
     void parseFragments();
-    
+
     enum TimeFormat { None, Invalid, NormalPlayTime, SMPTETimeCode, WallClockTimeCode };
     void parseTimeFragment();
     bool parseNPTFragment(const LChar*, unsigned length, double& startTime, double& endTime);
diff --git a/Source/core/html/MediaKeyError.h b/Source/core/html/MediaKeyError.h
index 34ded1c..710411f 100644
--- a/Source/core/html/MediaKeyError.h
+++ b/Source/core/html/MediaKeyError.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MediaKeyError_h
diff --git a/Source/core/html/MediaKeyError.idl b/Source/core/html/MediaKeyError.idl
index 03188d0..a2660d7 100644
--- a/Source/core/html/MediaKeyError.idl
+++ b/Source/core/html/MediaKeyError.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/MediaKeyEvent.cpp b/Source/core/html/MediaKeyEvent.cpp
index 71c8a63..3e9e27c 100644
--- a/Source/core/html/MediaKeyEvent.cpp
+++ b/Source/core/html/MediaKeyEvent.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/MediaKeyEvent.h b/Source/core/html/MediaKeyEvent.h
index 55bb87f..1261d23 100644
--- a/Source/core/html/MediaKeyEvent.h
+++ b/Source/core/html/MediaKeyEvent.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MediaKeyEvent_h
diff --git a/Source/core/html/MediaKeyEvent.idl b/Source/core/html/MediaKeyEvent.idl
index 8a5adc3..78c0ecb 100644
--- a/Source/core/html/MediaKeyEvent.idl
+++ b/Source/core/html/MediaKeyEvent.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/PasswordInputType.cpp b/Source/core/html/PasswordInputType.cpp
index 819b75e..94518ed 100644
--- a/Source/core/html/PasswordInputType.cpp
+++ b/Source/core/html/PasswordInputType.cpp
@@ -130,9 +130,9 @@
     return true;
 }
 
-void PasswordInputType::handleFocusEvent(Node* oldFocusedNode, FocusDirection direction)
+void PasswordInputType::handleFocusEvent(Element* oldFocusedElement, FocusDirection direction)
 {
-    BaseTextInputType::handleFocusEvent(oldFocusedNode, direction);
+    BaseTextInputType::handleFocusEvent(oldFocusedElement, direction);
     if (element()->document()->frame())
         element()->document()->setUseSecureKeyboardEntryWhenActive(true);
 }
diff --git a/Source/core/html/PasswordInputType.h b/Source/core/html/PasswordInputType.h
index 46ba3dc..0b0def1 100644
--- a/Source/core/html/PasswordInputType.h
+++ b/Source/core/html/PasswordInputType.h
@@ -55,7 +55,7 @@
     virtual bool shouldRespectListAttribute() OVERRIDE;
     virtual bool shouldRespectSpeechAttribute() OVERRIDE;
     virtual bool isPasswordField() const OVERRIDE;
-    virtual void handleFocusEvent(Node* oldFocusedNode, FocusDirection) OVERRIDE;
+    virtual void handleFocusEvent(Element* oldFocusedElement, FocusDirection) OVERRIDE;
     virtual void handleBlurEvent() OVERRIDE;
 
     bool isPasswordGenerationEnabled() const;
diff --git a/Source/core/html/PluginDocument.cpp b/Source/core/html/PluginDocument.cpp
index 154d2ae..106783c 100644
--- a/Source/core/html/PluginDocument.cpp
+++ b/Source/core/html/PluginDocument.cpp
@@ -19,7 +19,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -39,7 +39,7 @@
 #include "core/rendering/RenderEmbeddedObject.h"
 
 namespace WebCore {
-    
+
 using namespace HTMLNames;
 
 // FIXME: Share more code with MediaDocumentParser.
@@ -83,16 +83,16 @@
     body->setAttribute(styleAttr, "background-color: rgb(38,38,38)");
 
     rootElement->appendChild(body, IGNORE_EXCEPTION);
-        
+
     RefPtr<Element> embedElement = document()->createElement(embedTag, false);
-        
+
     m_embedElement = static_cast<HTMLEmbedElement*>(embedElement.get());
     m_embedElement->setAttribute(widthAttr, "100%");
     m_embedElement->setAttribute(heightAttr, "100%");
-    
+
     m_embedElement->setAttribute(nameAttr, "plugin");
     m_embedElement->setAttribute(srcAttr, document()->url().string());
-    
+
     DocumentLoader* loader = document()->loader();
     ASSERT(loader);
     if (loader)
@@ -112,7 +112,7 @@
     document()->updateLayout();
 
     // Below we assume that renderer->widget() to have been created by
-    // document()->updateLayout(). However, in some cases, updateLayout() will 
+    // document()->updateLayout(). However, in some cases, updateLayout() will
     // recurse too many times and delay its post-layout tasks (such as creating
     // the widget). Here we kick off the pending post-layout tasks so that we
     // can synchronously redirect data to the plugin.
diff --git a/Source/core/html/PluginDocument.h b/Source/core/html/PluginDocument.h
index 78c8355..458dfc1 100644
--- a/Source/core/html/PluginDocument.h
+++ b/Source/core/html/PluginDocument.h
@@ -19,7 +19,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PluginDocument_h
@@ -54,7 +54,7 @@
     PluginDocument(const DocumentInit&);
 
     virtual PassRefPtr<DocumentParser> createParser() OVERRIDE;
-        
+
     void setShouldLoadPluginManually(bool loadManually) { m_shouldLoadPluginManually = loadManually; }
 
     bool m_shouldLoadPluginManually;
@@ -75,7 +75,7 @@
 
 // This will catch anyone doing an unnecessary cast.
 void toPluginDocument(const PluginDocument*);
-    
+
 }
 
 #endif // PluginDocument_h
diff --git a/Source/core/html/TextDocument.h b/Source/core/html/TextDocument.h
index 8ae9365..a36617d 100644
--- a/Source/core/html/TextDocument.h
+++ b/Source/core/html/TextDocument.h
@@ -19,7 +19,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextDocument_h
@@ -38,7 +38,7 @@
 
 private:
     TextDocument(const DocumentInit&);
-    
+
     virtual PassRefPtr<DocumentParser> createParser();
 };
 
diff --git a/Source/core/html/TextFieldInputType.h b/Source/core/html/TextFieldInputType.h
index e38ad76..79a0187 100644
--- a/Source/core/html/TextFieldInputType.h
+++ b/Source/core/html/TextFieldInputType.h
@@ -36,7 +36,7 @@
 
 namespace WebCore {
 
-class FormDataList; 
+class FormDataList;
 
 // The class represents types of which UI contain text fields.
 // It supports not only the types for BaseTextInputType but also type=number.
diff --git a/Source/core/html/TextMetrics.h b/Source/core/html/TextMetrics.h
index 4a5ab2a..9925831 100644
--- a/Source/core/html/TextMetrics.h
+++ b/Source/core/html/TextMetrics.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextMetrics_h
diff --git a/Source/core/html/TextMetrics.idl b/Source/core/html/TextMetrics.idl
index 5f217b8..fc37998 100644
--- a/Source/core/html/TextMetrics.idl
+++ b/Source/core/html/TextMetrics.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 [
 ] interface TextMetrics {
diff --git a/Source/core/html/TimeRanges.idl b/Source/core/html/TimeRanges.idl
index c6ad136..ec11b43 100644
--- a/Source/core/html/TimeRanges.idl
+++ b/Source/core/html/TimeRanges.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/VoidCallback.h b/Source/core/html/VoidCallback.h
index 10c3c11..0c36880 100644
--- a/Source/core/html/VoidCallback.h
+++ b/Source/core/html/VoidCallback.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef VoidCallback_h
diff --git a/Source/core/html/VoidCallback.idl b/Source/core/html/VoidCallback.idl
index 577fcf5..d403ecc 100644
--- a/Source/core/html/VoidCallback.idl
+++ b/Source/core/html/VoidCallback.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 callback interface VoidCallback {
diff --git a/Source/core/html/canvas/ANGLEInstancedArrays.idl b/Source/core/html/canvas/ANGLEInstancedArrays.idl
index 487b8cd..2d257cc 100644
--- a/Source/core/html/canvas/ANGLEInstancedArrays.idl
+++ b/Source/core/html/canvas/ANGLEInstancedArrays.idl
@@ -36,5 +36,5 @@
 
     [StrictTypeChecking] void drawArraysInstancedANGLE(unsigned long mode, long first, long count, long primcount);
     [StrictTypeChecking] void drawElementsInstancedANGLE(unsigned long mode, long count, unsigned long type, long long offset, long primcount);
-    [StrictTypeChecking] void vertexAttribDivisorANGLE(unsigned long index, long divisor); 
+    [StrictTypeChecking] void vertexAttribDivisorANGLE(unsigned long index, long divisor);
 };
diff --git a/Source/core/html/canvas/ArrayBufferView.idl b/Source/core/html/canvas/ArrayBufferView.idl
index 0f0aba6..5545731 100644
--- a/Source/core/html/canvas/ArrayBufferView.idl
+++ b/Source/core/html/canvas/ArrayBufferView.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/canvas/CanvasGradient.cpp b/Source/core/html/canvas/CanvasGradient.cpp
index e1c9028..da78718 100644
--- a/Source/core/html/canvas/CanvasGradient.cpp
+++ b/Source/core/html/canvas/CanvasGradient.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/canvas/CanvasGradient.idl b/Source/core/html/canvas/CanvasGradient.idl
index 4d06b83..35a4e2a 100644
--- a/Source/core/html/canvas/CanvasGradient.idl
+++ b/Source/core/html/canvas/CanvasGradient.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 [
 ] interface CanvasGradient {
diff --git a/Source/core/html/canvas/CanvasPattern.cpp b/Source/core/html/canvas/CanvasPattern.cpp
index c46f590..9b71023 100644
--- a/Source/core/html/canvas/CanvasPattern.cpp
+++ b/Source/core/html/canvas/CanvasPattern.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/canvas/CanvasPattern.h b/Source/core/html/canvas/CanvasPattern.h
index 3eb4c39..64ee634 100644
--- a/Source/core/html/canvas/CanvasPattern.h
+++ b/Source/core/html/canvas/CanvasPattern.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CanvasPattern_h
diff --git a/Source/core/html/canvas/CanvasPattern.idl b/Source/core/html/canvas/CanvasPattern.idl
index 68003c7..1d8e7a0 100644
--- a/Source/core/html/canvas/CanvasPattern.idl
+++ b/Source/core/html/canvas/CanvasPattern.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 [
 ] interface CanvasPattern {
diff --git a/Source/core/html/canvas/CanvasRenderingContext.cpp b/Source/core/html/canvas/CanvasRenderingContext.cpp
index 1f9d1f3..fa64846 100644
--- a/Source/core/html/canvas/CanvasRenderingContext.cpp
+++ b/Source/core/html/canvas/CanvasRenderingContext.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/canvas/CanvasRenderingContext.h b/Source/core/html/canvas/CanvasRenderingContext.h
index f014a7f..a7cefa3 100644
--- a/Source/core/html/canvas/CanvasRenderingContext.h
+++ b/Source/core/html/canvas/CanvasRenderingContext.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CanvasRenderingContext_h
diff --git a/Source/core/html/canvas/CanvasRenderingContext.idl b/Source/core/html/canvas/CanvasRenderingContext.idl
index 56363a2..36a7911 100644
--- a/Source/core/html/canvas/CanvasRenderingContext.idl
+++ b/Source/core/html/canvas/CanvasRenderingContext.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/canvas/CanvasStyle.cpp b/Source/core/html/canvas/CanvasStyle.cpp
index 74717d0..866610d 100644
--- a/Source/core/html/canvas/CanvasStyle.cpp
+++ b/Source/core/html/canvas/CanvasStyle.cpp
@@ -23,7 +23,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/canvas/CanvasStyle.h b/Source/core/html/canvas/CanvasStyle.h
index 5c2a0fb..0dbaf1b 100644
--- a/Source/core/html/canvas/CanvasStyle.h
+++ b/Source/core/html/canvas/CanvasStyle.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CanvasStyle_h
diff --git a/Source/core/html/canvas/CheckedInt.h b/Source/core/html/canvas/CheckedInt.h
index 542d9a8..906107b 100644
--- a/Source/core/html/canvas/CheckedInt.h
+++ b/Source/core/html/canvas/CheckedInt.h
@@ -529,7 +529,7 @@
    CheckedInt<int8_t> x(-1);
    // 1000 is of type int16_t, is found not to be in range for int8_t,
    // x is invalid
-   CheckedInt<int8_t> x(int16_t(1000)); 
+   CheckedInt<int8_t> x(int16_t(1000));
    // 3123456789 is of type uint32_t, is found not to be in range for int32_t,
    // x is invalid
    CheckedInt<int32_t> x(uint32_t(3123456789));
diff --git a/Source/core/html/canvas/DataView.h b/Source/core/html/canvas/DataView.h
index 8b10c42..67afae6 100644
--- a/Source/core/html/canvas/DataView.h
+++ b/Source/core/html/canvas/DataView.h
@@ -64,7 +64,7 @@
     void setInt16(unsigned byteOffset, int16_t value, bool littleEndian, ExceptionCode&);
     void setUint16(unsigned byteOffset, uint16_t value, ExceptionCode& ec) { setUint16(byteOffset, value, false, ec); }
     void setUint16(unsigned byteOffset, uint16_t value, bool littleEndian, ExceptionCode&);
-    void setInt32(unsigned byteOffset, int32_t value, ExceptionCode& ec) { setInt32(byteOffset, value, false, ec); } 
+    void setInt32(unsigned byteOffset, int32_t value, ExceptionCode& ec) { setInt32(byteOffset, value, false, ec); }
     void setInt32(unsigned byteOffset, int32_t value, bool littleEndian, ExceptionCode&);
     void setUint32(unsigned byteOffset, uint32_t value, ExceptionCode& ec) { setUint32(byteOffset, value, false, ec); }
     void setUint32(unsigned byteOffset, uint32_t value, bool littleEndian, ExceptionCode&);
diff --git a/Source/core/html/canvas/Float32Array.idl b/Source/core/html/canvas/Float32Array.idl
index 7d5818d..09e368b 100644
--- a/Source/core/html/canvas/Float32Array.idl
+++ b/Source/core/html/canvas/Float32Array.idl
@@ -33,7 +33,7 @@
     const unsigned long BYTES_PER_ELEMENT = 4;
 
     readonly attribute unsigned long length;
-    Float32Array subarray([Default=Undefined] optional long start, 
+    Float32Array subarray([Default=Undefined] optional long start,
                           optional long end);
 
     // void set(Float32Array array, optional in unsigned long offset);
diff --git a/Source/core/html/canvas/Float64Array.idl b/Source/core/html/canvas/Float64Array.idl
index 3215e80..f9335ff 100644
--- a/Source/core/html/canvas/Float64Array.idl
+++ b/Source/core/html/canvas/Float64Array.idl
@@ -33,7 +33,7 @@
     const unsigned long BYTES_PER_ELEMENT = 8;
 
     readonly attribute unsigned long length;
-    Float64Array subarray([Default=Undefined] optional long start, 
+    Float64Array subarray([Default=Undefined] optional long start,
                           optional long end);
 
     // void set(Float64Array array, optional in unsigned long offset);
diff --git a/Source/core/html/canvas/Int16Array.idl b/Source/core/html/canvas/Int16Array.idl
index 63640db..350bcbb 100644
--- a/Source/core/html/canvas/Int16Array.idl
+++ b/Source/core/html/canvas/Int16Array.idl
@@ -32,7 +32,7 @@
     const unsigned long BYTES_PER_ELEMENT = 2;
 
     readonly attribute unsigned long length;
-    Int16Array subarray([Default=Undefined] optional long start, 
+    Int16Array subarray([Default=Undefined] optional long start,
                         optional long end);
 
     // void set(Int16Array array, optional in unsigned long offset);
diff --git a/Source/core/html/canvas/Int32Array.idl b/Source/core/html/canvas/Int32Array.idl
index 012e6a8..7b28526 100644
--- a/Source/core/html/canvas/Int32Array.idl
+++ b/Source/core/html/canvas/Int32Array.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
@@ -33,7 +33,7 @@
     const unsigned long BYTES_PER_ELEMENT = 4;
 
     readonly attribute unsigned long length;
-    Int32Array subarray([Default=Undefined] optional long start, 
+    Int32Array subarray([Default=Undefined] optional long start,
                         optional long end);
 
     // void set(Int32Array array, optional in unsigned long offset);
diff --git a/Source/core/html/canvas/Int8Array.idl b/Source/core/html/canvas/Int8Array.idl
index 5c65ac1..0cd83d5 100644
--- a/Source/core/html/canvas/Int8Array.idl
+++ b/Source/core/html/canvas/Int8Array.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
@@ -33,7 +33,7 @@
     const unsigned long BYTES_PER_ELEMENT = 1;
 
     readonly attribute unsigned long length;
-    Int8Array subarray([Default=Undefined] optional long start, 
+    Int8Array subarray([Default=Undefined] optional long start,
                        optional long end);
 
     // void set(Int8Array array, optional in unsigned long offset);
diff --git a/Source/core/html/canvas/OESVertexArrayObject.cpp b/Source/core/html/canvas/OESVertexArrayObject.cpp
index 4123a5f..7065c3b 100644
--- a/Source/core/html/canvas/OESVertexArrayObject.cpp
+++ b/Source/core/html/canvas/OESVertexArrayObject.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -58,7 +58,7 @@
 {
     if (isLost())
         return 0;
-    
+
     RefPtr<WebGLVertexArrayObjectOES> o = WebGLVertexArrayObjectOES::create(m_context, WebGLVertexArrayObjectOES::VaoTypeUser);
     m_context->addContextObject(o.get());
     return o.release();
@@ -68,7 +68,7 @@
 {
     if (!arrayObject || isLost())
         return;
-    
+
     if (!arrayObject->isDefaultObject() && arrayObject == m_context->m_boundVertexArrayObject)
         m_context->setBoundVertexArrayObject(0);
 
@@ -79,10 +79,10 @@
 {
     if (!arrayObject || isLost())
         return 0;
-    
+
     if (!arrayObject->hasEverBeenBound())
         return 0;
-    
+
     Extensions3D* extensions = m_context->graphicsContext3D()->getExtensions();
     return extensions->isVertexArrayOES(arrayObject->object());
 }
@@ -92,16 +92,16 @@
     UNUSED_PARAM(ec);
     if (isLost())
         return;
-    
+
     if (arrayObject && (arrayObject->isDeleted() || !arrayObject->validate(0, context()))) {
         m_context->graphicsContext3D()->synthesizeGLError(GraphicsContext3D::INVALID_OPERATION);
         return;
     }
-    
+
     Extensions3D* extensions = m_context->graphicsContext3D()->getExtensions();
     if (arrayObject && !arrayObject->isDefaultObject() && arrayObject->object()) {
         extensions->bindVertexArrayOES(arrayObject->object());
-        
+
         arrayObject->setHasEverBeenBound();
         m_context->setBoundVertexArrayObject(arrayObject);
     } else {
diff --git a/Source/core/html/canvas/OESVertexArrayObject.h b/Source/core/html/canvas/OESVertexArrayObject.h
index fc49109..142a14b 100644
--- a/Source/core/html/canvas/OESVertexArrayObject.h
+++ b/Source/core/html/canvas/OESVertexArrayObject.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef OESVertexArrayObject_h
diff --git a/Source/core/html/canvas/OESVertexArrayObject.idl b/Source/core/html/canvas/OESVertexArrayObject.idl
index 0a7bd1f..f8c8583 100644
--- a/Source/core/html/canvas/OESVertexArrayObject.idl
+++ b/Source/core/html/canvas/OESVertexArrayObject.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
@@ -28,7 +28,7 @@
     DoNotCheckConstants
 ] interface OESVertexArrayObject {
     const unsigned long VERTEX_ARRAY_BINDING_OES = 0x85B5;
-    
+
     [StrictTypeChecking] WebGLVertexArrayObjectOES createVertexArrayOES();
     [StrictTypeChecking] void         deleteVertexArrayOES([Default=Undefined] optional WebGLVertexArrayObjectOES arrayObject);
     [StrictTypeChecking] boolean      isVertexArrayOES([Default=Undefined] optional WebGLVertexArrayObjectOES arrayObject);
diff --git a/Source/core/html/canvas/Uint16Array.idl b/Source/core/html/canvas/Uint16Array.idl
index 96e95ee..dd62b02 100644
--- a/Source/core/html/canvas/Uint16Array.idl
+++ b/Source/core/html/canvas/Uint16Array.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/canvas/Uint32Array.idl b/Source/core/html/canvas/Uint32Array.idl
index a964686..d47c7ca 100644
--- a/Source/core/html/canvas/Uint32Array.idl
+++ b/Source/core/html/canvas/Uint32Array.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/canvas/Uint8Array.idl b/Source/core/html/canvas/Uint8Array.idl
index afa941c..6058506 100644
--- a/Source/core/html/canvas/Uint8Array.idl
+++ b/Source/core/html/canvas/Uint8Array.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/canvas/WebGLActiveInfo.h b/Source/core/html/canvas/WebGLActiveInfo.h
index a7df2b1..7b3f151 100644
--- a/Source/core/html/canvas/WebGLActiveInfo.h
+++ b/Source/core/html/canvas/WebGLActiveInfo.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WebGLActiveInfo_h
diff --git a/Source/core/html/canvas/WebGLActiveInfo.idl b/Source/core/html/canvas/WebGLActiveInfo.idl
index f5ac864..8443d8f 100644
--- a/Source/core/html/canvas/WebGLActiveInfo.idl
+++ b/Source/core/html/canvas/WebGLActiveInfo.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface WebGLActiveInfo {
diff --git a/Source/core/html/canvas/WebGLBuffer.cpp b/Source/core/html/canvas/WebGLBuffer.cpp
index 1a949c5..34fb7bb 100644
--- a/Source/core/html/canvas/WebGLBuffer.cpp
+++ b/Source/core/html/canvas/WebGLBuffer.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/canvas/WebGLBuffer.h b/Source/core/html/canvas/WebGLBuffer.h
index 5a7fa22..8483685 100644
--- a/Source/core/html/canvas/WebGLBuffer.h
+++ b/Source/core/html/canvas/WebGLBuffer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WebGLBuffer_h
diff --git a/Source/core/html/canvas/WebGLBuffer.idl b/Source/core/html/canvas/WebGLBuffer.idl
index 9ae6c92..5272404 100644
--- a/Source/core/html/canvas/WebGLBuffer.idl
+++ b/Source/core/html/canvas/WebGLBuffer.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface WebGLBuffer {
diff --git a/Source/core/html/canvas/WebGLFramebuffer.cpp b/Source/core/html/canvas/WebGLFramebuffer.cpp
index 4d622cf..7f74aa7 100644
--- a/Source/core/html/canvas/WebGLFramebuffer.cpp
+++ b/Source/core/html/canvas/WebGLFramebuffer.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/canvas/WebGLFramebuffer.h b/Source/core/html/canvas/WebGLFramebuffer.h
index 438c65e..ff40734 100644
--- a/Source/core/html/canvas/WebGLFramebuffer.h
+++ b/Source/core/html/canvas/WebGLFramebuffer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WebGLFramebuffer_h
diff --git a/Source/core/html/canvas/WebGLFramebuffer.idl b/Source/core/html/canvas/WebGLFramebuffer.idl
index 3d1eab8..1fd6dd1 100644
--- a/Source/core/html/canvas/WebGLFramebuffer.idl
+++ b/Source/core/html/canvas/WebGLFramebuffer.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface WebGLFramebuffer {
diff --git a/Source/core/html/canvas/WebGLObject.cpp b/Source/core/html/canvas/WebGLObject.cpp
index 0ea536d..3ffddaa 100644
--- a/Source/core/html/canvas/WebGLObject.cpp
+++ b/Source/core/html/canvas/WebGLObject.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/canvas/WebGLObject.h b/Source/core/html/canvas/WebGLObject.h
index fdadfe2..70aeab7 100644
--- a/Source/core/html/canvas/WebGLObject.h
+++ b/Source/core/html/canvas/WebGLObject.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WebGLObject_h
diff --git a/Source/core/html/canvas/WebGLProgram.cpp b/Source/core/html/canvas/WebGLProgram.cpp
index 4f2f23b..804ed3b 100644
--- a/Source/core/html/canvas/WebGLProgram.cpp
+++ b/Source/core/html/canvas/WebGLProgram.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/canvas/WebGLProgram.h b/Source/core/html/canvas/WebGLProgram.h
index 63a976c..3b0203e 100644
--- a/Source/core/html/canvas/WebGLProgram.h
+++ b/Source/core/html/canvas/WebGLProgram.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WebGLProgram_h
diff --git a/Source/core/html/canvas/WebGLProgram.idl b/Source/core/html/canvas/WebGLProgram.idl
index 399661c..7cec34a 100644
--- a/Source/core/html/canvas/WebGLProgram.idl
+++ b/Source/core/html/canvas/WebGLProgram.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface WebGLProgram {
diff --git a/Source/core/html/canvas/WebGLRenderbuffer.cpp b/Source/core/html/canvas/WebGLRenderbuffer.cpp
index 9e0084e..68b3ae2 100644
--- a/Source/core/html/canvas/WebGLRenderbuffer.cpp
+++ b/Source/core/html/canvas/WebGLRenderbuffer.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/canvas/WebGLRenderbuffer.h b/Source/core/html/canvas/WebGLRenderbuffer.h
index 93bcc17..45c011a 100644
--- a/Source/core/html/canvas/WebGLRenderbuffer.h
+++ b/Source/core/html/canvas/WebGLRenderbuffer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WebGLRenderbuffer_h
diff --git a/Source/core/html/canvas/WebGLRenderbuffer.idl b/Source/core/html/canvas/WebGLRenderbuffer.idl
index f9c837e..2ecef6b 100644
--- a/Source/core/html/canvas/WebGLRenderbuffer.idl
+++ b/Source/core/html/canvas/WebGLRenderbuffer.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface WebGLRenderbuffer {
diff --git a/Source/core/html/canvas/WebGLRenderingContext.cpp b/Source/core/html/canvas/WebGLRenderingContext.cpp
index ec4979a..ea90d34 100644
--- a/Source/core/html/canvas/WebGLRenderingContext.cpp
+++ b/Source/core/html/canvas/WebGLRenderingContext.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -629,7 +629,7 @@
     m_stencilFuncMaskBack = 0xFFFFFFFF;
     m_layerCleared = false;
     m_numGLErrorsToConsoleAllowed = maxGLErrorsAllowedToConsole;
-    
+
     m_clearColor[0] = m_clearColor[1] = m_clearColor[2] = m_clearColor[3] = 0;
     m_scissorEnabled = false;
     m_clearDepth = 1;
@@ -644,7 +644,7 @@
     GC3Dint numVertexAttribs = 0;
     m_context->getIntegerv(GraphicsContext3D::MAX_VERTEX_ATTRIBS, &numVertexAttribs);
     m_maxVertexAttribs = numVertexAttribs;
-    
+
     m_maxTextureSize = 0;
     m_context->getIntegerv(GraphicsContext3D::MAX_TEXTURE_SIZE, &m_maxTextureSize);
     m_maxTextureLevel = WebGLTexture::computeLevelCount(m_maxTextureSize, m_maxTextureSize);
@@ -663,7 +663,7 @@
     m_defaultVertexArrayObject = WebGLVertexArrayObjectOES::create(this, WebGLVertexArrayObjectOES::VaoTypeDefault);
     addContextObject(m_defaultVertexArrayObject.get());
     m_boundVertexArrayObject = m_defaultVertexArrayObject;
-    
+
     m_vertexAttribValue.resize(m_maxVertexAttribs);
 
     createFallbackBlackTextures1x1();
@@ -3545,7 +3545,7 @@
     // All calling functions check isContextLost, so a duplicate check is not needed here.
     ec = 0;
     Vector<uint8_t> data;
-    GraphicsContext3D::ImageExtractor imageExtractor(image, domSource, premultiplyAlpha, m_unpackColorspaceConversion == GraphicsContext3D::NONE);  
+    GraphicsContext3D::ImageExtractor imageExtractor(image, domSource, premultiplyAlpha, m_unpackColorspaceConversion == GraphicsContext3D::NONE);
     if (!imageExtractor.extractSucceeded()) {
         synthesizeGLError(GraphicsContext3D::INVALID_VALUE, "texSubImage2D", "bad image");
         return;
diff --git a/Source/core/html/canvas/WebGLRenderingContext.h b/Source/core/html/canvas/WebGLRenderingContext.h
index 83bb6a6..4b7de61 100644
--- a/Source/core/html/canvas/WebGLRenderingContext.h
+++ b/Source/core/html/canvas/WebGLRenderingContext.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WebGLRenderingContext_h
@@ -326,7 +326,7 @@
 
     void removeSharedObject(WebGLSharedObject*);
     void removeContextObject(WebGLContextObject*);
-    
+
     unsigned getMaxVertexAttribs() const { return m_maxVertexAttribs; }
 
     // ActiveDOMObject notifications
@@ -400,7 +400,7 @@
 
     // List of bound VBO's. Used to maintain info about sizes for ARRAY_BUFFER and stored values for ELEMENT_ARRAY_BUFFER
     RefPtr<WebGLBuffer> m_boundArrayBuffer;
-    
+
     RefPtr<WebGLVertexArrayObjectOES> m_defaultVertexArrayObject;
     RefPtr<WebGLVertexArrayObjectOES> m_boundVertexArrayObject;
     void setBoundVertexArrayObject(PassRefPtr<WebGLVertexArrayObjectOES> arrayObject)
@@ -410,14 +410,14 @@
         else
             m_boundVertexArrayObject = m_defaultVertexArrayObject;
     }
-    
+
     class VertexAttribValue {
     public:
         VertexAttribValue()
         {
             initValue();
         }
-        
+
         void initValue()
         {
             value[0] = 0.0f;
@@ -425,7 +425,7 @@
             value[2] = 0.0f;
             value[3] = 1.0f;
         }
-        
+
         GC3Dfloat value[4];
     };
     Vector<VertexAttribValue> m_vertexAttribValue;
diff --git a/Source/core/html/canvas/WebGLRenderingContext.idl b/Source/core/html/canvas/WebGLRenderingContext.idl
index 7343bcd..e82cc8a 100644
--- a/Source/core/html/canvas/WebGLRenderingContext.idl
+++ b/Source/core/html/canvas/WebGLRenderingContext.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 typedef unsigned long  GLenum;
@@ -490,7 +490,7 @@
                                                            GLsizei width, GLsizei height, GLint border, ArrayBufferView data);
     [StrictTypeChecking] void         compressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
                                                               GLsizei width, GLsizei height, GLenum format, ArrayBufferView data);
-    
+
     [StrictTypeChecking] void         copyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
     [StrictTypeChecking] void         copyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 
@@ -527,7 +527,7 @@
     [StrictTypeChecking, RaisesException] void         framebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, WebGLTexture texture, GLint level);
     [StrictTypeChecking] void         frontFace(GLenum mode);
     [StrictTypeChecking] void         generateMipmap(GLenum target);
-    
+
     [StrictTypeChecking, RaisesException] WebGLActiveInfo getActiveAttrib(WebGLProgram program, GLuint index);
     [StrictTypeChecking, RaisesException] WebGLActiveInfo getActiveUniform(WebGLProgram program, GLuint index);
 
@@ -584,7 +584,7 @@
     [StrictTypeChecking] void         polygonOffset(GLfloat factor, GLfloat units);
 
     [StrictTypeChecking, RaisesException] void         readPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, ArrayBufferView pixels);
-    
+
     [StrictTypeChecking] void         renderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
     [StrictTypeChecking] void         sampleCoverage(GLclampf value, GLboolean invert);
     [StrictTypeChecking] void         scissor(GLint x, GLint y, GLsizei width, GLsizei height);
@@ -600,7 +600,7 @@
     [StrictTypeChecking] void         texParameteri(GLenum target, GLenum pname, GLint param);
 
     // Supported forms:
-    [StrictTypeChecking, RaisesException] void         texImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, 
+    [StrictTypeChecking, RaisesException] void         texImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height,
                                                  GLint border, GLenum format, GLenum type, ArrayBufferView? pixels);
     [StrictTypeChecking, RaisesException] void         texImage2D(GLenum target, GLint level, GLenum internalformat,
                                                  GLenum format, GLenum type, ImageData? pixels);
@@ -611,8 +611,8 @@
     [StrictTypeChecking, RaisesException] void         texImage2D(GLenum target, GLint level, GLenum internalformat,
                                                  GLenum format, GLenum type, HTMLVideoElement? video);
 
-    [StrictTypeChecking, RaisesException] void         texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, 
-                                                    GLsizei width, GLsizei height, 
+    [StrictTypeChecking, RaisesException] void         texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
+                                                    GLsizei width, GLsizei height,
                                                     GLenum format, GLenum type, ArrayBufferView? pixels);
     [StrictTypeChecking, RaisesException] void         texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset,
                                                     GLenum format, GLenum type, ImageData? pixels);
@@ -655,7 +655,7 @@
     [StrictTypeChecking, Custom] void vertexAttrib3fv(GLuint indx, Float32Array values);
     [StrictTypeChecking] void         vertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
     [StrictTypeChecking, Custom] void vertexAttrib4fv(GLuint indx, Float32Array values);
-    [StrictTypeChecking, RaisesException] void         vertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, 
+    [StrictTypeChecking, RaisesException] void         vertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized,
                                                           GLsizei stride, GLintptr offset);
 
     [StrictTypeChecking] void         viewport(GLint x, GLint y, GLsizei width, GLsizei height);
diff --git a/Source/core/html/canvas/WebGLShader.cpp b/Source/core/html/canvas/WebGLShader.cpp
index c0c25c3..0920fc9 100644
--- a/Source/core/html/canvas/WebGLShader.cpp
+++ b/Source/core/html/canvas/WebGLShader.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/canvas/WebGLShader.h b/Source/core/html/canvas/WebGLShader.h
index 65f540a..e5864a7 100644
--- a/Source/core/html/canvas/WebGLShader.h
+++ b/Source/core/html/canvas/WebGLShader.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WebGLShader_h
diff --git a/Source/core/html/canvas/WebGLShader.idl b/Source/core/html/canvas/WebGLShader.idl
index 820cd0d..624d490 100644
--- a/Source/core/html/canvas/WebGLShader.idl
+++ b/Source/core/html/canvas/WebGLShader.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface WebGLShader {
diff --git a/Source/core/html/canvas/WebGLTexture.cpp b/Source/core/html/canvas/WebGLTexture.cpp
index 61bce34..d01bf83 100644
--- a/Source/core/html/canvas/WebGLTexture.cpp
+++ b/Source/core/html/canvas/WebGLTexture.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/canvas/WebGLTexture.h b/Source/core/html/canvas/WebGLTexture.h
index 5dd35c5..67f1fdc 100644
--- a/Source/core/html/canvas/WebGLTexture.h
+++ b/Source/core/html/canvas/WebGLTexture.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WebGLTexture_h
diff --git a/Source/core/html/canvas/WebGLTexture.idl b/Source/core/html/canvas/WebGLTexture.idl
index d0d0f2b..caed3ac 100644
--- a/Source/core/html/canvas/WebGLTexture.idl
+++ b/Source/core/html/canvas/WebGLTexture.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface WebGLTexture {
diff --git a/Source/core/html/canvas/WebGLUniformLocation.cpp b/Source/core/html/canvas/WebGLUniformLocation.cpp
index a7f14f5..b87877b 100644
--- a/Source/core/html/canvas/WebGLUniformLocation.cpp
+++ b/Source/core/html/canvas/WebGLUniformLocation.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/canvas/WebGLUniformLocation.h b/Source/core/html/canvas/WebGLUniformLocation.h
index d61aec7..2a41d00 100644
--- a/Source/core/html/canvas/WebGLUniformLocation.h
+++ b/Source/core/html/canvas/WebGLUniformLocation.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WebGLUniformLocation_h
diff --git a/Source/core/html/canvas/WebGLUniformLocation.idl b/Source/core/html/canvas/WebGLUniformLocation.idl
index 7a7a693..503804e 100644
--- a/Source/core/html/canvas/WebGLUniformLocation.idl
+++ b/Source/core/html/canvas/WebGLUniformLocation.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface WebGLUniformLocation {
diff --git a/Source/core/html/canvas/WebGLVertexArrayObjectOES.cpp b/Source/core/html/canvas/WebGLVertexArrayObjectOES.cpp
index ac6dc1d..ab2311a 100644
--- a/Source/core/html/canvas/WebGLVertexArrayObjectOES.cpp
+++ b/Source/core/html/canvas/WebGLVertexArrayObjectOES.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -89,7 +89,7 @@
     if (m_boundElementArrayBuffer)
         m_boundElementArrayBuffer->onDetached(context()->graphicsContext3D());
     m_boundElementArrayBuffer = buffer;
-    
+
 }
 
 void WebGLVertexArrayObjectOES::setVertexAttribState(
diff --git a/Source/core/html/canvas/WebGLVertexArrayObjectOES.h b/Source/core/html/canvas/WebGLVertexArrayObjectOES.h
index f1cdda2..c7fd466 100644
--- a/Source/core/html/canvas/WebGLVertexArrayObjectOES.h
+++ b/Source/core/html/canvas/WebGLVertexArrayObjectOES.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WebGLVertexArrayObjectOES_h
diff --git a/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl b/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl
index bc9b545..6c07bd1 100644
--- a/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl
+++ b/Source/core/html/canvas/WebGLVertexArrayObjectOES.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/html/parser/AtomicHTMLToken.h b/Source/core/html/parser/AtomicHTMLToken.h
index 95ab0a0..2d74f8e 100644
--- a/Source/core/html/parser/AtomicHTMLToken.h
+++ b/Source/core/html/parser/AtomicHTMLToken.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef AtomicHTMLToken_h
diff --git a/Source/core/html/parser/BackgroundHTMLInputStream.h b/Source/core/html/parser/BackgroundHTMLInputStream.h
index 036533f..3ffc16c 100644
--- a/Source/core/html/parser/BackgroundHTMLInputStream.h
+++ b/Source/core/html/parser/BackgroundHTMLInputStream.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef BackgroundHTMLInputStream_h
diff --git a/Source/core/html/parser/CSSPreloadScanner.cpp b/Source/core/html/parser/CSSPreloadScanner.cpp
index e6b787b..3c3a9f8 100644
--- a/Source/core/html/parser/CSSPreloadScanner.cpp
+++ b/Source/core/html/parser/CSSPreloadScanner.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/parser/CSSPreloadScanner.h b/Source/core/html/parser/CSSPreloadScanner.h
index 806779f..07e3b17 100644
--- a/Source/core/html/parser/CSSPreloadScanner.h
+++ b/Source/core/html/parser/CSSPreloadScanner.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CSSPreloadScanner_h
diff --git a/Source/core/html/parser/CompactHTMLToken.h b/Source/core/html/parser/CompactHTMLToken.h
index 9667a2b..89ef4ca 100644
--- a/Source/core/html/parser/CompactHTMLToken.h
+++ b/Source/core/html/parser/CompactHTMLToken.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CompactHTMLToken_h
diff --git a/Source/core/html/parser/HTMLConstructionSite.cpp b/Source/core/html/parser/HTMLConstructionSite.cpp
index 10643a2..7d05e81 100644
--- a/Source/core/html/parser/HTMLConstructionSite.cpp
+++ b/Source/core/html/parser/HTMLConstructionSite.cpp
@@ -325,7 +325,7 @@
     // There are three possible compatibility modes:
     // Quirks - quirks mode emulates WinIE and NS4. CSS parsing is also relaxed in this mode, e.g., unit types can
     // be omitted from numbers.
-    // Limited Quirks - This mode is identical to no-quirks mode except for its treatment of line-height in the inline box model.  
+    // Limited Quirks - This mode is identical to no-quirks mode except for its treatment of line-height in the inline box model.
     // No Quirks - no quirks apply. Web pages will obey the specifications to the letter.
 
     // Check for Quirks Mode.
diff --git a/Source/core/html/parser/HTMLConstructionSite.h b/Source/core/html/parser/HTMLConstructionSite.h
index d24d489..cae255c 100644
--- a/Source/core/html/parser/HTMLConstructionSite.h
+++ b/Source/core/html/parser/HTMLConstructionSite.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLConstructionSite_h
@@ -196,12 +196,12 @@
     void dispatchDocumentElementAvailableIfNeeded();
 
     Document* m_document;
-    
+
     // This is the root ContainerNode to which the parser attaches all newly
     // constructed nodes. It points to a DocumentFragment when parsing fragments
     // and a Document in all other cases.
     ContainerNode* m_attachmentRoot;
-    
+
     RefPtr<HTMLStackItem> m_head;
     RefPtr<HTMLFormElement> m_form;
     mutable HTMLElementStack m_openElements;
diff --git a/Source/core/html/parser/HTMLDocumentParser.cpp b/Source/core/html/parser/HTMLDocumentParser.cpp
index e47d69c..50a9985 100644
--- a/Source/core/html/parser/HTMLDocumentParser.cpp
+++ b/Source/core/html/parser/HTMLDocumentParser.cpp
@@ -227,6 +227,7 @@
 // Used by HTMLParserScheduler
 void HTMLDocumentParser::resumeParsingAfterYield()
 {
+    ASSERT(!m_isPinnedToMainThread);
     // pumpTokenizer can cause this parser to be detached from the Document,
     // but we need to ensure it isn't deleted yet.
     RefPtr<HTMLDocumentParser> protect(this);
@@ -391,7 +392,7 @@
 
     for (XSSInfoStream::const_iterator it = chunk->xssInfos.begin(); it != chunk->xssInfos.end(); ++it) {
         m_textPosition = (*it)->m_textPosition;
-        m_xssAuditorDelegate.didBlockScript(**it); 
+        m_xssAuditorDelegate.didBlockScript(**it);
         if (isStopped())
             break;
     }
@@ -708,7 +709,15 @@
         return;
     }
 
-    pumpTokenizerIfPossible(AllowYield);
+    // A couple pinToMainThread() callers require synchronous parsing, but can't
+    // easily use the insert() method, so we hack append() for them to be synchronous.
+    // javascript: url handling is one such caller.
+    // FIXME: This is gross, and we should separate the concept of synchronous parsing
+    // from insert() so that only document.write() uses insert.
+    if (m_isPinnedToMainThread)
+        pumpTokenizerIfPossible(ForceSynchronous);
+    else
+        pumpTokenizerIfPossible(AllowYield);
 
     endIfDelayed();
 }
@@ -871,7 +880,7 @@
 {
     cachedScript->removeClient(this);
 }
-    
+
 void HTMLDocumentParser::appendCurrentInputStreamToPreloadScannerAndScan()
 {
     ASSERT(m_preloadScanner);
@@ -924,7 +933,7 @@
     ASSERT(!parser->processingData()); // Make sure we're done. <rdar://problem/3963151>
     parser->detach(); // Allows ~DocumentParser to assert it was detached before destruction.
 }
-    
+
 void HTMLDocumentParser::suspendScheduledTasks()
 {
     if (m_parserScheduler)
diff --git a/Source/core/html/parser/HTMLElementStack.cpp b/Source/core/html/parser/HTMLElementStack.cpp
index 084b474..1a8227c 100644
--- a/Source/core/html/parser/HTMLElementStack.cpp
+++ b/Source/core/html/parser/HTMLElementStack.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -301,7 +301,7 @@
     while (!isForeignContentScopeMarker(topStackItem()))
         pop();
 }
-    
+
 void HTMLElementStack::pushRootNode(PassRefPtr<HTMLStackItem> rootItem)
 {
     ASSERT(rootItem->isDocumentFragmentNode());
@@ -313,7 +313,7 @@
     ASSERT(isHTMLHtmlElement(item->node()));
     pushRootNodeCommon(item);
 }
-    
+
 void HTMLElementStack::pushRootNodeCommon(PassRefPtr<HTMLStackItem> rootItem)
 {
     ASSERT(!m_top);
@@ -550,7 +550,7 @@
     ASSERT(m_bodyElement);
     return m_bodyElement;
 }
-    
+
 ContainerNode* HTMLElementStack::rootNode() const
 {
     ASSERT(m_rootNode);
diff --git a/Source/core/html/parser/HTMLElementStack.h b/Source/core/html/parser/HTMLElementStack.h
index d9ad04c..e63bbbc 100644
--- a/Source/core/html/parser/HTMLElementStack.h
+++ b/Source/core/html/parser/HTMLElementStack.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLElementStack_h
@@ -53,7 +53,7 @@
         WTF_MAKE_NONCOPYABLE(ElementRecord); WTF_MAKE_FAST_ALLOCATED;
     public:
         ~ElementRecord(); // Public for ~PassOwnPtr()
-    
+
         Element* element() const { return m_item->element(); }
         ContainerNode* node() const { return m_item->node(); }
         const AtomicString& namespaceURI() const { return m_item->namespaceURI(); }
@@ -156,7 +156,7 @@
     Element* htmlElement() const;
     Element* headElement() const;
     Element* bodyElement() const;
-    
+
     ContainerNode* rootNode() const;
 
 #ifndef NDEBUG
@@ -181,7 +181,7 @@
     Element* m_bodyElement;
     unsigned m_stackDepth;
 };
-    
+
 } // namespace WebCore
 
 #endif // HTMLElementStack_h
diff --git a/Source/core/html/parser/HTMLEntityParser.cpp b/Source/core/html/parser/HTMLEntityParser.cpp
index 563c8a4..f0d78ef 100644
--- a/Source/core/html/parser/HTMLEntityParser.cpp
+++ b/Source/core/html/parser/HTMLEntityParser.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/parser/HTMLEntityParser.h b/Source/core/html/parser/HTMLEntityParser.h
index 3b197a5..fc12f62 100644
--- a/Source/core/html/parser/HTMLEntityParser.h
+++ b/Source/core/html/parser/HTMLEntityParser.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLEntityParser_h
diff --git a/Source/core/html/parser/HTMLEntitySearch.cpp b/Source/core/html/parser/HTMLEntitySearch.cpp
index 9612db1..c4ef2b0 100644
--- a/Source/core/html/parser/HTMLEntitySearch.cpp
+++ b/Source/core/html/parser/HTMLEntitySearch.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/parser/HTMLEntitySearch.h b/Source/core/html/parser/HTMLEntitySearch.h
index 270cc29..cccf69a 100644
--- a/Source/core/html/parser/HTMLEntitySearch.h
+++ b/Source/core/html/parser/HTMLEntitySearch.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLEntitySearch_h
diff --git a/Source/core/html/parser/HTMLEntityTable.h b/Source/core/html/parser/HTMLEntityTable.h
index f44858c..f0d775e 100644
--- a/Source/core/html/parser/HTMLEntityTable.h
+++ b/Source/core/html/parser/HTMLEntityTable.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLEntityTable_h
diff --git a/Source/core/html/parser/HTMLFormattingElementList.cpp b/Source/core/html/parser/HTMLFormattingElementList.cpp
index 9fa1652..de76f9b 100644
--- a/Source/core/html/parser/HTMLFormattingElementList.cpp
+++ b/Source/core/html/parser/HTMLFormattingElementList.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/parser/HTMLFormattingElementList.h b/Source/core/html/parser/HTMLFormattingElementList.h
index 720b7d2..97600de 100644
--- a/Source/core/html/parser/HTMLFormattingElementList.h
+++ b/Source/core/html/parser/HTMLFormattingElementList.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLFormattingElementList_h
diff --git a/Source/core/html/parser/HTMLMetaCharsetParser.cpp b/Source/core/html/parser/HTMLMetaCharsetParser.cpp
index 7e282ec..0319fce 100644
--- a/Source/core/html/parser/HTMLMetaCharsetParser.cpp
+++ b/Source/core/html/parser/HTMLMetaCharsetParser.cpp
@@ -84,7 +84,7 @@
             quoteMark = static_cast<char>(value[pos++]);
             ASSERT(!(quoteMark & 0x80));
         }
-            
+
         if (pos == length)
             break;
 
diff --git a/Source/core/html/parser/HTMLParserIdioms.cpp b/Source/core/html/parser/HTMLParserIdioms.cpp
index 6baada9..6f13630 100644
--- a/Source/core/html/parser/HTMLParserIdioms.cpp
+++ b/Source/core/html/parser/HTMLParserIdioms.cpp
@@ -272,7 +272,7 @@
         const LChar* start = input.characters8();
         return parseHTMLNonNegativeIntegerInternal(start, start + length, value);
     }
-    
+
     const UChar* start = input.characters16();
     return parseHTMLNonNegativeIntegerInternal(start, start + length, value);
 }
diff --git a/Source/core/html/parser/HTMLParserIdioms.h b/Source/core/html/parser/HTMLParserIdioms.h
index 70db795..68c7ded 100644
--- a/Source/core/html/parser/HTMLParserIdioms.h
+++ b/Source/core/html/parser/HTMLParserIdioms.h
@@ -39,7 +39,7 @@
 bool isHTMLLineBreak(UChar);
 bool isNotHTMLSpace(UChar);
 
-// Strip leading and trailing whitespace as defined by the HTML specification. 
+// Strip leading and trailing whitespace as defined by the HTML specification.
 String stripLeadingAndTrailingHTMLSpaces(const String&);
 template<size_t inlineCapacity>
 String stripLeadingAndTrailingHTMLSpaces(const Vector<UChar, inlineCapacity>& vector)
diff --git a/Source/core/html/parser/HTMLParserScheduler.cpp b/Source/core/html/parser/HTMLParserScheduler.cpp
index 1dbd927..b5b3889 100644
--- a/Source/core/html/parser/HTMLParserScheduler.cpp
+++ b/Source/core/html/parser/HTMLParserScheduler.cpp
@@ -90,7 +90,9 @@
     ASSERT_UNUSED(timer, timer == &m_continueNextChunkTimer);
     // FIXME: The timer class should handle timer priorities instead of this code.
     // If a layout is scheduled, wait again to let the layout timer run first.
-    if (m_parser->document()->isLayoutTimerActive()) {
+    // FIXME: We should fix this by reducing the max-parse-time instead of
+    // artificially forcing the parser to yield agressively before first layout.
+    if (m_parser->document()->shouldParserYieldAgressivelyBeforeScriptExecution()) {
         m_continueNextChunkTimer.startOneShot(0);
         return;
     }
@@ -103,7 +105,7 @@
     // scripts to give the page a chance to paint earlier.
     Document* document = m_parser->document();
     bool needsFirstPaint = document->view() && !document->view()->hasEverPainted();
-    if (needsFirstPaint && document->isLayoutTimerActive())
+    if (needsFirstPaint && document->shouldParserYieldAgressivelyBeforeScriptExecution())
         session.needsYield = true;
     session.didSeeScript = true;
 }
diff --git a/Source/core/html/parser/HTMLPreloadScanner.cpp b/Source/core/html/parser/HTMLPreloadScanner.cpp
index c48575a..aa80528 100644
--- a/Source/core/html/parser/HTMLPreloadScanner.cpp
+++ b/Source/core/html/parser/HTMLPreloadScanner.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/parser/HTMLPreloadScanner.h b/Source/core/html/parser/HTMLPreloadScanner.h
index 2496e47..ba63bab 100644
--- a/Source/core/html/parser/HTMLPreloadScanner.h
+++ b/Source/core/html/parser/HTMLPreloadScanner.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLPreloadScanner_h
diff --git a/Source/core/html/parser/HTMLResourcePreloader.cpp b/Source/core/html/parser/HTMLResourcePreloader.cpp
index 40964d7..e79c998 100644
--- a/Source/core/html/parser/HTMLResourcePreloader.cpp
+++ b/Source/core/html/parser/HTMLResourcePreloader.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/parser/HTMLResourcePreloader.h b/Source/core/html/parser/HTMLResourcePreloader.h
index e4f037c..e4219e0 100644
--- a/Source/core/html/parser/HTMLResourcePreloader.h
+++ b/Source/core/html/parser/HTMLResourcePreloader.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLResourcePreloader_h
diff --git a/Source/core/html/parser/HTMLScriptRunner.cpp b/Source/core/html/parser/HTMLScriptRunner.cpp
index 3b8462d..819b87e 100644
--- a/Source/core/html/parser/HTMLScriptRunner.cpp
+++ b/Source/core/html/parser/HTMLScriptRunner.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/parser/HTMLScriptRunner.h b/Source/core/html/parser/HTMLScriptRunner.h
index c780c6e..47357a1 100644
--- a/Source/core/html/parser/HTMLScriptRunner.h
+++ b/Source/core/html/parser/HTMLScriptRunner.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLScriptRunner_h
diff --git a/Source/core/html/parser/HTMLScriptRunnerHost.h b/Source/core/html/parser/HTMLScriptRunnerHost.h
index 4302c0b..58f8286 100644
--- a/Source/core/html/parser/HTMLScriptRunnerHost.h
+++ b/Source/core/html/parser/HTMLScriptRunnerHost.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLScriptRunnerHost_h
@@ -48,7 +48,7 @@
 
     virtual bool hasPreloadScanner() const = 0;
     virtual void appendCurrentInputStreamToPreloadScannerAndScan() = 0;
-    
+
 };
 
 }
diff --git a/Source/core/html/parser/HTMLStackItem.h b/Source/core/html/parser/HTMLStackItem.h
index 2fe98bc..d3dd15c 100644
--- a/Source/core/html/parser/HTMLStackItem.h
+++ b/Source/core/html/parser/HTMLStackItem.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLStackItem_h
diff --git a/Source/core/html/parser/HTMLToken.h b/Source/core/html/parser/HTMLToken.h
index a15b6a9..64f3044 100644
--- a/Source/core/html/parser/HTMLToken.h
+++ b/Source/core/html/parser/HTMLToken.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLToken_h
diff --git a/Source/core/html/parser/HTMLTokenizer.cpp b/Source/core/html/parser/HTMLTokenizer.cpp
index cc75625..0931934 100644
--- a/Source/core/html/parser/HTMLTokenizer.cpp
+++ b/Source/core/html/parser/HTMLTokenizer.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/parser/HTMLTokenizer.h b/Source/core/html/parser/HTMLTokenizer.h
index 809d291..bbfa0f2 100644
--- a/Source/core/html/parser/HTMLTokenizer.h
+++ b/Source/core/html/parser/HTMLTokenizer.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLTokenizer_h
@@ -216,7 +216,7 @@
         source.advanceAndUpdateLineNumber();
         return true;
     }
-    
+
     inline bool emitAndReconsumeIn(SegmentedString&, State state)
     {
         saveEndTagNameIfNeeded();
diff --git a/Source/core/html/parser/HTMLTreeBuilder.cpp b/Source/core/html/parser/HTMLTreeBuilder.cpp
index 79b20e7..12a9b74 100644
--- a/Source/core/html/parser/HTMLTreeBuilder.cpp
+++ b/Source/core/html/parser/HTMLTreeBuilder.cpp
@@ -1503,7 +1503,7 @@
 {
     // The adoption agency algorithm is N^2. We limit the number of iterations
     // to stop from hanging the whole browser. This limit is specified in the
-    // adoption agency algorithm: 
+    // adoption agency algorithm:
     // http://www.whatwg.org/specs/web-apps/current-work/multipage/tree-construction.html#parsing-main-inbody
     static const int outerIterationLimit = 8;
     static const int innerIterationLimit = 3;
diff --git a/Source/core/html/parser/HTMLTreeBuilder.h b/Source/core/html/parser/HTMLTreeBuilder.h
index ae4fbc5..d648673 100644
--- a/Source/core/html/parser/HTMLTreeBuilder.h
+++ b/Source/core/html/parser/HTMLTreeBuilder.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTMLTreeBuilder_h
diff --git a/Source/core/html/parser/NestingLevelIncrementer.h b/Source/core/html/parser/NestingLevelIncrementer.h
index d9d7d54..fa1d110 100644
--- a/Source/core/html/parser/NestingLevelIncrementer.h
+++ b/Source/core/html/parser/NestingLevelIncrementer.h
@@ -38,12 +38,12 @@
     {
         ++(*m_nestingLevel);
     }
-            
+
     ~NestingLevelIncrementer()
     {
         --(*m_nestingLevel);
     }
-            
+
 private:
     unsigned* m_nestingLevel;
 };
diff --git a/Source/core/html/parser/XSSAuditor.cpp b/Source/core/html/parser/XSSAuditor.cpp
index 66ffa14..6f50091 100644
--- a/Source/core/html/parser/XSSAuditor.cpp
+++ b/Source/core/html/parser/XSSAuditor.cpp
@@ -575,7 +575,7 @@
     if (treatment == SrcLikeAttribute) {
         int slashCount = 0;
         bool commaSeen = false;
-        // In HTTP URLs, characters following the first ?, #, or third slash may come from 
+        // In HTTP URLs, characters following the first ?, #, or third slash may come from
         // the page itself and can be merely ignored by an attacker's server when a remote
         // script or script-like resource is requested. In DATA URLS, the payload starts at
         // the first comma, and the the first /*, //, or <!-- may introduce a comment. Characters
@@ -595,10 +595,10 @@
                 commaSeen = true;
         }
     } else if (treatment == ScriptLikeAttribute) {
-        // Beware of trailing characters which came from the page itself, not the 
+        // Beware of trailing characters which came from the page itself, not the
         // injected vector. Excluding the terminating character covers common cases
         // where the page immediately ends the attribute, but doesn't cover more
-        // complex cases where there is other page data following the injection. 
+        // complex cases where there is other page data following the injection.
         // Generally, these won't parse as javascript, so the injected vector
         // typically excludes them from consideration via a single-line comment or
         // by enclosing them in a string literal terminated later by the page's own
@@ -655,7 +655,7 @@
 
     String result;
     while (startPosition < endPosition && !result.length()) {
-        // Stop at next comment (using the same rules as above for SVG/XML vs HTML), when we 
+        // Stop at next comment (using the same rules as above for SVG/XML vs HTML), when we
         // encounter a comma, or when we  exceed the maximum length target. The comma rule
         // covers a common parameter concatenation case performed by some webservers.
         // After hitting the length target, we can only stop at a point where we know we are
@@ -708,7 +708,7 @@
     // request, ignoring scheme and port considerations. If the resource has a
     // query string, we're more suspicious, however, because that's pretty rare
     // and the attacker might be able to trick a server-side script into doing
-    // something dangerous with the query string.  
+    // something dangerous with the query string.
     if (m_documentURL.host().isEmpty())
         return false;
 
diff --git a/Source/core/html/shadow/DateTimeEditElement.cpp b/Source/core/html/shadow/DateTimeEditElement.cpp
index 1573712..1583b8e 100644
--- a/Source/core/html/shadow/DateTimeEditElement.cpp
+++ b/Source/core/html/shadow/DateTimeEditElement.cpp
@@ -552,10 +552,10 @@
     focusOnNextFocusableField(0);
 }
 
-void DateTimeEditElement::focusByOwner(Node* oldFocusedNode)
+void DateTimeEditElement::focusByOwner(Element* oldFocusedElement)
 {
-    if (oldFocusedNode && oldFocusedNode->isElementNode() && toElement(oldFocusedNode)->isDateTimeFieldElement()) {
-        DateTimeFieldElement* oldFocusedField = static_cast<DateTimeFieldElement*>(oldFocusedNode);
+    if (oldFocusedElement && oldFocusedElement->isDateTimeFieldElement()) {
+        DateTimeFieldElement* oldFocusedField = static_cast<DateTimeFieldElement*>(oldFocusedElement);
         size_t index = fieldIndexOf(*oldFocusedField);
         if (index != invalidFieldIndex && oldFocusedField->isFocusable()) {
             oldFocusedField->focus();
diff --git a/Source/core/html/shadow/DateTimeEditElement.h b/Source/core/html/shadow/DateTimeEditElement.h
index 0f02fc0..c0ddde1 100644
--- a/Source/core/html/shadow/DateTimeEditElement.h
+++ b/Source/core/html/shadow/DateTimeEditElement.h
@@ -91,7 +91,7 @@
     void focusIfNoFocus();
     // If oldFocusedNode is one of sub-fields, focus on it. Otherwise focus on
     // the first sub-field.
-    void focusByOwner(Node* oldFocusedNode = 0);
+    void focusByOwner(Element* oldFocusedElement = 0);
     bool hasFocusedField();
     void readOnlyStateChanged();
     void removeEditControlOwner() { m_editControlOwner = 0; }
diff --git a/Source/core/html/shadow/DetailsMarkerControl.cpp b/Source/core/html/shadow/DetailsMarkerControl.cpp
index 3d139df..fa15d0c 100644
--- a/Source/core/html/shadow/DetailsMarkerControl.cpp
+++ b/Source/core/html/shadow/DetailsMarkerControl.cpp
@@ -39,7 +39,7 @@
 
 using namespace HTMLNames;
 
-DetailsMarkerControl::DetailsMarkerControl(Document* document) 
+DetailsMarkerControl::DetailsMarkerControl(Document* document)
     : HTMLDivElement(divTag, document)
 {
 }
diff --git a/Source/core/html/shadow/HTMLContentElement.cpp b/Source/core/html/shadow/HTMLContentElement.cpp
index 79d4f95..74419b6 100644
--- a/Source/core/html/shadow/HTMLContentElement.cpp
+++ b/Source/core/html/shadow/HTMLContentElement.cpp
@@ -34,16 +34,11 @@
 
 namespace WebCore {
 
-using HTMLNames::selectAttr;
-
-const QualifiedName& HTMLContentElement::contentTagName(Document*)
-{
-    return HTMLNames::contentTag;
-}
+using namespace HTMLNames;
 
 PassRefPtr<HTMLContentElement> HTMLContentElement::create(Document* document)
 {
-    return adoptRef(new HTMLContentElement(contentTagName(document), document));
+    return adoptRef(new HTMLContentElement(contentTag, document));
 }
 
 PassRefPtr<HTMLContentElement> HTMLContentElement::create(const QualifiedName& tagName, Document* document)
@@ -56,6 +51,7 @@
     , m_shouldParseSelectorList(false)
     , m_isValidSelector(true)
 {
+    ASSERT(hasTagName(contentTag));
     ScriptWrappable::init(this);
 }
 
diff --git a/Source/core/html/shadow/HTMLContentElement.h b/Source/core/html/shadow/HTMLContentElement.h
index a7864a2..e0c6613 100644
--- a/Source/core/html/shadow/HTMLContentElement.h
+++ b/Source/core/html/shadow/HTMLContentElement.h
@@ -38,7 +38,6 @@
 
 class HTMLContentElement FINAL : public InsertionPoint {
 public:
-    static const QualifiedName& contentTagName(Document*);
     static PassRefPtr<HTMLContentElement> create(const QualifiedName&, Document*);
     static PassRefPtr<HTMLContentElement> create(Document*);
 
@@ -49,7 +48,6 @@
 
     virtual MatchType matchTypeFor(Node*) OVERRIDE;
     virtual const CSSSelectorList& selectorList() OVERRIDE;
-    virtual Type insertionPointType() const OVERRIDE { return ContentInsertionPoint; }
     virtual bool canAffectSelector() const OVERRIDE { return true; }
     virtual bool isSelectValid();
 
@@ -80,8 +78,12 @@
 
 inline bool isHTMLContentElement(const Node* node)
 {
-    ASSERT(node);
-    return node->isInsertionPoint() && toInsertionPoint(node)->insertionPointType() == InsertionPoint::ContentInsertionPoint;
+    return node->hasTagName(HTMLNames::contentTag);
+}
+
+inline bool isHTMLContentElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::contentTag);
 }
 
 inline HTMLContentElement* toHTMLContentElement(Node* node)
diff --git a/Source/core/html/shadow/HTMLShadowElement.h b/Source/core/html/shadow/HTMLShadowElement.h
index 2134e07..2aa0e78 100644
--- a/Source/core/html/shadow/HTMLShadowElement.h
+++ b/Source/core/html/shadow/HTMLShadowElement.h
@@ -42,8 +42,6 @@
 
     virtual ~HTMLShadowElement();
 
-    virtual Type insertionPointType() const OVERRIDE { return ShadowInsertionPoint; }
-
     ShadowRoot* olderShadowRoot();
 
 private:
diff --git a/Source/core/html/shadow/ProgressShadowElement.cpp b/Source/core/html/shadow/ProgressShadowElement.cpp
index 6411544..f51dd94 100644
--- a/Source/core/html/shadow/ProgressShadowElement.cpp
+++ b/Source/core/html/shadow/ProgressShadowElement.cpp
@@ -81,7 +81,7 @@
         return HTMLDivElement::rendererIsNeeded(context);
 
     RenderObject* progressRenderer = progressElement()->renderer();
-    return progressRenderer && !progressRenderer->style()->hasAppearance() && HTMLDivElement::rendererIsNeeded(context);    
+    return progressRenderer && !progressRenderer->style()->hasAppearance() && HTMLDivElement::rendererIsNeeded(context);
 }
 
 void ProgressValueElement::setWidthPercentage(double width)
diff --git a/Source/core/html/shadow/ProgressShadowElement.h b/Source/core/html/shadow/ProgressShadowElement.h
index 7cdf2f1..b46a55a 100644
--- a/Source/core/html/shadow/ProgressShadowElement.h
+++ b/Source/core/html/shadow/ProgressShadowElement.h
@@ -60,7 +60,7 @@
 
 class ProgressBarElement FINAL : public ProgressShadowElement {
 public:
-    ProgressBarElement(Document* document) 
+    ProgressBarElement(Document* document)
         : ProgressShadowElement(document)
     {
         DEFINE_STATIC_LOCAL(AtomicString, pseudoId, ("-webkit-progress-bar", AtomicString::ConstructFromLiteral));
@@ -77,7 +77,7 @@
 
 class ProgressValueElement FINAL : public ProgressShadowElement {
 public:
-    ProgressValueElement(Document* document) 
+    ProgressValueElement(Document* document)
         : ProgressShadowElement(document)
     {
         DEFINE_STATIC_LOCAL(AtomicString, pseudoId, ("-webkit-progress-value", AtomicString::ConstructFromLiteral));
diff --git a/Source/core/html/shadow/SpinButtonElement.cpp b/Source/core/html/shadow/SpinButtonElement.cpp
index 17c1d41..77a7c75 100644
--- a/Source/core/html/shadow/SpinButtonElement.cpp
+++ b/Source/core/html/shadow/SpinButtonElement.cpp
@@ -236,7 +236,7 @@
 #endif
     doStepAction(amount);
 }
-    
+
 void SpinButtonElement::repeatingTimerFired(Timer<SpinButtonElement>*)
 {
     if (m_upDownState != Indeterminate)
diff --git a/Source/core/html/shadow/SpinButtonElement.h b/Source/core/html/shadow/SpinButtonElement.h
index 03f7da4..77d031e 100644
--- a/Source/core/html/shadow/SpinButtonElement.h
+++ b/Source/core/html/shadow/SpinButtonElement.h
@@ -21,9 +21,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #ifndef SpinButtonElement_h
 #define SpinButtonElement_h
 
@@ -60,7 +60,7 @@
     void removeSpinButtonOwner() { m_spinButtonOwner = 0; }
 
     void step(int amount);
-    
+
     virtual bool willRespondToMouseMoveEvents() OVERRIDE;
     virtual bool willRespondToMouseClickEvents() OVERRIDE;
 
diff --git a/Source/core/html/shadow/TextControlInnerElements.cpp b/Source/core/html/shadow/TextControlInnerElements.cpp
index def5731..366b7df 100644
--- a/Source/core/html/shadow/TextControlInnerElements.cpp
+++ b/Source/core/html/shadow/TextControlInnerElements.cpp
@@ -56,7 +56,7 @@
 {
     return adoptRef(new TextControlInnerContainer(document));
 }
-    
+
 RenderObject* TextControlInnerContainer::createRenderer(RenderStyle*)
 {
     return new (document()->renderArena()) RenderTextControlInnerContainer(this);
diff --git a/Source/core/html/shadow/TextControlInnerElements.h b/Source/core/html/shadow/TextControlInnerElements.h
index dd1daeb..76d9123 100644
--- a/Source/core/html/shadow/TextControlInnerElements.h
+++ b/Source/core/html/shadow/TextControlInnerElements.h
@@ -21,9 +21,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #ifndef TextControlInnerElements_h
 #define TextControlInnerElements_h
 
diff --git a/Source/core/html/track/InbandTextTrack.cpp b/Source/core/html/track/InbandTextTrack.cpp
index a18d82b..2a3d975 100644
--- a/Source/core/html/track/InbandTextTrack.cpp
+++ b/Source/core/html/track/InbandTextTrack.cpp
@@ -186,7 +186,7 @@
     RefPtr<TextTrackCue> cue = TextTrackCue::create(scriptExecutionContext(), start, end, content);
     cue->setId(id);
     cue->setCueSettings(settings);
-    
+
     if (hasCue(cue.get()))
         return;
 
diff --git a/Source/core/html/track/LoadableTextTrack.cpp b/Source/core/html/track/LoadableTextTrack.cpp
index a856d17..30b0c53 100644
--- a/Source/core/html/track/LoadableTextTrack.cpp
+++ b/Source/core/html/track/LoadableTextTrack.cpp
@@ -69,7 +69,7 @@
     // 2. Let URL be the track URL of the track element.
     m_url = url;
 
-    // 3. Asynchronously run the remaining steps, while continuing with whatever task 
+    // 3. Asynchronously run the remaining steps, while continuing with whatever task
     // was responsible for creating the text track or changing the text track mode.
     if (!m_loadTimer.isActive())
         m_loadTimer.startOneShot(0);
@@ -101,7 +101,7 @@
     m_loader->getNewCues(newCues);
 
     if (!m_cues)
-        m_cues = TextTrackCueList::create();    
+        m_cues = TextTrackCueList::create();
 
     for (size_t i = 0; i < newCues.size(); ++i) {
         newCues[i]->setTrack(this);
diff --git a/Source/core/html/track/LoadableTextTrack.h b/Source/core/html/track/LoadableTextTrack.h
index 4ac4c1f..d28c104 100644
--- a/Source/core/html/track/LoadableTextTrack.h
+++ b/Source/core/html/track/LoadableTextTrack.h
@@ -38,7 +38,7 @@
 class LoadableTextTrackClient : public TextTrackClient {
 public:
     virtual ~LoadableTextTrackClient() { }
-    
+
     virtual bool canLoadUrl(LoadableTextTrack*, const KURL&) { return false; }
     virtual void loadingCompleted(LoadableTextTrack*, bool /* loadingFailed */) { }
 };
diff --git a/Source/core/html/track/TextTrack.cpp b/Source/core/html/track/TextTrack.cpp
index 178c29d..1840626 100644
--- a/Source/core/html/track/TextTrack.cpp
+++ b/Source/core/html/track/TextTrack.cpp
@@ -175,7 +175,7 @@
     // because they will no longer be accessible from the cues() function.
     if (mode == disabledKeyword() && m_client && m_cues)
         m_client->textTrackRemoveCues(this, m_cues.get());
-         
+
     if (mode != showingKeyword() && m_cues)
         for (size_t i = 0; i < m_cues->length(); ++i)
             m_cues->item(i)->removeDisplayTree();
@@ -205,10 +205,10 @@
 
     if (m_client)
         m_client->textTrackRemoveCues(this, m_cues.get());
-    
+
     for (size_t i = 0; i < m_cues->length(); ++i)
         m_cues->item(i)->setTrack(0);
-    
+
     m_cues = 0;
 }
 
@@ -249,7 +249,7 @@
     // 2. Add cue to the method's TextTrack object's text track's text track list of cues.
     cue->setTrack(this);
     ensureTextTrackCueList()->add(cue);
-    
+
     if (m_client)
         m_client->textTrackAddCue(this, cue.get());
 }
@@ -263,7 +263,7 @@
 
     // The removeCue(cue) method of TextTrack objects, when invoked, must run the following steps:
 
-    // 1. If the given cue is not currently listed in the method's TextTrack 
+    // 1. If the given cue is not currently listed in the method's TextTrack
     // object's text track's text track list of cues, then throw a NotFoundError exception.
     if (cue->track() != this) {
         ec = NotFoundError;
@@ -420,10 +420,10 @@
 int TextTrack::trackIndexRelativeToRenderedTracks()
 {
     ASSERT(m_mediaElement);
-    
+
     if (m_renderedTrackIndex == invalidTrackIndex)
         m_renderedTrackIndex = m_mediaElement->textTracks()->getTrackIndexRelativeToRenderedTracks(this);
-    
+
     return m_renderedTrackIndex;
 }
 
@@ -431,19 +431,19 @@
 {
     if (cue->startTime() < 0 || cue->endTime() < 0)
         return false;
-    
+
     if (!m_cues || !m_cues->length())
         return false;
-    
+
     size_t searchStart = 0;
     size_t searchEnd = m_cues->length();
-    
+
     while (1) {
         ASSERT(searchStart <= m_cues->length());
         ASSERT(searchEnd <= m_cues->length());
-        
+
         TextTrackCue* existingCue;
-        
+
         // Cues in the TextTrackCueList are maintained in start time order.
         if (searchStart == searchEnd) {
             if (!searchStart)
@@ -453,7 +453,7 @@
             // consider all of them.
             while (searchStart >= 2 && cue->startTime() == m_cues->item(searchStart - 2)->startTime())
                 --searchStart;
-            
+
             bool firstCompare = true;
             while (1) {
                 if (!firstCompare)
@@ -468,11 +468,11 @@
 
                 if (*existingCue != *cue)
                     continue;
-                
+
                 return true;
             }
         }
-        
+
         size_t index = (searchStart + searchEnd) / 2;
         existingCue = m_cues->item(index);
         if (cue->startTime() < existingCue->startTime() || (cue->startTime() == existingCue->startTime() && cue->endTime() > existingCue->endTime()))
@@ -480,7 +480,7 @@
         else
             searchStart = index + 1;
     }
-    
+
     ASSERT_NOT_REACHED();
     return false;
 }
diff --git a/Source/core/html/track/TextTrackCue.cpp b/Source/core/html/track/TextTrackCue.cpp
index 0c1a1b3..2798f80 100644
--- a/Source/core/html/track/TextTrackCue.cpp
+++ b/Source/core/html/track/TextTrackCue.cpp
@@ -277,16 +277,16 @@
         ec = TypeError;
         return;
     }
-    
+
     // TODO(93143): Add spec-compliant behavior for negative time values.
     if (m_startTime == value || value < 0)
         return;
-    
+
     cueWillChange();
     m_startTime = value;
     cueDidChange();
 }
-    
+
 void TextTrackCue::setEndTime(double value, ExceptionCode& ec)
 {
     // NaN, Infinity and -Infinity values should trigger a TypeError.
@@ -298,17 +298,17 @@
     // TODO(93143): Add spec-compliant behavior for negative time values.
     if (m_endTime == value || value < 0)
         return;
-    
+
     cueWillChange();
     m_endTime = value;
     cueDidChange();
 }
-    
+
 void TextTrackCue::setPauseOnExit(bool value)
 {
     if (m_pauseOnExit == value)
         return;
-    
+
     cueWillChange();
     m_pauseOnExit = value;
     cueDidChange();
@@ -317,7 +317,7 @@
 const String& TextTrackCue::vertical() const
 {
     switch (m_writingDirection) {
-    case Horizontal: 
+    case Horizontal:
         return horizontalKeyword();
     case VerticalGrowingLeft:
         return verticalGrowingLeftKeyword();
@@ -332,11 +332,11 @@
 void TextTrackCue::setVertical(const String& value, ExceptionCode& ec)
 {
     // http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#dom-texttrackcue-vertical
-    // On setting, the text track cue writing direction must be set to the value given 
-    // in the first cell of the row in the table above whose second cell is a 
+    // On setting, the text track cue writing direction must be set to the value given
+    // in the first cell of the row in the table above whose second cell is a
     // case-sensitive match for the new value, if any. If none of the values match, then
     // the user agent must instead throw a SyntaxError exception.
-    
+
     WritingDirection direction = m_writingDirection;
     if (value == horizontalKeyword())
         direction = Horizontal;
@@ -346,7 +346,7 @@
         direction = VerticalGrowingRight;
     else
         ec = SyntaxError;
-    
+
     if (direction == m_writingDirection)
         return;
 
@@ -359,7 +359,7 @@
 {
     if (m_snapToLines == value)
         return;
-    
+
     cueWillChange();
     m_snapToLines = value;
     cueDidChange();
@@ -394,11 +394,11 @@
         ec = IndexSizeError;
         return;
     }
-    
+
     // Otherwise, set the text track cue line position to the new value.
     if (m_textPosition == position)
         return;
-    
+
     cueWillChange();
     m_textPosition = position;
     cueDidChange();
@@ -413,11 +413,11 @@
         ec = IndexSizeError;
         return;
     }
-    
+
     // Otherwise, set the text track cue line position to the new value.
     if (m_cueSize == size)
         return;
-    
+
     cueWillChange();
     m_cueSize = size;
     cueDidChange();
@@ -441,11 +441,11 @@
 void TextTrackCue::setAlign(const String& value, ExceptionCode& ec)
 {
     // http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#dom-texttrackcue-align
-    // On setting, the text track cue alignment must be set to the value given in the 
+    // On setting, the text track cue alignment must be set to the value given in the
     // first cell of the row in the table above whose second cell is a case-sensitive
     // match for the new value, if any. If none of the values match, then the user
     // agent must instead throw a SyntaxError exception.
-    
+
     CueAlignment alignment = m_cueAlignment;
     if (value == startKeyword())
         alignment = Start;
@@ -455,7 +455,7 @@
         alignment = End;
     else
         ec = SyntaxError;
-    
+
     if (alignment == m_cueAlignment)
         return;
 
@@ -463,12 +463,12 @@
     m_cueAlignment = alignment;
     cueDidChange();
 }
-    
+
 void TextTrackCue::setText(const String& text)
 {
     if (m_content == text)
         return;
-    
+
     cueWillChange();
     // Clear the document fragment but don't bother to create it again just yet as we can do that
     // when it is requested.
@@ -734,27 +734,27 @@
     // is defined in terms of the other aspects of the cue.
     m_computedLinePosition = calculateComputedLinePosition();
 }
-    
+
 void TextTrackCue::markFutureAndPastNodes(ContainerNode* root, double previousTimestamp, double movieTime)
 {
     DEFINE_STATIC_LOCAL(const String, timestampTag, (ASCIILiteral("timestamp")));
-    
+
     bool isPastNode = true;
     double currentTimestamp = previousTimestamp;
     if (currentTimestamp > movieTime)
         isPastNode = false;
-    
+
     for (Node* child = root->firstChild(); child; child = NodeTraversal::next(child, root)) {
         if (child->nodeName() == timestampTag) {
             unsigned position = 0;
             String timestamp = child->nodeValue();
             double currentTimestamp = WebVTTParser::create(0, m_scriptExecutionContext)->collectTimeStamp(timestamp, &position);
             ASSERT(currentTimestamp != -1);
-            
+
             if (currentTimestamp > movieTime)
                 isPastNode = false;
         }
-        
+
         if (child->isWebVTTElement()) {
             toWebVTTElement(child)->setIsPastNode(isPastNode);
             // Make an elemenet id match a cue id for style matching purposes.
@@ -911,18 +911,18 @@
 
     while (position < input.length()) {
 
-        // The WebVTT cue settings part of a WebVTT cue consists of zero or more of the following components, in any order, 
-        // separated from each other by one or more U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characters. 
+        // The WebVTT cue settings part of a WebVTT cue consists of zero or more of the following components, in any order,
+        // separated from each other by one or more U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characters.
         while (position < input.length() && WebVTTParser::isValidSettingDelimiter(input[position]))
             position++;
         if (position >= input.length())
             break;
 
-        // When the user agent is to parse the WebVTT settings given by a string input for a text track cue cue, 
+        // When the user agent is to parse the WebVTT settings given by a string input for a text track cue cue,
         // the user agent must run the following steps:
         // 1. Let settings be the result of splitting input on spaces.
         // 2. For each token setting in the list settings, run the following substeps:
-        //    1. If setting does not contain a U+003A COLON character (:), or if the first U+003A COLON character (:) 
+        //    1. If setting does not contain a U+003A COLON character (:), or if the first U+003A COLON character (:)
         //       in setting is either the first or last character of setting, then jump to the step labeled next setting.
         unsigned endOfSetting = position;
         String setting = WebVTTParser::collectWord(input, &endOfSetting);
@@ -944,13 +944,13 @@
         case Vertical:
             {
             // If name is a case-sensitive match for "vertical"
-            // 1. If value is a case-sensitive match for the string "rl", then let cue's text track cue writing direction 
+            // 1. If value is a case-sensitive match for the string "rl", then let cue's text track cue writing direction
             //    be vertical growing left.
             String writingDirection = WebVTTParser::collectWord(input, &position);
             if (writingDirection == verticalGrowingLeftKeyword())
                 m_writingDirection = VerticalGrowingLeft;
-            
-            // 2. Otherwise, if value is a case-sensitive match for the string "lr", then let cue's text track cue writing 
+
+            // 2. Otherwise, if value is a case-sensitive match for the string "lr", then let cue's text track cue writing
             //    direction be vertical growing right.
             else if (writingDirection == verticalGrowingRightKeyword())
                 m_writingDirection = VerticalGrowingRight;
@@ -959,7 +959,7 @@
         case Line:
             {
             // 1-2 - Collect chars that are either '-', '%', or a digit.
-            // 1. If value contains any characters other than U+002D HYPHEN-MINUS characters (-), U+0025 PERCENT SIGN 
+            // 1. If value contains any characters other than U+002D HYPHEN-MINUS characters (-), U+0025 PERCENT SIGN
             //    characters (%), and characters in the range U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9), then jump
             //    to the step labeled next setting.
             StringBuilder linePositionBuilder;
@@ -968,9 +968,9 @@
             if (position < input.length() && !WebVTTParser::isValidSettingDelimiter(input[position]))
                 break;
 
-            // 2. If value does not contain at least one character in the range U+0030 DIGIT ZERO (0) to U+0039 DIGIT 
+            // 2. If value does not contain at least one character in the range U+0030 DIGIT ZERO (0) to U+0039 DIGIT
             //    NINE (9), then jump to the step labeled next setting.
-            // 3. If any character in value other than the first character is a U+002D HYPHEN-MINUS character (-), then 
+            // 3. If any character in value other than the first character is a U+002D HYPHEN-MINUS character (-), then
             //    jump to the step labeled next setting.
             // 4. If any character in value other than the last character is a U+0025 PERCENT SIGN character (%), then
             //    jump to the step labeled next setting.
@@ -978,23 +978,23 @@
             if (linePosition.find('-', 1) != notFound || linePosition.reverseFind("%", linePosition.length() - 2) != notFound)
                 break;
 
-            // 5. If the first character in value is a U+002D HYPHEN-MINUS character (-) and the last character in value is a 
+            // 5. If the first character in value is a U+002D HYPHEN-MINUS character (-) and the last character in value is a
             //    U+0025 PERCENT SIGN character (%), then jump to the step labeled next setting.
             if (linePosition[0] == '-' && linePosition[linePosition.length() - 1] == '%')
                 break;
 
-            // 6. Ignoring the trailing percent sign, if any, interpret value as a (potentially signed) integer, and 
-            //    let number be that number. 
+            // 6. Ignoring the trailing percent sign, if any, interpret value as a (potentially signed) integer, and
+            //    let number be that number.
             // NOTE: toInt ignores trailing non-digit characters, such as '%'.
             bool validNumber;
             int number = linePosition.toInt(&validNumber);
             if (!validNumber)
                 break;
 
-            // 7. If the last character in value is a U+0025 PERCENT SIGN character (%), but number is not in the range 
+            // 7. If the last character in value is a U+0025 PERCENT SIGN character (%), but number is not in the range
             //    0 ≤ number ≤ 100, then jump to the step labeled next setting.
             // 8. Let cue's text track cue line position be number.
-            // 9. If the last character in value is a U+0025 PERCENT SIGN character (%), then let cue's text track cue 
+            // 9. If the last character in value is a U+0025 PERCENT SIGN character (%), then let cue's text track cue
             //    snap-to-lines flag be false. Otherwise, let it be true.
             if (linePosition[linePosition.length() - 1] == '%') {
                 if (number < 0 || number > 100)
@@ -1009,7 +1009,7 @@
             break;
         case Position:
             {
-            // 1. If value contains any characters other than U+0025 PERCENT SIGN characters (%) and characters in the range 
+            // 1. If value contains any characters other than U+0025 PERCENT SIGN characters (%) and characters in the range
             //    U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9), then jump to the step labeled next setting.
             // 2. If value does not contain at least one character in the range U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9),
             //    then jump to the step labeled next setting.
@@ -1046,7 +1046,7 @@
             {
             // 1. If value contains any characters other than U+0025 PERCENT SIGN characters (%) and characters in the
             //    range U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9), then jump to the step labeled next setting.
-            // 2. If value does not contain at least one character in the range U+0030 DIGIT ZERO (0) to U+0039 DIGIT 
+            // 2. If value does not contain at least one character in the range U+0030 DIGIT ZERO (0) to U+0039 DIGIT
             //    NINE (9), then jump to the step labeled next setting.
             String cueSize = WebVTTParser::collectDigits(input, &position);
             if (cueSize.isEmpty())
@@ -1183,7 +1183,7 @@
         return false;
     if (align() != cue.align())
         return false;
-    
+
     return true;
 }
 
diff --git a/Source/core/html/track/TextTrackCueGeneric.cpp b/Source/core/html/track/TextTrackCueGeneric.cpp
index a7f0db2..2ea70e3 100644
--- a/Source/core/html/track/TextTrackCueGeneric.cpp
+++ b/Source/core/html/track/TextTrackCueGeneric.cpp
@@ -40,9 +40,9 @@
     {
         return adoptRef(new TextTrackCueGenericBoxElement(document, cue));
     }
-    
+
     virtual void applyCSSProperties(const IntSize&) OVERRIDE;
-    
+
 private:
     TextTrackCueGenericBoxElement(Document*, TextTrackCue*);
 };
@@ -56,7 +56,7 @@
 {
     setInlineStyleProperty(CSSPropertyPosition, CSSValueAbsolute);
     setInlineStyleProperty(CSSPropertyUnicodeBidi, CSSValueWebkitPlaintext);
-    
+
     TextTrackCueGeneric* cue = static_cast<TextTrackCueGeneric*>(getCue());
 
     float size = static_cast<float>(cue->getCSSSize());
@@ -75,7 +75,7 @@
 
     if (cue->foregroundColor().alpha())
         setInlineStyleProperty(CSSPropertyColor, cue->foregroundColor().serialized());
-    
+
     if (cue->backgroundColor().alpha())
         cue->element()->setInlineStyleProperty(CSSPropertyBackgroundColor, cue->backgroundColor().serialized());
 
@@ -162,6 +162,6 @@
 
     return TextTrackCue::operator==(cue);
 }
-    
+
 } // namespace WebCore
 
diff --git a/Source/core/html/track/TextTrackCueGeneric.h b/Source/core/html/track/TextTrackCueGeneric.h
index 39ba418..292f727 100644
--- a/Source/core/html/track/TextTrackCueGeneric.h
+++ b/Source/core/html/track/TextTrackCueGeneric.h
@@ -40,7 +40,7 @@
     {
         return adoptRef(new TextTrackCueGeneric(context, start, end, content));
     }
-    
+
     virtual ~TextTrackCueGeneric() { }
 
     virtual PassRefPtr<TextTrackCueBox> createDisplayTree() OVERRIDE;
@@ -49,7 +49,7 @@
     virtual void setPosition(int, ExceptionCode&) OVERRIDE;
 
     bool useDefaultPosition() const { return m_defaultPosition; }
-    
+
     double baseFontSizeRelativeToVideoHeight() const { return m_baseFontSizeRelativeToVideoHeight; }
     void setBaseFontSizeRelativeToVideoHeight(double size) { m_baseFontSizeRelativeToVideoHeight = size; }
 
@@ -61,7 +61,7 @@
 
     Color foregroundColor() const { return m_foregroundColor; }
     void setForegroundColor(Color color) { m_foregroundColor = color; }
-    
+
     Color backgroundColor() const { return m_backgroundColor; }
     void setBackgroundColor(Color color) { m_backgroundColor = color; }
 
@@ -77,7 +77,7 @@
 
 private:
     TextTrackCueGeneric(ScriptExecutionContext*, double start, double end, const String&);
-    
+
     Color m_foregroundColor;
     Color m_backgroundColor;
     double m_baseFontSizeRelativeToVideoHeight;
diff --git a/Source/core/html/track/TextTrackCueList.cpp b/Source/core/html/track/TextTrackCueList.cpp
index f3658fd..ff4710d 100644
--- a/Source/core/html/track/TextTrackCueList.cpp
+++ b/Source/core/html/track/TextTrackCueList.cpp
@@ -126,7 +126,7 @@
 {
     if (!contains(cue))
         return false;
-    
+
     remove(cue);
     return add(cue);
 }
diff --git a/Source/core/html/track/TextTrackList.h b/Source/core/html/track/TextTrackList.h
index 1d55351..ac4621a 100644
--- a/Source/core/html/track/TextTrackList.h
+++ b/Source/core/html/track/TextTrackList.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextTrackList_h
diff --git a/Source/core/html/track/TrackBase.cpp b/Source/core/html/track/TrackBase.cpp
index a4d1308..e76de17 100644
--- a/Source/core/html/track/TrackBase.cpp
+++ b/Source/core/html/track/TrackBase.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/track/TrackBase.h b/Source/core/html/track/TrackBase.h
index c3cc850..c8b5927 100644
--- a/Source/core/html/track/TrackBase.h
+++ b/Source/core/html/track/TrackBase.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TrackBase_h
@@ -42,22 +42,22 @@
 
     virtual const AtomicString& interfaceName() const;
     virtual ScriptExecutionContext* scriptExecutionContext() const;
-    
+
     using RefCounted<TrackBase>::ref;
     using RefCounted<TrackBase>::deref;
 
 protected:
     TrackBase(ScriptExecutionContext*, Type);
-    
+
     virtual EventTargetData* eventTargetData();
     virtual EventTargetData* ensureEventTargetData();
 
 private:
     Type m_type;
-    
+
     virtual void refEventTarget() { ref(); }
     virtual void derefEventTarget() { deref(); }
-    
+
     ScriptExecutionContext* m_scriptExecutionContext;
     EventTargetData m_eventTargetData;
 };
diff --git a/Source/core/html/track/TrackEvent.cpp b/Source/core/html/track/TrackEvent.cpp
index de23f29..7e20843 100644
--- a/Source/core/html/track/TrackEvent.cpp
+++ b/Source/core/html/track/TrackEvent.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/html/track/TrackEvent.h b/Source/core/html/track/TrackEvent.h
index 3dc908a..8df7bb7 100644
--- a/Source/core/html/track/TrackEvent.h
+++ b/Source/core/html/track/TrackEvent.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TrackEvent_h
diff --git a/Source/core/html/track/WebVTTElement.h b/Source/core/html/track/WebVTTElement.h
index 62d23ac..6eb1b8d 100644
--- a/Source/core/html/track/WebVTTElement.h
+++ b/Source/core/html/track/WebVTTElement.h
@@ -62,7 +62,7 @@
         DEFINE_STATIC_LOCAL(QualifiedName, voiceAttr, (nullAtom, "voice", nullAtom));
         return voiceAttr;
     }
-    
+
     static const QualifiedName& langAttributeName()
     {
         DEFINE_STATIC_LOCAL(QualifiedName, voiceAttr, (nullAtom, "lang", nullAtom));
@@ -75,7 +75,7 @@
 
     unsigned m_isPastNode : 1;
     unsigned m_webVTTNodeType : 4;
-    
+
     AtomicString m_language;
 };
 
diff --git a/Source/core/html/track/WebVTTParser.cpp b/Source/core/html/track/WebVTTParser.cpp
index 117661e..4a7b524 100644
--- a/Source/core/html/track/WebVTTParser.cpp
+++ b/Source/core/html/track/WebVTTParser.cpp
@@ -311,7 +311,7 @@
 
     if (position >= length)
         createNewCue();
-                
+
     return CueText;
 }
 
@@ -333,17 +333,17 @@
 
     ASSERT(m_scriptExecutionContext->isDocument());
     Document* document = toDocument(m_scriptExecutionContext);
-    
+
     RefPtr<DocumentFragment> fragment = DocumentFragment::create(document);
     m_currentNode = fragment;
     m_tokenizer->reset();
     m_token.clear();
-    
+
     m_languageStack.clear();
     SegmentedString content(text);
     while (m_tokenizer->nextToken(content, m_token))
         constructTreeFromToken(document);
-    
+
     return fragment.release();
 }
 
@@ -415,7 +415,7 @@
         return malformedTime;
     String digits2 = collectDigits(line, position);
     int value2 = digits2.toInt();
-    if (digits2.length() != 2) 
+    if (digits2.length() != 2)
         return malformedTime;
 
     // 13 - Detect whether this timestamp includes hours.
diff --git a/Source/core/html/track/WebVTTParser.h b/Source/core/html/track/WebVTTParser.h
index 8839af7..7d4f08f 100644
--- a/Source/core/html/track/WebVTTParser.h
+++ b/Source/core/html/track/WebVTTParser.h
@@ -76,7 +76,7 @@
     {
         return adoptPtr(new WebVTTParser(client, context));
     }
-    
+
     static inline bool isRecognizedTag(const AtomicString& tagName)
     {
         return tagName == iTag
@@ -93,7 +93,7 @@
     }
     static inline bool isValidSettingDelimiter(char c)
     {
-        // ... a WebVTT cue consists of zero or more of the following components, in any order, separated from each other by one or more 
+        // ... a WebVTT cue consists of zero or more of the following components, in any order, separated from each other by one or more
         // U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characters.
         return c == ' ' || c == '\t';
     }
@@ -154,7 +154,7 @@
     double m_currentEndTime;
     StringBuilder m_currentContent;
     String m_currentSettings;
-    
+
     WebVTTToken m_token;
     OwnPtr<WebVTTTokenizer> m_tokenizer;
 
diff --git a/Source/core/html/track/WebVTTToken.h b/Source/core/html/track/WebVTTToken.h
index f867179..0111eb8 100644
--- a/Source/core/html/track/WebVTTToken.h
+++ b/Source/core/html/track/WebVTTToken.h
@@ -106,7 +106,7 @@
         m_type = Type::StartTag;
         m_data.clear();
     }
- 
+
     void beginStartTag(UChar character)
     {
         ASSERT(character);
@@ -129,7 +129,7 @@
         m_type = Type::TimestampTag;
         m_data.append(character);
     }
-    
+
     void appendToTimestamp(UChar character)
     {
         ASSERT(character);
@@ -150,7 +150,7 @@
         m_classes.append(m_currentBuffer);
         m_currentBuffer.clear();
     }
-    
+
     const DataVector& classes() const
     {
         return m_classes;
@@ -160,7 +160,7 @@
     {
         appendToStartType(character);
     }
-        
+
     void addNewAnnotation()
     {
         ASSERT(m_type == Type::StartTag);
@@ -168,7 +168,7 @@
         m_annotation.append(m_currentBuffer);
         m_currentBuffer.clear();
     }
-    
+
     const DataVector& annotation() const
     {
         return m_annotation;
@@ -179,7 +179,7 @@
         ASSERT(m_type == Type::Uninitialized);
         m_type = Type::EndOfFile;
     }
-    
+
     void clear()
     {
         m_type = Type::Uninitialized;
diff --git a/Source/core/html/track/WebVTTTokenizer.cpp b/Source/core/html/track/WebVTTTokenizer.cpp
index f00dfc8..b2c30e7 100644
--- a/Source/core/html/track/WebVTTTokenizer.cpp
+++ b/Source/core/html/track/WebVTTTokenizer.cpp
@@ -63,7 +63,7 @@
     m_token = 0;
     m_buffer.clear();
 }
-    
+
 bool WebVTTTokenizer::nextToken(SegmentedString& source, WebVTTToken& token)
 {
     // If we have a token in progress, then we're supposed to be called back
@@ -189,7 +189,7 @@
         WEBVTT_ADVANCE_TO(StartTagAnnotationState);
     }
     END_STATE()
-    
+
     WEBVTT_BEGIN_STATE(EndTagOpenState) {
         if (cc == '>' || cc == kEndOfFileMarker) {
             m_token->beginEndTag('\0');
diff --git a/Source/core/html/track/WebVTTTokenizer.h b/Source/core/html/track/WebVTTTokenizer.h
index 2622a53..097f508 100644
--- a/Source/core/html/track/WebVTTTokenizer.h
+++ b/Source/core/html/track/WebVTTTokenizer.h
@@ -61,7 +61,7 @@
     typedef WebVTTTokenizerState State;
 
     void reset();
-    
+
     bool nextToken(SegmentedString&, WebVTTToken&);
 
     inline bool haveBufferedCharacterToken()
diff --git a/Source/core/inspector/InjectedScriptCanvasModule.h b/Source/core/inspector/InjectedScriptCanvasModule.h
index 5e617dd..9a675eb 100644
--- a/Source/core/inspector/InjectedScriptCanvasModule.h
+++ b/Source/core/inspector/InjectedScriptCanvasModule.h
@@ -44,7 +44,7 @@
 class InjectedScriptCanvasModule : public InjectedScriptModule {
 public:
     InjectedScriptCanvasModule();
-    
+
     virtual String source() const;
 
     static InjectedScriptCanvasModule moduleForState(InjectedScriptManager*, ScriptState*);
diff --git a/Source/core/inspector/InjectedScriptHost.h b/Source/core/inspector/InjectedScriptHost.h
index 6a3729c..5decc2a 100644
--- a/Source/core/inspector/InjectedScriptHost.h
+++ b/Source/core/inspector/InjectedScriptHost.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/inspector/InjectedScriptHost.idl b/Source/core/inspector/InjectedScriptHost.idl
index 87dc9d8..aeee4ef 100644
--- a/Source/core/inspector/InjectedScriptHost.idl
+++ b/Source/core/inspector/InjectedScriptHost.idl
@@ -52,6 +52,6 @@
     [Custom] void monitorFunction(any fn);
     [Custom] void unmonitorFunction(any fn);
 
-    // Only declarative scope (local, with and catch) is accepted. Returns undefined. 
+    // Only declarative scope (local, with and catch) is accepted. Returns undefined.
     [Custom] any setFunctionVariableValue(any functionObject, int scopeIndex, DOMString variableName, any newValue);
 };
diff --git a/Source/core/inspector/InspectorCanvasAgent.cpp b/Source/core/inspector/InspectorCanvasAgent.cpp
index 58408b7..c979295 100644
--- a/Source/core/inspector/InspectorCanvasAgent.cpp
+++ b/Source/core/inspector/InspectorCanvasAgent.cpp
@@ -274,7 +274,7 @@
         {
             if (!node->hasTagName(HTMLNames::canvasTag) || !node->document() || !node->document()->frame())
                 return;
-            
+
             Frame* frame = node->document()->frame();
             if (frame->page() != m_page)
                 return;
diff --git a/Source/core/inspector/InspectorClient.h b/Source/core/inspector/InspectorClient.h
index d34542a..a5b290b 100644
--- a/Source/core/inspector/InspectorClient.h
+++ b/Source/core/inspector/InspectorClient.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef InspectorClient_h
diff --git a/Source/core/inspector/InspectorDatabaseAgent.cpp b/Source/core/inspector/InspectorDatabaseAgent.cpp
index 170b316..cbf749f 100644
--- a/Source/core/inspector/InspectorDatabaseAgent.cpp
+++ b/Source/core/inspector/InspectorDatabaseAgent.cpp
@@ -119,7 +119,7 @@
     virtual bool handleEvent(SQLTransaction*, SQLError* error)
     {
         reportTransactionFailed(m_requestCallback.get(), error);
-        return true;  
+        return true;
     }
 
 private:
diff --git a/Source/core/inspector/InspectorFrontendChannel.h b/Source/core/inspector/InspectorFrontendChannel.h
index f5a19a1..9505cb6 100644
--- a/Source/core/inspector/InspectorFrontendChannel.h
+++ b/Source/core/inspector/InspectorFrontendChannel.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef InspectorFrontendChannel_h
diff --git a/Source/core/inspector/InspectorFrontendHost.h b/Source/core/inspector/InspectorFrontendHost.h
index 83e9344..70968f4 100644
--- a/Source/core/inspector/InspectorFrontendHost.h
+++ b/Source/core/inspector/InspectorFrontendHost.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/inspector/InspectorInputAgent.cpp b/Source/core/inspector/InspectorInputAgent.cpp
index e3886e3..346f640 100644
--- a/Source/core/inspector/InspectorInputAgent.cpp
+++ b/Source/core/inspector/InspectorInputAgent.cpp
@@ -33,18 +33,62 @@
 
 #include "core/inspector/InspectorClient.h"
 #include "core/page/Chrome.h"
+#include "core/page/EventHandler.h"
 #include "core/page/Frame.h"
 #include "core/page/FrameView.h"
 #include "core/page/Page.h"
+#include "core/platform/JSONValues.h"
 #include "core/platform/PlatformEvent.h"
 #include "core/platform/PlatformKeyboardEvent.h"
 #include "core/platform/PlatformMouseEvent.h"
+#include "core/platform/PlatformTouchEvent.h"
+#include "core/platform/PlatformTouchPoint.h"
 #include "core/platform/graphics/IntPoint.h"
 #include "core/platform/graphics/IntRect.h"
 #include "core/platform/graphics/IntSize.h"
 #include "wtf/CurrentTime.h"
 #include "wtf/text/WTFString.h"
 
+namespace {
+
+class SyntheticInspectorTouchPoint : public WebCore::PlatformTouchPoint {
+public:
+    SyntheticInspectorTouchPoint(unsigned id, State state, const WebCore::IntPoint& screenPos, const WebCore::IntPoint& pos, int radiusX, int radiusY, double rotationAngle, double force)
+    {
+        m_id = id;
+        m_screenPos = screenPos;
+        m_pos = pos;
+        m_state = state;
+        m_radiusY = radiusY;
+        m_radiusX = radiusX;
+        m_rotationAngle = rotationAngle;
+        m_force = force;
+    }
+};
+
+class SyntheticInspectorTouchEvent : public WebCore::PlatformTouchEvent {
+public:
+    SyntheticInspectorTouchEvent(const WebCore::PlatformEvent::Type type, unsigned modifiers, double timestamp)
+    {
+        m_type = type;
+        m_modifiers = modifiers;
+        m_timestamp = timestamp;
+    }
+
+    void append(const WebCore::PlatformTouchPoint& point)
+    {
+        m_touchPoints.append(point);
+    }
+};
+
+void ConvertInspectorPoint(WebCore::Page* page, const WebCore::IntPoint& point, WebCore::IntPoint* convertedPoint, WebCore::IntPoint* globalPoint)
+{
+    *convertedPoint = page->mainFrame()->view()->convertToContainingWindow(point);
+    *globalPoint = page->chrome().rootViewToScreen(WebCore::IntRect(point, WebCore::IntSize(0, 0))).location();
+}
+
+} // namespace
+
 namespace WebCore {
 
 InspectorInputAgent::InspectorInputAgent(InstrumentingAgents* instrumentingAgents, InspectorCompositeState* inspectorState, Page* page, InspectorClient* client)
@@ -121,8 +165,8 @@
 
     // Some platforms may have flipped coordinate systems, but the given coordinates
     // assume the origin is in the top-left of the window. Convert.
-    IntPoint convertedPoint = m_page->mainFrame()->view()->convertToContainingWindow(IntPoint(x, y));
-    IntPoint globalPoint = m_page->chrome().rootViewToScreen(IntRect(IntPoint(x, y), IntSize(0, 0))).location();
+    IntPoint convertedPoint, globalPoint;
+    ConvertInspectorPoint(m_page, IntPoint(x, y), &convertedPoint, &globalPoint);
 
     PlatformMouseEvent event(
         convertedPoint,
@@ -139,5 +183,92 @@
     m_client->dispatchMouseEvent(event);
 }
 
+void InspectorInputAgent::dispatchTouchEvent(ErrorString* error, const String& type, const RefPtr<JSONArray>& touchPoints, const int* modifiers, const double* timestamp)
+{
+    PlatformEvent::Type convertedType;
+    if (type == "touchStart") {
+        convertedType = PlatformEvent::TouchStart;
+    } else if (type == "touchEnd") {
+        convertedType = PlatformEvent::TouchEnd;
+    } else if (type == "touchMove") {
+        convertedType = PlatformEvent::TouchMove;
+    } else {
+        *error = "Unrecognized type: " + type;
+        return;
+    }
+
+    unsigned convertedModifiers = modifiers ? *modifiers : 0;
+
+    SyntheticInspectorTouchEvent event(convertedType, convertedModifiers, timestamp ? *timestamp : currentTime());
+
+    int autoId = 0;
+    JSONArrayBase::iterator iter;
+    for (iter = touchPoints->begin(); iter != touchPoints->end(); ++iter) {
+        RefPtr<JSONObject> pointObj;
+        String state;
+        int x, y, radiusX, radiusY, id;
+        double rotationAngle, force;
+        (*iter)->asObject(&pointObj);
+        if (!pointObj->getString("state", &state)) {
+            *error = "TouchPoint missing 'state'";
+            return;
+        }
+        if (!pointObj->getNumber("x", &x)) {
+            *error = "TouchPoint missing 'x' coordinate";
+            return;
+        }
+        if (!pointObj->getNumber("y", &y)) {
+            *error = "TouchPoint missing 'y' coordinate";
+            return;
+        }
+        if (!pointObj->getNumber("radiusX", &radiusX))
+            radiusX = 1;
+        if (!pointObj->getNumber("radiusY", &radiusY))
+            radiusY = 1;
+        if (!pointObj->getNumber("rotationAngle", &rotationAngle))
+            rotationAngle = 0.0f;
+        if (!pointObj->getNumber("force", &force))
+            force = 1.0f;
+        if (pointObj->getNumber("id", &id)) {
+            if (autoId > 0)
+                id = -1;
+            autoId = -1;
+        } else {
+            id = autoId++;
+        }
+        if (id < 0) {
+            *error = "All or none of the provided TouchPoints must supply positive integer ids.";
+            return;
+        }
+
+        PlatformTouchPoint::State convertedState;
+        if (state == "touchPressed") {
+            convertedState = PlatformTouchPoint::TouchPressed;
+        } else if (state == "touchReleased") {
+            convertedState = PlatformTouchPoint::TouchReleased;
+        } else if (state == "touchMoved") {
+            convertedState = PlatformTouchPoint::TouchMoved;
+        } else if (state == "touchStationary") {
+            convertedState = PlatformTouchPoint::TouchStationary;
+        } else if (state == "touchCancelled") {
+            convertedState = PlatformTouchPoint::TouchCancelled;
+        } else {
+            *error = "Unrecognized state: " + state;
+            return;
+        }
+
+        // Some platforms may have flipped coordinate systems, but the given coordinates
+        // assume the origin is in the top-left of the window. Convert.
+        IntPoint convertedPoint, globalPoint;
+        ConvertInspectorPoint(m_page, IntPoint(x, y), &convertedPoint, &globalPoint);
+
+        SyntheticInspectorTouchPoint point(id++, convertedState, globalPoint, convertedPoint, radiusX, radiusY, rotationAngle, force);
+        event.append(point);
+    }
+
+    EventHandler* handler = m_page->mainFrame()->eventHandler();
+    handler->handleTouchEvent(event);
+}
+
 } // namespace WebCore
 
diff --git a/Source/core/inspector/InspectorInputAgent.h b/Source/core/inspector/InspectorInputAgent.h
index ecd0d84..f4717e8 100644
--- a/Source/core/inspector/InspectorInputAgent.h
+++ b/Source/core/inspector/InspectorInputAgent.h
@@ -56,6 +56,7 @@
     // Methods called from the frontend for simulating input.
     virtual void dispatchKeyEvent(ErrorString*, const String& type, const int* modifiers, const double* timestamp, const String* text, const String* unmodifiedText, const String* keyIdentifier, const int* windowsVirtualKeyCode, const int* nativeVirtualKeyCode, const int* macCharCode, const bool* autoRepeat, const bool* isKeypad, const bool* isSystemKey);
     virtual void dispatchMouseEvent(ErrorString*, const String& type, int x, int y, const int* modifiers, const double* timestamp, const String* button, const int* clickCount);
+    virtual void dispatchTouchEvent(ErrorString*, const String& type, const RefPtr<JSONArray>& touchPoints, const int* modifiers, const double* timestamp);
 
 private:
     InspectorInputAgent(InstrumentingAgents*, InspectorCompositeState*, Page*, InspectorClient*);
diff --git a/Source/core/inspector/InspectorLayerTreeAgent.cpp b/Source/core/inspector/InspectorLayerTreeAgent.cpp
index 061ae33..a14c7b2 100644
--- a/Source/core/inspector/InspectorLayerTreeAgent.cpp
+++ b/Source/core/inspector/InspectorLayerTreeAgent.cpp
@@ -211,7 +211,7 @@
 int InspectorLayerTreeAgent::idForNode(ErrorString* errorString, Node* node)
 {
     InspectorDOMAgent* domAgent = m_instrumentingAgents->inspectorDOMAgent();
-    
+
     int nodeId = domAgent->boundNodeId(node);
     if (!nodeId)
         nodeId = domAgent->pushNodeToFrontend(errorString, domAgent->boundNodeId(node->document()), node);
@@ -254,7 +254,7 @@
 
     if (reasonsBitmask & CompositingReasonIFrame)
         compositingReasons->setIFrame(true);
-    
+
     if (reasonsBitmask & CompositingReasonBackfaceVisibilityHidden)
         compositingReasons->setBackfaceVisibilityHidden(true);
 
@@ -299,7 +299,7 @@
 
     if (reasonsBitmask & CompositingReasonFilterWithCompositedDescendants)
         compositingReasons->setFilterWithCompositedDescendants(true);
-            
+
     if (reasonsBitmask & CompositingReasonBlendingWithCompositedDescendants)
         compositingReasons->setBlendingWithCompositedDescendants(true);
 
diff --git a/Source/core/inspector/InspectorStyleSheet.h b/Source/core/inspector/InspectorStyleSheet.h
index e98068f..441af6e 100644
--- a/Source/core/inspector/InspectorStyleSheet.h
+++ b/Source/core/inspector/InspectorStyleSheet.h
@@ -65,7 +65,7 @@
     {
         if (!value->getString("styleSheetId", &m_styleSheetId))
             return;
-        
+
         RefPtr<JSONValue> ordinalValue = value->get("ordinal");
         if (!ordinalValue || !ordinalValue->asNumber(&m_ordinal))
             m_styleSheetId = "";
diff --git a/Source/core/inspector/InspectorTimelineAgent.cpp b/Source/core/inspector/InspectorTimelineAgent.cpp
index 6e2dee5..a17e239 100644
--- a/Source/core/inspector/InspectorTimelineAgent.cpp
+++ b/Source/core/inspector/InspectorTimelineAgent.cpp
@@ -764,7 +764,7 @@
 {
     if (!m_pendingFrameRecord)
         return;
-    
+
     m_pendingFrameRecord->setObject("data", JSONObject::create());
     innerAddRecordToTimeline(m_pendingFrameRecord.release());
 }
diff --git a/Source/core/inspector/InspectorTimelineAgent.h b/Source/core/inspector/InspectorTimelineAgent.h
index c74fb70..c3c31e1 100644
--- a/Source/core/inspector/InspectorTimelineAgent.h
+++ b/Source/core/inspector/InspectorTimelineAgent.h
@@ -226,7 +226,7 @@
         String type;
         size_t usedHeapSizeAtStart;
     };
-        
+
     InspectorTimelineAgent(InstrumentingAgents*, InspectorPageAgent*, InspectorMemoryAgent*, InspectorDOMAgent*, InspectorCompositeState*, InspectorType, InspectorClient*);
 
     void didFinishLoadingResource(unsigned long, bool didFail, double finishTime, Frame*);
diff --git a/Source/core/inspector/JavaScriptCallFrame.idl b/Source/core/inspector/JavaScriptCallFrame.idl
index 26ae291..fa31924 100644
--- a/Source/core/inspector/JavaScriptCallFrame.idl
+++ b/Source/core/inspector/JavaScriptCallFrame.idl
@@ -37,8 +37,8 @@
 
     [Custom] void evaluate(DOMString script);
     [Custom] any restart();
-    
-    // Only declarative scope (local, with and catch) is accepted. Returns undefined. 
+
+    // Only declarative scope (local, with and catch) is accepted. Returns undefined.
     [Custom] any setVariableValue(long scopeIndex, DOMString variableName, any newValue);
 
     readonly attribute JavaScriptCallFrame caller;
diff --git a/Source/core/inspector/ScriptArguments.cpp b/Source/core/inspector/ScriptArguments.cpp
index 3bcdd21..175f4eb 100644
--- a/Source/core/inspector/ScriptArguments.cpp
+++ b/Source/core/inspector/ScriptArguments.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2010 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/inspector/ScriptArguments.h b/Source/core/inspector/ScriptArguments.h
index 8f83bd3..9d2185a 100644
--- a/Source/core/inspector/ScriptArguments.h
+++ b/Source/core/inspector/ScriptArguments.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2010 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/inspector/ScriptCallFrame.cpp b/Source/core/inspector/ScriptCallFrame.cpp
index 42433e3..e6d2f62 100644
--- a/Source/core/inspector/ScriptCallFrame.cpp
+++ b/Source/core/inspector/ScriptCallFrame.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2010 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/inspector/ScriptCallFrame.h b/Source/core/inspector/ScriptCallFrame.h
index 7ec5343..48745f9 100644
--- a/Source/core/inspector/ScriptCallFrame.h
+++ b/Source/core/inspector/ScriptCallFrame.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2010 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/inspector/ScriptCallStack.cpp b/Source/core/inspector/ScriptCallStack.cpp
index 0b8695a..4486b91 100644
--- a/Source/core/inspector/ScriptCallStack.cpp
+++ b/Source/core/inspector/ScriptCallStack.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/inspector/ScriptCallStack.h b/Source/core/inspector/ScriptCallStack.h
index 5d5d0f6..9549db8 100644
--- a/Source/core/inspector/ScriptCallStack.h
+++ b/Source/core/inspector/ScriptCallStack.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2010 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -42,7 +42,7 @@
 class ScriptCallStack : public RefCounted<ScriptCallStack> {
 public:
     static const size_t maxCallStackSizeToCapture = 200;
-    
+
     static PassRefPtr<ScriptCallStack> create(Vector<ScriptCallFrame>&);
 
     ~ScriptCallStack();
diff --git a/Source/core/inspector/ScriptGCEventListener.h b/Source/core/inspector/ScriptGCEventListener.h
index 5f8a18f..a5732d0 100644
--- a/Source/core/inspector/ScriptGCEventListener.h
+++ b/Source/core/inspector/ScriptGCEventListener.h
@@ -40,7 +40,7 @@
     virtual void didGC(double startTime, double endTime, size_t collectedBytes) = 0;
     virtual ~ScriptGCEventListener(){}
 };
-    
+
 } // namespace WebCore
 
 #endif // !defined(ScriptGCEventListener_h)
diff --git a/Source/core/inspector/TimelineRecordFactory.cpp b/Source/core/inspector/TimelineRecordFactory.cpp
index 3f9afe3..35f2ee3 100644
--- a/Source/core/inspector/TimelineRecordFactory.cpp
+++ b/Source/core/inspector/TimelineRecordFactory.cpp
@@ -184,7 +184,7 @@
     data->setBoolean("partialLayout", partialLayout);
     return data.release();
 }
-    
+
 PassRefPtr<JSONObject> TimelineRecordFactory::createDecodeImageData(const String& imageType)
 {
     RefPtr<JSONObject> data = JSONObject::create();
diff --git a/Source/core/inspector/TimelineRecordFactory.h b/Source/core/inspector/TimelineRecordFactory.h
index 9fb244d..f128fa9 100644
--- a/Source/core/inspector/TimelineRecordFactory.h
+++ b/Source/core/inspector/TimelineRecordFactory.h
@@ -27,7 +27,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #ifndef TimelineRecordFactory_h
 #define TimelineRecordFactory_h
 
diff --git a/Source/core/inspector/WorkerInspectorController.cpp b/Source/core/inspector/WorkerInspectorController.cpp
index 283ee77..a1b200f 100644
--- a/Source/core/inspector/WorkerInspectorController.cpp
+++ b/Source/core/inspector/WorkerInspectorController.cpp
@@ -107,7 +107,7 @@
 
     m_injectedScriptManager->injectedScriptHost()->init(m_instrumentingAgents.get(), m_debugServer.get());
 }
- 
+
 WorkerInspectorController::~WorkerInspectorController()
 {
     m_instrumentingAgents->reset();
diff --git a/Source/core/loader/CrossOriginAccessControl.cpp b/Source/core/loader/CrossOriginAccessControl.cpp
index b7bb124..0cad634 100644
--- a/Source/core/loader/CrossOriginAccessControl.cpp
+++ b/Source/core/loader/CrossOriginAccessControl.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -79,7 +79,7 @@
 static PassOwnPtr<HTTPHeaderSet> createAllowedCrossOriginResponseHeadersSet()
 {
     OwnPtr<HTTPHeaderSet> headerSet = adoptPtr(new HashSet<String, CaseFoldingHash>);
-    
+
     headerSet->add("cache-control");
     headerSet->add("content-language");
     headerSet->add("content-type");
diff --git a/Source/core/loader/CrossOriginAccessControl.h b/Source/core/loader/CrossOriginAccessControl.h
index 020aefe..c088f08 100644
--- a/Source/core/loader/CrossOriginAccessControl.h
+++ b/Source/core/loader/CrossOriginAccessControl.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/loader/CrossOriginPreflightResultCache.cpp b/Source/core/loader/CrossOriginPreflightResultCache.cpp
index 91e0c94..d137440 100644
--- a/Source/core/loader/CrossOriginPreflightResultCache.cpp
+++ b/Source/core/loader/CrossOriginPreflightResultCache.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -61,7 +61,7 @@
         ++start;
 
     // only white space
-    if (start > end) 
+    if (start > end)
         return;
 
     // Skip white space from end.
diff --git a/Source/core/loader/CrossOriginPreflightResultCache.h b/Source/core/loader/CrossOriginPreflightResultCache.h
index 814a1e0..0006d48 100644
--- a/Source/core/loader/CrossOriginPreflightResultCache.h
+++ b/Source/core/loader/CrossOriginPreflightResultCache.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/loader/DocumentLoadTiming.h b/Source/core/loader/DocumentLoadTiming.h
index eedea55..28db5d5 100644
--- a/Source/core/loader/DocumentLoadTiming.h
+++ b/Source/core/loader/DocumentLoadTiming.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DocumentLoadTiming_h
diff --git a/Source/core/loader/DocumentLoader.cpp b/Source/core/loader/DocumentLoader.cpp
index 9eb4674..7070809 100644
--- a/Source/core/loader/DocumentLoader.cpp
+++ b/Source/core/loader/DocumentLoader.cpp
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -193,7 +193,7 @@
         m_committed = false;
 
     // We should never be getting a redirect callback after the data
-    // source is committed, except in the unreachable URL case. It 
+    // source is committed, except in the unreachable URL case. It
     // would be a WebFoundation bug if it sent a redirect callback after commit.
     ASSERT(!m_committed);
 
@@ -221,8 +221,8 @@
 }
 
 // Cancels the data source's pending loads.  Conceptually, a data source only loads
-// one document at a time, but one document may have many related resources. 
-// stopLoading will stop all loads initiated by the data source, 
+// one document at a time, but one document may have many related resources.
+// stopLoading will stop all loads initiated by the data source,
 // but not loads initiated by child frames' data sources -- that's the WebFrame's job.
 void DocumentLoader::stopLoading()
 {
@@ -233,41 +233,41 @@
     // (This can happen when there's a single XMLHttpRequest currently loading and stopLoading causes it
     // to stop loading. Because of this, we need to save it so we don't return early.
     bool loading = isLoading();
-    
+
     if (m_committed) {
         // Attempt to stop the frame if the document loader is loading, or if it is done loading but
         // still  parsing. Failure to do so can cause a world leak.
         Document* doc = m_frame->document();
-        
+
         if (loading || doc->parsing())
             m_frame->loader()->stopLoading(UnloadEventPolicyNone);
     }
 
     // Always cancel multipart loaders
     cancelAll(m_multipartResourceLoaders);
-    
+
     clearArchiveResources();
 
     if (!loading) {
-        // If something above restarted loading we might run into mysterious crashes like 
+        // If something above restarted loading we might run into mysterious crashes like
         // https://bugs.webkit.org/show_bug.cgi?id=62764 and <rdar://problem/9328684>
         ASSERT(!isLoading());
         return;
     }
 
-    // We might run in to infinite recursion if we're stopping loading as the result of 
+    // We might run in to infinite recursion if we're stopping loading as the result of
     // detaching from the frame, so break out of that recursion here.
     // See <rdar://problem/9673866> for more details.
     if (m_isStopping)
         return;
 
     m_isStopping = true;
-    
+
     if (isLoadingMainResource()) {
         // Stop the main resource loader and let it send the cancelled message.
         cancelMainResourceLoad(ResourceError::cancelledError(m_request.url()));
     } else if (!m_resourceLoaders.isEmpty()) {
-        // The main resource loader already finished loading. Set the cancelled error on the 
+        // The main resource loader already finished loading. Set the cancelled error on the
         // document and let the resourceLoaders send individual cancelled messages below.
         setMainDocumentError(ResourceError::cancelledError(m_request.url()));
     } else {
@@ -275,9 +275,9 @@
         // (A back/forward navigation has no resource loaders because its resources are cached.)
         mainReceivedError(ResourceError::cancelledError(m_request.url()));
     }
-    
+
     stopLoadingSubresources();
-    
+
     m_isStopping = false;
 }
 
@@ -445,7 +445,7 @@
 {
     // Note that there are no asserts here as there are for the other callbacks. This is due to the
     // fact that this "callback" is sent when starting every load, and the state of callback
-    // deferrals plays less of a part in this function in preventing the bad behavior deferring 
+    // deferrals plays less of a part in this function in preventing the bad behavior deferring
     // callbacks is meant to prevent.
     ASSERT(!newRequest.isNull());
 
@@ -628,10 +628,6 @@
     bool userChosen = !overrideEncoding().isNull();
     m_writer = createWriterFor(m_frame, 0, documentURL(), mimeType, encoding, false, false);
     m_writer->setDocumentWasLoadedAsPartOfNavigation();
-
-    if (frameLoader()->stateMachine()->creatingInitialEmptyDocument())
-        return;
-
     // This should be set before receivedFirstData().
     if (!overridingURL.isEmpty())
         m_frame->document()->setBaseURLOverride(overridingURL);
@@ -760,7 +756,7 @@
 {
     m_archive = MHTMLArchive::create(m_response.url(), mainResourceData().get());
     ASSERT(m_archive);
-    
+
     addAllArchiveResources(m_archive.get());
     ArchiveResource* mainResource = m_archive->mainResource();
 
@@ -836,7 +832,7 @@
 KURL DocumentLoader::urlForHistory() const
 {
     // Return the URL to be used for history and B/F list.
-    // Returns nil for WebDataProtocol URLs that aren't alternates 
+    // Returns nil for WebDataProtocol URLs that aren't alternates
     // for unreachable URLs, because these can't be stored in history.
     if (m_substituteData.isValid())
         return unreachableURL();
@@ -1001,7 +997,7 @@
     m_resourceLoaders.remove(loader);
     checkLoadComplete();
     if (Frame* frame = m_frame)
-        frame->loader()->checkLoadComplete();    
+        frame->loader()->checkLoadComplete();
 }
 
 void DocumentLoader::handledOnloadEvents()
@@ -1032,20 +1028,9 @@
     if (document->isPluginDocument() && document->isSandboxed(SandboxPlugins))
         document = SinkDocument::create(DocumentInit(url, frame));
     bool shouldReuseDefaultView = frame->loader()->stateMachine()->isDisplayingInitialEmptyDocument() && frame->document()->isSecureTransitionTo(url);
-
-    RefPtr<DOMWindow> originalDOMWindow;
-    if (shouldReuseDefaultView)
-        originalDOMWindow = frame->domWindow();
-    frame->loader()->clear(!shouldReuseDefaultView, !shouldReuseDefaultView);
-
-    if (!shouldReuseDefaultView) {
-        frame->setDOMWindow(DOMWindow::create(frame));
-    } else {
-        // Note that the old Document is still attached to the DOMWindow; the
-        // setDocument() call below will detach the old Document.
-        ASSERT(originalDOMWindow);
-        frame->setDOMWindow(originalDOMWindow);
-    }
+    FrameLoader::ClearOptions options = shouldReuseDefaultView ? 0 : (FrameLoader::ClearWindowProperties | FrameLoader::ClearScriptObjects | FrameLoader::ClearWindowObject);
+    frame->loader()->clear(options);
+    frame->ensureDOMWindow();
 
     frame->loader()->setOutgoingReferrer(url);
     frame->domWindow()->setDocument(document);
diff --git a/Source/core/loader/DocumentLoader.h b/Source/core/loader/DocumentLoader.h
index 3a39ff3..a5679c1 100644
--- a/Source/core/loader/DocumentLoader.h
+++ b/Source/core/loader/DocumentLoader.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -140,7 +140,7 @@
         const StringWithDirection& title() const { return m_pageTitle; }
 
         KURL urlForHistory() const;
-        
+
         void setDefersLoading(bool);
 
         void startLoadingMainResource();
@@ -219,36 +219,36 @@
         void handleSubstituteDataLoadSoon();
         void handleSubstituteDataLoadNow(DocumentLoaderTimer*);
         void startDataLoadTimer();
-                
+
         Frame* m_frame;
         RefPtr<ResourceFetcher> m_fetcher;
 
         CachedResourceHandle<CachedRawResource> m_mainResource;
         ResourceLoaderSet m_resourceLoaders;
         ResourceLoaderSet m_multipartResourceLoaders;
-        
+
         RefPtr<DocumentWriter> m_writer;
 
         // A reference to actual request used to create the data source.
         // This should only be used by the resourceLoadDelegate's
         // identifierForInitialRequest:fromDatasource: method. It is
         // not guaranteed to remain unchanged, as requests are mutable.
-        ResourceRequest m_originalRequest;   
+        ResourceRequest m_originalRequest;
 
         SubstituteData m_substituteData;
 
         // A copy of the original request used to create the data source.
         // We have to copy the request because requests are mutable.
         ResourceRequest m_originalRequestCopy;
-        
+
         // The 'working' request. It may be mutated
         // several times from the original request to include additional
         // headers, cookie information, canonicalization and redirects.
         ResourceRequest m_request;
 
         ResourceResponse m_response;
-    
-        ResourceError m_mainDocumentError;    
+
+        ResourceError m_mainDocumentError;
 
         bool m_committed;
         bool m_isStopping;
diff --git a/Source/core/loader/DocumentThreadableLoader.cpp b/Source/core/loader/DocumentThreadableLoader.cpp
index fc96e43..48653a5 100644
--- a/Source/core/loader/DocumentThreadableLoader.cpp
+++ b/Source/core/loader/DocumentThreadableLoader.cpp
@@ -332,7 +332,7 @@
     ASSERT_UNUSED(resource, resource == m_resource);
 
     m_timeoutTimer.stop();
-        
+
     if (m_resource->errorOccurred())
         didFail(m_resource->identifier(), m_resource->resourceError());
     else
diff --git a/Source/core/loader/DocumentWriter.cpp b/Source/core/loader/DocumentWriter.cpp
index 7230b91..566351d 100644
--- a/Source/core/loader/DocumentWriter.cpp
+++ b/Source/core/loader/DocumentWriter.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -111,7 +111,7 @@
     ASSERT(m_document);
 
     // http://bugs.webkit.org/show_bug.cgi?id=10854
-    // The frame's last ref may be removed and it can be deleted by checkCompleted(), 
+    // The frame's last ref may be removed and it can be deleted by checkCompleted(),
     // so we'll add a protective refcount
     RefPtr<Frame> protector(m_document->frame());
 
diff --git a/Source/core/loader/DocumentWriter.h b/Source/core/loader/DocumentWriter.h
index 35667be..f3da31f 100644
--- a/Source/core/loader/DocumentWriter.h
+++ b/Source/core/loader/DocumentWriter.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Adam Barth. ("Adam Barth") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -56,7 +56,7 @@
     void replaceDocument(const String&, Document* ownerDocument);
 
     void addData(const char* bytes, size_t length);
-    
+
     const String& mimeType() const { return m_decoderBuilder.mimeType(); }
     const String& encoding() const { return m_decoderBuilder.encoding(); }
     bool encodingWasChosenByUser() const { return m_decoderBuilder.encodingWasChosenByUser(); }
diff --git a/Source/core/loader/EmptyClients.cpp b/Source/core/loader/EmptyClients.cpp
index 706eb79..d6570ea 100644
--- a/Source/core/loader/EmptyClients.cpp
+++ b/Source/core/loader/EmptyClients.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/loader/EmptyClients.h b/Source/core/loader/EmptyClients.h
index 37cd968..b9388c0 100644
--- a/Source/core/loader/EmptyClients.h
+++ b/Source/core/loader/EmptyClients.h
@@ -160,11 +160,11 @@
     virtual void scheduleCompositingLayerFlush() OVERRIDE { }
 
     virtual void needTouchEvents(bool) OVERRIDE { }
-    
+
     virtual void numWheelEventHandlersChanged(unsigned) OVERRIDE { }
-    
+
     virtual bool shouldRubberBandInDirection(WebCore::ScrollDirection) const OVERRIDE { return false; }
-    
+
     virtual bool isEmptyChromeClient() const OVERRIDE { return true; }
 
     virtual void didAssociateFormControls(const Vector<RefPtr<Element> >&) OVERRIDE { }
diff --git a/Source/core/loader/FormState.cpp b/Source/core/loader/FormState.cpp
index 73060d0..7bbea43 100644
--- a/Source/core/loader/FormState.cpp
+++ b/Source/core/loader/FormState.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/loader/FormState.h b/Source/core/loader/FormState.h
index a4d98a7..058db51 100644
--- a/Source/core/loader/FormState.h
+++ b/Source/core/loader/FormState.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -41,7 +41,7 @@
         SubmittedByJavaScript,
         NotSubmittedByJavaScript
     };
-    
+
     typedef Vector<std::pair<String, String> > StringPairVector;
 
     class FormState : public RefCounted<FormState> {
diff --git a/Source/core/loader/FormSubmission.cpp b/Source/core/loader/FormSubmission.cpp
index 09bfb9e..13fb0e9 100644
--- a/Source/core/loader/FormSubmission.cpp
+++ b/Source/core/loader/FormSubmission.cpp
@@ -161,7 +161,7 @@
         if (!(attributeValue = submitButton->getAttribute(formtargetAttr)).isNull())
             copiedAttributes.setTarget(attributeValue);
     }
-    
+
     Document* document = form->document();
     KURL actionURL = document->completeURL(copiedAttributes.action().isEmpty() ? document->url().string() : copiedAttributes.action());
     bool isMailtoForm = actionURL.protocolIs("mailto");
@@ -223,7 +223,7 @@
         return m_action;
 
     KURL requestURL(m_action);
-    requestURL.setQuery(m_formData->flattenToString());    
+    requestURL.setQuery(m_formData->flattenToString());
     return requestURL;
 }
 
diff --git a/Source/core/loader/FormSubmission.h b/Source/core/loader/FormSubmission.h
index 66658ed..8731bac 100644
--- a/Source/core/loader/FormSubmission.h
+++ b/Source/core/loader/FormSubmission.h
@@ -94,7 +94,7 @@
     static PassRefPtr<FormSubmission> create(HTMLFormElement*, const Attributes&, PassRefPtr<Event> event, FormSubmissionTrigger);
 
     void populateFrameLoadRequest(FrameLoadRequest&);
-    
+
     KURL requestURL() const;
 
     Method method() const { return m_method; }
diff --git a/Source/core/loader/FrameLoadRequest.h b/Source/core/loader/FrameLoadRequest.h
index 416c77e..7d3e4da 100644
--- a/Source/core/loader/FrameLoadRequest.h
+++ b/Source/core/loader/FrameLoadRequest.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FrameLoadRequest_h
diff --git a/Source/core/loader/FrameLoader.cpp b/Source/core/loader/FrameLoader.cpp
index df5e87d..05b3257 100644
--- a/Source/core/loader/FrameLoader.cpp
+++ b/Source/core/loader/FrameLoader.cpp
@@ -12,13 +12,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -226,10 +226,10 @@
     ASSERT(submission->data());
     ASSERT(submission->state());
     ASSERT(!submission->state()->sourceDocument()->frame() || submission->state()->sourceDocument()->frame() == m_frame);
-    
+
     if (!m_frame->page())
         return;
-    
+
     if (submission->action().isEmpty())
         return;
 
@@ -368,11 +368,11 @@
 bool FrameLoader::closeURL()
 {
     history()->saveDocumentState();
-    
+
     // Should only send the pagehide event here if the current document exists.
     Document* currentDocument = m_frame->document();
     stopLoading(currentDocument ? UnloadEventPolicyUnloadAndPageHide : UnloadEventPolicyUnloadOnly);
-    
+
     m_frame->editor()->clearUndoRedoOperations();
     return true;
 }
@@ -413,10 +413,10 @@
     // Calling document.open counts as committing the first real document load.
     if (!m_stateMachine.committedFirstRealDocumentLoad())
         m_stateMachine.advanceTo(FrameLoaderStateMachine::DisplayingInitialEmptyDocumentPostCommit);
-    
+
     // Prevent window.open(url) -- eg window.open("about:blank") -- from blowing away results
-    // from a subsequent window.document.open / window.document.write call. 
-    // Canceling redirection here works for all cases because document.open 
+    // from a subsequent window.document.open / window.document.write call.
+    // Canceling redirection here works for all cases because document.open
     // implicitly precedes document.write.
     m_frame->navigationScheduler()->cancel();
 }
@@ -429,17 +429,17 @@
     if (!m_isComplete)
         closeURL();
 
-    clear(false);
+    clear(ClearScriptObjects | ClearWindowObject);
 }
 
-void FrameLoader::clear(bool clearWindowProperties, bool clearScriptObjects, bool clearFrameView)
+void FrameLoader::clear(ClearOptions options)
 {
     m_frame->editor()->clear();
 
     if (!m_needsClear)
         return;
     m_needsClear = false;
-    
+
     m_frame->document()->cancelParsing();
     m_frame->document()->stopActiveDOMObjects();
     if (m_frame->document()->attached()) {
@@ -448,7 +448,7 @@
     }
 
     // Do this after detaching the document so that the unload event works.
-    if (clearWindowProperties) {
+    if (options & ClearWindowProperties) {
         InspectorInstrumentation::frameWindowDiscarded(m_frame, m_frame->domWindow());
         m_frame->domWindow()->reset();
         m_frame->script()->clearWindowShell();
@@ -456,16 +456,17 @@
 
     m_frame->selection()->prepareForDestruction();
     m_frame->eventHandler()->clear();
-    if (clearFrameView && m_frame->view())
+    if (m_frame->view())
         m_frame->view()->clear();
 
     // Do not drop the DOMWindow (and Document) before the ScriptController and view are cleared
     // as some destructors might still try to access the document.
-    m_frame->setDOMWindow(0);
+    if (options & ClearWindowObject)
+        m_frame->clearDOMWindow();
 
     m_subframeLoader.clear();
 
-    if (clearScriptObjects)
+    if (options & ClearScriptObjects)
         m_frame->script()->clearScriptObjects();
 
     m_frame->script()->enableEval();
@@ -482,6 +483,9 @@
 
 void FrameLoader::receivedFirstData()
 {
+    if (m_stateMachine.creatingInitialEmptyDocument())
+        return;
+
     dispatchDidCommitLoad();
     dispatchDidClearWindowObjectsInAllWorlds();
 
@@ -532,7 +536,7 @@
     if (dispatch)
         dispatchDidClearWindowObjectsInAllWorlds();
 
-    m_frame->document()->initContentSecurityPolicy();
+    m_frame->document()->initContentSecurityPolicy(m_documentLoader ? ContentSecurityPolicyResponseHeaders(m_documentLoader->response()) : ContentSecurityPolicyResponseHeaders());
 
     Settings* settings = m_frame->document()->settings();
     if (settings) {
@@ -545,22 +549,6 @@
         if (!dnsPrefetchControl.isEmpty())
             m_frame->document()->parseDNSPrefetchControlHeader(dnsPrefetchControl);
 
-        String policyValue = m_documentLoader->response().httpHeaderField("Content-Security-Policy");
-        if (!policyValue.isEmpty())
-            m_frame->document()->contentSecurityPolicy()->didReceiveHeader(policyValue, ContentSecurityPolicy::Enforce);
-
-        policyValue = m_documentLoader->response().httpHeaderField("Content-Security-Policy-Report-Only");
-        if (!policyValue.isEmpty())
-            m_frame->document()->contentSecurityPolicy()->didReceiveHeader(policyValue, ContentSecurityPolicy::Report);
-
-        policyValue = m_documentLoader->response().httpHeaderField("X-WebKit-CSP");
-        if (!policyValue.isEmpty())
-            m_frame->document()->contentSecurityPolicy()->didReceiveHeader(policyValue, ContentSecurityPolicy::PrefixedEnforce);
-
-        policyValue = m_documentLoader->response().httpHeaderField("X-WebKit-CSP-Report-Only");
-        if (!policyValue.isEmpty())
-            m_frame->document()->contentSecurityPolicy()->didReceiveHeader(policyValue, ContentSecurityPolicy::PrefixedReport);
-
         String headerContentLanguage = m_documentLoader->response().httpHeaderField("Content-Language");
         if (!headerContentLanguage.isEmpty()) {
             size_t commaIndex = headerContentLanguage.find(',');
@@ -786,10 +774,10 @@
     setOutgoingReferrer(url);
     documentLoader()->replaceRequestURLForSameDocumentNavigation(url);
     if (isNewNavigation && !shouldTreatURLAsSameAsCurrent(url) && !stateObject) {
-        // NB: must happen after replaceRequestURLForSameDocumentNavigation(), since we add 
-        // based on the current request. Must also happen before we openURL and displace the 
+        // NB: must happen after replaceRequestURLForSameDocumentNavigation(), since we add
+        // based on the current request. Must also happen before we openURL and displace the
         // scroll position, since adding the BF item will save away scroll state.
-        
+
         // NB2: If we were loading a long, slow doc, and the user fragment navigated before
         // it was done, currItem is now set the that slow doc, and prevItem is whatever was
         // before it.  Adding the b/f item will bump the slow doc down to prevItem, even
@@ -799,15 +787,15 @@
 
         history()->updateBackForwardListForFragmentScroll();
     }
-    
+
     bool hashChange = equalIgnoringFragmentIdentifier(url, oldURL) && url.fragmentIdentifier() != oldURL.fragmentIdentifier();
-    
+
     history()->updateForSameDocumentNavigation();
 
     // If we were in the autoscroll/panScroll mode we want to stop it before following the link to the anchor
     if (hashChange)
         m_frame->eventHandler()->stopAutoscrollTimer();
-    
+
     // It's important to model this as a load that starts and immediately finishes.
     // Otherwise, the parent frame may think we never finished loading.
     started();
@@ -815,7 +803,7 @@
     // We need to scroll to the fragment whether or not a hash change occurred, since
     // the user might have scrolled since the previous navigation.
     scrollToFragmentWithParentBoundary(url);
-    
+
     m_isComplete = false;
     checkCompleted();
 
@@ -847,7 +835,7 @@
         m_client->postProgressFinishedNotification();
 
     m_frame->document()->statePopped(stateObject ? stateObject : SerializedScriptValue::nullValue());
-    
+
     if (hashChange) {
         m_frame->document()->enqueueHashchangeEvent(oldURL, url);
         m_client->dispatchDidChangeLocationWithinPage();
@@ -881,7 +869,7 @@
 
 void FrameLoader::prepareForHistoryNavigation()
 {
-    // If there is no currentItem, but we still want to engage in 
+    // If there is no currentItem, but we still want to engage in
     // history navigation we need to manufacture one, and update
     // the state machine of this frame to impersonate having
     // loaded it.
@@ -1100,7 +1088,7 @@
     // If this method is called from within this method, infinite recursion can occur (3442218). Avoid this.
     if (m_inStopAllLoaders)
         return;
-    
+
     // Calling stopLoading() on the provisional document loader can blow away
     // the frame from underneath.
     RefPtr<Frame> protect(m_frame);
@@ -1123,7 +1111,7 @@
 
     m_checkTimer.stop();
 
-    m_inStopAllLoaders = false;    
+    m_inStopAllLoaders = false;
 }
 
 void FrameLoader::stopForUserCancel(bool deferCheckLoadComplete)
@@ -1131,7 +1119,7 @@
     // stopAllLoaders can detach the Frame, so protect it.
     RefPtr<Frame> protect(m_frame);
     stopAllLoaders();
-    
+
     if (deferCheckLoadComplete)
         scheduleCheckLoadComplete();
     else if (m_frame->page())
@@ -1168,16 +1156,11 @@
     return docLoader->isLoading();
 }
 
-bool FrameLoader::frameHasLoaded() const
-{
-    return m_stateMachine.committedFirstRealDocumentLoad() || (m_provisionalDocumentLoader && !m_stateMachine.creatingInitialEmptyDocument()); 
-}
-
 void FrameLoader::setDocumentLoader(DocumentLoader* loader)
 {
     if (!loader && !m_documentLoader)
         return;
-    
+
     ASSERT(loader != m_documentLoader);
     ASSERT(!loader || loader->frameLoader() == this);
 
@@ -1227,9 +1210,9 @@
 }
 
 void FrameLoader::setState(FrameState newState)
-{    
+{
     m_state = newState;
-    
+
     if (newState == FrameStateProvisional)
         m_frame->navigationScheduler()->cancel();
     else if (newState == FrameStateComplete)
@@ -1323,7 +1306,7 @@
     // use a recursive algorithm here.
     for (Frame* child = m_frame->tree()->firstChild(); child; child = child->tree()->nextSibling())
         child->loader()->closeOldDataSources();
-    
+
     if (m_documentLoader)
         m_client->dispatchWillClose();
 }
@@ -1372,7 +1355,7 @@
 {
     return m_loadType;
 }
-    
+
 CachePolicy FrameLoader::subresourceCachePolicy() const
 {
     if (m_isComplete)
@@ -1386,7 +1369,7 @@
         if (parentCachePolicy != CachePolicyVerify)
             return parentCachePolicy;
     }
-    
+
     if (m_loadType == FrameLoadTypeReload)
         return CachePolicyRevalidate;
 
@@ -1410,7 +1393,7 @@
             RefPtr<DocumentLoader> pdl = m_provisionalDocumentLoader;
             if (!pdl)
                 return;
-                
+
             // If we've received any errors we may be stuck in the provisional state and actually complete.
             const ResourceError& error = pdl->mainDocumentError();
             if (error.isNull())
@@ -1422,7 +1405,7 @@
                 if (isBackForwardLoadType(loadType()))
                     // Reset the back forward list to the last committed history item at the top level.
                     item = page->mainFrame()->loader()->history()->currentItem();
-                
+
             // Only reset if we aren't already going to a new provisional item.
             bool shouldReset = !history()->provisionalItem();
             if (!pdl->isLoadingInAPISense() || pdl->isStopping()) {
@@ -1451,9 +1434,9 @@
                     page->backForward()->setCurrentItem(item.get());
             return;
         }
-        
+
         case FrameStateCommittedPage: {
-            DocumentLoader* dl = m_documentLoader.get();            
+            DocumentLoader* dl = m_documentLoader.get();
             if (!dl || (dl->isLoadingInAPISense() && !dl->isStopping()))
                 return;
 
@@ -1462,14 +1445,14 @@
             // FIXME: Is this subsequent work important if we already navigated away?
             // Maybe there are bugs because of that, or extra work we can skip because
             // the new page is ready.
-             
+
             // If the user had a scroll point, scroll to it, overriding the anchor point if any.
             if (m_frame->page()) {
                 if (isBackForwardLoadType(m_loadType) || m_loadType == FrameLoadTypeReload || m_loadType == FrameLoadTypeReloadFromOrigin)
                     history()->restoreScrollPositionAndViewState();
             }
 
-            if (m_stateMachine.creatingInitialEmptyDocument() || !m_stateMachine.committedFirstRealDocumentLoad())
+            if (!m_stateMachine.committedFirstRealDocumentLoad())
                 return;
 
             m_progressTracker->progressCompleted();
@@ -1495,7 +1478,7 @@
 
             return;
         }
-        
+
         case FrameStateComplete:
             m_loadType = FrameLoadTypeStandard;
             frameLoadCompleted();
@@ -1551,10 +1534,10 @@
 void FrameLoader::checkLoadComplete()
 {
     ASSERT(m_client->hasWebView());
-    
+
     m_shouldCallCheckLoadComplete = false;
 
-    // FIXME: Always traversing the entire frame tree is a bit inefficient, but 
+    // FIXME: Always traversing the entire frame tree is a bit inefficient, but
     // is currently needed in order to null out the previous history item for all frames.
     if (Page* page = m_frame->page()) {
         Vector<RefPtr<Frame>, 10> frames;
@@ -1659,7 +1642,7 @@
             request.setHTTPHeaderField("Pragma", "no-cache");
         }
     }
-    
+
     if (isMainResource)
         request.setHTTPAccept(defaultAcceptHeader);
 
@@ -1698,17 +1681,17 @@
 {
     ASSERT(m_frame->document());
     String referrer = SecurityPolicy::generateReferrerHeader(m_frame->document()->referrerPolicy(), request.url(), outgoingReferrer());
-    
+
     ResourceRequest initialRequest = request;
     initialRequest.setTimeoutInterval(10);
-    
+
     if (!referrer.isEmpty())
         initialRequest.setHTTPReferrer(referrer);
     addHTTPOriginIfNeeded(initialRequest, outgoingOrigin());
 
     addExtraFieldsToRequest(initialRequest);
 
-    unsigned long identifier = 0;    
+    unsigned long identifier = 0;
     ResourceRequest newRequest(initialRequest);
     requestFromDelegate(newRequest, identifier, error);
 
@@ -1895,7 +1878,7 @@
     }
 
     // Two reasons we can't continue:
-    //    1) Navigation policy delegate said we can't so request is nil. A primary case of this 
+    //    1) Navigation policy delegate said we can't so request is nil. A primary case of this
     //       is the user responding Cancel to the form repost nag sheet.
     //    2) User responded Cancel to an alert popped up by the before unload event handler.
     bool canContinue = shouldContinue && shouldClose();
@@ -1903,9 +1886,9 @@
     if (!canContinue) {
         setPolicyDocumentLoader(0);
 
-        // If the navigation request came from the back/forward menu, and we punt on it, we have the 
-        // problem that we have optimistically moved the b/f cursor already, so move it back.  For sanity, 
-        // we only do this when punting a navigation for the target frame or top-level frame.  
+        // If the navigation request came from the back/forward menu, and we punt on it, we have the
+        // problem that we have optimistically moved the b/f cursor already, so move it back.  For sanity,
+        // we only do this when punting a navigation for the target frame or top-level frame.
         if ((isTargetItem || isLoadingMainFrame()) && isBackForwardLoadType(type)) {
             if (Page* page = m_frame->page()) {
                 Frame* mainFrame = page->mainFrame();
@@ -1918,9 +1901,9 @@
 
     // A new navigation is in progress, so don't clear the history's provisional item.
     stopAllLoaders(ShouldNotClearProvisionalItem);
-    
+
     // <rdar://problem/6250856> - In certain circumstances on pages with multiple frames, stopAllLoaders()
-    // might detach the current FrameLoader, in which case we should bail on this newly defunct load. 
+    // might detach the current FrameLoader, in which case we should bail on this newly defunct load.
     if (!m_frame->page())
         return;
 
@@ -2158,7 +2141,7 @@
         view->setWasScrolledByUser(false);
 
     history()->setCurrentItem(item);
-        
+
     // loadInSameDocument() actually changes the URL and notifies load delegates of a "fake" load
     loadInSameDocument(item->url(), item->stateObject(), false);
 
@@ -2272,9 +2255,6 @@
 
 void FrameLoader::dispatchDidCommitLoad()
 {
-    if (m_stateMachine.creatingInitialEmptyDocument())
-        return;
-
     m_client->dispatchDidCommitLoad();
 
     InspectorInstrumentation::didCommitLoad(m_frame, m_documentLoader.get());
diff --git a/Source/core/loader/FrameLoader.h b/Source/core/loader/FrameLoader.h
index 18fb851..4b8cd26 100644
--- a/Source/core/loader/FrameLoader.h
+++ b/Source/core/loader/FrameLoader.h
@@ -9,13 +9,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -114,14 +114,21 @@
     void stopLoading(UnloadEventPolicy);
     bool closeURL();
     void cancelAndClear();
-    // FIXME: clear() is trying to do too many things. We should break it down into smaller functions (ideally with fewer raw Boolean parameters).
-    void clear(bool clearWindowProperties = true, bool clearScriptObjects = true, bool clearFrameView = true);
+
+    // FIXME: clear() is trying to do too many things. We should break it down into smaller functions.
+
+    enum ClearOption {
+        ClearWindowProperties = 1 << 0,
+        ClearScriptObjects    = 1 << 1,
+        ClearWindowObject     = 1 << 2
+    };
+    typedef unsigned ClearOptions;
+    void clear(ClearOptions);
 
     void didAccessInitialDocument();
     void didAccessInitialDocumentTimerFired(Timer<FrameLoader>*);
 
     bool isLoading() const;
-    bool frameHasLoaded() const;
 
     int numPendingOrLoadingRequests(bool recurse) const;
     String referrer() const;
@@ -167,7 +174,7 @@
     void detachViewsAndDocumentLoader();
 
     void addExtraFieldsToRequest(ResourceRequest&);
-    
+
     static void addHTTPOriginIfNeeded(ResourceRequest&, const String& origin);
 
     FrameLoaderClient* client() const { return m_client; }
@@ -230,7 +237,7 @@
     bool suppressOpenerInNewFrame() const { return m_suppressOpenerInNewFrame; }
 
     bool shouldClose();
-    
+
     void started();
 
     enum PageDismissalType {
@@ -245,7 +252,7 @@
     bool allChildrenAreComplete() const; // immediate children, not all descendants
 
     void checkTimerFired(Timer<FrameLoader>*);
-    
+
     void loadSameDocumentItem(HistoryItem*);
     void loadDifferentDocumentItem(HistoryItem*);
     void insertDummyHistoryItem();
@@ -259,7 +266,7 @@
     void frameLoadCompleted();
 
     SubstituteData defaultSubstituteDataForURL(const KURL&);
-    
+
     bool fireBeforeUnloadEvent(Chrome&, FrameLoader*);
     bool hasAllowedNavigationViaBeforeUnloadConfirmationPanel() const { return m_hasAllowedNavigationViaBeforeUnloadConfirmationPanel; }
     void didAllowNavigationViaBeforeUnloadConfirmationPanel() { m_hasAllowedNavigationViaBeforeUnloadConfirmationPanel = true; }
@@ -322,7 +329,7 @@
     FrameState m_state;
     FrameLoadType m_loadType;
 
-    // Document loaders for the three phases of frame loading. Note that while 
+    // Document loaders for the three phases of frame loading. Note that while
     // a new request is being loaded, the old document loader may still be referenced.
     // E.g. while a new request is in the "policy" state, the old document loader may
     // be consulted in particular as it makes sense to imply certain settings on the new loader.
diff --git a/Source/core/loader/FrameLoaderClient.h b/Source/core/loader/FrameLoaderClient.h
index fb84644..4c458b2 100644
--- a/Source/core/loader/FrameLoaderClient.h
+++ b/Source/core/loader/FrameLoaderClient.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/loader/FrameLoaderStateMachine.cpp b/Source/core/loader/FrameLoaderStateMachine.cpp
index ed96e0a..4cff5c7 100644
--- a/Source/core/loader/FrameLoaderStateMachine.cpp
+++ b/Source/core/loader/FrameLoaderStateMachine.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Google, Inc. nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -33,10 +33,10 @@
 
 namespace WebCore {
 
-    
-FrameLoaderStateMachine::FrameLoaderStateMachine() 
+
+FrameLoaderStateMachine::FrameLoaderStateMachine()
     : m_state(CreatingInitialEmptyDocument)
-{ 
+{
 }
 
 bool FrameLoaderStateMachine::startedFirstRealLoad() const
@@ -44,17 +44,17 @@
     return m_state >= StartedFirstRealLoad;
 }
 
-bool FrameLoaderStateMachine::committedFirstRealDocumentLoad() const 
+bool FrameLoaderStateMachine::committedFirstRealDocumentLoad() const
 {
     return m_state >= DisplayingInitialEmptyDocumentPostCommit;
 }
 
-bool FrameLoaderStateMachine::creatingInitialEmptyDocument() const 
+bool FrameLoaderStateMachine::creatingInitialEmptyDocument() const
 {
     return m_state == CreatingInitialEmptyDocument;
 }
 
-bool FrameLoaderStateMachine::isDisplayingInitialEmptyDocument() const 
+bool FrameLoaderStateMachine::isDisplayingInitialEmptyDocument() const
 {
     return m_state >= DisplayingInitialEmptyDocument && m_state <= DisplayingInitialEmptyDocumentPostCommit;
 }
diff --git a/Source/core/loader/FrameLoaderStateMachine.h b/Source/core/loader/FrameLoaderStateMachine.h
index 9d9fc81..b20ad6b 100644
--- a/Source/core/loader/FrameLoaderStateMachine.h
+++ b/Source/core/loader/FrameLoaderStateMachine.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Google, Inc. nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/loader/FrameLoaderTypes.h b/Source/core/loader/FrameLoaderTypes.h
index 08783b0..ee835a2 100644
--- a/Source/core/loader/FrameLoaderTypes.h
+++ b/Source/core/loader/FrameLoaderTypes.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -72,7 +72,7 @@
         ObjectContentNetscapePlugin,
         ObjectContentOtherPlugin
     };
-    
+
     enum UnloadEventPolicy {
         UnloadEventPolicyNone,
         UnloadEventPolicyUnloadOnly,
diff --git a/Source/core/loader/HistoryController.cpp b/Source/core/loader/HistoryController.cpp
index c151199..b6c1633 100644
--- a/Source/core/loader/HistoryController.cpp
+++ b/Source/core/loader/HistoryController.cpp
@@ -8,13 +8,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -83,7 +83,7 @@
 /*
  There is a race condition between the layout and load completion that affects restoring the scroll position.
  We try to restore the scroll position at both the first layout and upon load completion.
- 
+
  1) If first layout happens before the load completes, we want to restore the scroll position then so that the
  first time we draw the page is already scrolled to the right place, instead of starting at the top and later
  jumping down.  It is possible that the old scroll position is past the part of the doc laid out so far, in
@@ -97,11 +97,11 @@
         return;
 
     ASSERT(m_currentItem);
-    
+
     // FIXME: As the ASSERT attests, it seems we should always have a currentItem here.
     // One counterexample is <rdar://problem/4917290>
     // For now, to cover this issue in release builds, there is no technical harm to returning
-    // early and from a user standpoint - as in the above radar - the previous page load failed 
+    // early and from a user standpoint - as in the above radar - the previous page load failed
     // so there *is* no scroll or view state to restore!
     if (!m_currentItem)
         return;
@@ -129,11 +129,6 @@
 
 void HistoryController::saveDocumentState()
 {
-    // FIXME: Reading this bit of FrameLoader state here is unfortunate.  I need to study
-    // this more to see if we can remove this dependency.
-    if (m_frame->loader()->stateMachine()->creatingInitialEmptyDocument())
-        return;
-
     // For a standard page load, we will have a previous item set, which will be used to
     // store the form state.  However, in some cases we will have no previous item, and
     // the current item is the right place to save the state.  One example is when we
@@ -151,7 +146,7 @@
 
     Document* document = m_frame->document();
     ASSERT(document);
-    
+
     if (item->isCurrentDocument(document) && document->attached()) {
         LOG(Loading, "WebCoreLoading %s: saving form state to %p", m_frame->tree()->uniqueName().string().utf8().data(), item);
         item->setDocumentState(document->formElementsState());
@@ -187,9 +182,9 @@
 void HistoryController::restoreDocumentState()
 {
     Document* doc = m_frame->document();
-        
+
     HistoryItem* itemToRestore = 0;
-    
+
     switch (m_frame->loader()->loadType()) {
         case FrameLoadTypeReload:
         case FrameLoadTypeReloadFromOrigin:
@@ -200,9 +195,9 @@
         case FrameLoadTypeRedirectWithLockedBackForwardList:
         case FrameLoadTypeInitialInChildFrame:
         case FrameLoadTypeStandard:
-            itemToRestore = m_currentItem.get(); 
+            itemToRestore = m_currentItem.get();
     }
-    
+
     if (!itemToRestore)
         return;
     if (isAssociatedToRequestedHistoryItem(itemToRestore, m_frame, m_frame->loader()->requestedHistoryItem()) && !m_frame->loader()->documentLoader()->isClientRedirect()) {
@@ -228,7 +223,7 @@
 void HistoryController::goToItem(HistoryItem* targetItem)
 {
     ASSERT(!m_frame->tree()->parent());
-    
+
     // shouldGoToHistoryItem is a private delegate method. This is needed to fix:
     // <rdar://problem/3951283> can view pages from the back/forward cache that should be disallowed by Parental Controls
     // Ultimately, history item navigations should go through the policy delegate. That's covered in:
@@ -532,11 +527,11 @@
     // deal with such things, so we nip that in the bud here.
     // Later we may want to learn to live with nil for URL.
     // See bug 3368236 and related bugs for more information.
-    if (url.isEmpty()) 
+    if (url.isEmpty())
         url = blankURL();
     if (originalURL.isEmpty())
         originalURL = blankURL();
-    
+
     Frame* parentFrame = m_frame->tree()->parent();
     String parent = parentFrame ? parentFrame->tree()->uniqueName() : "";
     StringWithDirection title = documentLoader->title();
@@ -556,12 +551,12 @@
 {
     RefPtr<HistoryItem> item = HistoryItem::create();
     initializeItem(item.get());
-    
+
     // Set the item for which we will save document state
     m_frameLoadComplete = false;
     m_previousItem = m_currentItem;
     m_currentItem = item;
-    
+
     return item.release();
 }
 
@@ -586,14 +581,11 @@
         }
 
         for (Frame* child = m_frame->tree()->firstChild(); child; child = child->tree()->nextSibling()) {
-            FrameLoader* childLoader = child->loader();
-            bool hasChildLoaded = childLoader->frameHasLoaded();
-
             // If the child is a frame corresponding to an <object> element that never loaded,
             // we don't want to create a history item, because that causes fallback content
             // to be ignored on reload.
-            
-            if (!(!hasChildLoaded && childLoader->isHostedByObjectElement()))
+            FrameLoader* childLoader = child->loader();
+            if (childLoader->stateMachine()->startedFirstRealLoad() || !childLoader->isHostedByObjectElement())
                 bfItem->addChildItem(childLoader->history()->createItemTree(targetFrame, clipAtTarget));
         }
     }
@@ -676,25 +668,25 @@
 {
     if ((!m_frame->tree()->uniqueName().isEmpty() || !item->target().isEmpty()) && m_frame->tree()->uniqueName() != item->target())
         return false;
-        
+
     const HistoryItemVector& childItems = item->children();
     if (childItems.size() != m_frame->tree()->childCount())
         return false;
-    
+
     unsigned size = childItems.size();
     for (unsigned i = 0; i < size; ++i) {
         if (!m_frame->tree()->child(childItems[i]->target()))
             return false;
     }
-    
+
     return true;
 }
 
 void HistoryController::updateBackForwardListClippedAtTarget(bool doClip)
 {
-    // In the case of saving state about a page with frames, we store a tree of items that mirrors the frame tree.  
-    // The item that was the target of the user's navigation is designated as the "targetItem".  
-    // When this function is called with doClip=true we're able to create the whole tree except for the target's children, 
+    // In the case of saving state about a page with frames, we store a tree of items that mirrors the frame tree.
+    // The item that was the target of the user's navigation is designated as the "targetItem".
+    // When this function is called with doClip=true we're able to create the whole tree except for the target's children,
     // which will be loaded in the future. That part of the tree will be filled out as the child loads are committed.
 
     Page* page = m_frame->page();
@@ -747,7 +739,7 @@
 
     // Get a HistoryItem tree for the current frame tree.
     RefPtr<HistoryItem> topItem = page->mainFrame()->loader()->history()->createItemTree(m_frame, false);
-    
+
     // Override data in the current item (created by createItemTree) to reflect
     // the pushState() arguments.
     m_currentItem->setTitle(title);
diff --git a/Source/core/loader/HistoryController.h b/Source/core/loader/HistoryController.h
index 8b0a319..2ca8fbb 100644
--- a/Source/core/loader/HistoryController.h
+++ b/Source/core/loader/HistoryController.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/loader/ImageLoader.cpp b/Source/core/loader/ImageLoader.cpp
index 9fbabee..fccde0c 100644
--- a/Source/core/loader/ImageLoader.cpp
+++ b/Source/core/loader/ImageLoader.cpp
@@ -190,7 +190,7 @@
         m_hasPendingErrorEvent = true;
         errorEventSender().dispatchEventSoon(this);
     }
-    
+
     CachedImage* oldImage = m_image.get();
     if (newImage != oldImage) {
         if (m_hasPendingBeforeLoadEvent) {
@@ -346,7 +346,7 @@
     } else {
         ASSERT(!m_derefElementTimer.isActive());
         m_derefElementTimer.startOneShot(0);
-    }   
+    }
 }
 
 void ImageLoader::timerFired(Timer<ImageLoader>*)
@@ -386,7 +386,7 @@
 
     loadEventSender().cancelEvent(this);
     m_hasPendingLoadEvent = false;
-    
+
     if (m_element->hasTagName(HTMLNames::objectTag))
         static_cast<HTMLObjectElement*>(m_element)->renderFallbackContent();
 
diff --git a/Source/core/loader/LinkLoader.cpp b/Source/core/loader/LinkLoader.cpp
index 78be722..d217039 100644
--- a/Source/core/loader/LinkLoader.cpp
+++ b/Source/core/loader/LinkLoader.cpp
@@ -77,7 +77,7 @@
 
     if (m_cachedLinkResource->errorOccurred())
         m_linkLoadingErrorTimer.startOneShot(0);
-    else 
+    else
         m_linkLoadTimer.startOneShot(0);
 
     m_cachedLinkResource->removeClient(this);
diff --git a/Source/core/loader/MixedContentChecker.cpp b/Source/core/loader/MixedContentChecker.cpp
index 4274cfa..707de33 100644
--- a/Source/core/loader/MixedContentChecker.cpp
+++ b/Source/core/loader/MixedContentChecker.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/loader/NavigationAction.cpp b/Source/core/loader/NavigationAction.cpp
index baa43db..bf0107c 100644
--- a/Source/core/loader/NavigationAction.cpp
+++ b/Source/core/loader/NavigationAction.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/loader/NavigationAction.h b/Source/core/loader/NavigationAction.h
index 5681e48..9406728 100644
--- a/Source/core/loader/NavigationAction.h
+++ b/Source/core/loader/NavigationAction.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/loader/NavigationScheduler.cpp b/Source/core/loader/NavigationScheduler.cpp
index 7551b35..183f53a 100644
--- a/Source/core/loader/NavigationScheduler.cpp
+++ b/Source/core/loader/NavigationScheduler.cpp
@@ -9,13 +9,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -240,7 +240,7 @@
         frameRequest.setFormState(m_submission->state());
         frame->loader()->load(frameRequest);
     }
-    
+
     virtual void didStartTimer(Frame* frame, Timer<NavigationScheduler>* timer)
     {
         if (m_haveToldClient)
@@ -312,10 +312,10 @@
 bool NavigationScheduler::mustLockBackForwardList(Frame* targetFrame)
 {
     // Non-user navigation before the page has finished firing onload should not create a new back/forward item.
-    // See https://webkit.org/b/42861 for the original motivation for this.    
+    // See https://webkit.org/b/42861 for the original motivation for this.
     if (!ScriptController::processingUserGesture() && targetFrame->loader()->documentLoader() && !targetFrame->loader()->documentLoader()->wasOnloadHandled())
         return true;
-    
+
     // Navigation of a subframe during loading of an ancestor frame does not create a new back/forward item.
     // The definition of "during load" is any time before all handlers for the load event have been run.
     // See https://bugs.webkit.org/show_bug.cgi?id=14957 for the original motivation for this.
@@ -432,12 +432,12 @@
     RefPtr<Frame> protect(m_frame);
 
     // If a redirect was scheduled during a load, then stop the current load.
-    // Otherwise when the current load transitions from a provisional to a 
-    // committed state, pending redirects may be cancelled. 
+    // Otherwise when the current load transitions from a provisional to a
+    // committed state, pending redirects may be cancelled.
     if (redirect->wasDuringLoad()) {
         if (DocumentLoader* provisionalDocumentLoader = m_frame->loader()->provisionalDocumentLoader())
             provisionalDocumentLoader->stopLoading();
-        m_frame->loader()->stopLoading(UnloadEventPolicyUnloadAndPageHide);   
+        m_frame->loader()->stopLoading(UnloadEventPolicyUnloadAndPageHide);
     }
 
     cancel();
diff --git a/Source/core/loader/NavigationScheduler.h b/Source/core/loader/NavigationScheduler.h
index 2f4032d..5af364d 100644
--- a/Source/core/loader/NavigationScheduler.h
+++ b/Source/core/loader/NavigationScheduler.h
@@ -8,13 +8,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/loader/PingLoader.h b/Source/core/loader/PingLoader.h
index 418e420..a25a5c6 100644
--- a/Source/core/loader/PingLoader.h
+++ b/Source/core/loader/PingLoader.h
@@ -51,7 +51,7 @@
 // This class triggers asynchronous loads independent of Frame staying alive (i.e., auditing pingbacks).
 // Since nothing depends on resources loaded through this class, we just want
 // to allow the load to live long enough to ensure the message was actually sent.
-// Therefore, as soon as a callback is received from the ResourceHandle, this class 
+// Therefore, as soon as a callback is received from the ResourceHandle, this class
 // will cancel the load and delete itself.
 class PingLoader : private WebKit::WebURLLoaderClient {
     WTF_MAKE_NONCOPYABLE(PingLoader); WTF_MAKE_FAST_ALLOCATED;
diff --git a/Source/core/loader/Prerenderer.cpp b/Source/core/loader/Prerenderer.cpp
index 5afa94f..1360d78 100644
--- a/Source/core/loader/Prerenderer.cpp
+++ b/Source/core/loader/Prerenderer.cpp
@@ -71,7 +71,7 @@
     // Prerenders are unlike requests in most ways (for instance, they pass down fragments, and they don't return data),
     // but they do have referrers.
     const ReferrerPolicy referrerPolicy = document()->referrerPolicy();
-    
+
     if (!document()->frame())
         return 0;
 
diff --git a/Source/core/loader/ProgressTracker.cpp b/Source/core/loader/ProgressTracker.cpp
index d3520ae..2daa653 100644
--- a/Source/core/loader/ProgressTracker.cpp
+++ b/Source/core/loader/ProgressTracker.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -40,10 +40,10 @@
 
 namespace WebCore {
 
-// Always start progress at initialProgressValue. This helps provide feedback as 
+// Always start progress at initialProgressValue. This helps provide feedback as
 // soon as a load starts.
 static const double initialProgressValue = 0.1;
-    
+
 // Similarly, always leave space at the end. This helps show the user that we're not done
 // until we're done.
 static const double finalProgressValue = 0.9; // 1.0 - initialProgressValue
@@ -53,10 +53,10 @@
 struct ProgressItem {
     WTF_MAKE_NONCOPYABLE(ProgressItem); WTF_MAKE_FAST_ALLOCATED;
 public:
-    ProgressItem(long long length) 
+    ProgressItem(long long length)
         : bytesReceived(0)
         , estimatedLength(length) { }
-    
+
     long long bytesReceived;
     long long estimatedLength;
 };
@@ -90,7 +90,7 @@
 
 void ProgressTracker::reset()
 {
-    m_progressItems.clear();    
+    m_progressItems.clear();
 
     m_totalPageAndResourceBytesToLoad = 0;
     m_totalBytesReceived = 0;
@@ -105,12 +105,12 @@
 void ProgressTracker::progressStarted(Frame* frame)
 {
     LOG(Progress, "Progress started (%p) - frame %p(\"%s\"), value %f, tracked frames %d, originating frame %p", this, frame, frame->tree()->uniqueName().string().utf8().data(), m_progressValue, m_numProgressTrackedFrames, m_originatingProgressFrame.get());
-    
+
     if (m_numProgressTrackedFrames == 0 || m_originatingProgressFrame == frame) {
         reset();
         m_progressValue = initialProgressValue;
         m_originatingProgressFrame = frame;
-    
+
         m_originatingProgressFrame->loader()->client()->postProgressStartedNotification();
     }
     m_numProgressTrackedFrames++;
@@ -120,7 +120,7 @@
 void ProgressTracker::progressCompleted(Frame* frame)
 {
     LOG(Progress, "Progress completed (%p) - frame %p(\"%s\"), value %f, tracked frames %d, originating frame %p", this, frame, frame->tree()->uniqueName().string().utf8().data(), m_progressValue, m_numProgressTrackedFrames, m_originatingProgressFrame.get());
-    
+
     if (m_numProgressTrackedFrames <= 0)
         return;
     m_numProgressTrackedFrames--;
@@ -131,9 +131,9 @@
 void ProgressTracker::finalProgressComplete()
 {
     LOG(Progress, "Final progress complete (%p)", this);
-    
+
     RefPtr<Frame> frame = m_originatingProgressFrame.release();
-    
+
     // Before resetting progress value be sure to send client a least one notification
     // with final progress value.
     if (!m_finalProgressChangedSent) {
@@ -152,11 +152,11 @@
 
     if (m_numProgressTrackedFrames <= 0)
         return;
-    
+
     long long estimatedLength = response.expectedContentLength();
     if (estimatedLength < 0)
         estimatedLength = progressItemDefaultEstimatedLength;
-    
+
     m_totalPageAndResourceBytesToLoad += estimatedLength;
 
     if (ProgressItem* item = m_progressItems.get(identifier)) {
@@ -169,23 +169,23 @@
 void ProgressTracker::incrementProgress(unsigned long identifier, const char*, int length)
 {
     ProgressItem* item = m_progressItems.get(identifier);
-    
+
     // FIXME: Can this ever happen?
     if (!item)
         return;
 
     RefPtr<Frame> frame = m_originatingProgressFrame;
-    
+
     unsigned bytesReceived = length;
     double increment, percentOfRemainingBytes;
     long long remainingBytes, estimatedBytesForPendingRequests;
-    
+
     item->bytesReceived += bytesReceived;
     if (item->bytesReceived > item->estimatedLength) {
         m_totalPageAndResourceBytesToLoad += ((item->bytesReceived * 2) - item->estimatedLength);
         item->estimatedLength = item->bytesReceived * 2;
     }
-    
+
     int numPendingOrLoadingRequests = frame->loader()->numPendingOrLoadingRequests(true);
     estimatedBytesForPendingRequests = progressItemDefaultEstimatedLength * numPendingOrLoadingRequests;
     remainingBytes = ((m_totalPageAndResourceBytesToLoad + estimatedBytesForPendingRequests) - m_totalBytesReceived);
@@ -193,7 +193,7 @@
         percentOfRemainingBytes = (double)bytesReceived / (double)remainingBytes;
     else
         percentOfRemainingBytes = 1.0;
-    
+
     // For documents that use WebCore's layout system, treat first layout as the half-way point.
     bool useClampedMaxProgress = !frame->view()->didFirstLayout();
     double maxProgressValue = useClampedMaxProgress ? 0.5 : finalProgressValue;
@@ -201,12 +201,12 @@
     m_progressValue += increment;
     m_progressValue = min(m_progressValue, maxProgressValue);
     ASSERT(m_progressValue >= initialProgressValue);
-    
+
     m_totalBytesReceived += bytesReceived;
-    
+
     double now = currentTime();
     double notifiedProgressTimeDelta = now - m_lastNotifiedProgressTime;
-    
+
     LOG(Progress, "Progress incremented (%p) - value %f, tracked frames %d", this, m_progressValue, m_numProgressTrackedFrames);
     double notificationProgressDelta = m_progressValue - m_lastNotifiedProgressValue;
     if ((notificationProgressDelta >= m_progressNotificationInterval ||
@@ -215,7 +215,7 @@
         if (!m_finalProgressChangedSent) {
             if (m_progressValue == 1)
                 m_finalProgressChangedSent = true;
-            
+
             frame->loader()->client()->postProgressEstimateChangedNotification();
 
             m_lastNotifiedProgressValue = m_progressValue;
@@ -227,11 +227,11 @@
 void ProgressTracker::completeProgress(unsigned long identifier)
 {
     ProgressItem* item = m_progressItems.get(identifier);
-    
+
     // This can happen if a load fails without receiving any response data.
     if (!item)
         return;
-    
+
     // Adjust the total expected bytes to account for any overage/underage.
     long long delta = item->bytesReceived - item->estimatedLength;
     m_totalPageAndResourceBytesToLoad += delta;
diff --git a/Source/core/loader/ProgressTracker.h b/Source/core/loader/ProgressTracker.h
index c871cc4..f7516c7 100644
--- a/Source/core/loader/ProgressTracker.h
+++ b/Source/core/loader/ProgressTracker.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ProgressTracker_h
@@ -50,7 +50,7 @@
 
     void progressStarted(Frame*);
     void progressCompleted(Frame*);
-    
+
     void incrementProgress(unsigned long identifier, const ResourceResponse&);
     void incrementProgress(unsigned long identifier, const char*, int);
     void completeProgress(unsigned long identifier);
@@ -63,21 +63,21 @@
 
     void reset();
     void finalProgressComplete();
-    
+
     long long m_totalPageAndResourceBytesToLoad;
     long long m_totalBytesReceived;
     double m_lastNotifiedProgressValue;
     double m_lastNotifiedProgressTime;
     double m_progressNotificationInterval;
     double m_progressNotificationTimeInterval;
-    bool m_finalProgressChangedSent;    
+    bool m_finalProgressChangedSent;
     double m_progressValue;
     RefPtr<Frame> m_originatingProgressFrame;
-    
+
     int m_numProgressTrackedFrames;
     HashMap<unsigned long, OwnPtr<ProgressItem> > m_progressItems;
 };
-    
+
 }
 
 #endif
diff --git a/Source/core/loader/ResourceLoadNotifier.cpp b/Source/core/loader/ResourceLoadNotifier.cpp
index cfe2424..48e0a30 100644
--- a/Source/core/loader/ResourceLoadNotifier.cpp
+++ b/Source/core/loader/ResourceLoadNotifier.cpp
@@ -8,13 +8,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/loader/ResourceLoadNotifier.h b/Source/core/loader/ResourceLoadNotifier.h
index dd2be47..d0f7ba5 100644
--- a/Source/core/loader/ResourceLoadNotifier.h
+++ b/Source/core/loader/ResourceLoadNotifier.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/loader/ResourceLoader.cpp b/Source/core/loader/ResourceLoader.cpp
index bf34c3c..04f7728 100644
--- a/Source/core/loader/ResourceLoader.cpp
+++ b/Source/core/loader/ResourceLoader.cpp
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -30,8 +30,9 @@
 #include "config.h"
 #include "core/loader/ResourceLoader.h"
 
-#include "core/inspector/InspectorInstrumentation.h"
 #include "core/loader/ResourceLoaderHost.h"
+#include "core/loader/cache/CachedResource.h"
+#include "core/loader/cache/CachedResourceHandle.h"
 #include "core/platform/Logging.h"
 #include "core/platform/chromium/support/WrappedResourceRequest.h"
 #include "core/platform/chromium/support/WrappedResourceResponse.h"
@@ -41,6 +42,7 @@
 #include "public/platform/WebURLError.h"
 #include "public/platform/WebURLRequest.h"
 #include "public/platform/WebURLResponse.h"
+#include "wtf/Assertions.h"
 
 namespace WebCore {
 
@@ -92,7 +94,7 @@
     m_host->willTerminateResourceLoader(this);
 
     ASSERT(m_state != Terminated);
-    
+
     // It's possible that when we release the loader, it will be
     // deallocated and release the last reference to this object.
     // We need to retain to avoid accessing the object after it
@@ -137,8 +139,7 @@
     if (m_state == Terminated)
         return;
 
-    if (m_connectionState != ConnectionStateNew)
-        CRASH();
+    RELEASE_ASSERT(m_connectionState == ConnectionStateNew);
     m_connectionState = ConnectionStateStarted;
 
     m_loader = adoptPtr(WebKit::Platform::current()->createURLLoader());
@@ -163,8 +164,7 @@
 void ResourceLoader::didDownloadData(WebKit::WebURLLoader*, int length)
 {
     RefPtr<ResourceLoader> protect(this);
-    if (m_connectionState != ConnectionStateReceivedResponse)
-        CRASH();
+    RELEASE_ASSERT(m_connectionState == ConnectionStateReceivedResponse);
     m_resource->didDownloadData(length);
 }
 
@@ -261,8 +261,7 @@
 
 void ResourceLoader::didReceiveCachedMetadata(WebKit::WebURLLoader*, const char* data, int length)
 {
-    if (m_connectionState != ConnectionStateReceivedResponse && m_connectionState != ConnectionStateReceivingData)
-        CRASH();
+    RELEASE_ASSERT(m_connectionState == ConnectionStateReceivedResponse || m_connectionState == ConnectionStateReceivingData);
     ASSERT(m_state == Initialized);
     m_resource->setSerializedCachedMetadata(data, length);
 }
@@ -282,8 +281,7 @@
     bool isMultipartPayload = response.isMultipartPayload();
     bool isValidStateTransition = (m_connectionState == ConnectionStateStarted || m_connectionState == ConnectionStateReceivedResponse);
     // In the case of multipart loads, calls to didReceiveData & didReceiveResponse can be interleaved.
-    if (!isMultipartPayload && !isValidStateTransition)
-        CRASH();
+    RELEASE_ASSERT(isMultipartPayload || isValidStateTransition);
     m_connectionState = ConnectionStateReceivedResponse;
 
     // Reference the object in this method since the additional processing can do
@@ -318,15 +316,13 @@
 
 void ResourceLoader::didReceiveData(WebKit::WebURLLoader*, const char* data, int length, int encodedDataLength)
 {
-    if (m_connectionState != ConnectionStateReceivedResponse && m_connectionState != ConnectionStateReceivingData)
-        CRASH();
+    RELEASE_ASSERT(m_connectionState == ConnectionStateReceivedResponse || m_connectionState == ConnectionStateReceivingData);
     m_connectionState = ConnectionStateReceivingData;
 
     // It is possible to receive data on uninitialized resources if it had an error status code, and we are running a nested message
     // loop. When this occurs, ignoring the data is the correct action.
     if (m_resource->response().httpStatusCode() >= 400 && !m_resource->shouldIgnoreHTTPStatusCodeErrors())
         return;
-    InspectorInstrumentationCookie cookie = InspectorInstrumentation::willReceiveResourceData(m_host->inspectedFrame(), m_resource->identifier(), encodedDataLength);
     ASSERT(m_state == Initialized);
 
     // Reference the object in this method since the additional processing can do
@@ -338,14 +334,11 @@
     // Could be an issue with a giant local file.
     m_host->didReceiveData(m_resource, data, length, encodedDataLength, m_options);
     m_resource->appendData(data, length);
-
-    InspectorInstrumentation::didReceiveResourceData(cookie);
 }
 
 void ResourceLoader::didFinishLoading(WebKit::WebURLLoader*, double finishTime)
 {
-    if (m_connectionState != ConnectionStateReceivedResponse && m_connectionState != ConnectionStateReceivingData)
-        CRASH();
+    RELEASE_ASSERT(m_connectionState == ConnectionStateReceivedResponse || m_connectionState == ConnectionStateReceivingData);
     m_connectionState = ConnectionStateFinishedLoading;
     if (m_state != Initialized)
         return;
diff --git a/Source/core/loader/ResourceLoader.h b/Source/core/loader/ResourceLoader.h
index 6c39120..0c45647 100644
--- a/Source/core/loader/ResourceLoader.h
+++ b/Source/core/loader/ResourceLoader.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -57,7 +57,7 @@
 
     CachedResource* cachedResource() { return m_resource; }
     const ResourceRequest& originalRequest() const { return m_originalRequest; }
-    
+
     void setDefersLoading(bool);
     bool defersLoading() const { return m_defersLoading; }
 
diff --git a/Source/core/loader/ResourceLoaderHost.h b/Source/core/loader/ResourceLoaderHost.h
index e893de1..bb78884 100644
--- a/Source/core/loader/ResourceLoaderHost.h
+++ b/Source/core/loader/ResourceLoaderHost.h
@@ -75,8 +75,6 @@
 
     virtual void refResourceLoaderHost() = 0;
     virtual void derefResourceLoaderHost() = 0;
-
-    virtual Frame* inspectedFrame() const = 0;
 };
 
 }
diff --git a/Source/core/loader/SinkDocument.cpp b/Source/core/loader/SinkDocument.cpp
index 307990c..11839f7 100644
--- a/Source/core/loader/SinkDocument.cpp
+++ b/Source/core/loader/SinkDocument.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -36,7 +36,7 @@
     {
         return adoptRef(new SinkDocumentParser(document));
     }
-    
+
 private:
     SinkDocumentParser(SinkDocument* document)
         : RawDataDocumentParser(document)
diff --git a/Source/core/loader/SinkDocument.h b/Source/core/loader/SinkDocument.h
index e68bc45..3421775 100644
--- a/Source/core/loader/SinkDocument.h
+++ b/Source/core/loader/SinkDocument.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SinkDocument_h
@@ -39,7 +39,7 @@
 
 private:
     SinkDocument(const DocumentInit&);
-    
+
     virtual PassRefPtr<DocumentParser> createParser();
 };
 
diff --git a/Source/core/loader/SubframeLoader.cpp b/Source/core/loader/SubframeLoader.cpp
index 6543297..ea852de 100644
--- a/Source/core/loader/SubframeLoader.cpp
+++ b/Source/core/loader/SubframeLoader.cpp
@@ -10,13 +10,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -53,7 +53,7 @@
 #include "weborigin/SecurityPolicy.h"
 
 namespace WebCore {
-    
+
 using namespace HTMLNames;
 
 SubframeLoader::SubframeLoader(Frame* frame)
@@ -175,7 +175,7 @@
     }
 
     // If the plug-in element already contains a subframe, loadOrRedirectSubframe will re-use it. Otherwise,
-    // it will create a new frame and set it as the RenderPart's widget, causing what was previously 
+    // it will create a new frame and set it as the RenderPart's widget, causing what was previously
     // in the widget to be torn down.
     return loadOrRedirectSubframe(ownerElement, completedURL, frameName, true);
 }
@@ -261,7 +261,7 @@
         m_frame->loader()->checkCallImplicitClose();
         return false;
     }
-    
+
     // All new frames will have m_isComplete set to true at this point due to synchronously loading
     // an empty document in FrameLoader::init(). But many frames will now be starting an
     // asynchronous load of url, so we set m_isComplete to false and then check if the load is
@@ -269,21 +269,21 @@
     // loads, so that checkCompleted() below won't bail early.)
     // FIXME: Can we remove this entirely? m_isComplete normally gets set to false when a load is committed.
     frame->loader()->started();
-   
+
     RenderObject* renderer = ownerElement->renderer();
     FrameView* view = frame->view();
     if (renderer && renderer->isWidget() && view)
         toRenderWidget(renderer)->setWidget(view);
-    
+
     m_frame->loader()->checkCallImplicitClose();
-    
+
     // Some loads are performed synchronously (e.g., about:blank and loads
     // cancelled by returning a null ResourceRequest from requestFromDelegate).
     // In these cases, the synchronous load would have finished
-    // before we could connect the signals, so make sure to send the 
+    // before we could connect the signals, so make sure to send the
     // completed() signal for the child by hand and mark the load as being
     // complete.
-    // FIXME: In this case the Frame will have finished loading before 
+    // FIXME: In this case the Frame will have finished loading before
     // it's being added to the child list. It would be a good idea to
     // create the child first, then invoke the loader separately.
     if (frame->loader()->state() == FrameStateComplete && !frame->loader()->policyDocumentLoader())
@@ -307,10 +307,10 @@
     if (m_frame->page() && (mimeType == "image/tiff" || mimeType == "image/tif" || mimeType == "image/x-tiff")) {
         const PluginData* pluginData = m_frame->page()->pluginData();
         String pluginName = pluginData ? pluginData->pluginNameForMimeType(mimeType) : String();
-        if (!pluginName.isEmpty() && !pluginName.contains("QuickTime", false)) 
+        if (!pluginName.isEmpty() && !pluginName.contains("QuickTime", false))
             return true;
     }
-        
+
     ObjectContentType objectType = m_frame->loader()->client()->objectContentType(url, mimeType, shouldPreferPlugInsForImages);
     // If an object's content can't be handled and it has no fallback, let
     // it be handled as a plugin to show the broken plugin icon.
diff --git a/Source/core/loader/SubframeLoader.h b/Source/core/loader/SubframeLoader.h
index 56aae81..5f1ae0c 100644
--- a/Source/core/loader/SubframeLoader.h
+++ b/Source/core/loader/SubframeLoader.h
@@ -8,13 +8,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -66,7 +66,7 @@
     bool allowPlugins(ReasonForCallingAllowPlugins);
 
     bool containsPlugins() const { return m_containsPlugins; }
-    
+
     bool resourceWillUsePlugin(const String& url, const String& mimeType, bool shouldPreferPlugInsForImages);
 
 private:
diff --git a/Source/core/loader/SubstituteData.h b/Source/core/loader/SubstituteData.h
index e7f3099..704f314 100644
--- a/Source/core/loader/SubstituteData.h
+++ b/Source/core/loader/SubstituteData.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SubstituteData_h
diff --git a/Source/core/loader/TextResourceDecoder.cpp b/Source/core/loader/TextResourceDecoder.cpp
index b245b7f..139fcf1 100644
--- a/Source/core/loader/TextResourceDecoder.cpp
+++ b/Source/core/loader/TextResourceDecoder.cpp
@@ -317,7 +317,7 @@
 
 const WTF::TextEncoding& TextResourceDecoder::defaultEncoding(ContentType contentType, const WTF::TextEncoding& specifiedDefaultEncoding)
 {
-    // Despite 8.5 "Text/xml with Omitted Charset" of RFC 3023, we assume UTF-8 instead of US-ASCII 
+    // Despite 8.5 "Text/xml with Omitted Charset" of RFC 3023, we assume UTF-8 instead of US-ASCII
     // for text/xml. This matches Firefox.
     if (contentType == XML)
         return UTF8Encoding();
@@ -355,7 +355,7 @@
     // treat x-user-defined as windows-1252 (bug 18270)
     if (source == EncodingFromMetaTag && strcasecmp(encoding.name(), "x-user-defined") == 0)
         m_encoding = "windows-1252";
-    else if (source == EncodingFromMetaTag || source == EncodingFromXMLHeader || source == EncodingFromCSSCharset)        
+    else if (source == EncodingFromMetaTag || source == EncodingFromXMLHeader || source == EncodingFromCSSCharset)
         m_encoding = encoding.closestByteBasedEquivalent();
     else
         m_encoding = encoding;
@@ -371,7 +371,7 @@
     if (pos == -1)
         return -1;
     pos += 8;
-    
+
     // Skip spaces and stray control characters.
     while (pos < len && str[pos] <= ' ')
         ++pos;
@@ -486,7 +486,7 @@
             return false;
 
         int encodingNameLength = pos - dataStart;
-        
+
         ++pos;
 
         if (*pos == ';')
@@ -593,13 +593,13 @@
 //   Note that condition #2 is NOT satisfied unless parent-child frame
 //   relationship is compliant to the same-origin policy. If they're from
 //   different domains, |m_source| would not be set to EncodingFromParentFrame
-//   in the first place. 
+//   in the first place.
 bool TextResourceDecoder::shouldAutoDetect() const
 {
     // Just checking m_hintEncoding suffices here because it's only set
     // in setHintEncoding when the source is AutoDetectedEncoding.
     return m_usesEncodingDetector
-        && (m_source == DefaultEncoding || (m_source == EncodingFromParentFrame && m_hintEncoding)); 
+        && (m_source == DefaultEncoding || (m_source == EncodingFromParentFrame && m_hintEncoding));
 }
 
 String TextResourceDecoder::decode(const char* data, size_t len)
diff --git a/Source/core/loader/TextResourceDecoder.h b/Source/core/loader/TextResourceDecoder.h
index 3a1a885..14baa35 100644
--- a/Source/core/loader/TextResourceDecoder.h
+++ b/Source/core/loader/TextResourceDecoder.h
@@ -58,7 +58,7 @@
 
     void setHintEncoding(const TextResourceDecoder* hintDecoder)
     {
-        // hintEncoding is for use with autodetection, which should be 
+        // hintEncoding is for use with autodetection, which should be
         // only invoked when hintEncoding comes from auto-detection.
         if (hintDecoder && hintDecoder->wasDetectedHueristically())
             m_hintEncoding = hintDecoder->encoding().name();
diff --git a/Source/core/loader/TextTrackLoader.cpp b/Source/core/loader/TextTrackLoader.cpp
index 09851df..98efb06 100644
--- a/Source/core/loader/TextTrackLoader.cpp
+++ b/Source/core/loader/TextTrackLoader.cpp
@@ -39,7 +39,7 @@
 #include "weborigin/SecurityOrigin.h"
 
 namespace WebCore {
-    
+
 TextTrackLoader::TextTrackLoader(TextTrackLoaderClient* client, ScriptExecutionContext* context)
     : m_client(client)
     , m_scriptExecutionContext(context)
@@ -62,7 +62,7 @@
 
     if (m_newCuesAvailable) {
         m_newCuesAvailable = false;
-        m_client->newCuesAvailable(this); 
+        m_client->newCuesAvailable(this);
     }
 
     if (m_state >= Finished)
@@ -80,10 +80,10 @@
 void TextTrackLoader::processNewCueData(CachedResource* resource)
 {
     ASSERT(m_cachedCueData == resource);
-    
+
     if (m_state == Failed || !resource->resourceBuffer())
         return;
-    
+
     SharedBuffer* buffer = resource->resourceBuffer();
     if (m_parseOffset == buffer->size())
         return;
@@ -104,10 +104,10 @@
 void TextTrackLoader::deprecatedDidReceiveCachedResource(CachedResource* resource)
 {
     ASSERT(m_cachedCueData == resource);
-    
+
     if (!resource->resourceBuffer())
         return;
-    
+
     processNewCueData(resource);
 }
 
@@ -139,7 +139,7 @@
 
     if (!m_cueLoadTimer.isActive())
         m_cueLoadTimer.startOneShot(0);
-    
+
     cancelLoad();
 }
 
@@ -170,9 +170,9 @@
     m_cachedCueData = fetcher->requestTextTrack(cueRequest);
     if (m_cachedCueData)
         m_cachedCueData->addClient(this);
-    
+
     m_client->cueLoadingStarted(this);
-    
+
     return true;
 }
 
@@ -188,7 +188,7 @@
 #if ENABLE(WEBVTT_REGIONS)
 void TextTrackLoader::newRegionsParsed()
 {
-    m_client->newRegionsAvailable(this); 
+    m_client->newRegionsAvailable(this);
 }
 #endif
 
diff --git a/Source/core/loader/TextTrackLoader.h b/Source/core/loader/TextTrackLoader.h
index dc8eb98..b6319d6 100644
--- a/Source/core/loader/TextTrackLoader.h
+++ b/Source/core/loader/TextTrackLoader.h
@@ -42,7 +42,7 @@
 class TextTrackLoaderClient {
 public:
     virtual ~TextTrackLoaderClient() { }
-    
+
     virtual bool shouldLoadCues(TextTrackLoader*) = 0;
     virtual void newCuesAvailable(TextTrackLoader*) = 0;
     virtual void cueLoadingStarted(TextTrackLoader*) = 0;
@@ -53,7 +53,7 @@
 };
 
 class TextTrackLoader : public CachedResourceClient, private WebVTTParserClient {
-    WTF_MAKE_NONCOPYABLE(TextTrackLoader); 
+    WTF_MAKE_NONCOPYABLE(TextTrackLoader);
     WTF_MAKE_FAST_ALLOCATED;
 public:
     static PassOwnPtr<TextTrackLoader> create(TextTrackLoaderClient* client, ScriptExecutionContext* context)
@@ -61,7 +61,7 @@
         return adoptPtr(new TextTrackLoader(client, context));
     }
     virtual ~TextTrackLoader();
-    
+
     bool load(const KURL&, const String& crossOriginMode);
     void cancelLoad();
 
@@ -77,16 +77,16 @@
     // CachedResourceClient
     virtual void notifyFinished(CachedResource*);
     virtual void deprecatedDidReceiveCachedResource(CachedResource*);
-    
+
     // WebVTTParserClient
     virtual void newCuesParsed();
 #if ENABLE(WEBVTT_REGIONS)
     virtual void newRegionsParsed();
 #endif
     virtual void fileFailedToParse();
-    
+
     TextTrackLoader(TextTrackLoaderClient*, ScriptExecutionContext*);
-    
+
     void processNewCueData(CachedResource*);
     void cueLoadTimerFired(Timer<TextTrackLoader>*);
     void corsPolicyPreventedLoad();
diff --git a/Source/core/loader/ThreadableLoader.cpp b/Source/core/loader/ThreadableLoader.cpp
index 9af52fc..50279cb 100644
--- a/Source/core/loader/ThreadableLoader.cpp
+++ b/Source/core/loader/ThreadableLoader.cpp
@@ -40,7 +40,7 @@
 
 namespace WebCore {
 
-PassRefPtr<ThreadableLoader> ThreadableLoader::create(ScriptExecutionContext* context, ThreadableLoaderClient* client, const ResourceRequest& request, const ThreadableLoaderOptions& options) 
+PassRefPtr<ThreadableLoader> ThreadableLoader::create(ScriptExecutionContext* context, ThreadableLoaderClient* client, const ResourceRequest& request, const ThreadableLoaderOptions& options)
 {
     ASSERT(client);
     ASSERT(context);
diff --git a/Source/core/loader/ThreadableLoader.h b/Source/core/loader/ThreadableLoader.h
index b5f5f68..6df1a5c 100644
--- a/Source/core/loader/ThreadableLoader.h
+++ b/Source/core/loader/ThreadableLoader.h
@@ -44,7 +44,7 @@
     class ResourceResponse;
     class ScriptExecutionContext;
     class ThreadableLoaderClient;
-    
+
     enum CrossOriginRequestPolicy {
         DenyCrossOriginRequests,
         UseAccessControl,
@@ -77,7 +77,7 @@
         unsigned long timeoutMilliseconds;
     };
 
-    // Useful for doing loader operations from any thread (not threadsafe, 
+    // Useful for doing loader operations from any thread (not threadsafe,
     // just able to run on threads other than the main thread).
     class ThreadableLoader {
         WTF_MAKE_NONCOPYABLE(ThreadableLoader);
diff --git a/Source/core/loader/WorkerThreadableLoader.cpp b/Source/core/loader/WorkerThreadableLoader.cpp
index 0acff28..d76b724 100644
--- a/Source/core/loader/WorkerThreadableLoader.cpp
+++ b/Source/core/loader/WorkerThreadableLoader.cpp
@@ -94,7 +94,7 @@
 {
     ASSERT(m_workerClientWrapper.get());
     m_loaderProxy.postTaskToLoader(
-        createCallbackTask(&MainThreadBridge::mainThreadCreateLoader, 
+        createCallbackTask(&MainThreadBridge::mainThreadCreateLoader,
                            AllowCrossThreadAccess(this), request, options, outgoingReferrer));
 }
 
diff --git a/Source/core/loader/appcache/ApplicationCacheHost.h b/Source/core/loader/appcache/ApplicationCacheHost.h
index d984ba5..4d4490a 100644
--- a/Source/core/loader/appcache/ApplicationCacheHost.h
+++ b/Source/core/loader/appcache/ApplicationCacheHost.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2009, Google Inc.  All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -120,7 +120,7 @@
         void willStartLoadingResource(ResourceRequest&);
         void willStartLoadingSynchronously(ResourceRequest&);
 
-        Status status() const;  
+        Status status() const;
         bool update();
         bool swapCache();
         void abort();
diff --git a/Source/core/loader/appcache/DOMApplicationCache.cpp b/Source/core/loader/appcache/DOMApplicationCache.cpp
index 3b2467b..14733f2 100644
--- a/Source/core/loader/appcache/DOMApplicationCache.cpp
+++ b/Source/core/loader/appcache/DOMApplicationCache.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -118,7 +118,7 @@
         return eventNames().updatereadyEvent;
     case ApplicationCacheHost::CACHED_EVENT:
         return eventNames().cachedEvent;
-    case ApplicationCacheHost::OBSOLETE_EVENT:            
+    case ApplicationCacheHost::OBSOLETE_EVENT:
         return eventNames().obsoleteEvent;
     }
     ASSERT_NOT_REACHED();
diff --git a/Source/core/loader/appcache/DOMApplicationCache.h b/Source/core/loader/appcache/DOMApplicationCache.h
index a20d8fa..812de18 100644
--- a/Source/core/loader/appcache/DOMApplicationCache.h
+++ b/Source/core/loader/appcache/DOMApplicationCache.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DOMApplicationCache_h
diff --git a/Source/core/loader/appcache/DOMApplicationCache.idl b/Source/core/loader/appcache/DOMApplicationCache.idl
index 057f7b5..f1c98e6 100644
--- a/Source/core/loader/appcache/DOMApplicationCache.idl
+++ b/Source/core/loader/appcache/DOMApplicationCache.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/loader/archive/ArchiveResourceCollection.cpp b/Source/core/loader/archive/ArchiveResourceCollection.cpp
index bef1d31..06b2430 100644
--- a/Source/core/loader/archive/ArchiveResourceCollection.cpp
+++ b/Source/core/loader/archive/ArchiveResourceCollection.cpp
@@ -79,7 +79,7 @@
     ArchiveResource* resource = m_subresources.get(url);
     if (!resource)
         return 0;
-        
+
     return resource;
 }
 
diff --git a/Source/core/loader/archive/ArchiveResourceCollection.h b/Source/core/loader/archive/ArchiveResourceCollection.h
index 7b5ae62..4b66573 100644
--- a/Source/core/loader/archive/ArchiveResourceCollection.h
+++ b/Source/core/loader/archive/ArchiveResourceCollection.h
@@ -45,11 +45,11 @@
 
     void addResource(PassRefPtr<ArchiveResource>);
     void addAllResources(MHTMLArchive*);
-    
+
     ArchiveResource* archiveResourceForURL(const KURL&);
     PassRefPtr<MHTMLArchive> popSubframeArchive(const String& frameName, const KURL&);
-    
-private:    
+
+private:
     HashMap<String, RefPtr<ArchiveResource> > m_subresources;
     HashMap<String, RefPtr<MHTMLArchive> > m_subframes;
 };
diff --git a/Source/core/loader/cache/CachePolicy.h b/Source/core/loader/cache/CachePolicy.h
index 0b9010b..a44c32d 100644
--- a/Source/core/loader/cache/CachePolicy.h
+++ b/Source/core/loader/cache/CachePolicy.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CachePolicy_h
diff --git a/Source/core/loader/cache/CachedCSSStyleSheet.cpp b/Source/core/loader/cache/CachedCSSStyleSheet.cpp
index 6a209ea..d1a6616 100644
--- a/Source/core/loader/cache/CachedCSSStyleSheet.cpp
+++ b/Source/core/loader/cache/CachedCSSStyleSheet.cpp
@@ -76,17 +76,17 @@
 {
     return m_decoder->encoding().name();
 }
-    
-const String CachedCSSStyleSheet::sheetText(bool enforceMIMEType, bool* hasValidMIMEType) const 
-{ 
+
+const String CachedCSSStyleSheet::sheetText(bool enforceMIMEType, bool* hasValidMIMEType) const
+{
     ASSERT(!isPurgeable());
 
     if (!m_data || m_data->isEmpty() || !canUseSheet(enforceMIMEType, hasValidMIMEType))
         return String();
-    
+
     if (!m_decodedSheetText.isNull())
         return m_decodedSheetText;
-    
+
     // Don't cache the decoded text, regenerating is cheap and it can use quite a bit of memory
     String sheetText = m_decoder->decode(m_data->data(), m_data->size());
     sheetText.append(m_decoder->flush());
@@ -112,7 +112,7 @@
 {
     if (errorOccurred())
         return false;
-        
+
     if (!enforceMIMEType && !hasValidMIMEType)
         return true;
 
diff --git a/Source/core/loader/cache/CachedCSSStyleSheet.h b/Source/core/loader/cache/CachedCSSStyleSheet.h
index ea59d1e..166b9d7 100644
--- a/Source/core/loader/cache/CachedCSSStyleSheet.h
+++ b/Source/core/loader/cache/CachedCSSStyleSheet.h
@@ -43,7 +43,7 @@
         const String sheetText(bool enforceMIMEType = true, bool* hasValidMIMEType = 0) const;
 
         virtual void didAddClient(CachedResourceClient*);
-        
+
         virtual void setEncoding(const String&);
         virtual String encoding() const;
         virtual void destroyDecodedData() OVERRIDE;
diff --git a/Source/core/loader/cache/CachedFont.cpp b/Source/core/loader/cache/CachedFont.cpp
index b74fada..fb7fdb3 100644
--- a/Source/core/loader/cache/CachedFont.cpp
+++ b/Source/core/loader/cache/CachedFont.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -106,9 +106,9 @@
         RefPtr<TextResourceDecoder> decoder = TextResourceDecoder::create("application/xml");
         String svgSource = decoder->decode(m_data->data(), m_data->size());
         svgSource.append(decoder->flush());
-        
+
         m_externalSVGDocument->setContent(svgSource);
-        
+
         if (decoder->sawError())
             m_externalSVGDocument = 0;
     }
diff --git a/Source/core/loader/cache/CachedFont.h b/Source/core/loader/cache/CachedFont.h
index 6ea5211..d9d0519 100644
--- a/Source/core/loader/cache/CachedFont.h
+++ b/Source/core/loader/cache/CachedFont.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CachedFont_h
@@ -43,7 +43,7 @@
 public:
     CachedFont(const ResourceRequest&);
     virtual ~CachedFont();
-    
+
     virtual void load(ResourceFetcher*, const ResourceLoaderOptions&);
 
     virtual void didAddClient(CachedResourceClient*);
diff --git a/Source/core/loader/cache/CachedImage.h b/Source/core/loader/cache/CachedImage.h
index 9215f89..0450941 100644
--- a/Source/core/loader/cache/CachedImage.h
+++ b/Source/core/loader/cache/CachedImage.h
@@ -47,7 +47,7 @@
     CachedImage(const ResourceRequest&);
     CachedImage(Image*);
     virtual ~CachedImage();
-    
+
     virtual void load(ResourceFetcher*, const ResourceLoaderOptions&);
 
     Image* image(); // Returns the nullImage() if the image is not available yet.
@@ -56,7 +56,7 @@
     bool currentFrameKnownToBeOpaque(const RenderObject*); // Side effect: ensures decoded image is in cache, therefore should only be called when about to draw the image.
 
     std::pair<Image*, float> brokenImage(float deviceScaleFactor) const; // Returns an image and the image's resolution scale factor.
-    bool willPaintBrokenImage() const; 
+    bool willPaintBrokenImage() const;
 
     bool canRender(const RenderObject* renderer, float multiplier) { return !errorOccurred() && !imageSizeForRenderer(renderer, multiplier).isEmpty(); }
 
@@ -64,7 +64,7 @@
     bool usesImageContainerSize() const;
     bool imageHasRelativeWidth() const;
     bool imageHasRelativeHeight() const;
-    
+
     // This method takes a zoom multiplier that can be used to increase the natural size of the image by the zoom.
     LayoutSize imageSizeForRenderer(const RenderObject*, float multiplier); // returns the size of the complete image.
     void computeIntrinsicDimensions(Length& intrinsicWidth, Length& intrinsicHeight, FloatSize& intrinsicRatio);
@@ -79,7 +79,7 @@
     virtual void error(CachedResource::Status);
     virtual void responseReceived(const ResourceResponse&);
     virtual void finishOnePart() OVERRIDE;
-    
+
     // For compatibility, images keep loading even if there are HTTP errors.
     virtual bool shouldIgnoreHTTPStatusCodeErrors() const { return true; }
 
diff --git a/Source/core/loader/cache/CachedRawResource.cpp b/Source/core/loader/cache/CachedRawResource.cpp
index 1340f28..f9f6b45 100644
--- a/Source/core/loader/cache/CachedRawResource.cpp
+++ b/Source/core/loader/cache/CachedRawResource.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/loader/cache/CachedResource.cpp b/Source/core/loader/cache/CachedResource.cpp
index 80c261f..6b01d44 100644
--- a/Source/core/loader/cache/CachedResource.cpp
+++ b/Source/core/loader/cache/CachedResource.cpp
@@ -262,7 +262,7 @@
 
     return currentAge() > freshnessLifetime();
 }
-    
+
 double CachedResource::currentAge() const
 {
     // RFC2616 13.2.3
@@ -274,7 +274,7 @@
     double residentTime = currentTime() - m_responseTimestamp;
     return correctedReceivedAge + residentTime;
 }
-    
+
 double CachedResource::freshnessLifetime() const
 {
     // Cache non-http resources liberally
@@ -470,13 +470,13 @@
     // queue.
     if (inCache())
         memoryCache()->removeFromLRUList(this);
-    
+
     m_decodedSize = size;
-   
-    if (inCache()) { 
+
+    if (inCache()) {
         // Now insert into the new LRU list.
         memoryCache()->insertInLRUList(this);
-        
+
         // Insert into or remove from the live decoded list if necessary.
         // When inserting into the LiveDecodedResourcesList it is possible
         // that the m_lastDecodedAccessTime is still zero or smaller than
@@ -509,10 +509,10 @@
 
     m_encodedSize = size;
 
-    if (inCache()) { 
+    if (inCache()) {
         // Now insert into the new LRU list.
         memoryCache()->insertInLRUList(this);
-        
+
         // Update the cache's size totals.
         memoryCache()->adjustSize(hasClients(), delta);
     }
@@ -521,7 +521,7 @@
 void CachedResource::didAccessDecodedData(double timeStamp)
 {
     m_lastDecodedAccessTime = timeStamp;
-    
+
     if (inCache()) {
         if (m_inLiveDecodedResourcesList) {
             memoryCache()->removeFromLiveDecodedResourcesList(this);
@@ -530,9 +530,9 @@
         memoryCache()->prune();
     }
 }
-    
-void CachedResource::setResourceToRevalidate(CachedResource* resource) 
-{ 
+
+void CachedResource::setResourceToRevalidate(CachedResource* resource)
+{
     ASSERT(resource);
     ASSERT(!m_resourceToRevalidate);
     ASSERT(resource != this);
@@ -550,8 +550,8 @@
     m_resourceToRevalidate = resource;
 }
 
-void CachedResource::clearResourceToRevalidate() 
-{ 
+void CachedResource::clearResourceToRevalidate()
+{
     ASSERT(m_resourceToRevalidate);
     if (m_switchingClientsToRevalidatedResource)
         return;
@@ -565,7 +565,7 @@
     m_resourceToRevalidate = 0;
     deleteIfPossible();
 }
-    
+
 void CachedResource::switchClientsToRevalidatedResource()
 {
     ASSERT(m_resourceToRevalidate);
@@ -711,7 +711,7 @@
 }
 
 bool CachedResource::mustRevalidateDueToCacheHeaders(CachePolicy cachePolicy) const
-{    
+{
     ASSERT(cachePolicy == CachePolicyRevalidate || cachePolicy == CachePolicyCache || cachePolicy == CachePolicyVerify);
 
     if (cachePolicy == CachePolicyRevalidate)
@@ -740,12 +740,12 @@
 }
 
 bool CachedResource::isSafeToMakePurgeable() const
-{ 
+{
     return !hasClients() && !m_proxyResource && !m_resourceToRevalidate;
 }
 
-bool CachedResource::makePurgeable(bool purgeable) 
-{ 
+bool CachedResource::makePurgeable(bool purgeable)
+{
     if (purgeable) {
         ASSERT(isSafeToMakePurgeable());
 
@@ -755,7 +755,7 @@
         }
         if (!m_data)
             return false;
-        
+
         // Should not make buffer purgeable if it has refs other than this since we don't want two copies.
         if (!m_data->hasOneRef())
             return false;
@@ -777,7 +777,7 @@
     ASSERT(!hasClients());
 
     if (!m_purgeableData->lock())
-        return false; 
+        return false;
 
     m_data = SharedBuffer::adoptPurgeableBuffer(m_purgeableData.release());
     return true;
diff --git a/Source/core/loader/cache/CachedResource.h b/Source/core/loader/cache/CachedResource.h
index b9c6f77..715a369 100644
--- a/Source/core/loader/cache/CachedResource.h
+++ b/Source/core/loader/cache/CachedResource.h
@@ -55,7 +55,7 @@
     WTF_MAKE_NONCOPYABLE(CachedResource); WTF_MAKE_FAST_ALLOCATED;
     friend class MemoryCache;
     friend class InspectorResource;
-    
+
 public:
     enum Type {
         MainResource,
@@ -69,7 +69,8 @@
         LinkPrefetch,
         LinkSubresource,
         TextTrackResource,
-        ShaderResource
+        ShaderResource,
+        ImportResource
     };
 
     enum Status {
@@ -131,7 +132,7 @@
     unsigned encodedSize() const { return m_encodedSize; }
     unsigned decodedSize() const { return m_decodedSize; }
     unsigned overheadSize() const;
-    
+
     bool isLoaded() const { return !m_loading; } // FIXME. Method name is inaccurate. Loading might not have started yet.
 
     bool isLoading() const { return m_loading; }
@@ -152,7 +153,7 @@
     void updateForAccess();
     unsigned accessCount() const { return m_accessCount; }
 
-    // Computes the status of an object after loading.  
+    // Computes the status of an object after loading.
     // Updates the expire date on the cache entry file
     void finish(double finishTime = 0.0);
 
@@ -166,9 +167,9 @@
     // The resource can be brought back to cache after successful revalidation.
     void setInCache(bool inCache) { m_inCache = inCache; }
     bool inCache() const { return m_inCache; }
-    
+
     bool inLiveDecodedResourcesList() { return m_inLiveDecodedResourcesList; }
-    
+
     void clearLoader();
 
     SharedBuffer* resourceBuffer() const { ASSERT(!m_purgeableData); return m_data.get(); }
@@ -205,30 +206,30 @@
 
     bool shouldSendResourceLoadCallbacks() const { return m_options.sendLoadCallbacks == SendCallbacks; }
     DataBufferingPolicy dataBufferingPolicy() const { return m_options.dataBufferingPolicy; }
-    
+
     virtual void destroyDecodedData() { }
-    
+
     bool isPreloaded() const { return m_preloadCount; }
     void increasePreloadCount() { ++m_preloadCount; }
     void decreasePreloadCount() { ASSERT(m_preloadCount); --m_preloadCount; }
-    
+
     void registerHandle(CachedResourceHandleBase* h);
     void unregisterHandle(CachedResourceHandleBase* h);
-    
+
     bool canUseCacheValidator() const;
     bool mustRevalidateDueToCacheHeaders(CachePolicy) const;
     bool isCacheValidator() const { return m_resourceToRevalidate; }
     CachedResource* resourceToRevalidate() const { return m_resourceToRevalidate; }
     void setResourceToRevalidate(CachedResource*);
-    
+
     bool isPurgeable() const;
     bool wasPurged() const;
-    
+
     // This is used by the archive machinery to get at a purged resource without
     // triggering a load. We should make it protected again if we can find a
     // better way to handle the archive case.
     bool makePurgeable(bool purgeable);
-    
+
     virtual void didSendData(unsigned long long /* bytesSent */, unsigned long long /* totalBytesToBeSent */) { }
     virtual void didDownloadData(int) { }
 
@@ -249,7 +250,7 @@
     virtual void switchClientsToRevalidatedResource();
     void clearResourceToRevalidate();
     void updateResponseAfterRevalidation(const ResourceResponse& validatingResponse);
-    
+
     HashCountedSet<CachedResourceClient*> m_clients;
 
     class CachedResourceCallback {
@@ -329,10 +330,10 @@
 
     CachedResource* m_nextInAllResourcesList;
     CachedResource* m_prevInAllResourcesList;
-    
+
     CachedResource* m_nextInLiveResourcesList;
     CachedResource* m_prevInLiveResourcesList;
-    
+
     // If this field is non-null we are using the resource as a proxy for checking whether an existing resource is still up to date
     // using HTTP If-Modified-Since/If-None-Match headers. If the response is 304 all clients of this resource are moved
     // to to be clients of m_resourceToRevalidate and the resource is deleted. If not, the field is zeroed and this
diff --git a/Source/core/loader/cache/CachedResourceClient.h b/Source/core/loader/cache/CachedResourceClient.h
index e0e1b09..d34e916 100644
--- a/Source/core/loader/cache/CachedResourceClient.h
+++ b/Source/core/loader/cache/CachedResourceClient.h
@@ -45,7 +45,7 @@
     virtual ~CachedResourceClient() { }
     virtual void notifyFinished(CachedResource*) { }
     virtual void deprecatedDidReceiveCachedResource(CachedResource*) { }
-    
+
     static CachedResourceClientType expectedType() { return BaseResourceType; }
     virtual CachedResourceClientType resourceClientType() const { return expectedType(); }
 
diff --git a/Source/core/loader/cache/CachedResourceClientWalker.h b/Source/core/loader/cache/CachedResourceClientWalker.h
index e04ad6c..d0cd851 100644
--- a/Source/core/loader/cache/CachedResourceClientWalker.h
+++ b/Source/core/loader/cache/CachedResourceClientWalker.h
@@ -55,7 +55,7 @@
                 return static_cast<T*>(next);
             }
         }
-        
+
         return 0;
     }
 private:
diff --git a/Source/core/loader/cache/CachedResourceHandle.cpp b/Source/core/loader/cache/CachedResourceHandle.cpp
index 03d648e..50bc866 100644
--- a/Source/core/loader/cache/CachedResourceHandle.cpp
+++ b/Source/core/loader/cache/CachedResourceHandle.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -28,7 +28,7 @@
 
 namespace WebCore {
 
-void CachedResourceHandleBase::setResource(CachedResource* resource) 
+void CachedResourceHandleBase::setResource(CachedResource* resource)
 {
     if (resource == m_resource)
         return;
diff --git a/Source/core/loader/cache/CachedResourceHandle.h b/Source/core/loader/cache/CachedResourceHandle.h
index 04fedf8..9300eac 100644
--- a/Source/core/loader/cache/CachedResourceHandle.h
+++ b/Source/core/loader/cache/CachedResourceHandle.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CachedResourceHandle_h
@@ -34,9 +34,9 @@
     public:
         ~CachedResourceHandleBase() { if (m_resource) m_resource->unregisterHandle(this); }
         CachedResource* get() const { return m_resource; }
-        
+
         bool operator!() const { return !m_resource; }
-        
+
         // This conversion operator allows implicit conversion to bool but not to other integer types.
         typedef CachedResource* CachedResourceHandleBase::*UnspecifiedBoolType;
         operator UnspecifiedBoolType() const { return m_resource ? &CachedResourceHandleBase::m_resource : 0; }
@@ -47,17 +47,17 @@
         CachedResourceHandleBase(const CachedResourceHandleBase& o) : m_resource(o.m_resource) { if (m_resource) m_resource->registerHandle(this); }
 
         void setResource(CachedResource*);
-        
+
     private:
-        CachedResourceHandleBase& operator=(const CachedResourceHandleBase&) { return *this; } 
-        
+        CachedResourceHandleBase& operator=(const CachedResourceHandleBase&) { return *this; }
+
         friend class CachedResource;
 
         CachedResource* m_resource;
     };
-        
+
     template <class R> class CachedResourceHandle : public CachedResourceHandleBase {
-    public: 
+    public:
         CachedResourceHandle() { }
         CachedResourceHandle(R* res) : CachedResourceHandleBase(res) { }
         CachedResourceHandle(const CachedResourceHandle<R>& o) : CachedResourceHandleBase(o) { }
@@ -65,8 +65,8 @@
 
         R* get() const { return reinterpret_cast<R*>(CachedResourceHandleBase::get()); }
         R* operator->() const { return get(); }
-               
-        CachedResourceHandle& operator=(R* res) { setResource(res); return *this; } 
+
+        CachedResourceHandle& operator=(R* res) { setResource(res); return *this; }
         CachedResourceHandle& operator=(const CachedResourceHandle& o) { setResource(o.get()); return *this; }
         template<typename U> CachedResourceHandle& operator=(const CachedResourceHandle<U>& o) { setResource(o.get()); return *this; }
 
@@ -74,21 +74,21 @@
         bool operator!=(const CachedResourceHandleBase& o) const { return get() != o.get(); }
     };
 
-    template <class R, class RR> bool operator==(const CachedResourceHandle<R>& h, const RR* res) 
-    { 
-        return h.get() == res; 
+    template <class R, class RR> bool operator==(const CachedResourceHandle<R>& h, const RR* res)
+    {
+        return h.get() == res;
     }
-    template <class R, class RR> bool operator==(const RR* res, const CachedResourceHandle<R>& h) 
-    { 
-        return h.get() == res; 
+    template <class R, class RR> bool operator==(const RR* res, const CachedResourceHandle<R>& h)
+    {
+        return h.get() == res;
     }
-    template <class R, class RR> bool operator!=(const CachedResourceHandle<R>& h, const RR* res) 
-    { 
-        return h.get() != res; 
+    template <class R, class RR> bool operator!=(const CachedResourceHandle<R>& h, const RR* res)
+    {
+        return h.get() != res;
     }
-    template <class R, class RR> bool operator!=(const RR* res, const CachedResourceHandle<R>& h) 
-    { 
-        return h.get() != res; 
+    template <class R, class RR> bool operator!=(const RR* res, const CachedResourceHandle<R>& h)
+    {
+        return h.get() != res;
     }
 }
 
diff --git a/Source/core/loader/cache/CachedShader.h b/Source/core/loader/cache/CachedShader.h
index 18d3189..c85daf3 100644
--- a/Source/core/loader/cache/CachedShader.h
+++ b/Source/core/loader/cache/CachedShader.h
@@ -40,9 +40,9 @@
 public:
     CachedShader(const ResourceRequest&);
     virtual ~CachedShader();
-    
+
     const String& shaderString();
-    
+
 private:
     RefPtr<TextResourceDecoder> m_decoder;
     String m_shaderString;
diff --git a/Source/core/loader/cache/CachedStyleSheetClient.h b/Source/core/loader/cache/CachedStyleSheetClient.h
index b51b365..cfc3123 100644
--- a/Source/core/loader/cache/CachedStyleSheetClient.h
+++ b/Source/core/loader/cache/CachedStyleSheetClient.h
@@ -3,22 +3,22 @@
  Copyright (C) 2001 Dirk Mueller <mueller@kde.org>
  Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved.
  Copyright (C) 2011 Google Inc. All rights reserved.
- 
+
  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.
- 
+
  This class provides all functionality needed for loading images, style sheets and html
  pages from the web. It has a memory cache for these objects.
  */
diff --git a/Source/core/loader/cache/CachedXSLStyleSheet.cpp b/Source/core/loader/cache/CachedXSLStyleSheet.cpp
index 88d87c7..fb36ba2 100644
--- a/Source/core/loader/cache/CachedXSLStyleSheet.cpp
+++ b/Source/core/loader/cache/CachedXSLStyleSheet.cpp
@@ -47,7 +47,7 @@
 }
 
 void CachedXSLStyleSheet::didAddClient(CachedResourceClient* c)
-{  
+{
     ASSERT(c->resourceClientType() == CachedStyleSheetClient::expectedType());
     if (!isLoading())
         static_cast<CachedStyleSheetClient*>(c)->setXSLStyleSheet(m_resourceRequest.url(), m_response.url(), m_sheet);
@@ -69,7 +69,7 @@
         m_sheet = m_decoder->decode(m_data->data(), encodedSize());
         m_sheet.append(m_decoder->flush());
     }
-    
+
     CachedResourceClientWalker<CachedStyleSheetClient> w(m_clients);
     while (CachedStyleSheetClient* c = w.next())
         c->setXSLStyleSheet(m_resourceRequest.url(), m_response.url(), m_sheet);
diff --git a/Source/core/loader/cache/CachedXSLStyleSheet.h b/Source/core/loader/cache/CachedXSLStyleSheet.h
index f5a1f45..9355492 100644
--- a/Source/core/loader/cache/CachedXSLStyleSheet.h
+++ b/Source/core/loader/cache/CachedXSLStyleSheet.h
@@ -38,12 +38,12 @@
         CachedXSLStyleSheet(const ResourceRequest&);
 
         const String& sheet() const { return m_sheet; }
-        
+
         virtual void didAddClient(CachedResourceClient*);
-        
+
         virtual void setEncoding(const String&);
         virtual String encoding() const;
-        
+
     protected:
         virtual void checkNotify();
 
diff --git a/Source/core/loader/cache/MemoryCache.cpp b/Source/core/loader/cache/MemoryCache.cpp
index b4cc594..eb7d039 100644
--- a/Source/core/loader/cache/MemoryCache.cpp
+++ b/Source/core/loader/cache/MemoryCache.cpp
@@ -86,7 +86,7 @@
     if (!originalURL.hasFragmentIdentifier())
         return originalURL;
     // Strip away fragment identifier from HTTP URLs.
-    // Data URLs must be unmodified. For file and custom URLs clients may expect resources 
+    // Data URLs must be unmodified. For file and custom URLs clients may expect resources
     // to be unique even when they differ by the fragment identifier only.
     if (!originalURL.protocolIsInHTTPFamily())
         return originalURL;
@@ -101,7 +101,7 @@
     m_resources.set(resource->url(), resource);
     resource->setInCache(true);
     resource->updateForAccess();
-    
+
     LOG(ResourceLoading, "MemoryCache::add Added '%s', resource %p\n", resource->url().string().latin1().data(), resource);
 }
 
@@ -132,7 +132,7 @@
     return resource;
 }
 
-unsigned MemoryCache::deadCapacity() const 
+unsigned MemoryCache::deadCapacity() const
 {
     // Dead resource capacity is whatever space is not occupied by live resources, bounded by an independent minimum and maximum.
     unsigned capacity = m_capacity - min(m_liveSize, m_capacity); // Start with available capacity.
@@ -141,8 +141,8 @@
     return capacity;
 }
 
-unsigned MemoryCache::liveCapacity() const 
-{ 
+unsigned MemoryCache::liveCapacity() const
+{
     // Live resource capacity is whatever is left over after calculating dead resource capacity.
     return m_capacity - deadCapacity();
 }
@@ -158,7 +158,7 @@
     double currentTime = FrameView::currentPaintTimeStamp();
     if (!currentTime) // In case prune is called directly, outside of a Frame paint.
         currentTime = WTF::currentTime();
-    
+
     // Destroy any decoded data in live objects that we can.
     // Start from the tail, since this is the least recently accessed of the objects.
 
@@ -177,8 +177,8 @@
             if (elapsedTime < cMinDelayBeforeLiveDecodedPrune)
                 return;
 
-            // Destroy our decoded data. This will remove us from 
-            // m_liveDecodedResources, and possibly move us to a different LRU 
+            // Destroy our decoded data. This will remove us from
+            // m_liveDecodedResources, and possibly move us to a different LRU
             // list in m_allResources.
             current->destroyDecodedData();
 
@@ -198,7 +198,7 @@
     unsigned targetSize = static_cast<unsigned>(capacity * cTargetPrunePercentage); // Cut by a percentage to avoid immediately pruning again.
 
     int size = m_allResources.size();
- 
+
     // See if we have any purged resources we can evict.
     for (int i = 0; i < size; i++) {
         CachedResource* current = m_allResources[i].m_tail;
@@ -219,15 +219,15 @@
     for (int i = size - 1; i >= 0; i--) {
         // Remove from the tail, since this is the least frequently accessed of the objects.
         CachedResource* current = m_allResources[i].m_tail;
-        
+
         // First flush all the decoded data in this queue.
         while (current) {
             // Protect 'previous' so it can't get deleted during destroyDecodedData().
             CachedResourceHandle<CachedResource> previous = current->m_prevInAllResourcesList;
             ASSERT(!previous || previous->inCache());
             if (!current->hasClients() && !current->isPreloaded() && current->isLoaded()) {
-                // Destroy our decoded data. This will remove us from 
-                // m_liveDecodedResources, and possibly move us to a different 
+                // Destroy our decoded data. This will remove us from
+                // m_liveDecodedResources, and possibly move us to a different
                 // LRU list in m_allResources.
                 current->destroyDecodedData();
 
@@ -255,7 +255,7 @@
                 break;
             current = previous.get();
         }
-            
+
         // Shrink the vector back down so we don't waste time inspecting
         // empty LRU lists on future prunes.
         if (m_allResources[i].m_head)
@@ -337,13 +337,13 @@
 
     CachedResource* next = resource->m_nextInAllResourcesList;
     CachedResource* prev = resource->m_prevInAllResourcesList;
-    
+
     if (next == 0 && prev == 0 && list->m_head != resource)
         return;
-    
+
     resource->m_nextInAllResourcesList = 0;
     resource->m_prevInAllResourcesList = 0;
-    
+
     if (next)
         next->m_prevInAllResourcesList = prev;
     else if (list->m_tail == resource)
@@ -361,17 +361,17 @@
     ASSERT(!resource->m_nextInAllResourcesList && !resource->m_prevInAllResourcesList);
     ASSERT(resource->inCache());
     ASSERT(resource->accessCount() > 0);
-    
+
     LRUList* list = lruListFor(resource);
 
     resource->m_nextInAllResourcesList = list->m_head;
     if (list->m_head)
         list->m_head->m_prevInAllResourcesList = resource;
     list->m_head = resource;
-    
+
     if (!resource->m_nextInAllResourcesList)
         list->m_tail = resource;
-        
+
 #if !ASSERT_DISABLED
     // Verify that we are in now in the list like we should be.
     list = lruListFor(resource);
@@ -408,13 +408,13 @@
 
     CachedResource* next = resource->m_nextInLiveResourcesList;
     CachedResource* prev = resource->m_prevInLiveResourcesList;
-    
+
     if (next == 0 && prev == 0 && m_liveDecodedResources.m_head != resource)
         return;
-    
+
     resource->m_nextInLiveResourcesList = 0;
     resource->m_prevInLiveResourcesList = 0;
-    
+
     if (next)
         next->m_prevInLiveResourcesList = prev;
     else if (m_liveDecodedResources.m_tail == resource)
@@ -436,10 +436,10 @@
     if (m_liveDecodedResources.m_head)
         m_liveDecodedResources.m_head->m_prevInLiveResourcesList = resource;
     m_liveDecodedResources.m_head = resource;
-    
+
     if (!resource->m_nextInLiveResourcesList)
         m_liveDecodedResources.m_tail = resource;
-        
+
 #if !ASSERT_DISABLED
     // Verify that we are in now in the list like we should be.
     bool found = false;
@@ -496,7 +496,7 @@
 void MemoryCache::TypeStatistic::addResource(CachedResource* o)
 {
     bool purged = o->wasPurged();
-    bool purgeable = o->isPurgeable() && !purged; 
+    bool purgeable = o->isPurgeable() && !purged;
     int pageSize = (o->encodedSize() + o->overheadSize() + 4095) & ~4095;
     count++;
     size += purged ? 0 : o->size();
diff --git a/Source/core/loader/cache/MemoryCache.h b/Source/core/loader/cache/MemoryCache.h
index 8da416c..d299f00 100644
--- a/Source/core/loader/cache/MemoryCache.h
+++ b/Source/core/loader/cache/MemoryCache.h
@@ -43,7 +43,7 @@
 
 // This cache holds subresources used by Web pages: images, scripts, stylesheets, etc.
 
-// The cache keeps a flexible but bounded window of dead resources that grows/shrinks 
+// The cache keeps a flexible but bounded window of dead resources that grows/shrinks
 // depending on the live resource load. Here's an example of cache growth over time,
 // with a min dead resource capacity of 25% and a max dead resource capacity of 50%:
 
@@ -106,14 +106,14 @@
     };
 
     CachedResource* resourceForURL(const KURL&);
-    
+
     void add(CachedResource*);
     void replace(CachedResource* newResource, CachedResource* oldResource);
     void remove(CachedResource* resource) { evict(resource); }
 
     static KURL removeFragmentIdentifierIfNeeded(const KURL& originalURL);
-    
-    // Sets the cache's memory capacities, in bytes. These will hold only approximately, 
+
+    // Sets the cache's memory capacities, in bytes. These will hold only approximately,
     // since the decoded cost of resources like scripts and stylesheets is not known.
     //  - minDeadBytes: The maximum number of bytes that dead resources should consume when the cache is under pressure.
     //  - maxDeadBytes: The maximum number of bytes that dead resources should consume when the cache is not under pressure.
@@ -181,11 +181,11 @@
     // more resources than the cached resource map, since it can also hold "stale" multiple versions of objects that are
     // waiting to die when the clients referencing them go away.
     Vector<LRUList, 32> m_allResources;
-    
+
     // List just for live resources with decoded data.  Access to this list is based off of painting the resource.
     LRUList m_liveDecodedResources;
-    
-    // A URL-based map of all resources that are in the cache (including the freshest version of objects that are currently being 
+
+    // A URL-based map of all resources that are in the cache (including the freshest version of objects that are currently being
     // referenced by a Web page).
     HashMap<String, CachedResource*> m_resources;
 
diff --git a/Source/core/loader/cache/ResourceFetcher.cpp b/Source/core/loader/cache/ResourceFetcher.cpp
index fb388be..af2b0bc 100644
--- a/Source/core/loader/cache/ResourceFetcher.cpp
+++ b/Source/core/loader/cache/ResourceFetcher.cpp
@@ -31,6 +31,7 @@
 #include "core/dom/Document.h"
 #include "core/html/HTMLElement.h"
 #include "core/html/HTMLFrameOwnerElement.h"
+#include "core/html/HTMLImport.h"
 #include "core/inspector/InspectorInstrumentation.h"
 #include "core/loader/DocumentLoader.h"
 #include "core/loader/FrameLoader.h"
@@ -93,7 +94,10 @@
         return new CachedTextTrack(request);
     case CachedResource::ShaderResource:
         return new CachedShader(request);
+    case CachedResource::ImportResource:
+        return new CachedRawResource(request, type);
     }
+
     ASSERT_NOT_REACHED();
     return 0;
 }
@@ -111,6 +115,7 @@
     case CachedResource::Script:
     case CachedResource::FontResource:
     case CachedResource::RawResource:
+    case CachedResource::ImportResource:
         return ResourceLoadPriorityMedium;
     case CachedResource::ImageResource:
         return request.forPreload() ? ResourceLoadPriorityVeryLow : ResourceLoadPriorityLow;
@@ -188,7 +193,11 @@
 
 Frame* ResourceFetcher::frame() const
 {
-    return m_documentLoader ? m_documentLoader->frame() : 0;
+    if (m_documentLoader)
+        return m_documentLoader->frame();
+    if (m_document && m_document->import())
+        return m_document->import()->frame();
+    return 0;
 }
 
 CachedResourceHandle<CachedImage> ResourceFetcher::requestImage(FetchRequest& request)
@@ -236,6 +245,11 @@
     return static_cast<CachedShader*>(requestResource(CachedResource::ShaderResource, request).get());
 }
 
+CachedResourceHandle<CachedRawResource> ResourceFetcher::requestImport(FetchRequest& request)
+{
+    return static_cast<CachedRawResource*>(requestResource(CachedResource::ImportResource, request).get());
+}
+
 CachedResourceHandle<CachedCSSStyleSheet> ResourceFetcher::requestCSSStyleSheet(FetchRequest& request)
 {
     return static_cast<CachedCSSStyleSheet*>(requestResource(CachedResource::CSSStyleSheet, request).get());
@@ -294,6 +308,7 @@
     case CachedResource::XSLStyleSheet:
     case CachedResource::SVGDocumentResource:
     case CachedResource::CSSStyleSheet:
+    case CachedResource::ImportResource:
         // These resource can inject script into the current document (Script,
         // XSL) or exfiltrate the content of the current document (CSS).
         if (Frame* f = frame()) {
@@ -350,6 +365,7 @@
     case CachedResource::LinkSubresource:
     case CachedResource::TextTrackResource:
     case CachedResource::ShaderResource:
+    case CachedResource::ImportResource:
         // By default these types of resources can be loaded from any origin.
         // FIXME: Are we sure about CachedResource::FontResource?
         if (options.requestOriginPolicy == RestrictToSameOrigin && !m_document->securityOrigin()->canRequest(url)) {
@@ -372,6 +388,7 @@
             return false;
         break;
     case CachedResource::Script:
+    case CachedResource::ImportResource:
         if (!shouldBypassMainWorldContentSecurityPolicy && !m_document->contentSecurityPolicy()->allowScriptFromSource(url))
             return false;
 
@@ -432,7 +449,7 @@
     String error;
     switch (resource->type()) {
     case CachedResource::Script:
-    case CachedResource::RawResource:
+    case CachedResource::ImportResource:
         if (resource->options().requestOriginPolicy == PotentiallyCrossOriginEnabled
             && !m_document->securityOrigin()->canRequest(resource->response().url())
             && !resource->passesAccessControlCheck(m_document->securityOrigin(), error)) {
@@ -449,6 +466,20 @@
     return true;
 }
 
+bool ResourceFetcher::shouldLoadNewResource() const
+{
+    if (!frame())
+        return false;
+    if (m_documentLoader) {
+        if (m_documentLoader != frame()->loader()->activeDocumentLoader())
+            return false;
+        if (m_documentLoader->isStopping())
+            return false;
+    }
+
+    return true;
+}
+
 CachedResourceHandle<CachedResource> ResourceFetcher::requestResource(CachedResource::Type type, FetchRequest& request)
 {
     KURL url = request.resourceRequest().url();
@@ -502,14 +533,13 @@
     }
 
     if ((policy != Use || resource->stillNeedsLoad()) && FetchRequest::NoDefer == request.defer()) {
-        if (!frame())
+        if (!shouldLoadNewResource()) {
+            if (resource->inCache())
+                memoryCache()->remove(resource.get());
             return 0;
+        }
 
-        FrameLoader* frameLoader = this->frameLoader();
-        if (request.options().securityCheck == DoSecurityCheck && (frameLoader->state() == FrameStateProvisional || !frameLoader->activeDocumentLoader() || frameLoader->activeDocumentLoader()->isStopping()))
-            return 0;
-
-        if (!m_documentLoader->scheduleArchiveLoad(resource.get(), request.resourceRequest()))
+        if (!m_documentLoader || !m_documentLoader->scheduleArchiveLoad(resource.get(), request.resourceRequest()))
             resource->load(this, request.options());
 
         // We don't support immediate loads, but we do support immediate failure.
@@ -569,6 +599,7 @@
         break;
     case CachedResource::ShaderResource:
     case CachedResource::RawResource:
+    case CachedResource::ImportResource:
         targetType = ResourceRequest::TargetIsSubresource;
         break;
     case CachedResource::LinkPrefetch:
@@ -608,7 +639,7 @@
     if (request.isConditional())
         return ReloadIgnoringCacheData;
 
-    if (m_documentLoader->isLoadingInAPISense()) {
+    if (m_documentLoader && m_documentLoader->isLoadingInAPISense()) {
         // For POST requests, we mutate the main resource's cache policy to avoid form resubmission.
         // This policy should not be inherited by subresources.
         ResourceRequestCachePolicy mainResourceCachePolicy = m_documentLoader->request().cachePolicy();
@@ -921,7 +952,8 @@
             info->setInitialRequest(resource->resourceRequest());
             info->setFinalResponse(resource->response());
             info->setLoadFinishTime(resource->loadFinishTime());
-            initiatorDocument->domWindow()->performance()->addResourceTiming(*info, initiatorDocument);
+            if (DOMWindow* initiatorWindow = initiatorDocument->domWindow())
+                initiatorWindow->performance()->addResourceTiming(*info, initiatorDocument);
             m_resourceTimingInfoMap.remove(it);
         }
     }
@@ -1093,7 +1125,9 @@
 
 inline FrameLoader* ResourceFetcher::frameLoader()
 {
-    return frame() ? frame()->loader() : 0;
+    if (Frame* frame = this->frame())
+        return frame->loader();
+    return 0;
 }
 
 void ResourceFetcher::didFinishLoading(const CachedResource* resource, double finishTime, const ResourceLoaderOptions& options)
@@ -1138,10 +1172,13 @@
 
 void ResourceFetcher::didReceiveData(const CachedResource* resource, const char* data, int dataLength, int encodedDataLength, const ResourceLoaderOptions& options)
 {
+    // FIXME: use frame of master document for imported documents.
+    InspectorInstrumentationCookie cookie = InspectorInstrumentation::willReceiveResourceData(frame(), resource->identifier(), encodedDataLength);
     if (options.sendLoadCallbacks != SendCallbacks)
         return;
     if (FrameLoader* loader = frameLoader())
         loader->notifier()->dispatchDidReceiveData(m_documentLoader, resource->identifier(), data, dataLength, encodedDataLength);
+    InspectorInstrumentation::didReceiveResourceData(cookie);
 }
 
 void ResourceFetcher::subresourceLoaderFinishedLoadingOnePart(ResourceLoader* loader)
@@ -1189,12 +1226,6 @@
     return true;
 }
 
-Frame* ResourceFetcher::inspectedFrame() const
-{
-    // FIXME: return frame of master document for imported documents.
-    return m_documentLoader ? m_documentLoader->frame() : 0;
-}
-
 void ResourceFetcher::refResourceLoaderHost()
 {
     ref();
diff --git a/Source/core/loader/cache/ResourceFetcher.h b/Source/core/loader/cache/ResourceFetcher.h
index ba0cbe0..48adb9d 100644
--- a/Source/core/loader/cache/ResourceFetcher.h
+++ b/Source/core/loader/cache/ResourceFetcher.h
@@ -90,6 +90,7 @@
     CachedResourceHandle<CachedResource> requestLinkResource(CachedResource::Type, FetchRequest&);
     CachedResourceHandle<CachedTextTrack> requestTextTrack(FetchRequest&);
     CachedResourceHandle<CachedShader> requestShader(FetchRequest&);
+    CachedResourceHandle<CachedRawResource> requestImport(FetchRequest&);
 
     // Logs an access denied message to the console for the specified URL.
     void printAccessDeniedMessage(const KURL&) const;
@@ -149,7 +150,6 @@
     virtual bool shouldRequest(CachedResource*, const ResourceRequest&, const ResourceLoaderOptions&) OVERRIDE;
     virtual void refResourceLoaderHost() OVERRIDE;
     virtual void derefResourceLoaderHost() OVERRIDE;
-    virtual Frame* inspectedFrame() const OVERRIDE;
 
     static const ResourceLoaderOptions& defaultCachedResourceOptions();
 private:
@@ -157,6 +157,7 @@
     explicit ResourceFetcher(DocumentLoader*);
 
     FrameLoader* frameLoader();
+    bool shouldLoadNewResource() const;
 
     CachedResourceHandle<CachedResource> requestResource(CachedResource::Type, FetchRequest&);
     CachedResourceHandle<CachedResource> revalidateResource(const FetchRequest&, CachedResource*);
diff --git a/Source/core/loader/cache/ResourceFetcherTest.cpp b/Source/core/loader/cache/ResourceFetcherTest.cpp
new file mode 100644
index 0000000..2f99f94
--- /dev/null
+++ b/Source/core/loader/cache/ResourceFetcherTest.cpp
@@ -0,0 +1,68 @@
+/*
+ * Copyright (c) 2013, Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "core/loader/cache/ResourceFetcher.h"
+
+#include "core/html/HTMLDocument.h"
+#include "core/loader/DocumentLoader.h"
+#include "core/loader/cache/CachedResourceHandle.h"
+#include "core/loader/cache/CachedResourceInitiatorInfo.h"
+#include "core/loader/cache/FetchRequest.h"
+#include "core/loader/cache/MemoryCache.h"
+#include "core/platform/network/ResourceRequest.h"
+#include <gtest/gtest.h>
+
+using namespace WebCore;
+
+namespace {
+
+TEST(ResourceFetcherTest, StartLoadAfterFrameDetach)
+{
+    KURL testURL(ParsedURLString, "http://www.test.com/cancelTest.jpg");
+
+    // Create a ResourceFetcher that has a real DocumentLoader and Document, but is not attached to a Frame.
+    // Technically, we're concerned about what happens after a Frame is detached (rather than before
+    // any attach occurs), but ResourceFetcher can't tell the difference.
+    RefPtr<DocumentLoader> documentLoader = DocumentLoader::create(ResourceRequest(testURL), SubstituteData());
+    RefPtr<HTMLDocument> document = HTMLDocument::create();
+    RefPtr<ResourceFetcher> fetcher(documentLoader->fetcher());
+    fetcher->setDocument(document.get());
+    EXPECT_EQ(fetcher->frame(), static_cast<Frame*>(0));
+
+    // Try to request a url. The request should fail, no resource should be returned,
+    // and no resource should be present in the cache.
+    FetchRequest fetchRequest = FetchRequest(ResourceRequest(testURL), CachedResourceInitiatorInfo());
+    CachedResourceHandle<CachedImage> image = fetcher->requestImage(fetchRequest);
+    EXPECT_EQ(image.get(), static_cast<CachedImage*>(0));
+    EXPECT_EQ(memoryCache()->resourceForURL(testURL), static_cast<CachedResource*>(0));
+}
+
+} // namespace
diff --git a/Source/core/page/AbstractView.idl b/Source/core/page/AbstractView.idl
index 371bb15..60c537f 100644
--- a/Source/core/page/AbstractView.idl
+++ b/Source/core/page/AbstractView.idl
@@ -21,12 +21,12 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 // Introduced in DOM Level 2:
 [
-    
+
 ] interface AbstractView {
     readonly attribute Document document;
     readonly attribute StyleMedia styleMedia;
diff --git a/Source/core/page/AutoscrollController.h b/Source/core/page/AutoscrollController.h
index dd501a7..4cb90cb 100644
--- a/Source/core/page/AutoscrollController.h
+++ b/Source/core/page/AutoscrollController.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef AutoscrollController_h
diff --git a/Source/core/page/BarProp.idl b/Source/core/page/BarProp.idl
index 8f91d38..cc9ce71 100644
--- a/Source/core/page/BarProp.idl
+++ b/Source/core/page/BarProp.idl
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/page/Chrome.cpp b/Source/core/page/Chrome.cpp
index c62c697..9fed91c 100644
--- a/Source/core/page/Chrome.cpp
+++ b/Source/core/page/Chrome.cpp
@@ -33,6 +33,7 @@
 #include "core/page/Page.h"
 #include "core/page/PageGroupLoadDeferrer.h"
 #include "core/page/PopupOpeningObserver.h"
+#include "core/page/WindowFeatures.h"
 #include "core/platform/ColorChooser.h"
 #include "core/platform/DateTimeChooser.h"
 #include "core/platform/FileChooser.h"
@@ -180,9 +181,13 @@
     m_client->runModal();
 }
 
-void Chrome::setToolbarsVisible(bool b) const
+void Chrome::setWindowFeatures(const WindowFeatures& features) const
 {
-    m_client->setToolbarsVisible(b);
+    m_client->setToolbarsVisible(features.toolBarVisible || features.locationBarVisible);
+    m_client->setStatusbarVisible(features.statusBarVisible);
+    m_client->setScrollbarsVisible(features.scrollbarsVisible);
+    m_client->setMenubarVisible(features.menuBarVisible);
+    m_client->setResizable(features.resizable);
 }
 
 bool Chrome::toolbarsVisible() const
@@ -190,41 +195,21 @@
     return m_client->toolbarsVisible();
 }
 
-void Chrome::setStatusbarVisible(bool b) const
-{
-    m_client->setStatusbarVisible(b);
-}
-
 bool Chrome::statusbarVisible() const
 {
     return m_client->statusbarVisible();
 }
 
-void Chrome::setScrollbarsVisible(bool b) const
-{
-    m_client->setScrollbarsVisible(b);
-}
-
 bool Chrome::scrollbarsVisible() const
 {
     return m_client->scrollbarsVisible();
 }
 
-void Chrome::setMenubarVisible(bool b) const
-{
-    m_client->setMenubarVisible(b);
-}
-
 bool Chrome::menubarVisible() const
 {
     return m_client->menubarVisible();
 }
 
-void Chrome::setResizable(bool b) const
-{
-    m_client->setResizable(b);
-}
-
 bool Chrome::canRunBeforeUnloadConfirmPanel()
 {
     return m_client->canRunBeforeUnloadConfirmPanel();
diff --git a/Source/core/page/Chrome.h b/Source/core/page/Chrome.h
index ecddbbe..0d1a127 100644
--- a/Source/core/page/Chrome.h
+++ b/Source/core/page/Chrome.h
@@ -50,7 +50,8 @@
 
 struct DateTimeChooserParameters;
 struct ViewportArguments;
-    
+struct WindowFeatures;
+
 class Chrome : public HostWindow {
 public:
     ~Chrome();
@@ -92,20 +93,13 @@
     bool canRunModalNow() const;
     void runModal() const;
 
-    void setToolbarsVisible(bool) const;
+    void setWindowFeatures(const WindowFeatures&) const;
+
     bool toolbarsVisible() const;
-
-    void setStatusbarVisible(bool) const;
     bool statusbarVisible() const;
-
-    void setScrollbarsVisible(bool) const;
     bool scrollbarsVisible() const;
-
-    void setMenubarVisible(bool) const;
     bool menubarVisible() const;
 
-    void setResizable(bool) const;
-
     bool canRunBeforeUnloadConfirmPanel();
     bool runBeforeUnloadConfirmPanel(const String& message, Frame*);
 
diff --git a/Source/core/page/ChromeClient.h b/Source/core/page/ChromeClient.h
index b95a1df..d97cbff 100644
--- a/Source/core/page/ChromeClient.h
+++ b/Source/core/page/ChromeClient.h
@@ -258,7 +258,7 @@
     virtual bool shouldRunModalDialogDuringPageDismissal(const DialogType&, const String& dialogMessage, FrameLoader::PageDismissalType) const { UNUSED_PARAM(dialogMessage); return true; }
 
     virtual void numWheelEventHandlersChanged(unsigned) = 0;
-        
+
     virtual bool isSVGImageChromeClient() const { return false; }
 
     virtual bool requestPointerLock() { return false; }
diff --git a/Source/core/page/ContentSecurityPolicy.cpp b/Source/core/page/ContentSecurityPolicy.cpp
index 0760cce..607011a 100644
--- a/Source/core/page/ContentSecurityPolicy.cpp
+++ b/Source/core/page/ContentSecurityPolicy.cpp
@@ -41,6 +41,7 @@
 #include "core/page/UseCounter.h"
 #include "core/platform/JSONValues.h"
 #include "core/platform/network/FormData.h"
+#include "core/platform/network/ResourceResponse.h"
 #include "weborigin/KURL.h"
 #include "weborigin/KnownPorts.h"
 #include "weborigin/SchemeRegistry.h"
@@ -163,6 +164,14 @@
 
 } // namespace
 
+ContentSecurityPolicyResponseHeaders::ContentSecurityPolicyResponseHeaders(const ResourceResponse& response)
+    : m_contentSecuitryPolicy(response.httpHeaderField("Content-Security-Policy"))
+    , m_contentSecurityPolicyReportOnly(response.httpHeaderField("Content-Security-Policy-Report-Only"))
+    , m_xWebKitCSP(response.httpHeaderField("X-WebKit-CSP"))
+    , m_xWebKitCSPReportOnly(response.httpHeaderField("X-WebKit-CSP-Report-Only"))
+{
+}
+
 static bool skipExactly(const UChar*& position, const UChar* end, UChar delimiter)
 {
     if (position < end && *position == delimiter) {
@@ -456,11 +465,7 @@
     if (position < end && *position == '/') {
         // host/path || host/ || /
         //     ^            ^    ^
-        if (!parseHost(beginHost, position, host, hostHasWildcard)
-            || !parsePath(position, end, path)
-            || position != end)
-            return false;
-        return true;
+        return parseHost(beginHost, position, host, hostHasWildcard) && parsePath(position, end, path);
     }
 
     if (position < end && *position == ':') {
@@ -497,7 +502,6 @@
         //              ^                          ^
         if (position == beginHost)
             return false;
-
         beginPath = position;
     }
 
@@ -1421,11 +1425,28 @@
 {
     ASSERT(m_policies.isEmpty());
     for (CSPDirectiveListVector::const_iterator iter = other->m_policies.begin(); iter != other->m_policies.end(); ++iter)
-        didReceiveHeader((*iter)->header(), (*iter)->headerType());
+        addPolicyFromHeaderValue((*iter)->header(), (*iter)->headerType());
+}
+
+void ContentSecurityPolicy::didReceiveHeaders(const ContentSecurityPolicyResponseHeaders& headers)
+{
+    if (!headers.contentSecurityPolicy().isEmpty())
+        didReceiveHeader(headers.contentSecurityPolicy(), ContentSecurityPolicy::Enforce);
+    if (!headers.contentSecurityPolicyReportOnly().isEmpty())
+        didReceiveHeader(headers.contentSecurityPolicyReportOnly(), ContentSecurityPolicy::Report);
+    if (!headers.xWebKitCSP().isEmpty())
+        didReceiveHeader(headers.xWebKitCSP(), ContentSecurityPolicy::PrefixedEnforce);
+    if (!headers.xWebKitCSPReportOnly().isEmpty())
+        didReceiveHeader(headers.xWebKitCSPReportOnly(), ContentSecurityPolicy::PrefixedReport);
 }
 
 void ContentSecurityPolicy::didReceiveHeader(const String& header, HeaderType type)
 {
+    addPolicyFromHeaderValue(header, type);
+}
+
+void ContentSecurityPolicy::addPolicyFromHeaderValue(const String& header, HeaderType type)
+{
     if (m_scriptExecutionContext->isDocument()) {
         Document* document = toDocument(m_scriptExecutionContext);
         if (type == PrefixedReport || type == PrefixedEnforce)
diff --git a/Source/core/page/ContentSecurityPolicy.h b/Source/core/page/ContentSecurityPolicy.h
index 35760a7..7e09483 100644
--- a/Source/core/page/ContentSecurityPolicy.h
+++ b/Source/core/page/ContentSecurityPolicy.h
@@ -41,12 +41,30 @@
 class CSPDirectiveList;
 class DOMStringList;
 class KURL;
+class ResourceResponse;
 class ScriptExecutionContext;
 class SecurityOrigin;
 
 typedef int SandboxFlags;
 typedef Vector<OwnPtr<CSPDirectiveList> > CSPDirectiveListVector;
 
+class ContentSecurityPolicyResponseHeaders {
+public:
+    ContentSecurityPolicyResponseHeaders() { }
+    explicit ContentSecurityPolicyResponseHeaders(const ResourceResponse&);
+
+    const String& contentSecurityPolicy() const { return m_contentSecuitryPolicy; }
+    const String& contentSecurityPolicyReportOnly() const { return m_contentSecurityPolicyReportOnly; }
+    const String& xWebKitCSP() const { return m_xWebKitCSP; }
+    const String& xWebKitCSPReportOnly() const { return m_xWebKitCSPReportOnly; }
+
+private:
+    String m_contentSecuitryPolicy;
+    String m_contentSecurityPolicyReportOnly;
+    String m_xWebKitCSP;
+    String m_xWebKitCSPReportOnly;
+};
+
 class ContentSecurityPolicy {
     WTF_MAKE_FAST_ALLOCATED;
 public:
@@ -79,6 +97,7 @@
         BlockReflectedXSS
     };
 
+    void didReceiveHeaders(const ContentSecurityPolicyResponseHeaders&);
     void didReceiveHeader(const String&, HeaderType);
 
     // These functions are wrong because they assume that there is only one header.
@@ -141,6 +160,7 @@
     explicit ContentSecurityPolicy(ScriptExecutionContext*);
 
     void logToConsole(const String& message, const String& contextURL = String(), const WTF::OrdinalNumber& contextLine = WTF::OrdinalNumber::beforeFirst(), ScriptState* = 0) const;
+    void addPolicyFromHeaderValue(const String&, HeaderType);
 
     ScriptExecutionContext* m_scriptExecutionContext;
     bool m_overrideInlineStyleAllowed;
diff --git a/Source/core/page/ContextMenuClient.h b/Source/core/page/ContextMenuClient.h
index 1c5b706..964924b 100644
--- a/Source/core/page/ContextMenuClient.h
+++ b/Source/core/page/ContextMenuClient.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ContextMenuClient_h
diff --git a/Source/core/page/ContextMenuController.cpp b/Source/core/page/ContextMenuController.cpp
index 49e2a58..c12a904 100644
--- a/Source/core/page/ContextMenuController.cpp
+++ b/Source/core/page/ContextMenuController.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -92,7 +92,7 @@
 PassOwnPtr<ContextMenu> ContextMenuController::createContextMenu(Event* event)
 {
     ASSERT(event);
-    
+
     if (!event->isMouseEvent())
         return nullptr;
 
diff --git a/Source/core/page/ContextMenuController.h b/Source/core/page/ContextMenuController.h
index c3bc10f..a2b6ae6 100644
--- a/Source/core/page/ContextMenuController.h
+++ b/Source/core/page/ContextMenuController.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ContextMenuController_h
diff --git a/Source/core/page/CreateWindow.cpp b/Source/core/page/CreateWindow.cpp
index 206ad49..aa70c85 100644
--- a/Source/core/page/CreateWindow.cpp
+++ b/Source/core/page/CreateWindow.cpp
@@ -93,11 +93,7 @@
     if (request.frameName() != "_blank")
         frame->tree()->setName(request.frameName());
 
-    page->chrome().setToolbarsVisible(features.toolBarVisible || features.locationBarVisible);
-    page->chrome().setStatusbarVisible(features.statusBarVisible);
-    page->chrome().setScrollbarsVisible(features.scrollbarsVisible);
-    page->chrome().setMenubarVisible(features.menuBarVisible);
-    page->chrome().setResizable(features.resizable);
+    page->chrome().setWindowFeatures(features);
 
     // 'x' and 'y' specify the location of the window, while 'width' and 'height'
     // specify the size of the viewport. We can only resize the window, so adjust
diff --git a/Source/core/page/DOMSelection.cpp b/Source/core/page/DOMSelection.cpp
index ab8844c..a9ecb80 100644
--- a/Source/core/page/DOMSelection.cpp
+++ b/Source/core/page/DOMSelection.cpp
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/page/DOMSelection.h b/Source/core/page/DOMSelection.h
index da36bb2..e95d000 100644
--- a/Source/core/page/DOMSelection.h
+++ b/Source/core/page/DOMSelection.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/page/DragActions.h b/Source/core/page/DragActions.h
index c9793f3..d98c9c4 100644
--- a/Source/core/page/DragActions.h
+++ b/Source/core/page/DragActions.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DragActions_h
@@ -38,7 +38,7 @@
         DragDestinationActionLoad    = 4,
         DragDestinationActionAny     = UINT_MAX
     } DragDestinationAction;
-    
+
     // WebCoreDragSourceAction should be kept in sync with WebDragSourceAction
     typedef enum {
         DragSourceActionNone         = 0,
@@ -47,7 +47,7 @@
         DragSourceActionLink         = 4,
         DragSourceActionSelection    = 8,
     } DragSourceAction;
-    
+
     //matches NSDragOperation
     typedef enum {
         DragOperationNone    = 0,
@@ -59,7 +59,7 @@
         DragOperationDelete  = 32,
         DragOperationEvery   = UINT_MAX
     } DragOperation;
-    
+
 }
 
 #endif // !DragActions_h
diff --git a/Source/core/page/DragClient.h b/Source/core/page/DragClient.h
index c8d1b2b..dcc2e41 100644
--- a/Source/core/page/DragClient.h
+++ b/Source/core/page/DragClient.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 
diff --git a/Source/core/page/DragController.cpp b/Source/core/page/DragController.cpp
index 9da39e9..3843ff5 100644
--- a/Source/core/page/DragController.cpp
+++ b/Source/core/page/DragController.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -370,14 +370,14 @@
         Element* element = elementUnderMouse(m_documentUnderMouse.get(), point);
         if (!element)
             return false;
-        
+
         HTMLInputElement* elementAsFileInput = asFileInput(element);
         if (m_fileInputElementUnderMouse != elementAsFileInput) {
             if (m_fileInputElementUnderMouse)
                 m_fileInputElementUnderMouse->setCanReceiveDroppedFiles(false);
             m_fileInputElementUnderMouse = elementAsFileInput;
         }
-        
+
         if (!m_fileInputElementUnderMouse)
             m_page->dragCaretController()->setCaretPosition(m_documentUnderMouse->frame()->visiblePositionForPoint(point));
 
@@ -396,7 +396,7 @@
                 dragSession.numberOfItemsToBeAccepted = 0;
             else
                 dragSession.numberOfItemsToBeAccepted = 1;
-            
+
             if (!dragSession.numberOfItemsToBeAccepted)
                 dragSession.operation = DragOperationNone;
             m_fileInputElementUnderMouse->setCanReceiveDroppedFiles(dragSession.numberOfItemsToBeAccepted);
@@ -405,10 +405,10 @@
             // be loaded into the view the number of dragged items is 1.
             dragSession.numberOfItemsToBeAccepted = numberOfFiles != 1 ? 0 : 1;
         }
-        
+
         return true;
     }
-    
+
     // We are not over an editable region. Make sure we're clearing any prior drag cursor.
     m_page->dragCaretController()->clear();
     if (m_fileInputElementUnderMouse)
@@ -583,7 +583,7 @@
         return DragOperationCopy;
     if (srcOpMask & DragOperationLink)
         return DragOperationLink;
-    
+
     // FIXME: Does IE really return "generic" even if no operations were allowed by the source?
     return DragOperationGeneric;
 }
diff --git a/Source/core/page/DragController.h b/Source/core/page/DragController.h
index e35a14a..65a705f 100644
--- a/Source/core/page/DragController.h
+++ b/Source/core/page/DragController.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DragController_h
@@ -62,15 +62,15 @@
         void dragExited(DragData*);
         DragSession dragUpdated(DragData*);
         bool performDrag(DragData*);
-        
+
         Node* draggableNode(const Frame*, Node*, const IntPoint&, DragState&) const;
         void dragEnded();
-        
+
         bool populateDragClipboard(Frame* src, const DragState&, const IntPoint& dragOrigin);
         bool startDrag(Frame* src, const DragState&, const PlatformMouseEvent& dragEvent, const IntPoint& dragOrigin);
-        
+
         static const int DragIconRightInset;
-        static const int DragIconBottomInset;        
+        static const int DragIconBottomInset;
 
     private:
         DragController(Page*, DragClient*);
diff --git a/Source/core/page/DragSession.h b/Source/core/page/DragSession.h
index 0d3a75b..8c2e5e3 100644
--- a/Source/core/page/DragSession.h
+++ b/Source/core/page/DragSession.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DragSession_h
@@ -29,7 +29,7 @@
 #include "core/page/DragActions.h"
 
 namespace WebCore {
-    
+
 struct DragSession {
     DragOperation operation;
     bool mouseIsOverFileInput;
diff --git a/Source/core/page/DragState.h b/Source/core/page/DragState.h
index 1fa5b35..5b8780c 100644
--- a/Source/core/page/DragState.h
+++ b/Source/core/page/DragState.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DragState_h
diff --git a/Source/core/page/EditorClient.h b/Source/core/page/EditorClient.h
index d98452a..4263ca9 100644
--- a/Source/core/page/EditorClient.h
+++ b/Source/core/page/EditorClient.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef EditorClient_h
@@ -60,7 +60,7 @@
     virtual ~EditorClient() {  }
 
     virtual bool shouldDeleteRange(Range*) = 0;
-    virtual bool smartInsertDeleteEnabled() = 0; 
+    virtual bool smartInsertDeleteEnabled() = 0;
     virtual bool isSelectTrailingWhitespaceEnabled() = 0;
     virtual bool isContinuousSpellCheckingEnabled() = 0;
     virtual void toggleContinuousSpellChecking() = 0;
@@ -71,7 +71,7 @@
     virtual bool shouldInsertNode(Node*, Range*, EditorInsertAction) = 0;
     virtual bool shouldInsertText(const String&, Range*, EditorInsertAction) = 0;
     virtual bool shouldChangeSelectedRange(Range* fromRange, Range* toRange, EAffinity, bool stillSelecting) = 0;
-    
+
     virtual bool shouldApplyStyle(StylePropertySet*, Range*) = 0;
 
     virtual void didBeginEditing() = 0;
@@ -88,7 +88,7 @@
     virtual bool canPaste(Frame*, bool defaultValue) const = 0;
     virtual bool canUndo() const = 0;
     virtual bool canRedo() const = 0;
-    
+
     virtual void undo() = 0;
     virtual void redo() = 0;
 
diff --git a/Source/core/page/EventHandler.cpp b/Source/core/page/EventHandler.cpp
index d7a1900..ddab1bf 100644
--- a/Source/core/page/EventHandler.cpp
+++ b/Source/core/page/EventHandler.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -518,7 +518,7 @@
 {
     if (event.event().button() != LeftButton)
         return false;
-    
+
     Node* innerNode = event.targetNode();
     if (!(innerNode && innerNode->renderer() && m_mouseDownMayStartSelect))
         return false;
@@ -670,7 +670,7 @@
         swallowEvent = handleMousePressEventTripleClick(event);
     else
         swallowEvent = handleMousePressEventSingleClick(event);
-    
+
     m_mouseDownMayStartAutoscroll = m_mouseDownMayStartSelect
         || (m_mousePressNode && m_mousePressNode->renderBox() && m_mousePressNode->renderBox()->canBeProgramaticallyScrolled());
 
@@ -779,7 +779,7 @@
         // Reset base for user select all when base is inside user-select-all area and extent < base.
         if (rootUserSelectAllForMousePressNode && comparePositions(target->renderer()->positionForPoint(hitTestResult.localPoint()), m_mousePressNode->renderer()->positionForPoint(m_dragStartPos)) < 0)
             newSelection.setBase(positionAfterNode(rootUserSelectAllForMousePressNode).downstream(CanCrossEditingBoundary));
-        
+
         Node* rootUserSelectAllForTarget = Position::rootUserSelectAllForNode(target);
         if (rootUserSelectAllForTarget && m_mousePressNode->renderer() && comparePositions(target->renderer()->positionForPoint(hitTestResult.localPoint()), m_mousePressNode->renderer()->positionForPoint(m_dragStartPos)) < 0)
             newSelection.setExtent(positionBeforeNode(rootUserSelectAllForTarget).upstream(CanCrossEditingBoundary));
@@ -812,7 +812,7 @@
     // in a window, we just don't acceptFirstMouse, and the whole down-drag-up sequence gets
     // ignored upstream of this layer.
     return false;
-}    
+}
 
 bool EventHandler::handleMouseReleaseEvent(const MouseEventWithHitTestResults& event)
 {
@@ -831,7 +831,7 @@
     m_mouseDownMayStartSelect = false;
     m_mouseDownMayStartAutoscroll = false;
     m_mouseDownWasInSubframe = false;
-  
+
     bool handled = false;
 
     // Clear the selection if the mouse didn't move after the last mouse
@@ -954,7 +954,7 @@
 
     if (!node)
         node = m_mousePressNode.get();
-    
+
     if (node) {
         RenderObject* r = node->renderer();
         if (r && !r->isListBox() && r->enclosingBox()->scroll(direction, granularity)) {
@@ -975,7 +975,7 @@
 
     if (!node)
         node = m_mousePressNode.get();
-    
+
     if (node) {
         RenderObject* r = node->renderer();
         if (r && !r->isListBox() && r->enclosingBox()->logicalScroll(direction, granularity)) {
@@ -993,7 +993,7 @@
     // here because of an onLoad event, in which case the final layout hasn't been performed yet.
     m_frame->document()->updateLayoutIgnorePendingStylesheets();
     if (scrollOverflow(direction, granularity, startingNode))
-        return true;    
+        return true;
     Frame* frame = m_frame;
     FrameView* view = frame->view();
     if (view && view->scroll(direction, granularity))
@@ -1010,17 +1010,17 @@
     // here because of an onLoad event, in which case the final layout hasn't been performed yet.
     m_frame->document()->updateLayoutIgnorePendingStylesheets();
     if (logicalScrollOverflow(direction, granularity, startingNode))
-        return true;    
+        return true;
     Frame* frame = m_frame;
     FrameView* view = frame->view();
-    
+
     bool scrolled = false;
     if (view && view->logicalScroll(direction, granularity))
         scrolled = true;
-    
+
     if (scrolled)
         return true;
-    
+
     frame = frame->tree()->parent();
     if (!frame)
         return false;
@@ -1283,7 +1283,7 @@
 
     // FIXME (bug 68185): this call should be made at another abstraction layer
     m_frame->loader()->resetMultipleFormSubmissionProtection();
-    
+
     cancelFakeMouseMoveEvent();
     if (m_eventHandlerWillResetCapturingMouseEventsNode)
         m_capturingMouseEventsNode = 0;
@@ -1449,7 +1449,7 @@
     }
 
     if (FrameView* frameView = m_frame->view())
-        frameView->mouseMovedInContentArea();  
+        frameView->mouseMovedInContentArea();
 
     hoveredNode.setToShadowHostIfInUserAgentShadowRoot();
     page->chrome().mouseDidMoveOverElement(hoveredNode, event.modifierFlags());
@@ -1500,10 +1500,10 @@
     if (m_mousePressed)
         hitType |= HitTestRequest::Active;
     else if (onlyUpdateScrollbars) {
-        // Mouse events should be treated as "read-only" if we're updating only scrollbars. This  
-        // means that :hover and :active freeze in the state they were in, rather than updating  
-        // for nodes the mouse moves while the window is not key (which will be the case if 
-        // onlyUpdateScrollbars is true). 
+        // Mouse events should be treated as "read-only" if we're updating only scrollbars. This
+        // means that :hover and :active freeze in the state they were in, rather than updating
+        // for nodes the mouse moves while the window is not key (which will be the case if
+        // onlyUpdateScrollbars is true).
         hitType |= HitTestRequest::ReadOnly;
     }
 
@@ -1533,7 +1533,7 @@
 
     bool swallowEvent = false;
     RefPtr<Frame> newSubframe = m_capturingMouseEventsNode.get() ? subframeForTargetNode(m_capturingMouseEventsNode.get()) : subframeForHitTestResult(mev);
- 
+
     // We want mouseouts to happen first, from the inside out.  First send a move event to the last subframe so that it will fire mouseouts.
     if (m_lastMouseMoveEventSubframe && m_lastMouseMoveEventSubframe->tree()->isDescendantOf(m_frame) && m_lastMouseMoveEventSubframe != newSubframe)
         passMouseMoveEventToSubframe(mev, m_lastMouseMoveEventSubframe.get());
@@ -1541,7 +1541,7 @@
     if (newSubframe) {
         // Update over/out state before passing the event to the subframe.
         updateMouseEventTargetNode(mev.targetNode(), mouseEvent, true);
-        
+
         // Event dispatch in updateMouseEventTargetNode may have caused the subframe of the target
         // node to be detached from its FrameView, in which case the event should not be passed.
         if (newSubframe->view())
@@ -1557,12 +1557,12 @@
             }
         }
     }
-    
+
     m_lastMouseMoveEventSubframe = newSubframe;
 
     if (swallowEvent)
         return true;
-    
+
     swallowEvent = !dispatchMouseEvent(eventNames().mousemoveEvent, mev.targetNode(), false, 0, mouseEvent, true);
     if (!swallowEvent)
         swallowEvent = handleMouseDraggedEvent(mev);
@@ -1749,13 +1749,13 @@
 
         if (dropZoneStr.isEmpty())
             continue;
-        
+
         dropZoneStr.makeLower();
-        
+
         SpaceSplitString keywords(dropZoneStr, false);
         if (keywords.isNull())
             continue;
-        
+
         DragOperation dragOperation = DragOperationNone;
         for (unsigned int i = 0; i < keywords.size(); i++) {
             DragOperation op = convertDropZoneOperationToDragOperation(keywords[i]);
@@ -1775,7 +1775,7 @@
     }
     return false;
 }
-    
+
 bool EventHandler::updateDragAndDrop(const PlatformMouseEvent& event, Clipboard* clipboard)
 {
     bool accept = false;
@@ -1916,7 +1916,7 @@
 void EventHandler::updateMouseEventTargetNode(Node* targetNode, const PlatformMouseEvent& mouseEvent, bool fireMouseOverOut)
 {
     Node* result = targetNode;
-    
+
     // If we're capturing, we always go right to that node.
     if (m_capturingMouseEventsNode)
         result = m_capturingMouseEventsNode.get();
@@ -2048,7 +2048,7 @@
                     && m_frame->selection()->toNormalizedRange()->compareNode(n, IGNORE_EXCEPTION) == Range::NODE_INSIDE
                     && n->isDescendantOf(m_frame->document()->focusedElement()))
                     return true;
-                    
+
                 break;
             }
             node = node->parentOrShadowHostNode();
@@ -2112,7 +2112,7 @@
 
     if (!doc->renderer())
         return false;
-    
+
     RefPtr<FrameView> protector(m_frame->view());
 
     FrameView* view = m_frame->view();
@@ -2158,7 +2158,7 @@
     if (node) {
         // Figure out which view to send the event to.
         RenderObject* target = node->renderer();
-        
+
         if (isOverWidget && target && target->isWidget()) {
             Widget* widget = toRenderWidget(target)->widget();
             if (widget && passWheelEventToWidget(e, widget))
@@ -2184,18 +2184,18 @@
 {
     if (!startNode || !wheelEvent)
         return;
-    
+
     Node* stopNode = m_previousWheelScrolledNode.get();
     ScrollGranularity granularity = wheelGranularityToScrollGranularity(wheelEvent->deltaMode());
-    
-    // Break up into two scrolls if we need to.  Diagonal movement on 
+
+    // Break up into two scrolls if we need to.  Diagonal movement on
     // a MacBook pro is an example of a 2-dimensional mouse wheel event (where both deltaX and deltaY can be set).
     if (scrollNode(wheelEvent->rawDeltaX(), granularity, ScrollLeft, ScrollRight, startNode, &stopNode))
         wheelEvent->setDefaultHandled();
-    
+
     if (scrollNode(wheelEvent->rawDeltaY(), granularity, ScrollUp, ScrollDown, startNode, &stopNode))
         wheelEvent->setDefaultHandled();
-    
+
     if (!m_latchedWheelEventNode)
         m_previousWheelScrolledNode = stopNode;
 }
@@ -2542,7 +2542,7 @@
         stopNode = m_previousGestureScrolledNode.get();
 
     // First try to scroll the closest scrollable RenderBox ancestor of |node|.
-    ScrollGranularity granularity = ScrollByPixel; 
+    ScrollGranularity granularity = ScrollByPixel;
     bool horizontalScroll = scrollNode(delta.width(), granularity, ScrollLeft, ScrollRight, node, &stopNode);
     bool verticalScroll = scrollNode(delta.height(), granularity, ScrollUp, ScrollDown, node, &stopNode);
 
@@ -2568,7 +2568,7 @@
     IntPoint point(gestureEvent.position().x(), gestureEvent.position().y());
     IntPoint globalPoint(gestureEvent.globalPosition().x(), gestureEvent.globalPosition().y());
     PlatformWheelEvent syntheticWheelEvent(point, globalPoint,
-        scaledDelta.width(), scaledDelta.height(), 
+        scaledDelta.width(), scaledDelta.height(),
         scaledDelta.width() / tickDivisor, scaledDelta.height() / tickDivisor,
         ScrollByPixelWheelEvent,
         gestureEvent.shiftKey(), gestureEvent.ctrlKey(), gestureEvent.altKey(), gestureEvent.metaKey());
@@ -2621,7 +2621,7 @@
     // FIXME: Should be able to handle targetNode being a shadow DOM node to avoid performing uncessary hit tests
     // in the case where further processing on the node is required. Returning the shadow ancestor prevents a
     // regression in touchadjustment/html-label.html. Some refinement is required to testing/internals to
-    // handle targetNode being a shadow DOM node. 
+    // handle targetNode being a shadow DOM node.
     bool success = findBestClickableCandidate(targetNode, targetPoint, touchCenter, touchRect, nodes);
     if (success && targetNode)
         targetNode = targetNode->deprecatedShadowAncestorNode();
@@ -2949,7 +2949,7 @@
 
 bool EventHandler::keyEvent(const PlatformKeyboardEvent& initialKeyEvent)
 {
-    RefPtr<FrameView> protector(m_frame->view()); 
+    RefPtr<FrameView> protector(m_frame->view());
 
     if (FullscreenController* fullscreen = FullscreenController::fromIfExists(m_frame->document())) {
         if (fullscreen->webkitIsFullScreen() && !isKeyEventAllowedInFullScreen(fullscreen, initialKeyEvent))
@@ -2998,7 +2998,7 @@
     if (initialKeyEvent.type() == PlatformEvent::KeyUp || initialKeyEvent.type() == PlatformEvent::Char)
         return !node->dispatchKeyEvent(initialKeyEvent);
 
-    PlatformKeyboardEvent keyDownEvent = initialKeyEvent;    
+    PlatformKeyboardEvent keyDownEvent = initialKeyEvent;
     if (keyDownEvent.type() != PlatformEvent::RawKeyDown)
         keyDownEvent.disambiguateKeyDownEvent(PlatformEvent::RawKeyDown);
     RefPtr<KeyboardEvent> keydown = KeyboardEvent::create(keyDownEvent, m_frame->document()->defaultView());
@@ -3019,7 +3019,7 @@
     bool keydownResult = keydown->defaultHandled() || keydown->defaultPrevented() || changedFocusedFrame;
     if (keydownResult)
         return keydownResult;
-    
+
     // Focus may have changed during keydown handling, so refetch node.
     // But if we are dispatching a fake backward compatibility keypress, then we pretend that the keypress happened on the original node.
     node = eventTargetNodeForDocument(m_frame->document());
@@ -3098,7 +3098,7 @@
         return false;
     IntPoint dragLocation = view->windowToContents(flooredIntPoint(dragViewportLocation));
     IntSize delta = dragLocation - m_mouseDownPos;
-    
+
     int threshold = GeneralDragHysteresis;
     switch (dragState().m_dragType) {
     case DragSourceActionSelection:
@@ -3115,10 +3115,10 @@
     case DragSourceActionNone:
         ASSERT_NOT_REACHED();
     }
-    
+
     return abs(delta.width()) >= threshold || abs(delta.height()) >= threshold;
 }
-    
+
 void EventHandler::freeClipboard()
 {
     if (dragState().m_dragClipboard)
@@ -3155,7 +3155,7 @@
 {
     return !dispatchDragEvent(eventType, dragState().m_dragSrc.get(), event, dragState().m_dragClipboard.get());
 }
-    
+
 static bool exactlyOneBitSet(DragSourceAction n)
 {
     return n && !(n & (n - 1));
@@ -3189,13 +3189,13 @@
             dragState().m_dragSrc = m_frame->page()->dragController()->draggableNode(m_frame, node, m_mouseDownPos, dragState());
         else
             dragState().m_dragSrc = 0;
-        
+
         if (!dragState().m_dragSrc)
             m_mouseDownMayStartDrag = false; // no element is draggable
         else
             m_dragMayStartSelectionInstead = (dragState().m_dragType & DragSourceActionSelection);
     }
-    
+
     // For drags starting in the selection, the user must wait between the mousedown and mousedrag,
     // or else we bail on the dragging stuff and allow selection to occur
     if (m_mouseDownMayStartDrag && m_dragMayStartSelectionInstead && (dragState().m_dragType & DragSourceActionSelection) && event.event().timestamp() - m_mouseDownTimestamp < TextDragDelay) {
@@ -3219,10 +3219,10 @@
             m_dragMayStartSelectionInstead = false;
         }
     }
-    
+
     if (!m_mouseDownMayStartDrag)
         return !mouseDownMayStartSelect() && !m_mouseDownMayStartAutoscroll;
-    
+
     if (!exactlyOneBitSet(dragState().m_dragType)) {
         ASSERT((dragState().m_dragType & DragSourceActionSelection));
         ASSERT((dragState().m_dragType & ~DragSourceActionSelection) == DragSourceActionDHTML
@@ -3237,10 +3237,10 @@
 
     if (checkDragHysteresis == ShouldCheckDragHysteresis && !dragHysteresisExceeded(event.event().position()))
         return true;
-    
+
     // Once we're past the hysteresis point, we don't want to treat this gesture as a click
     invalidateClick();
-    
+
     if (!tryStartDrag(event)) {
         // Something failed to start the drag, clean up.
         freeClipboard();
@@ -3256,8 +3256,8 @@
 {
     freeClipboard(); // would only happen if we missed a dragEnd.  Do it anyway, just
                      // to make sure it gets numbified
-    dragState().m_dragClipboard = createDraggingClipboard();  
-    
+    dragState().m_dragClipboard = createDraggingClipboard();
+
     // Check to see if this a DOM based drag, if it is get the DOM specified drag
     // image and offset
     if (dragState().m_dragType == DragSourceActionDHTML) {
@@ -3283,7 +3283,7 @@
     // Invalidate clipboard here against anymore pasteboard writing for security. The drag
     // image can still be changed as we drag, but not the pasteboard data.
     dragState().m_dragClipboard->setAccessPolicy(ClipboardImageWritable);
-    
+
     if (m_mouseDownMayStartDrag) {
         // Yuck, a draggedImage:moveTo: message can be fired as a result of kicking off the
         // drag with dragImage! Because of that dumb reentrancy, we may think we've not
@@ -3321,7 +3321,7 @@
         target = eventTargetNodeForDocument(m_frame->document());
     if (!target)
         return false;
-    
+
     if (FrameView* view = m_frame->view())
         view->resetDeferredRepaintDelay();
 
@@ -3331,13 +3331,13 @@
     target->dispatchEvent(event, IGNORE_EXCEPTION);
     return event->defaultHandled();
 }
-    
+
 bool EventHandler::isKeyboardOptionTab(KeyboardEvent* event)
 {
     return event
         && (event->type() == eventNames().keydownEvent || event->type() == eventNames().keypressEvent)
         && event->altKey()
-        && event->keyIdentifier() == "U+0009";    
+        && event->keyIdentifier() == "U+0009";
 }
 
 void EventHandler::defaultTextInputEventHandler(TextEvent* event)
diff --git a/Source/core/page/EventHandler.h b/Source/core/page/EventHandler.h
index 0d44e6f..ae00583 100644
--- a/Source/core/page/EventHandler.h
+++ b/Source/core/page/EventHandler.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef EventHandler_h
@@ -198,7 +198,7 @@
 private:
     static DragState& dragState();
     static const double TextDragDelay;
-    
+
     PassRefPtr<Clipboard> createDraggingClipboard() const;
 
     bool updateSelectionForMouseDownDispatchingSelectStart(Node*, const VisibleSelection&, TextGranularity);
@@ -220,7 +220,7 @@
     void hoverTimerFired(Timer<EventHandler>*);
 
     bool logicalScrollOverflow(ScrollLogicalDirection, ScrollGranularity, Node* startingNode = 0);
-    
+
     bool shouldTurnVerticalTicksIntoHorizontal(const HitTestResult&, const PlatformWheelEvent&) const;
     bool mouseDownMayStartSelect() const { return m_mouseDownMayStartSelect; }
 
@@ -240,10 +240,10 @@
     void invalidateClick();
 
     Node* nodeUnderMouse() const;
-    
+
     void updateMouseEventTargetNode(Node*, const PlatformMouseEvent&, bool fireMouseOverOut);
     void fireMouseOverOut(bool fireMouseOver = true, bool fireMouseOut = true, bool updateLastNodeUnderMouse = true);
-    
+
     MouseEventWithHitTestResults prepareMouseEvent(const HitTestRequest&, const PlatformMouseEvent&);
 
     bool dispatchMouseEvent(const AtomicString& eventType, Node* target, bool cancelable, int clickCount, const PlatformMouseEvent&, bool setUnder);
@@ -283,7 +283,7 @@
     void updateSelectionForMouseDrag(const HitTestResult&);
 
     void updateLastScrollbarUnderMouse(Scrollbar*, bool);
-    
+
     void setFrameWasScrolledByUser();
 
     bool capturesDragging() const { return m_capturesDragging; }
@@ -334,7 +334,7 @@
 
     RefPtr<Node> m_capturingMouseEventsNode;
     bool m_eventHandlerWillResetCapturingMouseEventsNode;
-    
+
     RefPtr<Node> m_nodeUnderMouse;
     RefPtr<Node> m_lastNodeUnderMouse;
     RefPtr<Frame> m_lastMouseMoveEventSubframe;
@@ -346,11 +346,11 @@
 
     RefPtr<Node> m_dragTarget;
     bool m_shouldOnlyFireDragOverEvent;
-    
+
     RefPtr<HTMLFrameSetElement> m_frameSetBeingResized;
 
     LayoutSize m_offsetFromResizeCorner; // In the coords of m_resizeLayer.
-    
+
     bool m_mousePositionIsUnknown;
     IntPoint m_lastKnownMousePosition;
     IntPoint m_lastKnownMouseGlobalPosition;
diff --git a/Source/core/page/FocusController.cpp b/Source/core/page/FocusController.cpp
index e7f43b9..bc6e613 100644
--- a/Source/core/page/FocusController.cpp
+++ b/Source/core/page/FocusController.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -212,7 +212,7 @@
 {
     if (isFocused() == focused)
         return;
-    
+
     m_isFocused = focused;
 
     if (!m_isFocused)
@@ -248,8 +248,8 @@
 bool FocusController::setInitialFocus(FocusDirection direction, KeyboardEvent* event)
 {
     bool didAdvanceFocus = advanceFocus(direction, event, true);
-    
-    // If focus is being set initially, accessibility needs to be informed that system focus has moved 
+
+    // If focus is being set initially, accessibility needs to be informed that system focus has moved
     // into the web area again, even if focus did not change within WebCore. PostNotification is called instead
     // of handleFocusedUIElementChanged, because this will send the notification even if the element is the same.
     if (AXObjectCache* cache = focusedOrMainFrame()->document()->existingAXObjectCache())
@@ -331,7 +331,7 @@
         setFocusedFrame(owner->contentFrame());
         return true;
     }
-    
+
     // FIXME: It would be nice to just be able to call setFocusedElement(node)
     // here, but we can't do that because some elements (e.g. HTMLInputElement
     // and HTMLTextAreaElement) do extra work in their focus() methods.
@@ -544,10 +544,10 @@
 {
     if (!oldFocusedFrame || !newFocusedFrame)
         return;
-        
+
     if (oldFocusedFrame->document() != newFocusedFrame->document())
         return;
-    
+
     FrameSelection* s = oldFocusedFrame->selection();
     if (s->isNone())
         return;
@@ -581,7 +581,7 @@
 {
     RefPtr<Frame> oldFocusedFrame = focusedFrame();
     RefPtr<Document> oldDocument = oldFocusedFrame ? oldFocusedFrame->document() : 0;
-    
+
     Element* oldFocusedElement = oldDocument ? oldDocument->focusedElement() : 0;
     if (oldFocusedElement == element)
         return true;
@@ -604,7 +604,7 @@
 
     if (newDocument && newDocument->focusedElement() == element)
         return true;
-    
+
     if (oldDocument && oldDocument != newDocument)
         oldDocument->setFocusedElement(0);
 
@@ -638,7 +638,7 @@
     }
 
     focusedOrMainFrame()->selection()->pageActivationChanged();
-    
+
     if (m_focusedFrame && isFocused())
         dispatchEventsOnWindowAndFocusedNode(m_focusedFrame->document(), active);
 }
@@ -844,7 +844,7 @@
 
     if (container->isDocumentNode())
         toDocument(container)->updateLayoutIgnorePendingStylesheets();
-        
+
     // Figure out the starting rect.
     LayoutRect startingRect;
     if (focusedElement) {
diff --git a/Source/core/page/FocusController.h b/Source/core/page/FocusController.h
index 676489b..96f2928 100644
--- a/Source/core/page/FocusController.h
+++ b/Source/core/page/FocusController.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FocusController_h
@@ -69,7 +69,7 @@
 
     bool setInitialFocus(FocusDirection, KeyboardEvent*);
     bool advanceFocus(FocusDirection, KeyboardEvent*, bool initialFocus = false);
-        
+
     bool setFocusedElement(Element*, PassRefPtr<Frame>, FocusDirection = FocusDirectionNone);
 
     void setActive(bool);
@@ -120,5 +120,5 @@
 };
 
 } // namespace WebCore
-    
+
 #endif // FocusController_h
diff --git a/Source/core/page/FocusDirection.h b/Source/core/page/FocusDirection.h
index 4dcb6b8..fc0ded3 100644
--- a/Source/core/page/FocusDirection.h
+++ b/Source/core/page/FocusDirection.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FocusDirection_h
diff --git a/Source/core/page/Frame.cpp b/Source/core/page/Frame.cpp
index d1e1e44..0093b1d 100644
--- a/Source/core/page/Frame.cpp
+++ b/Source/core/page/Frame.cpp
@@ -269,9 +269,15 @@
     return resultSize;
 }
 
-void Frame::setDOMWindow(PassRefPtr<DOMWindow> domWindow)
+void Frame::clearDOMWindow()
 {
-    m_domWindow = domWindow;
+    m_domWindow = 0;
+}
+
+void Frame::ensureDOMWindow()
+{
+    if (!m_domWindow)
+        m_domWindow = DOMWindow::create(this);
 }
 
 Document* Frame::document() const
diff --git a/Source/core/page/Frame.h b/Source/core/page/Frame.h
index 7e90ab9..01fb45b 100644
--- a/Source/core/page/Frame.h
+++ b/Source/core/page/Frame.h
@@ -86,7 +86,9 @@
         Page* page() const;
         HTMLFrameOwnerElement* ownerElement() const;
 
-        void setDOMWindow(PassRefPtr<DOMWindow>);
+        void clearDOMWindow();
+        void ensureDOMWindow();
+
         DOMWindow* domWindow() const;
         Document* document() const;
         FrameView* view() const;
diff --git a/Source/core/page/FrameActionScheduler.cpp b/Source/core/page/FrameActionScheduler.cpp
index c365999..dd09db0 100644
--- a/Source/core/page/FrameActionScheduler.cpp
+++ b/Source/core/page/FrameActionScheduler.cpp
@@ -92,7 +92,7 @@
 {
     Vector< OwnPtr<FrameAction> > snapshot;
     m_scheduledActions.swap(snapshot);
-    
+
     for (Vector< OwnPtr<FrameAction> >::iterator i = snapshot.begin(); i != snapshot.end(); ++i)
         (*i)->fire();
 }
diff --git a/Source/core/page/FrameTree.cpp b/Source/core/page/FrameTree.cpp
index f9e06a6..a137634 100644
--- a/Source/core/page/FrameTree.cpp
+++ b/Source/core/page/FrameTree.cpp
@@ -40,7 +40,7 @@
         child->setView(0);
 }
 
-void FrameTree::setName(const AtomicString& name) 
+void FrameTree::setName(const AtomicString& name)
 {
     m_name = name;
     if (!parent()) {
@@ -57,8 +57,8 @@
     m_uniqueName = AtomicString();
 }
 
-Frame* FrameTree::parent() const 
-{ 
+Frame* FrameTree::parent() const
+{
     return m_parent;
 }
 
@@ -255,10 +255,10 @@
 {
     if (name == "_self" || name == "_current" || name.isEmpty())
         return m_thisFrame;
-    
+
     if (name == "_top")
         return top();
-    
+
     if (name == "_parent")
         return parent() ? parent() : m_thisFrame;
 
@@ -365,7 +365,7 @@
         return prevSibling->tree()->deepLastChild();
     if (Frame* parentFrame = parent())
         return parentFrame;
-    
+
     // no siblings, no parent, self==top
     if (wrap)
         return deepLastChild();
diff --git a/Source/core/page/FrameTree.h b/Source/core/page/FrameTree.h
index 3d31eb0..ac2886f 100644
--- a/Source/core/page/FrameTree.h
+++ b/Source/core/page/FrameTree.h
@@ -32,7 +32,7 @@
     public:
         const static unsigned invalidCount = static_cast<unsigned>(-1);
 
-        FrameTree(Frame* thisFrame, Frame* parentFrame) 
+        FrameTree(Frame* thisFrame, Frame* parentFrame)
             : m_thisFrame(thisFrame)
             , m_parent(parentFrame)
             , m_previousSibling(0)
@@ -49,7 +49,7 @@
         void clearName();
         Frame* parent() const;
         void setParent(Frame* parent) { m_parent = parent; }
-        
+
         Frame* nextSibling() const { return m_nextSibling.get(); }
         Frame* previousSibling() const { return m_previousSibling; }
         Frame* firstChild() const { return m_firstChild.get(); }
@@ -59,7 +59,7 @@
         Frame* traverseNext(const Frame* stayWithin = 0) const;
         Frame* traverseNextWithWrap(bool) const;
         Frame* traversePreviousWithWrap(bool) const;
-        
+
         void appendChild(PassRefPtr<Frame>);
         bool transferChild(PassRefPtr<Frame>);
         void detachFromParent() { m_parent = 0; }
diff --git a/Source/core/page/FrameView.cpp b/Source/core/page/FrameView.cpp
index 8ff98d3..7a93e3d 100644
--- a/Source/core/page/FrameView.cpp
+++ b/Source/core/page/FrameView.cpp
@@ -2041,8 +2041,11 @@
     else
         m_baseBackgroundColor = backgroundColor.color();
 
-    if (renderView() && renderView()->layer()->backing())
-        renderView()->layer()->backing()->updateContentsOpaque();
+    if (RenderLayerBacking* backing = renderView() ? renderView()->layer()->backing() : 0) {
+        backing->updateContentsOpaque();
+        if (backing->graphicsLayer())
+            backing->graphicsLayer()->setNeedsDisplay();
+    }
     recalculateScrollbarOverlayStyle();
 }
 
diff --git a/Source/core/page/History.cpp b/Source/core/page/History.cpp
index d53e9ce..727f3d0 100644
--- a/Source/core/page/History.cpp
+++ b/Source/core/page/History.cpp
@@ -142,7 +142,7 @@
 {
     if (!m_frame || !m_frame->page())
         return;
-    
+
     KURL fullURL = urlForState(urlString);
     if (!fullURL.isValid() || !m_frame->document()->securityOrigin()->canRequest(fullURL)) {
         ec = SecurityError;
diff --git a/Source/core/page/Location.cpp b/Source/core/page/Location.cpp
index d1101fa..8c9607c 100644
--- a/Source/core/page/Location.cpp
+++ b/Source/core/page/Location.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -222,9 +222,9 @@
     if (hash[0] == '#')
         newFragmentIdentifier = hash.substring(1);
     url.setFragmentIdentifier(newFragmentIdentifier);
-    // Note that by parsing the URL and *then* comparing fragments, we are 
-    // comparing fragments post-canonicalization, and so this handles the 
-    // cases where fragment identifiers are ignored or invalid. 
+    // Note that by parsing the URL and *then* comparing fragments, we are
+    // comparing fragments post-canonicalization, and so this handles the
+    // cases where fragment identifiers are ignored or invalid.
     if (equalIgnoringNullity(oldFragmentIdentifier, url.fragmentIdentifier()))
         return;
     setLocation(url.string(), activeWindow, firstWindow);
diff --git a/Source/core/page/Location.h b/Source/core/page/Location.h
index 88c787d..2f57ac9 100644
--- a/Source/core/page/Location.h
+++ b/Source/core/page/Location.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/page/Location.idl b/Source/core/page/Location.idl
index 842d462..77778e1 100644
--- a/Source/core/page/Location.idl
+++ b/Source/core/page/Location.idl
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/page/MemoryInfo.cpp b/Source/core/page/MemoryInfo.cpp
index 5ed7af9..b3ec36a 100644
--- a/Source/core/page/MemoryInfo.cpp
+++ b/Source/core/page/MemoryInfo.cpp
@@ -111,7 +111,7 @@
             sizeOfNextBucket *= scalingFactor;
             if (sizeOfNextBucket >= nextPowerOfTen) {
                 if (std::numeric_limits<size_t>::max() / 10 <= nextPowerOfTen)
-                    nextPowerOfTen = std::numeric_limits<size_t>::max();                       
+                    nextPowerOfTen = std::numeric_limits<size_t>::max();
                 else {
                     nextPowerOfTen *= 10;
                     granularity *= 10;
diff --git a/Source/core/page/MouseEventWithHitTestResults.h b/Source/core/page/MouseEventWithHitTestResults.h
index b25bd84..650936a 100644
--- a/Source/core/page/MouseEventWithHitTestResults.h
+++ b/Source/core/page/MouseEventWithHitTestResults.h
@@ -1,4 +1,4 @@
-/* 
+/*
    Copyright (C) 2000 Simon Hausmann <hausmann@kde.org>
    Copyright (C) 2006 Apple Computer, Inc.
 
diff --git a/Source/core/page/Navigator.cpp b/Source/core/page/Navigator.cpp
index 9d6aca8..76020db 100644
--- a/Source/core/page/Navigator.cpp
+++ b/Source/core/page/Navigator.cpp
@@ -82,12 +82,12 @@
 {
     if (!m_frame)
         return String();
-        
+
     // If the frame is already detached, FrameLoader::userAgent may malfunction, because it calls a client method
     // that uses frame's WebView (at least, in Mac WebKit).
     if (!m_frame->page())
         return String();
-        
+
     return m_frame->loader()->userAgent(m_frame->document()->url());
 }
 
diff --git a/Source/core/page/NavigatorBase.cpp b/Source/core/page/NavigatorBase.cpp
index fbc2ffa..dc89ad5 100644
--- a/Source/core/page/NavigatorBase.cpp
+++ b/Source/core/page/NavigatorBase.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/page/NavigatorBase.h b/Source/core/page/NavigatorBase.h
index ab787f4..dcc9d06 100644
--- a/Source/core/page/NavigatorBase.h
+++ b/Source/core/page/NavigatorBase.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
 
 #ifndef NavigatorBase_h
diff --git a/Source/core/page/Page.h b/Source/core/page/Page.h
index 6d5af3b..870ff64 100644
--- a/Source/core/page/Page.h
+++ b/Source/core/page/Page.h
@@ -340,5 +340,5 @@
 };
 
 } // namespace WebCore
-    
+
 #endif // Page_h
diff --git a/Source/core/page/PageGroup.cpp b/Source/core/page/PageGroup.cpp
index af42733..f36339e 100644
--- a/Source/core/page/PageGroup.cpp
+++ b/Source/core/page/PageGroup.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/page/PageGroup.h b/Source/core/page/PageGroup.h
index f884581..c10f83a 100644
--- a/Source/core/page/PageGroup.h
+++ b/Source/core/page/PageGroup.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PageGroup_h
@@ -73,5 +73,5 @@
     };
 
 } // namespace WebCore
-    
+
 #endif // PageGroup_h
diff --git a/Source/core/page/PageSerializer.cpp b/Source/core/page/PageSerializer.cpp
index 54e5776..c669640 100644
--- a/Source/core/page/PageSerializer.cpp
+++ b/Source/core/page/PageSerializer.cpp
@@ -204,7 +204,7 @@
         return;
     }
     String text = accumulator.serializeNodes(document->documentElement(), IncludeNode);
-    CString frameHTML = textEncoding.encode(text, WTF::EntitiesForUnencodables);
+    CString frameHTML = textEncoding.normalizeAndEncode(text, WTF::EntitiesForUnencodables);
     m_resources->append(SerializedResource(url, document->suggestedMIMEType(), SharedBuffer::create(frameHTML.data(), frameHTML.length())));
     m_resourceURLs.add(url);
 
@@ -272,7 +272,7 @@
         WTF::TextEncoding textEncoding(styleSheet->contents()->charset());
         ASSERT(textEncoding.isValid());
         String textString = cssText.toString();
-        CString text = textEncoding.encode(textString, WTF::EntitiesForUnencodables);
+        CString text = textEncoding.normalizeAndEncode(textString, WTF::EntitiesForUnencodables);
         m_resources->append(SerializedResource(url, String("text/css"), SharedBuffer::create(text.data(), text.length())));
         m_resourceURLs.add(url);
     }
diff --git a/Source/core/page/Performance.cpp b/Source/core/page/Performance.cpp
index 7a934be..7bf80e7 100644
--- a/Source/core/page/Performance.cpp
+++ b/Source/core/page/Performance.cpp
@@ -221,7 +221,8 @@
     if (!allowRedirectDetails) {
         ResourceLoadTiming* finalTiming = finalResponse.resourceLoadTiming();
         ASSERT(finalTiming);
-        startTime = finalTiming->requestTime;
+        if (finalTiming)
+            startTime = finalTiming->requestTime;
     }
 
     ResourceLoadTiming* lastRedirectTiming = redirectChain.last().resourceLoadTiming();
diff --git a/Source/core/page/PopupOpeningObserver.h b/Source/core/page/PopupOpeningObserver.h
index cef6a4b..1115bca 100644
--- a/Source/core/page/PopupOpeningObserver.h
+++ b/Source/core/page/PopupOpeningObserver.h
@@ -35,6 +35,6 @@
 protected:
     virtual ~PopupOpeningObserver() { }
 };
-    
+
 }
 #endif
diff --git a/Source/core/page/PrintContext.cpp b/Source/core/page/PrintContext.cpp
index b1e2bf7..a8c2840 100644
--- a/Source/core/page/PrintContext.cpp
+++ b/Source/core/page/PrintContext.cpp
@@ -138,7 +138,7 @@
     unsigned pageCount = ceilf((float)docLogicalHeight / pageLogicalHeight);
     for (unsigned i = 0; i < pageCount; ++i) {
         int pageLogicalTop = blockDirectionEnd > blockDirectionStart ?
-                                blockDirectionStart + i * pageLogicalHeight : 
+                                blockDirectionStart + i * pageLogicalHeight :
                                 blockDirectionStart - (i + 1) * pageLogicalHeight;
         if (allowInlineDirectionTiling) {
             for (int currentInlinePosition = inlineDirectionStart;
diff --git a/Source/core/page/RuntimeEnabledFeatures.in b/Source/core/page/RuntimeEnabledFeatures.in
index b5d0d09..446d9db 100644
--- a/Source/core/page/RuntimeEnabledFeatures.in
+++ b/Source/core/page/RuntimeEnabledFeatures.in
@@ -38,7 +38,6 @@
 EncryptedMediaAnyVersion status=stable
 ExperimentalCanvasFeatures status=test
 ExperimentalContentSecurityPolicyFeatures status=experimental
-ExperimentalShadowDOM status=experimental
 FileSystem status=stable
 FontLoadEvents status=experimental
 Fullscreen status=stable
@@ -72,6 +71,7 @@
 ScriptedSpeech status=stable
 SeamlessIFrames status=experimental
 SessionStorage status=stable
+ShadowDOM status=experimental
 SharedWorker custom
 SpeechInput status=stable
 SpeechSynthesis status=experimental
diff --git a/Source/core/page/Screen.cpp b/Source/core/page/Screen.cpp
index 795f2fb..7b7b4d3 100644
--- a/Source/core/page/Screen.cpp
+++ b/Source/core/page/Screen.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/page/Screen.h b/Source/core/page/Screen.h
index c2e87c6..59fba13 100644
--- a/Source/core/page/Screen.h
+++ b/Source/core/page/Screen.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/page/Screen.idl b/Source/core/page/Screen.idl
index e3df7b0..184a863 100644
--- a/Source/core/page/Screen.idl
+++ b/Source/core/page/Screen.idl
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/page/Selection.idl b/Source/core/page/Selection.idl
index 1c93773..df2e24b 100644
--- a/Source/core/page/Selection.idl
+++ b/Source/core/page/Selection.idl
@@ -40,17 +40,17 @@
     readonly attribute boolean isCollapsed;
     readonly attribute long rangeCount;
 
-    [RaisesException] void collapse([Default=Undefined] optional Node node, 
+    [RaisesException] void collapse([Default=Undefined] optional Node node,
                   [Default=Undefined] optional long index);
     [RaisesException] void collapseToEnd();
     [RaisesException] void collapseToStart();
 
     void deleteFromDocument();
-    boolean containsNode([Default=Undefined] optional Node node, 
+    boolean containsNode([Default=Undefined] optional Node node,
                          [Default=Undefined] optional boolean allowPartial);
     [RaisesException] void selectAllChildren([Default=Undefined] optional Node node);
 
-    [RaisesException] void extend([Default=Undefined] optional Node node, 
+    [RaisesException] void extend([Default=Undefined] optional Node node,
                 [Default=Undefined] optional long offset);
 
     [RaisesException] Range getRangeAt([Default=Undefined] optional long index);
@@ -69,14 +69,14 @@
     // IE's type accessor returns "none", "text" and "control"
     readonly attribute DOMString type;
 
-    void modify([Default=Undefined] optional DOMString alter, 
-                [Default=Undefined] optional DOMString direction, 
+    void modify([Default=Undefined] optional DOMString alter,
+                [Default=Undefined] optional DOMString direction,
                 [Default=Undefined] optional DOMString granularity);
-    [RaisesException] void setBaseAndExtent([Default=Undefined] optional Node baseNode, 
-                          [Default=Undefined] optional long baseOffset, 
-                          [Default=Undefined] optional Node extentNode, 
+    [RaisesException] void setBaseAndExtent([Default=Undefined] optional Node baseNode,
+                          [Default=Undefined] optional long baseOffset,
+                          [Default=Undefined] optional Node extentNode,
                           [Default=Undefined] optional long extentOffset);
-    [RaisesException] void setPosition([Default=Undefined] optional Node node, 
+    [RaisesException] void setPosition([Default=Undefined] optional Node node,
                      [Default=Undefined] optional long offset);
 
     // IE extentions
diff --git a/Source/core/page/Settings.cpp b/Source/core/page/Settings.cpp
index b77b828..68a69d3 100644
--- a/Source/core/page/Settings.cpp
+++ b/Source/core/page/Settings.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -287,7 +287,7 @@
 void Settings::setLoadsImagesAutomatically(bool loadsImagesAutomatically)
 {
     m_loadsImagesAutomatically = loadsImagesAutomatically;
-    
+
     // Changing this setting to true might immediately start new loads for images that had previously had loading disabled.
     // If this happens while a WebView is being dealloc'ed, and we don't know the WebView is being dealloc'ed, these new loads
     // can cause crashes downstream when the WebView memory has actually been free'd.
diff --git a/Source/core/page/Settings.h b/Source/core/page/Settings.h
index 8628912..b8ad9e7 100644
--- a/Source/core/page/Settings.h
+++ b/Source/core/page/Settings.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Settings_h
diff --git a/Source/core/page/TouchAdjustment.cpp b/Source/core/page/TouchAdjustment.cpp
index 9eaa251..74c7f20 100644
--- a/Source/core/page/TouchAdjustment.cpp
+++ b/Source/core/page/TouchAdjustment.cpp
@@ -344,7 +344,7 @@
 
     // Convert from frame coordinates to window coordinates.
     rect = subtarget.node()->document()->view()->contentsToWindow(rect);
-   
+
     float radiusSquared = 0.25f * (touchRect.size().diagonalLengthSquared());
     float distanceToAdjustScore = rect.distanceSquaredToPoint(touchHotspot) / radiusSquared;
 
diff --git a/Source/core/page/UseCounter.cpp b/Source/core/page/UseCounter.cpp
index 1f4aa00..0af1f09 100644
--- a/Source/core/page/UseCounter.cpp
+++ b/Source/core/page/UseCounter.cpp
@@ -46,7 +46,7 @@
 //         to detect new values in CSSPropertyID and add them to the
 //         end of this function. This file would be checked in.
 //         https://code.google.com/p/chromium/issues/detail?id=234940
-static int mapCSSPropertyIdToCSSSampleId(int id)
+int UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(int id)
 {
     CSSPropertyID cssPropertyID = convertToCSSPropertyID(id);
 
@@ -537,7 +537,7 @@
     bool needsPagesMeasuredUpdate = false;
     for (int i = firstCSSProperty; i <= lastCSSProperty; ++i) {
         if (m_CSSFeatureBits.quickGet(i)) {
-            int cssSampleId = mapCSSPropertyIdToCSSSampleId(i);
+            int cssSampleId = mapCSSPropertyIdToCSSSampleIdForHistogram(i);
             HistogramSupport::histogramEnumeration("WebCore.FeatureObserver.CSSProperties", cssSampleId, maximumCSSSampleId());
             needsPagesMeasuredUpdate = true;
         }
diff --git a/Source/core/page/UseCounter.h b/Source/core/page/UseCounter.h
index 205febc..900c091 100644
--- a/Source/core/page/UseCounter.h
+++ b/Source/core/page/UseCounter.h
@@ -146,6 +146,9 @@
         FormElement,
         DemotedFormElement,
         CaptureAttributeAsEnum,
+        ShadowDOMPrefixedPseudo,
+        ShadowDOMPrefixedCreateShadowRoot,
+        ShadowDOMPrefixedShadowRoot,
         // Add new features immediately above this line. Don't change assigned numbers of each items.
         NumberOfFeatures, // This enum value must be last.
     };
@@ -171,6 +174,8 @@
     static UseCounter* getFrom(const CSSStyleSheet*);
     static UseCounter* getFrom(const StyleSheetContents*);
 
+    static int mapCSSPropertyIdToCSSSampleIdForHistogram(int id);
+
 private:
     bool recordMeasurement(Feature feature)
     {
diff --git a/Source/core/page/UserContentURLPattern.cpp b/Source/core/page/UserContentURLPattern.cpp
index 49c0a3c..1ebf43f 100644
--- a/Source/core/page/UserContentURLPattern.cpp
+++ b/Source/core/page/UserContentURLPattern.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -152,10 +152,10 @@
 {
     const String m_pattern;
     unsigned m_patternIndex;
-    
+
     const String m_test;
     unsigned m_testIndex;
-    
+
     MatchTester(const String& pattern, const String& test)
     : m_pattern(pattern)
     , m_patternIndex(0)
@@ -163,7 +163,7 @@
     , m_testIndex(0)
     {
     }
-    
+
     bool testStringFinished() const { return m_testIndex >= m_test.length(); }
     bool patternStringFinished() const { return m_patternIndex >= m_pattern.length(); }
 
@@ -175,7 +175,7 @@
             m_patternIndex++;
         }
     }
-    
+
     void eatSameChars()
     {
         while (!patternStringFinished() && !testStringFinished()) {
@@ -201,15 +201,15 @@
                 return true;
             return false;
         }
-  
+
         // Pattern is empty but not string, this is not a match.
         if (patternStringFinished())
             return false;
-        
+
         // If we don't encounter a *, then we're hosed.
         if (m_pattern[m_patternIndex] != '*')
             return false;
-        
+
         while (!testStringFinished()) {
             MatchTester nextMatch(*this);
             nextMatch.m_patternIndex++;
diff --git a/Source/core/page/UserContentURLPattern.h b/Source/core/page/UserContentURLPattern.h
index 228d700..7415b88 100644
--- a/Source/core/page/UserContentURLPattern.h
+++ b/Source/core/page/UserContentURLPattern.h
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #ifndef UserContentURLPattern_h
 #define UserContentURLPattern_h
 
@@ -52,7 +52,7 @@
     const String& path() const { return m_path; }
 
     bool matchSubdomains() const { return m_matchSubdomains; }
-    
+
     static bool matchesPatterns(const KURL&, const Vector<String>& whitelist, const Vector<String>& blacklist);
 
 private:
diff --git a/Source/core/page/UserStyleSheet.h b/Source/core/page/UserStyleSheet.h
index f60124f..c5f8e19 100644
--- a/Source/core/page/UserStyleSheet.h
+++ b/Source/core/page/UserStyleSheet.h
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #ifndef UserStyleSheet_h
 #define UserStyleSheet_h
 
@@ -69,5 +69,5 @@
 };
 
 } // namespace WebCore
- 
+
 #endif // UserStyleSheet_h
diff --git a/Source/core/page/UserStyleSheetTypes.h b/Source/core/page/UserStyleSheetTypes.h
index 094a615..6ddebda 100644
--- a/Source/core/page/UserStyleSheetTypes.h
+++ b/Source/core/page/UserStyleSheetTypes.h
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #ifndef UserStyleSheetTypes_h
 #define UserStyleSheetTypes_h
 
@@ -38,5 +38,5 @@
 typedef Vector<OwnPtr<UserStyleSheet> > UserStyleSheetVector;
 
 } // namespace WebCore
- 
+
 #endif // UserStyleSheetTypes_h
diff --git a/Source/core/page/WebKitPoint.idl b/Source/core/page/WebKitPoint.idl
index 6ac44cd..4e3637a 100644
--- a/Source/core/page/WebKitPoint.idl
+++ b/Source/core/page/WebKitPoint.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/page/WorkerNavigator.cpp b/Source/core/page/WorkerNavigator.cpp
index 861b02c..76d5058 100644
--- a/Source/core/page/WorkerNavigator.cpp
+++ b/Source/core/page/WorkerNavigator.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/page/WorkerNavigator.idl b/Source/core/page/WorkerNavigator.idl
index 5304e83..1a1a77c 100644
--- a/Source/core/page/WorkerNavigator.idl
+++ b/Source/core/page/WorkerNavigator.idl
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/page/animation/AnimationBase.cpp b/Source/core/page/animation/AnimationBase.cpp
index c355cf2..574adc4 100644
--- a/Source/core/page/animation/AnimationBase.cpp
+++ b/Source/core/page/animation/AnimationBase.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -123,7 +123,7 @@
 
     if (input == AnimationStateInputPauseOverride) {
         if (m_animState == AnimationStateStartWaitResponse) {
-            // If we are in AnimationStateStartWaitResponse, the animation will get canceled before 
+            // If we are in AnimationStateStartWaitResponse, the animation will get canceled before
             // we get a response, so move to the next state.
             endAnimation();
             updateStateMachine(AnimationStateInputStartTimeSet, beginAnimationUpdateTime());
@@ -222,7 +222,7 @@
                 if (m_object)
                     m_compAnim->animationController()->addNodeChangeToDispatch(m_object->node());
             } else {
-                // We are pausing while waiting for a start response. Cancel the animation and wait. When 
+                // We are pausing while waiting for a start response. Cancel the animation and wait. When
                 // we unpause, we will act as though the start timer just fired
                 m_pauseTime = beginAnimationUpdateTime();
                 pauseAnimation(beginAnimationUpdateTime() - m_startTime);
@@ -258,7 +258,7 @@
                 onAnimationEnd(param);
 
                 m_animState = AnimationStateDone;
-                
+
                 if (m_object) {
                     if (m_animation->fillsForwards())
                         m_animState = AnimationStateFillingForwards;
@@ -296,7 +296,7 @@
             // that we have already set the startTime and will ignore it.
             ASSERT(input == AnimationStateInputPlayStateRunning || input == AnimationStateInputStartTimeSet || input == AnimationStateInputStyleAvailable);
             ASSERT(paused());
-            
+
             if (input == AnimationStateInputPlayStateRunning) {
                 // Update the times
                 if (m_animState == AnimationStatePausedRun)
@@ -327,10 +327,10 @@
                 }
                 break;
             }
-            
+
             if (input == AnimationStateInputStartTimeSet) {
                 ASSERT(m_animState == AnimationStatePausedWaitResponse);
-                
+
                 // We are paused but we got the callback that notifies us that an accelerated animation started.
                 // We ignore the start time and just move into the paused-run state.
                 m_animState = AnimationStatePausedRun;
@@ -339,7 +339,7 @@
                 m_pauseTime += m_startTime;
                 break;
             }
-            
+
             ASSERT(m_animState == AnimationStatePausedWaitStyleAvailable);
             // We are paused but we got the callback that notifies us that style has been updated.
             // We move to the AnimationStatePausedWaitResponse state
@@ -352,7 +352,7 @@
             break;
     }
 }
-    
+
 void AnimationBase::fireAnimationEventsIfNeeded()
 {
     if (!m_compAnim)
@@ -368,16 +368,16 @@
     // can still access the resources of its CompositeAnimation as needed.
     RefPtr<AnimationBase> protector(this);
     RefPtr<CompositeAnimation> compProtector(m_compAnim);
-    
+
     // Check for start timeout
     if (m_animState == AnimationStateStartWaitTimer) {
         if (beginAnimationUpdateTime() - m_requestedStartTime >= m_animation->delay())
             updateStateMachine(AnimationStateInputStartTimerFired, 0);
         return;
     }
-    
+
     double elapsedDuration = getElapsedTime();
-    
+
     // Check for end timeout
     if (m_totalDuration >= 0 && elapsedDuration >= m_totalDuration) {
         // We may still be in AnimationStateLooping if we've managed to skip a
@@ -393,13 +393,13 @@
             double durationLeft = m_animation->duration() - fmod(elapsedDuration, m_animation->duration());
             m_nextIterationDuration = elapsedDuration + durationLeft;
         }
-        
+
         if (elapsedDuration >= m_nextIterationDuration) {
             // Set to the next iteration
             double previous = m_nextIterationDuration;
             double durationLeft = m_animation->duration() - fmod(elapsedDuration, m_animation->duration());
             m_nextIterationDuration = elapsedDuration + durationLeft;
-            
+
             // Send the event
             updateStateMachine(AnimationStateInputLoopTimerFired, previous);
         }
@@ -415,27 +415,27 @@
     // The state machine can be in one of two states: running, paused.
     // Set the state machine to the desired state.
     bool pause = playState == AnimPlayStatePaused || m_compAnim->suspended();
-    
+
     if (pause == paused() && !isNew())
         return;
-    
+
     updateStateMachine(pause ?  AnimationStateInputPlayStatePaused : AnimationStateInputPlayStateRunning, -1);
 }
 
 double AnimationBase::timeToNextService()
 {
-    // Returns the time at which next service is required. -1 means no service is required. 0 means 
+    // Returns the time at which next service is required. -1 means no service is required. 0 means
     // service is required now, and > 0 means service is required that many seconds in the future.
     if (paused() || isNew() || m_animState == AnimationStateFillingForwards)
         return -1;
-    
+
     if (m_animState == AnimationStateStartWaitTimer) {
         double timeFromNow = m_animation->delay() - (beginAnimationUpdateTime() - m_requestedStartTime);
         return max(timeFromNow, 0.0);
     }
-    
+
     fireAnimationEventsIfNeeded();
-        
+
     // In all other cases, we need service right away.
     return 0;
 }
@@ -518,7 +518,7 @@
         durationLeft = m_animation->duration() > 0 ? (m_animation->duration() - fmod(elapsedDuration, m_animation->duration())) : 0;
         nextIterationTime = elapsedDuration + durationLeft;
     }
-    
+
     if (m_totalDuration < 0 || nextIterationTime < m_totalDuration) {
         // We are not at the end yet
         ASSERT(nextIterationTime > 0);
@@ -527,7 +527,7 @@
         // We are at the end
         isLooping = false;
     }
-    
+
     time = durationLeft;
 }
 
@@ -538,7 +538,7 @@
     getTimeToNextEvent(t, isLooping);
     m_animState = isLooping ? AnimationStateLooping : AnimationStateEnding;
 }
-  
+
 void AnimationBase::freezeAtTime(double t)
 {
     if (!m_compAnim)
diff --git a/Source/core/page/animation/AnimationBase.h b/Source/core/page/animation/AnimationBase.h
index e0487e6..641ff69 100644
--- a/Source/core/page/animation/AnimationBase.h
+++ b/Source/core/page/animation/AnimationBase.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -68,7 +68,7 @@
     // If so, we stay in this state until that response is received (and it returns the start time).
     // Otherwise, we use the current time as the start time and go immediately to AnimationStateLooping
     // or AnimationStateEnding.
-    enum AnimState { 
+    enum AnimState {
         AnimationStateNew,                  // animation just created, animation not running yet
         AnimationStateStartWaitTimer,       // start timer running, waiting for fire
         AnimationStateStartWaitStyleAvailable,   // waiting for style setup so we can start animations
@@ -154,7 +154,7 @@
     {
         if (acceleratedOnly && !m_isAccelerated)
             return false;
-            
+
         if (isRunningNow)
             return (!waitingToStart() && !postActive()) && affectsProperty(property);
 
@@ -172,7 +172,7 @@
 
     double getElapsedTime() const;
 
-    void styleAvailable() 
+    void styleAvailable()
     {
         ASSERT(waitingForStyleAvailable());
         updateStateMachine(AnimationBase::AnimationStateInputStyleAvailable, -1);
@@ -190,7 +190,7 @@
     virtual void onAnimationStart(double /*elapsedTime*/) { }
     virtual void onAnimationIteration(double /*elapsedTime*/) { }
     virtual void onAnimationEnd(double /*elapsedTime*/) { }
-    
+
     // timeOffset is an offset from the current time when the animation should start. Negative values are OK.
     // Return value indicates whether to expect an asynchronous notifyAnimationStarted() callback.
     virtual bool startAnimation(double /*timeOffset*/) { return false; }
@@ -203,7 +203,7 @@
     bool isAccelerated() const { return m_isAccelerated; }
 
     static void setNeedsStyleRecalc(Node*);
-    
+
     void getTimeToNextEvent(double& time, bool& isLooping) const;
 
     double fractionalTime(double scale, double elapsedTime, double offset) const;
diff --git a/Source/core/page/animation/AnimationController.cpp b/Source/core/page/animation/AnimationController.cpp
index ac67686..97506b1 100644
--- a/Source/core/page/animation/AnimationController.cpp
+++ b/Source/core/page/animation/AnimationController.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -220,7 +220,7 @@
     event.eventType = eventType;
     event.name = name;
     event.elapsedTime = elapsedTime;
-    
+
     startUpdateStyleIfNeededDispatcher();
 }
 
@@ -274,7 +274,7 @@
 void AnimationControllerPrivate::suspendAnimations()
 {
     suspendAnimationsForDocument(m_frame->document());
-    
+
     // Traverse subframes
     for (Frame* child = m_frame->tree()->firstChild(); child; child = child->tree()->nextSibling())
         child->animation()->suspendAnimations();
@@ -283,7 +283,7 @@
 void AnimationControllerPrivate::resumeAnimations()
 {
     resumeAnimationsForDocument(m_frame->document());
-    
+
     // Traverse subframes
     for (Frame* child = m_frame->tree()->firstChild(); child; child = child->tree()->nextSibling())
         child->animation()->resumeAnimations();
@@ -292,7 +292,7 @@
 void AnimationControllerPrivate::suspendAnimationsForDocument(Document* document)
 {
     setBeginAnimationUpdateTime(cBeginAnimationUpdateTimeNotSet);
-    
+
     RenderObjectAnimationMap::const_iterator animationsEnd = m_compositeAnimations.end();
     for (RenderObjectAnimationMap::const_iterator it = m_compositeAnimations.begin(); it != animationsEnd; ++it) {
         RenderObject* renderer = it->key;
@@ -301,14 +301,14 @@
             compAnim->suspendAnimations();
         }
     }
-    
+
     scheduleService();
 }
 
 void AnimationControllerPrivate::resumeAnimationsForDocument(Document* document)
 {
     setBeginAnimationUpdateTime(cBeginAnimationUpdateTimeNotSet);
-    
+
     RenderObjectAnimationMap::const_iterator animationsEnd = m_compositeAnimations.end();
     for (RenderObjectAnimationMap::const_iterator it = m_compositeAnimations.begin(); it != animationsEnd; ++it) {
         RenderObject* renderer = it->key;
@@ -317,7 +317,7 @@
             compAnim->resumeAnimations();
         }
     }
-    
+
     scheduleService();
 }
 
@@ -358,18 +358,18 @@
     RefPtr<CompositeAnimation> rendererAnimations = m_compositeAnimations.get(renderer);
     if (!rendererAnimations)
         return renderer->style();
-    
+
     RefPtr<RenderStyle> animatingStyle = rendererAnimations->getAnimatedStyle();
     if (!animatingStyle)
         animatingStyle = renderer->style();
-    
+
     return animatingStyle.release();
 }
 
 unsigned AnimationControllerPrivate::numberOfActiveAnimations(Document* document) const
 {
     unsigned count = 0;
-    
+
     RenderObjectAnimationMap::const_iterator animationsEnd = m_compositeAnimations.end();
     for (RenderObjectAnimationMap::const_iterator it = m_compositeAnimations.begin(); it != animationsEnd; ++it) {
         RenderObject* renderer = it->key;
@@ -377,7 +377,7 @@
         if (renderer->document() == document)
             count += compAnim->numberOfActiveAnimations();
     }
-    
+
     return count;
 }
 
@@ -409,9 +409,9 @@
 {
     // If willGetResponse is true, it means this animation is actually waiting for a response
     // (which will come in as a call to notifyAnimationStarted()).
-    // In that case we don't need to add it to this list. We just set a waitingForAResponse flag 
-    // which says we are waiting for the response. If willGetResponse is false, this animation 
-    // is not waiting for a response for itself, but rather for a notifyXXXStarted() call for 
+    // In that case we don't need to add it to this list. We just set a waitingForAResponse flag
+    // which says we are waiting for the response. If willGetResponse is false, this animation
+    // is not waiting for a response for itself, but rather for a notifyXXXStarted() call for
     // another animation to which it will sync.
     //
     // When endAnimationUpdate() is called we check to see if the waitingForAResponse flag is
@@ -421,20 +421,20 @@
     // on each animation. In the first case we send in the time we got from notifyXXXStarted().
     // In the second case, we just pass in the beginAnimationUpdateTime().
     //
-    // This will synchronize all software and accelerated animations started in the same 
+    // This will synchronize all software and accelerated animations started in the same
     // updateStyleIfNeeded cycle.
     //
-    
+
     if (willGetResponse)
         m_waitingForAsyncStartNotification = true;
-    
+
     m_animationsWaitingForStartTimeResponse.add(animation);
 }
 
 void AnimationControllerPrivate::removeFromAnimationsWaitingForStartTimeResponse(AnimationBase* animationToRemove)
 {
     m_animationsWaitingForStartTimeResponse.remove(animationToRemove);
-    
+
     if (m_animationsWaitingForStartTimeResponse.isEmpty())
         m_waitingForAsyncStartNotification = false;
 }
@@ -447,7 +447,7 @@
     WaitingAnimationsSet::const_iterator end = m_animationsWaitingForStartTimeResponse.end();
     for (; it != end; ++it)
         (*it)->onAnimationStartResponse(time);
-    
+
     m_animationsWaitingForStartTimeResponse.clear();
     m_waitingForAsyncStartNotification = false;
 }
diff --git a/Source/core/page/animation/AnimationController.h b/Source/core/page/animation/AnimationController.h
index 20355e5..973f171 100644
--- a/Source/core/page/animation/AnimationController.h
+++ b/Source/core/page/animation/AnimationController.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -58,7 +58,7 @@
 
     void pauseAnimationsForTesting(double t);
     unsigned numberOfActiveAnimations(Document*) const; // To be used only for testing
-    
+
     bool isRunningAnimationOnRenderer(RenderObject*, CSSPropertyID, bool isRunningNow = true) const;
     bool isRunningAcceleratedAnimationOnRenderer(RenderObject*, CSSPropertyID, bool isRunningNow = true) const;
 
@@ -71,7 +71,7 @@
 
     void beginAnimationUpdate();
     void endAnimationUpdate();
-    
+
     static bool supportsAcceleratedAnimationOfProperty(CSSPropertyID);
 
 private:
@@ -87,13 +87,13 @@
         if (m_animationController)
             m_animationController->beginAnimationUpdate();
     }
-    
+
     ~AnimationUpdateBlock()
     {
         if (m_animationController)
             m_animationController->endAnimationUpdate();
     }
-    
+
     AnimationController* m_animationController;
 };
 
diff --git a/Source/core/page/animation/AnimationControllerPrivate.h b/Source/core/page/animation/AnimationControllerPrivate.h
index a2dba2c..a97ad75 100644
--- a/Source/core/page/animation/AnimationControllerPrivate.h
+++ b/Source/core/page/animation/AnimationControllerPrivate.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -93,7 +93,7 @@
     void setBeginAnimationUpdateTime(double t) { m_beginAnimationUpdateTime = t; }
     void endAnimationUpdate();
     void receivedStartTimeResponse(double);
-    
+
     void addToAnimationsWaitingForStyle(AnimationBase*);
     void removeFromAnimationsWaitingForStyle(AnimationBase*);
 
@@ -103,7 +103,7 @@
     void animationWillBeRemoved(AnimationBase*);
 
     void scheduleServiceForRenderer(RenderObject*);
-    
+
 private:
     void animationTimerFired(Timer<AnimationControllerPrivate>*);
 
@@ -119,7 +119,7 @@
     Timer<AnimationControllerPrivate> m_animationTimer;
     Timer<AnimationControllerPrivate> m_updateStyleIfNeededDispatcher;
     Frame* m_frame;
-    
+
     class EventToDispatch {
     public:
         RefPtr<Element> element;
@@ -127,10 +127,10 @@
         String name;
         double elapsedTime;
     };
-    
+
     Vector<EventToDispatch> m_eventsToDispatch;
     Vector<RefPtr<Node> > m_nodeChangesToDispatch;
-    
+
     double m_beginAnimationUpdateTime;
 
     typedef HashSet<RefPtr<AnimationBase> > WaitingAnimationsSet;
diff --git a/Source/core/page/animation/CSSPropertyAnimation.cpp b/Source/core/page/animation/CSSPropertyAnimation.cpp
index 97a3dbd..2a1b103 100644
--- a/Source/core/page/animation/CSSPropertyAnimation.cpp
+++ b/Source/core/page/animation/CSSPropertyAnimation.cpp
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/page/animation/CSSPropertyAnimation.h b/Source/core/page/animation/CSSPropertyAnimation.h
index 45709ab..6ffd75c 100644
--- a/Source/core/page/animation/CSSPropertyAnimation.h
+++ b/Source/core/page/animation/CSSPropertyAnimation.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/page/animation/CompositeAnimation.cpp b/Source/core/page/animation/CompositeAnimation.cpp
index 29898bb..057023b 100644
--- a/Source/core/page/animation/CompositeAnimation.cpp
+++ b/Source/core/page/animation/CompositeAnimation.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -82,9 +82,9 @@
     CSSPropertyTransitionsMap::const_iterator end = m_transitions.end();
     for (CSSPropertyTransitionsMap::const_iterator it = m_transitions.begin(); it != end; ++it)
         it->value->setActive(false);
-        
+
     RefPtr<RenderStyle> modifiedCurrentStyle;
-    
+
     // Check to see if we need to update the active transitions
     if (targetStyle->transitions()) {
         for (size_t i = 0; i < targetStyle->transitions()->size(); ++i) {
@@ -128,7 +128,7 @@
                     // this animation to get removed at the end of this function.
                     if (!implAnim->postActive())
                         implAnim->setActive(true);
-                    
+
                     // This might be a transition that is just finishing. That would be the case
                     // if it were postActive. But we still need to check for equality because
                     // it could be just finishing AND changing to a new goal state.
@@ -164,7 +164,7 @@
                     // Add the new transition
                     m_transitions.set(prop, ImplicitAnimation::create(const_cast<CSSAnimationData*>(anim), prop, renderer, this, modifiedCurrentStyle ? modifiedCurrentStyle.get() : fromStyle));
                 }
-                
+
                 // We only need one pass for the single prop case
                 if (!all)
                     break;
@@ -197,9 +197,9 @@
     m_keyframeAnimations.checkConsistency();
 
     AnimationNameMap::const_iterator kfend = m_keyframeAnimations.end();
-    
+
     if (currentStyle && currentStyle->hasAnimations() && targetStyle->hasAnimations() && *(currentStyle->animations()) == *(targetStyle->animations())) {
-        // The current and target animations are the same so we just need to toss any 
+        // The current and target animations are the same so we just need to toss any
         // animation which is finished (postActive).
         for (AnimationNameMap::const_iterator it = m_keyframeAnimations.begin(); it != kfend; ++it) {
             if (it->value->postActive())
@@ -209,7 +209,7 @@
         // Mark all existing animations as no longer active.
         for (AnimationNameMap::const_iterator it = m_keyframeAnimations.begin(); it != kfend; ++it)
             it->value->setIndex(-1);
-            
+
         // Toss the animation order map.
         m_keyframeAnimationOrderList.clear();
 
@@ -222,7 +222,7 @@
                 const CSSAnimationData* anim = targetStyle->animations()->animation(i);
                 if (!anim->isValidAnimation())
                     continue;
-                
+
                 // See if there is a current animation for this name.
                 AtomicString name(anim->name());
                 RefPtr<KeyframeAnimation> keyframeAnim = m_keyframeAnimations.get(name);
@@ -230,12 +230,12 @@
                     // If this animation is postActive, skip it so it gets removed at the end of this function.
                     if (keyframeAnim->postActive())
                         continue;
-                    
+
                     // This one is still active.
 
                     // Animations match, but play states may differ. Update if needed.
                     keyframeAnim->updatePlayState(anim->playState());
-                                
+
                     // Set the saved animation to this new one, just in case the play state has changed.
                     keyframeAnim->setAnimation(anim);
                     keyframeAnim->setIndex(i);
@@ -243,7 +243,7 @@
                     keyframeAnim = KeyframeAnimation::create(const_cast<CSSAnimationData*>(anim), renderer, i, this, targetStyle);
                     m_keyframeAnimations.set(name, keyframeAnim);
                 }
-                
+
                 // Add this to the animation order map.
                 if (keyframeAnim)
                     m_keyframeAnimationOrderList.append(name);
@@ -262,7 +262,7 @@
             keyframeAnim->clear();
         }
     }
-    
+
     // Now remove the animations from the list, and keep stale keys out of the order list.
     if (animsToBeRemoved.size()) {
         for (size_t j = 0; j < animsToBeRemoved.size(); ++j) {
@@ -327,16 +327,16 @@
         ASSERT(keyframeAnimation);
         keyframeAnimation->getAnimatedStyle(resultStyle);
     }
-    
+
     return resultStyle;
 }
 
 double CompositeAnimation::timeToNextService() const
 {
-    // Returns the time at which next service is required. -1 means no service is required. 0 means 
+    // Returns the time at which next service is required. -1 means no service is required. 0 means
     // service is required now, and > 0 means service is required that many seconds in the future.
     double minT = -1;
-    
+
     if (!m_transitions.isEmpty()) {
         CSSPropertyTransitionsMap::const_iterator transitionsEnd = m_transitions.end();
         for (CSSPropertyTransitionsMap::const_iterator it = m_transitions.begin(); it != transitionsEnd; ++it) {
@@ -406,7 +406,7 @@
 PassRefPtr<KeyframeAnimation> CompositeAnimation::getAnimationForProperty(CSSPropertyID property) const
 {
     RefPtr<KeyframeAnimation> retval;
-    
+
     // We want to send back the last animation with the property if there are multiples.
     // So we need to iterate through all animations
     if (!m_keyframeAnimations.isEmpty()) {
@@ -418,7 +418,7 @@
                 retval = anim;
         }
     }
-    
+
     return retval;
 }
 
@@ -551,7 +551,7 @@
 unsigned CompositeAnimation::numberOfActiveAnimations() const
 {
     unsigned count = 0;
-    
+
     if (!m_keyframeAnimations.isEmpty()) {
         m_keyframeAnimations.checkConsistency();
         AnimationNameMap::const_iterator animationsEnd = m_keyframeAnimations.end();
@@ -570,7 +570,7 @@
                 ++count;
         }
     }
-    
+
     return count;
 }
 
diff --git a/Source/core/page/animation/CompositeAnimation.h b/Source/core/page/animation/CompositeAnimation.h
index d2f8da8..96221ba 100644
--- a/Source/core/page/animation/CompositeAnimation.h
+++ b/Source/core/page/animation/CompositeAnimation.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -50,7 +50,7 @@
     };
 
     ~CompositeAnimation();
-    
+
     void clearRenderer();
 
     PassRefPtr<RenderStyle> animate(RenderObject*, RenderStyle* currentStyle, RenderStyle* targetStyle);
@@ -58,13 +58,13 @@
 
     double timeToNextService() const;
     double timeToNextEvent() const;
-    
+
     AnimationControllerPrivate* animationController() const { return m_animationController; }
 
     void suspendAnimations();
     void resumeAnimations();
     bool suspended() const { return m_suspended; }
-    
+
     bool hasAnimations() const  { return !m_transitions.isEmpty() || !m_keyframeAnimations.isEmpty(); }
 
     bool isAnimatingProperty(CSSPropertyID, bool acceleratedOnly, bool isRunningNow) const;
@@ -86,7 +86,7 @@
 
     void updateTransitions(RenderObject*, RenderStyle* currentStyle, RenderStyle* targetStyle);
     void updateKeyframeAnimations(RenderObject*, RenderStyle* currentStyle, RenderStyle* targetStyle);
-    
+
     typedef HashMap<int, RefPtr<ImplicitAnimation> > CSSPropertyTransitionsMap;
     typedef HashMap<AtomicString, RefPtr<KeyframeAnimation> > AnimationNameMap;
 
diff --git a/Source/core/page/animation/ImplicitAnimation.cpp b/Source/core/page/animation/ImplicitAnimation.cpp
index 8d07fca..2072f13 100644
--- a/Source/core/page/animation/ImplicitAnimation.cpp
+++ b/Source/core/page/animation/ImplicitAnimation.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -29,12 +29,14 @@
 #include "config.h"
 
 #include "core/dom/EventNames.h"
+#include "core/page/UseCounter.h"
 #include "core/page/animation/AnimationControllerPrivate.h"
 #include "core/page/animation/CSSPropertyAnimation.h"
 #include "core/page/animation/CompositeAnimation.h"
 #include "core/page/animation/ImplicitAnimation.h"
 #include "core/page/animation/KeyframeAnimation.h"
 #include "core/rendering/RenderBoxModelObject.h"
+#include "public/platform/Platform.h"
 
 namespace WebCore {
 
@@ -47,6 +49,7 @@
     , m_fromStyle(fromStyle)
 {
     ASSERT(animatingProperty != CSSPropertyInvalid);
+    WebKit::Platform::current()->histogramSparse("WebCore.Animation.CSSProperties", UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(m_animatingProperty));
 }
 
 ImplicitAnimation::~ImplicitAnimation()
@@ -136,7 +139,7 @@
     RefPtr<KeyframeAnimation> keyframeAnim = m_compAnim->getAnimationForProperty(m_animatingProperty);
     if (keyframeAnim)
         keyframeAnim->setUnanimatedStyle(m_toStyle);
-    
+
     sendTransitionEvent(eventNames().transitionendEvent, elapsedTime);
     endAnimation();
 }
@@ -148,7 +151,7 @@
 
         if (shouldSendEventForListener(listenerType)) {
             String propertyName = getPropertyNameString(m_animatingProperty);
-                
+
             // Dispatch the event
             RefPtr<Element> element = 0;
             if (m_object->node() && m_object->node()->isElementNode())
@@ -181,7 +184,7 @@
     // Restart the transition
     if (m_fromStyle && m_toStyle)
         updateStateMachine(AnimationStateInputRestartAnimation, -1);
-        
+
     // set the transform animation list
     validateTransformFunctionList();
     checkForMatchingFilterFunctionLists();
@@ -203,7 +206,7 @@
 
 bool ImplicitAnimation::isTargetPropertyEqual(CSSPropertyID prop, const RenderStyle* targetStyle)
 {
-    // We can get here for a transition that has not started yet. This would make m_toStyle unset and null. 
+    // We can get here for a transition that has not started yet. This would make m_toStyle unset and null.
     // So we check that here (see <https://bugs.webkit.org/show_bug.cgi?id=26706>)
     if (!m_toStyle)
         return false;
@@ -217,17 +220,17 @@
     // <https://bugs.webkit.org/show_bug.cgi?id=24787>
     if (!m_toStyle)
         return;
-        
+
     CSSPropertyAnimation::blendProperties(this, prop, currentStyle, m_fromStyle.get(), m_toStyle.get(), progress(1, 0, 0));
 }
 
 void ImplicitAnimation::validateTransformFunctionList()
 {
     m_transformFunctionListValid = false;
-    
+
     if (!m_fromStyle || !m_toStyle)
         return;
-        
+
     const TransformOperations* val = &m_fromStyle->transform();
     const TransformOperations* toVal = &m_toStyle->transform();
 
@@ -236,7 +239,7 @@
 
     if (val->operations().isEmpty())
         return;
-        
+
     // An emtpy transform list matches anything.
     if (val != toVal && !toVal->operations().isEmpty() && !val->operationsMatch(*toVal))
         return;
@@ -248,10 +251,10 @@
 void ImplicitAnimation::checkForMatchingFilterFunctionLists()
 {
     m_filterFunctionListsMatch = false;
-    
+
     if (!m_fromStyle || !m_toStyle)
         return;
-        
+
     const FilterOperations* val = &m_fromStyle->filter();
     const FilterOperations* toVal = &m_toStyle->filter();
 
@@ -260,7 +263,7 @@
 
     if (val->operations().isEmpty())
         return;
-        
+
     // An emtpy filter list matches anything.
     if (val != toVal && !toVal->operations().isEmpty() && !val->operationsMatch(*toVal))
         return;
@@ -274,8 +277,8 @@
     double t = AnimationBase::timeToNextService();
     if (t != 0 || preActive())
         return t;
-        
-    // A return value of 0 means we need service. But if this is an accelerated animation we 
+
+    // A return value of 0 means we need service. But if this is an accelerated animation we
     // only need service at the end of the transition.
     if (CSSPropertyAnimation::animationOfPropertyIsAccelerated(m_animatingProperty) && isAccelerated()) {
         bool isLooping;
diff --git a/Source/core/page/animation/ImplicitAnimation.h b/Source/core/page/animation/ImplicitAnimation.h
index 0e54587..a33c2c9 100644
--- a/Source/core/page/animation/ImplicitAnimation.h
+++ b/Source/core/page/animation/ImplicitAnimation.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -43,7 +43,7 @@
     {
         return adoptRef(new ImplicitAnimation(animation, animatingProperty, renderer, compositeAnimation, fromStyle));
     };
-    
+
     CSSPropertyID transitionProperty() const { return m_transitionProperty; }
     CSSPropertyID animatingProperty() const { return m_animatingProperty; }
 
@@ -68,12 +68,12 @@
     void blendPropertyValueInStyle(CSSPropertyID, RenderStyle*);
 
     virtual double timeToNextService();
-    
+
     bool active() const { return m_active; }
     void setActive(bool b) { m_active = b; }
 
 protected:
-    bool shouldSendEventForListener(Document::ListenerType) const;    
+    bool shouldSendEventForListener(Document::ListenerType) const;
     bool sendTransitionEvent(const AtomicString&, double elapsedTime);
 
     void validateTransformFunctionList();
diff --git a/Source/core/page/animation/KeyframeAnimation.cpp b/Source/core/page/animation/KeyframeAnimation.cpp
index 220bac1..d298f15 100644
--- a/Source/core/page/animation/KeyframeAnimation.cpp
+++ b/Source/core/page/animation/KeyframeAnimation.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -32,11 +32,13 @@
 #include "CSSPropertyNames.h"
 #include "core/css/resolver/StyleResolver.h"
 #include "core/dom/EventNames.h"
+#include "core/page/UseCounter.h"
 #include "core/page/animation/AnimationControllerPrivate.h"
 #include "core/page/animation/CSSPropertyAnimation.h"
 #include "core/page/animation/CompositeAnimation.h"
 #include "core/rendering/RenderBoxModelObject.h"
 #include "core/rendering/style/RenderStyle.h"
+#include "public/platform/Platform.h"
 
 using namespace std;
 
@@ -56,6 +58,9 @@
     // Update the m_transformFunctionListValid flag based on whether the function lists in the keyframes match.
     validateTransformFunctionList();
     checkForMatchingFilterFunctionLists();
+    HashSet<CSSPropertyID>::const_iterator endProperties = m_keyframes.endProperties();
+    for (HashSet<CSSPropertyID>::const_iterator it = m_keyframes.beginProperties(); it != endProperties; ++it)
+        WebKit::Platform::current()->histogramSparse("WebCore.Animation.CSSProperties", UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(*it));
 }
 
 KeyframeAnimation::~KeyframeAnimation()
@@ -91,7 +96,7 @@
     size_t numKeyframes = m_keyframes.size();
     if (!numKeyframes)
         return;
-    
+
     ASSERT(!m_keyframes[0].key());
     ASSERT(m_keyframes[m_keyframes.size() - 1].key() == 1);
 
@@ -150,7 +155,7 @@
 
     fromStyle = prevKeyframe.style();
     toStyle = nextKeyframe.style();
-    
+
     offset = prevKeyframe.key();
     scale = 1.0 / (nextKeyframe.key() - prevKeyframe.key());
 
@@ -165,7 +170,7 @@
 {
     // Fire the start timeout if needed
     fireAnimationEventsIfNeeded();
-    
+
     // If we have not yet started, we will not have a valid start time, so just start the animation if needed.
     if (isNew() && m_animation->playState() == AnimPlayStatePlaying)
         updateStateMachine(AnimationStateInputStartAnimation, -1);
@@ -185,7 +190,7 @@
     // through to the style blend so that we get the fromStyle.
     if (waitingToStart() && m_animation->delay() > 0 && !m_animation->fillsBackwards())
         return;
-    
+
     // If we have no keyframes, don't animate.
     if (!m_keyframes.size()) {
         updateStateMachine(AnimationStateInputEndAnimation, -1);
@@ -206,7 +211,7 @@
         const RenderStyle* toStyle = 0;
         double progress = 0.0;
         fetchIntervalEndpointsForProperty(*it, fromStyle, toStyle, progress);
-    
+
         bool needsAnim = CSSPropertyAnimation::blendProperties(this, *it, animatedStyle.get(), fromStyle, toStyle, progress);
         if (!needsAnim)
             // If we are running an accelerated animation, set a flag in the style
@@ -365,7 +370,7 @@
 void KeyframeAnimation::validateTransformFunctionList()
 {
     m_transformFunctionListValid = false;
-    
+
     if (m_keyframes.size() < 2 || !m_keyframes.containsProperty(CSSPropertyWebkitTransform))
         return;
 
@@ -380,21 +385,21 @@
             break;
         }
     }
-    
+
     if (firstNonEmptyTransformKeyframeIndex == numKeyframes)
         return;
-        
+
     const TransformOperations* firstVal = &m_keyframes[firstNonEmptyTransformKeyframeIndex].style()->transform();
-    
+
     // See if the keyframes are valid
     for (size_t i = firstNonEmptyTransformKeyframeIndex + 1; i < numKeyframes; ++i) {
         const KeyframeValue& currentKeyframe = m_keyframes[i];
         const TransformOperations* val = &currentKeyframe.style()->transform();
-        
+
         // An emtpy transform list matches anything.
         if (val->operations().isEmpty())
             continue;
-        
+
         if (!firstVal->operationsMatch(*val))
             return;
     }
@@ -421,24 +426,24 @@
             break;
         }
     }
-    
+
     if (firstNonEmptyFilterKeyframeIndex == numKeyframes)
         return;
-        
+
     const FilterOperations* firstVal = &m_keyframes[firstNonEmptyFilterKeyframeIndex].style()->filter();
-    
+
     for (size_t i = firstNonEmptyFilterKeyframeIndex + 1; i < numKeyframes; ++i) {
         const KeyframeValue& currentKeyframe = m_keyframes[i];
         const FilterOperations* val = &currentKeyframe.style()->filter();
-        
+
         // An emtpy filter list matches anything.
         if (val->operations().isEmpty())
             continue;
-        
+
         if (!firstVal->operationsMatch(*val))
             return;
     }
-    
+
     m_filterFunctionListsMatch = true;
 }
 
@@ -447,12 +452,12 @@
     double t = AnimationBase::timeToNextService();
     if (t != 0 || preActive())
         return t;
-        
-    // A return value of 0 means we need service. But if we only have accelerated animations we 
+
+    // A return value of 0 means we need service. But if we only have accelerated animations we
     // only need service at the end of the transition
     HashSet<CSSPropertyID>::const_iterator endProperties = m_keyframes.endProperties();
     bool acceleratedPropertiesOnly = true;
-    
+
     for (HashSet<CSSPropertyID>::const_iterator it = m_keyframes.beginProperties(); it != endProperties; ++it) {
         if (!CSSPropertyAnimation::animationOfPropertyIsAccelerated(*it) || !isAccelerated()) {
             acceleratedPropertiesOnly = false;
diff --git a/Source/core/page/animation/KeyframeAnimation.h b/Source/core/page/animation/KeyframeAnimation.h
index 0ff4604..0d8b159 100644
--- a/Source/core/page/animation/KeyframeAnimation.h
+++ b/Source/core/page/animation/KeyframeAnimation.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -54,7 +54,7 @@
     void setIndex(int i) { m_index = i; }
 
     bool hasAnimationForProperty(CSSPropertyID) const;
-    
+
     void setUnanimatedStyle(PassRefPtr<RenderStyle> style) { m_unanimatedStyle = style; }
     RenderStyle* unanimatedStyle() const { return m_unanimatedStyle.get(); }
 
@@ -82,7 +82,7 @@
 private:
     KeyframeAnimation(const CSSAnimationData* animation, RenderObject*, int index, CompositeAnimation*, RenderStyle* unanimatedStyle);
     virtual ~KeyframeAnimation();
-    
+
     // Get the styles for the given property surrounding the current animation time and the progress between them.
     void fetchIntervalEndpointsForProperty(CSSPropertyID, const RenderStyle*& fromStyle, const RenderStyle*& toStyle, double& progress) const;
 
diff --git a/Source/core/page/scrolling/ScrollingConstraints.cpp b/Source/core/page/scrolling/ScrollingConstraints.cpp
index 30c8bb5..120348c 100644
--- a/Source/core/page/scrolling/ScrollingConstraints.cpp
+++ b/Source/core/page/scrolling/ScrollingConstraints.cpp
@@ -48,7 +48,7 @@
 FloatSize StickyPositionViewportConstraints::computeStickyOffset(const FloatRect& viewportRect) const
 {
     FloatRect boxRect = m_absoluteStickyBoxRect;
-    
+
     if (hasAnchorEdge(AnchorEdgeRight)) {
         float rightLimit = viewportRect.maxX() - m_rightOffset;
         float rightDelta = std::min<float>(0, rightLimit - m_absoluteStickyBoxRect.maxX());
@@ -68,7 +68,7 @@
 
         boxRect.move(leftDelta, 0);
     }
-    
+
     if (hasAnchorEdge(AnchorEdgeBottom)) {
         float bottomLimit = viewportRect.maxY() - m_bottomOffset;
         float bottomDelta = std::min<float>(0, bottomLimit - m_absoluteStickyBoxRect.maxY());
diff --git a/Source/core/page/scrolling/ScrollingConstraints.h b/Source/core/page/scrolling/ScrollingConstraints.h
index a1fec2f..8e7b0c7 100644
--- a/Source/core/page/scrolling/ScrollingConstraints.h
+++ b/Source/core/page/scrolling/ScrollingConstraints.h
@@ -51,16 +51,16 @@
         : m_alignmentOffset(other.m_alignmentOffset)
         , m_anchorEdges(other.m_anchorEdges)
     { }
-    
+
     virtual ~ViewportConstraints() { }
-    
+
     virtual ConstraintType constraintType() const = 0;
-    
+
     AnchorEdges anchorEdges() const { return m_anchorEdges; }
     bool hasAnchorEdge(AnchorEdgeFlags flag) const { return m_anchorEdges & flag; }
     void addAnchorEdge(AnchorEdgeFlags edgeFlag) { m_anchorEdges |= edgeFlag; }
     void setAnchorEdges(AnchorEdges edges) { m_anchorEdges = edges; }
-    
+
     FloatSize alignmentOffset() const { return m_alignmentOffset; }
     void setAlignmentOffset(const FloatSize& offset) { m_alignmentOffset = offset; }
 
@@ -84,7 +84,7 @@
         , m_viewportRectAtLastLayout(other.m_viewportRectAtLastLayout)
         , m_layerPositionAtLastLayout(other.m_layerPositionAtLastLayout)
     { }
-    
+
     FloatPoint layerPositionForViewportRect(const FloatRect& viewportRect) const;
 
     const FloatRect& viewportRectAtLastLayout() const { return m_viewportRectAtLastLayout; }
diff --git a/Source/core/page/scrolling/ScrollingCoordinator.h b/Source/core/page/scrolling/ScrollingCoordinator.h
index e8e1762..acb13c6 100644
--- a/Source/core/page/scrolling/ScrollingCoordinator.h
+++ b/Source/core/page/scrolling/ScrollingCoordinator.h
@@ -63,7 +63,7 @@
     // Should be called whenever the given frame view has been laid out.
     void frameViewLayoutUpdated(FrameView*);
 
-    // Should be called whenever a wheel event handler is added or removed in the 
+    // Should be called whenever a wheel event handler is added or removed in the
     // frame view's underlying document.
     void frameViewWheelEventHandlerCountChanged(FrameView*);
 
@@ -130,7 +130,7 @@
 
     bool hasVisibleSlowRepaintViewportConstrainedObjects(FrameView*) const;
     void updateShouldUpdateScrollLayerPositionOnMainThread();
-    
+
     static WebKit::WebLayer* scrollingWebLayerForScrollableArea(ScrollableArea*);
 
     bool touchHitTestingEnabled() const;
diff --git a/Source/core/platform/Arena.cpp b/Source/core/platform/Arena.cpp
index fff0291..26b6275 100644
--- a/Source/core/platform/Arena.cpp
+++ b/Source/core/platform/Arena.cpp
@@ -94,7 +94,7 @@
      pool->first.next = NULL;
      pool->first.base = pool->first.avail = pool->first.limit = (uword)ARENA_ALIGN(&pool->first + 1);
      pool->current = &pool->first;
-     pool->arenasize = size;                                  
+     pool->arenasize = size;
 }
 
 void* ArenaAllocate(ArenaPool* pool, unsigned int numBytes, unsigned int& bytesAllocated)
@@ -103,7 +103,7 @@
     char* returnPointer;
 
     ASSERT((numBytes & pool->mask) == 0);
-    
+
     numBytes = (uword)ARENA_ALIGN(numBytes);
 
     // attempt to allocate from arenas at pool->current
@@ -120,7 +120,7 @@
     }
 
     // attempt to allocate from the heap
-    {  
+    {
         unsigned int size = max(pool->arenasize, numBytes);
         size += sizeof *arena + pool->mask;  /* header and alignment slop */
 #ifdef DEBUG_ARENA_MALLOC
@@ -165,7 +165,7 @@
     do {
         *arenaPointer = arena->next;
 
-#ifdef DEBUG        
+#ifdef DEBUG
         memset((void*)(arena), FREE_PATTERN, (arena)->limit - (uword)(arena));
 #endif
 
diff --git a/Source/core/platform/CalculationValue.cpp b/Source/core/platform/CalculationValue.cpp
index 8d6b45e..e45aae5 100644
--- a/Source/core/platform/CalculationValue.cpp
+++ b/Source/core/platform/CalculationValue.cpp
@@ -63,8 +63,8 @@
 float CalculationValue::evaluate(float maxValue) const
 {
     float result = m_value->evaluate(maxValue);
-    // FIXME calc https://webkit.org/b/80411 : result is NaN when there is a division 
-    // by zero which isn't found at parse time. 
+    // FIXME calc https://webkit.org/b/80411 : result is NaN when there is a division
+    // by zero which isn't found at parse time.
     if (std::isnan(result))
         return 0;
     return m_isNonNegative && result < 0 ? 0 : result;
diff --git a/Source/core/platform/CalculationValue.h b/Source/core/platform/CalculationValue.h
index 55d5f9e..03348bc 100644
--- a/Source/core/platform/CalculationValue.h
+++ b/Source/core/platform/CalculationValue.h
@@ -59,7 +59,7 @@
     CalcExpressionNodeBinaryOperation,
     CalcExpressionNodeBlendLength,
 };
-        
+
 class CalcExpressionNode {
     WTF_MAKE_FAST_ALLOCATED;
 public:
@@ -67,37 +67,37 @@
         : m_type(CalcExpressionNodeUndefined)
     {
     }
-    
+
     virtual ~CalcExpressionNode()
     {
     }
-    
+
     virtual float evaluate(float maxValue) const = 0;
     virtual bool operator==(const CalcExpressionNode&) const = 0;
 
     CalcExpressionNodeType type() const { return m_type; }
-    
+
 protected:
     CalcExpressionNodeType m_type;
 };
-    
+
 class CalculationValue : public RefCounted<CalculationValue> {
 public:
     static PassRefPtr<CalculationValue> create(PassOwnPtr<CalcExpressionNode> value, CalculationPermittedValueRange);
     float evaluate(float maxValue) const;
 
-    bool operator==(const CalculationValue& o) const 
-    { 
+    bool operator==(const CalculationValue& o) const
+    {
         return *(m_value.get()) == *(o.m_value.get());
     }
-    
+
 private:
     CalculationValue(PassOwnPtr<CalcExpressionNode> value, CalculationPermittedValueRange range)
         : m_value(value)
         , m_isNonNegative(range == CalculationRangeNonNegative)
     {
     }
-    
+
     OwnPtr<CalcExpressionNode> m_value;
     bool m_isNonNegative;
 };
@@ -119,12 +119,12 @@
     {
         return type() == o.type() && *this == static_cast<const CalcExpressionNumber&>(o);
     }
-    
-    virtual float evaluate(float) const 
+
+    virtual float evaluate(float) const
     {
         return m_value;
     }
-    
+
 private:
     float m_value;
 };
@@ -141,17 +141,17 @@
     {
         return m_length == o.m_length;
     }
-    
+
     virtual bool operator==(const CalcExpressionNode& o) const
     {
         return type() == o.type() && *this == static_cast<const CalcExpressionLength&>(o);
     }
-    
+
     virtual float evaluate(float maxValue) const
     {
         return floatValueForLength(m_length, maxValue);
     }
-    
+
 private:
     Length m_length;
 };
@@ -175,8 +175,8 @@
     {
         return type() == o.type() && *this == static_cast<const CalcExpressionBinaryOperation&>(o);
     }
-    
-    
+
+
     virtual float evaluate(float) const;
 
 private:
@@ -194,28 +194,28 @@
     {
         m_type = CalcExpressionNodeBlendLength;
     }
-    
+
     bool operator==(const CalcExpressionBlendLength& o) const
     {
         return m_progress == o.m_progress && m_from == o.m_from && m_to == o.m_to;
     }
-    
+
     virtual bool operator==(const CalcExpressionNode& o) const
     {
         return type() == o.type() && *this == static_cast<const CalcExpressionBlendLength&>(o);
     }
-    
+
     virtual float evaluate(float maxValue) const
     {
         return (1.0f - m_progress) * floatValueForLength(m_from, maxValue) + m_progress * floatValueForLength(m_to, maxValue);
     }
-    
-private:  
+
+private:
     Length m_from;
     Length m_to;
     float m_progress;
 };
-    
+
 } // namespace WebCore
 
 #endif // CalculationValue_h
diff --git a/Source/core/platform/Clock.cpp b/Source/core/platform/Clock.cpp
index 63dcae3..4d2da23 100644
--- a/Source/core/platform/Clock.cpp
+++ b/Source/core/platform/Clock.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/Clock.h b/Source/core/platform/Clock.h
index 53d2c82..b298bf0 100644
--- a/Source/core/platform/Clock.h
+++ b/Source/core/platform/Clock.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Clock_h
diff --git a/Source/core/platform/ColorChooser.h b/Source/core/platform/ColorChooser.h
index fb902d8..b6f1a3a 100644
--- a/Source/core/platform/ColorChooser.h
+++ b/Source/core/platform/ColorChooser.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/platform/Cookie.h b/Source/core/platform/Cookie.h
index f236ef4..287a990 100644
--- a/Source/core/platform/Cookie.h
+++ b/Source/core/platform/Cookie.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Cookie_h
@@ -63,7 +63,7 @@
 
     struct CookieHash {
         static unsigned hash(Cookie key)
-        { 
+        {
             return StringHash::hash(key.name) + StringHash::hash(key.domain) + StringHash::hash(key.path) + key.secure;
         }
 
diff --git a/Source/core/platform/CrossThreadCopier.h b/Source/core/platform/CrossThreadCopier.h
index 682425a..e0ebbc6 100644
--- a/Source/core/platform/CrossThreadCopier.h
+++ b/Source/core/platform/CrossThreadCopier.h
@@ -148,7 +148,7 @@
         static Type copy(const AllowCrossThreadAccessWrapper<T>& wrapper) { return wrapper.value(); }
     };
 
-    template<typename T> AllowCrossThreadAccessWrapper<T> AllowCrossThreadAccess(T* value) 
+    template<typename T> AllowCrossThreadAccessWrapper<T> AllowCrossThreadAccess(T* value)
     {
         return AllowCrossThreadAccessWrapper<T>(value);
     }
diff --git a/Source/core/platform/Cursor.cpp b/Source/core/platform/Cursor.cpp
index bf6ffb5..4ad73b9 100644
--- a/Source/core/platform/Cursor.cpp
+++ b/Source/core/platform/Cursor.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -382,49 +382,49 @@
     DEFINE_STATIC_LOCAL(Cursor, c, (Cursor::MiddlePanning));
     return c;
 }
-    
+
 const Cursor& eastPanningCursor()
 {
     DEFINE_STATIC_LOCAL(Cursor, c, (Cursor::EastPanning));
     return c;
 }
-    
+
 const Cursor& northPanningCursor()
 {
     DEFINE_STATIC_LOCAL(Cursor, c, (Cursor::NorthPanning));
     return c;
 }
-    
+
 const Cursor& northEastPanningCursor()
 {
     DEFINE_STATIC_LOCAL(Cursor, c, (Cursor::NorthEastPanning));
     return c;
 }
-    
+
 const Cursor& northWestPanningCursor()
 {
     DEFINE_STATIC_LOCAL(Cursor, c, (Cursor::NorthWestPanning));
     return c;
 }
-    
+
 const Cursor& southPanningCursor()
 {
     DEFINE_STATIC_LOCAL(Cursor, c, (Cursor::SouthPanning));
     return c;
 }
-    
+
 const Cursor& southEastPanningCursor()
 {
     DEFINE_STATIC_LOCAL(Cursor, c, (Cursor::SouthEastPanning));
     return c;
 }
-    
+
 const Cursor& southWestPanningCursor()
 {
     DEFINE_STATIC_LOCAL(Cursor, c, (Cursor::SouthWestPanning));
     return c;
 }
-    
+
 const Cursor& westPanningCursor()
 {
     DEFINE_STATIC_LOCAL(Cursor, c, (Cursor::WestPanning));
diff --git a/Source/core/platform/Cursor.h b/Source/core/platform/Cursor.h
index d23ee90..a124ccb 100644
--- a/Source/core/platform/Cursor.h
+++ b/Source/core/platform/Cursor.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Cursor_h
diff --git a/Source/core/platform/DragData.cpp b/Source/core/platform/DragData.cpp
index 21ad738..e68643c 100644
--- a/Source/core/platform/DragData.cpp
+++ b/Source/core/platform/DragData.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/DragData.h b/Source/core/platform/DragData.h
index 3c1ee07..a9a23aa 100644
--- a/Source/core/platform/DragData.h
+++ b/Source/core/platform/DragData.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DragData_h
diff --git a/Source/core/platform/DragImage.cpp b/Source/core/platform/DragImage.cpp
index 4beef95..9de673d 100644
--- a/Source/core/platform/DragImage.cpp
+++ b/Source/core/platform/DragImage.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/FileChooser.cpp b/Source/core/platform/FileChooser.cpp
index 7d99fc6..f881550 100644
--- a/Source/core/platform/FileChooser.cpp
+++ b/Source/core/platform/FileChooser.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/platform/FileChooser.h b/Source/core/platform/FileChooser.h
index de1ffb7..95fabf0 100644
--- a/Source/core/platform/FileChooser.h
+++ b/Source/core/platform/FileChooser.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/platform/FileSystem.h b/Source/core/platform/FileSystem.h
index e632c31..41812c2 100644
--- a/Source/core/platform/FileSystem.h
+++ b/Source/core/platform/FileSystem.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/platform/FloatConversion.h b/Source/core/platform/FloatConversion.h
index 304f38d..95f013a 100644
--- a/Source/core/platform/FloatConversion.h
+++ b/Source/core/platform/FloatConversion.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/platform/HostWindow.h b/Source/core/platform/HostWindow.h
index 71ca754..aec1b0e 100644
--- a/Source/core/platform/HostWindow.h
+++ b/Source/core/platform/HostWindow.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HostWindow_h
diff --git a/Source/core/platform/KillRing.h b/Source/core/platform/KillRing.h
index a702635..5e743bb 100644
--- a/Source/core/platform/KillRing.h
+++ b/Source/core/platform/KillRing.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef KillRing_h
diff --git a/Source/core/platform/KillRingNone.cpp b/Source/core/platform/KillRingNone.cpp
index 567b8c0..2fce392 100644
--- a/Source/core/platform/KillRingNone.cpp
+++ b/Source/core/platform/KillRingNone.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/Language.cpp b/Source/core/platform/Language.cpp
index 2cd4ebb..1106545 100644
--- a/Source/core/platform/Language.cpp
+++ b/Source/core/platform/Language.cpp
@@ -81,20 +81,20 @@
 {
     preferredLanguagesOverride() = override;
 }
-    
+
 Vector<String> userPreferredLanguages()
 {
     Vector<String>& override = preferredLanguagesOverride();
     if (!override.isEmpty())
         return override;
-    
+
     return platformUserPreferredLanguages();
 }
 
 static String canonicalLanguageIdentifier(const String& languageCode)
 {
     String lowercaseLanguageCode = languageCode.lower();
-    
+
     if (lowercaseLanguageCode.length() >= 3 && lowercaseLanguageCode[2] == '_')
         lowercaseLanguageCode.replace(2, 1, "-");
 
diff --git a/Source/core/platform/LayoutUnit.h b/Source/core/platform/LayoutUnit.h
index 97a3431..d2f3369 100644
--- a/Source/core/platform/LayoutUnit.h
+++ b/Source/core/platform/LayoutUnit.h
@@ -162,7 +162,7 @@
     }
 
     LayoutUnit fraction() const
-    {   
+    {
         // Add the fraction to the size (as opposed to the full location) to avoid overflows.
         // Compute fraction using the mod operator to preserve the sign of the value as it may affect rounding.
         LayoutUnit fraction;
@@ -204,7 +204,7 @@
         m.m_value = std::numeric_limits<int>::min() + kFixedPointDenominator / 2;
         return m;
     }
-    
+
     static LayoutUnit clamp(double value)
     {
         return clampTo<LayoutUnit>(value, LayoutUnit::min(), LayoutUnit::max());
@@ -223,7 +223,7 @@
     {
         return ::fabs(value) <= std::numeric_limits<int>::max() / kFixedPointDenominator;
     }
-    
+
     inline void setValue(int value)
     {
         if (value > intMaxForLayoutUnit)
@@ -501,7 +501,7 @@
     long long rawVal = static_cast<long long>(kFixedPointDenominator) * a.rawValue() / b.rawValue();
     returnVal.setRawValue(clampTo<int>(rawVal));
     return returnVal;
-}    
+}
 
 inline float operator/(const LayoutUnit& a, float b)
 {
@@ -763,7 +763,7 @@
     return a;
 }
 
-inline int snapSizeToPixel(LayoutUnit size, LayoutUnit location) 
+inline int snapSizeToPixel(LayoutUnit size, LayoutUnit location)
 {
     LayoutUnit fraction = location.fraction();
     return (fraction + size).round() - fraction.round();
diff --git a/Source/core/platform/LengthBox.h b/Source/core/platform/LengthBox.h
index 875ca10..a0e13e2 100644
--- a/Source/core/platform/LengthBox.h
+++ b/Source/core/platform/LengthBox.h
@@ -58,7 +58,7 @@
         , m_bottom(b)
     {
     }
-    
+
     LengthBox(int t, int r, int b, int l)
         : m_left(Length(l, Fixed))
         , m_right(Length(r, Fixed))
diff --git a/Source/core/platform/LengthSize.h b/Source/core/platform/LengthSize.h
index 1b40a55..623bb1c 100644
--- a/Source/core/platform/LengthSize.h
+++ b/Source/core/platform/LengthSize.h
@@ -30,7 +30,7 @@
     LengthSize()
     {
     }
-    
+
     LengthSize(Length width, Length height)
         : m_width(width)
         , m_height(height)
diff --git a/Source/core/platform/LinkHash.h b/Source/core/platform/LinkHash.h
index 1951609..4ea5cec 100644
--- a/Source/core/platform/LinkHash.h
+++ b/Source/core/platform/LinkHash.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef LinkHash_h
diff --git a/Source/core/platform/LocalizedStrings.h b/Source/core/platform/LocalizedStrings.h
index e13264e..c3193b9 100644
--- a/Source/core/platform/LocalizedStrings.h
+++ b/Source/core/platform/LocalizedStrings.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef LocalizedStrings_h
diff --git a/Source/core/platform/MIMETypeRegistry.h b/Source/core/platform/MIMETypeRegistry.h
index c69f2dd..e16fbad 100644
--- a/Source/core/platform/MIMETypeRegistry.h
+++ b/Source/core/platform/MIMETypeRegistry.h
@@ -58,7 +58,7 @@
 
     // Check to see if a mime type is suitable for being loaded as a JavaScript
     // resource.
-    static bool isSupportedJavaScriptMIMEType(const String& mimeType);    
+    static bool isSupportedJavaScriptMIMEType(const String& mimeType);
 
     // Check to see if a non-image mime type is suitable for being loaded as a
     // document in a frame.  Includes supported JavaScript MIME types.
diff --git a/Source/core/platform/PODFreeListArena.h b/Source/core/platform/PODFreeListArena.h
index 3109392..d430189 100644
--- a/Source/core/platform/PODFreeListArena.h
+++ b/Source/core/platform/PODFreeListArena.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PODFreeListArena_h
diff --git a/Source/core/platform/PODIntervalTree.h b/Source/core/platform/PODIntervalTree.h
index 1a3e5f6..b3e11e2 100644
--- a/Source/core/platform/PODIntervalTree.h
+++ b/Source/core/platform/PODIntervalTree.h
@@ -44,14 +44,14 @@
 class PODIntervalSearchAdapter {
 public:
     typedef PODInterval<T, UserData> IntervalType;
-    
+
     PODIntervalSearchAdapter(Vector<IntervalType>& result, const T& lowValue, const T& highValue)
         : m_result(result)
         , m_lowValue(lowValue)
         , m_highValue(highValue)
     {
     }
-    
+
     const T& lowValue() const { return m_lowValue; }
     const T& highValue() const { return m_highValue; }
     void collectIfNeeded(const IntervalType& data) const
@@ -83,7 +83,7 @@
     {
         init();
     }
-    
+
     PODIntervalTree()
         : PODRedBlackTree<IntervalType>()
     {
@@ -116,7 +116,7 @@
         IntervalSearchAdapterType adapter(result, interval.low(), interval.high());
         searchForOverlapsFrom<IntervalSearchAdapterType>(this->root(), adapter);
     }
-    
+
     template <class AdapterType>
     void allOverlapsWithAdapter(AdapterType& adapter) const
     {
diff --git a/Source/core/platform/PODRedBlackTree.h b/Source/core/platform/PODRedBlackTree.h
index b671b05..80a7160 100644
--- a/Source/core/platform/PODRedBlackTree.h
+++ b/Source/core/platform/PODRedBlackTree.h
@@ -153,12 +153,12 @@
         m_arena = 0;
         m_root = 0;
     }
-    
+
     bool isInitialized() const
     {
         return m_arena;
     }
-    
+
     void initIfNeeded()
     {
         if (!m_arena)
diff --git a/Source/core/platform/Pasteboard.h b/Source/core/platform/Pasteboard.h
index 48b4200..db02978 100644
--- a/Source/core/platform/Pasteboard.h
+++ b/Source/core/platform/Pasteboard.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Pasteboard_h
@@ -49,7 +49,7 @@
 class SharedBuffer;
 
 enum ShouldSerializeSelectedTextForClipboard { DefaultSelectedTextType, IncludeImageAltTextForClipboard };
-    
+
 class Pasteboard {
     WTF_MAKE_NONCOPYABLE(Pasteboard); WTF_MAKE_FAST_ALLOCATED;
 public:
diff --git a/Source/core/platform/PlatformGestureEvent.h b/Source/core/platform/PlatformGestureEvent.h
index 4fdf619..42f69b3 100644
--- a/Source/core/platform/PlatformGestureEvent.h
+++ b/Source/core/platform/PlatformGestureEvent.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PlatformGestureEvent_h
@@ -68,7 +68,7 @@
 
     float deltaX() const { return m_deltaX; }
     float deltaY() const { return m_deltaY; }
-    
+
 protected:
     IntPoint m_position;
     IntPoint m_globalPosition;
diff --git a/Source/core/platform/PlatformKeyboardEvent.h b/Source/core/platform/PlatformKeyboardEvent.h
index 3731b85..4ad6ded 100644
--- a/Source/core/platform/PlatformKeyboardEvent.h
+++ b/Source/core/platform/PlatformKeyboardEvent.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PlatformKeyboardEvent_h
@@ -101,7 +101,7 @@
         bool m_isKeypad;
         bool m_isSystemKey;
     };
-    
+
 } // namespace WebCore
 
 #endif // PlatformKeyboardEvent_h
diff --git a/Source/core/platform/PlatformMouseEvent.h b/Source/core/platform/PlatformMouseEvent.h
index 0bb2aa7..f542461 100644
--- a/Source/core/platform/PlatformMouseEvent.h
+++ b/Source/core/platform/PlatformMouseEvent.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PlatformMouseEvent_h
@@ -30,10 +30,10 @@
 #include "core/platform/graphics/IntPoint.h"
 
 namespace WebCore {
-    
+
     // These button numbers match the ones used in the DOM API, 0 through 2, except for NoButton which isn't specified.
     enum MouseButton { NoButton = -1, LeftButton, MiddleButton, RightButton };
-    
+
     class PlatformMouseEvent : public PlatformEvent {
     public:
         PlatformMouseEvent()
diff --git a/Source/core/platform/PlatformSpeechSynthesisUtterance.cpp b/Source/core/platform/PlatformSpeechSynthesisUtterance.cpp
index a3f3276..a137c58 100644
--- a/Source/core/platform/PlatformSpeechSynthesisUtterance.cpp
+++ b/Source/core/platform/PlatformSpeechSynthesisUtterance.cpp
@@ -32,7 +32,7 @@
 {
     return adoptRef(new PlatformSpeechSynthesisUtterance(client));
 }
-    
+
 PlatformSpeechSynthesisUtterance::PlatformSpeechSynthesisUtterance(PlatformSpeechSynthesisUtteranceClient* client)
     : m_client(client)
     , m_volume(1.0f)
@@ -40,5 +40,5 @@
     , m_pitch(1.0f)
 {
 }
-    
+
 } // namespace WebCore
diff --git a/Source/core/platform/PlatformSpeechSynthesisUtterance.h b/Source/core/platform/PlatformSpeechSynthesisUtterance.h
index 79998e9..7d1dee2 100644
--- a/Source/core/platform/PlatformSpeechSynthesisUtterance.h
+++ b/Source/core/platform/PlatformSpeechSynthesisUtterance.h
@@ -32,45 +32,45 @@
 #include "wtf/text/WTFString.h"
 
 namespace WebCore {
-    
+
 class PlatformSpeechSynthesisUtteranceClient {
 public:
     // Implement methods as needed.
 protected:
     virtual ~PlatformSpeechSynthesisUtteranceClient() { }
 };
-    
+
 class PlatformSpeechSynthesisUtterance : public RefCounted<PlatformSpeechSynthesisUtterance> {
 public:
     static PassRefPtr<PlatformSpeechSynthesisUtterance> create(PlatformSpeechSynthesisUtteranceClient*);
-    
+
     const String& text() const { return m_text; }
     void setText(const String& text) { m_text = text; }
-    
+
     const String& lang() const { return m_lang; }
     void setLang(const String& lang) { m_lang = lang; }
-    
+
     PlatformSpeechSynthesisVoice* voice() const { return m_voice.get(); }
     void setVoice(PlatformSpeechSynthesisVoice* voice) { m_voice = voice; }
 
     // Range = [0, 1] where 1 is the default.
     float volume() const { return m_volume; }
     void setVolume(float volume) { m_volume = std::max(std::min(1.0f, volume), 0.0f); }
-    
+
     // Range = [0.1, 10] where 1 is the default.
     float rate() const { return m_rate; }
     void setRate(float rate) { m_rate = std::max(std::min(10.0f, rate), 0.1f); }
-    
+
     // Range = [0, 2] where 1 is the default.
     float pitch() const { return m_pitch; }
     void setPitch(float pitch) { m_pitch = std::max(std::min(2.0f, pitch), 0.0f); }
 
     double startTime() const { return m_startTime; }
     void setStartTime(double startTime) { m_startTime = startTime; }
-    
+
     PlatformSpeechSynthesisUtteranceClient* client() const { return m_client; }
     void setClient(PlatformSpeechSynthesisUtteranceClient* client) { m_client = client; }
-    
+
 private:
     explicit PlatformSpeechSynthesisUtterance(PlatformSpeechSynthesisUtteranceClient*);
 
@@ -83,7 +83,7 @@
     float m_pitch;
     double m_startTime;
 };
-    
+
 } // namespace WebCore
 
 #endif // PlatformSpeechSynthesisUtterance_h
diff --git a/Source/core/platform/PlatformSpeechSynthesisVoice.cpp b/Source/core/platform/PlatformSpeechSynthesisVoice.cpp
index 432de7b..39941d1 100644
--- a/Source/core/platform/PlatformSpeechSynthesisVoice.cpp
+++ b/Source/core/platform/PlatformSpeechSynthesisVoice.cpp
@@ -37,7 +37,7 @@
 {
     return adoptRef(new PlatformSpeechSynthesisVoice());
 }
-    
+
 PlatformSpeechSynthesisVoice::PlatformSpeechSynthesisVoice(const String& voiceURI, const String& name, const String& lang, bool localService, bool isDefault)
     : m_voiceURI(voiceURI)
     , m_name(name)
diff --git a/Source/core/platform/PlatformSpeechSynthesizer.cpp b/Source/core/platform/PlatformSpeechSynthesizer.cpp
index a6f2735..9200480 100644
--- a/Source/core/platform/PlatformSpeechSynthesizer.cpp
+++ b/Source/core/platform/PlatformSpeechSynthesizer.cpp
@@ -27,7 +27,7 @@
 #include "core/platform/PlatformSpeechSynthesizer.h"
 
 namespace WebCore {
-    
+
 PassOwnPtr<PlatformSpeechSynthesizer> PlatformSpeechSynthesizer::create(PlatformSpeechSynthesizerClient* client)
 {
     OwnPtr<PlatformSpeechSynthesizer> synthesizer = adoptPtr(new PlatformSpeechSynthesizer(client));
diff --git a/Source/core/platform/PlatformSpeechSynthesizer.h b/Source/core/platform/PlatformSpeechSynthesizer.h
index f1db25a..3d1b815 100644
--- a/Source/core/platform/PlatformSpeechSynthesizer.h
+++ b/Source/core/platform/PlatformSpeechSynthesizer.h
@@ -56,19 +56,19 @@
 protected:
     virtual ~PlatformSpeechSynthesizerClient() { }
 };
-    
+
 class PlatformSpeechSynthesizer {
 public:
     static PassOwnPtr<PlatformSpeechSynthesizer> create(PlatformSpeechSynthesizerClient*);
 
     virtual ~PlatformSpeechSynthesizer();
-    
+
     const Vector<RefPtr<PlatformSpeechSynthesisVoice> >& voiceList() const { return m_voiceList; }
     virtual void speak(PassRefPtr<PlatformSpeechSynthesisUtterance>);
     virtual void pause();
     virtual void resume();
     virtual void cancel();
-    
+
     PlatformSpeechSynthesizerClient* client() const { return m_speechSynthesizerClient; }
 
     void setVoiceList(Vector<RefPtr<PlatformSpeechSynthesisVoice> >&);
@@ -77,14 +77,14 @@
     virtual void initializeVoiceList();
     explicit PlatformSpeechSynthesizer(PlatformSpeechSynthesizerClient*);
     Vector<RefPtr<PlatformSpeechSynthesisVoice> > m_voiceList;
-    
+
 private:
     PlatformSpeechSynthesizerClient* m_speechSynthesizerClient;
 
     OwnPtr<WebKit::WebSpeechSynthesizer> m_webSpeechSynthesizer;
     OwnPtr<WebKit::WebSpeechSynthesizerClient> m_webSpeechSynthesizerClient;
 };
-    
+
 } // namespace WebCore
 
 #endif // PlatformSpeechSynthesizer_h
diff --git a/Source/core/platform/PlatformWheelEvent.h b/Source/core/platform/PlatformWheelEvent.h
index 078b820..1984e7a 100644
--- a/Source/core/platform/PlatformWheelEvent.h
+++ b/Source/core/platform/PlatformWheelEvent.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PlatformWheelEvent_h
diff --git a/Source/core/platform/PopupMenuStyle.h b/Source/core/platform/PopupMenuStyle.h
index 02d1a34..63ea3ef 100644
--- a/Source/core/platform/PopupMenuStyle.h
+++ b/Source/core/platform/PopupMenuStyle.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PopupMenuStyle_h
diff --git a/Source/core/platform/PurgeableBuffer.h b/Source/core/platform/PurgeableBuffer.h
index 3ad0992..4b5fc2e 100644
--- a/Source/core/platform/PurgeableBuffer.h
+++ b/Source/core/platform/PurgeableBuffer.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PurgeableBuffer_h
diff --git a/Source/core/platform/SSLKeyGenerator.h b/Source/core/platform/SSLKeyGenerator.h
index 41c4f98..9ab52cc 100644
--- a/Source/core/platform/SSLKeyGenerator.h
+++ b/Source/core/platform/SSLKeyGenerator.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SSLKeyGenerator_h
diff --git a/Source/core/platform/ScrollAnimator.cpp b/Source/core/platform/ScrollAnimator.cpp
index 37be5c7..2937913 100644
--- a/Source/core/platform/ScrollAnimator.cpp
+++ b/Source/core/platform/ScrollAnimator.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2010, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/ScrollAnimator.h b/Source/core/platform/ScrollAnimator.h
index d0a0fe7..c0a7f02 100644
--- a/Source/core/platform/ScrollAnimator.h
+++ b/Source/core/platform/ScrollAnimator.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2010, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/ScrollAnimatorNone.h b/Source/core/platform/ScrollAnimatorNone.h
index b583c5e..f54f9de 100644
--- a/Source/core/platform/ScrollAnimatorNone.h
+++ b/Source/core/platform/ScrollAnimatorNone.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2011, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/ScrollTypes.h b/Source/core/platform/ScrollTypes.h
index d65d821..202e65d 100644
--- a/Source/core/platform/ScrollTypes.h
+++ b/Source/core/platform/ScrollTypes.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ScrollTypes_h
@@ -41,9 +41,9 @@
         ScrollInlineDirectionBackward,
         ScrollInlineDirectionForward
     };
-    
-    
-    inline ScrollDirection logicalToPhysical(ScrollLogicalDirection direction, bool isVertical, bool isFlipped) 
+
+
+    inline ScrollDirection logicalToPhysical(ScrollLogicalDirection direction, bool isVertical, bool isFlipped)
     {
         switch (direction) {
         case ScrollBlockDirectionBackward: {
@@ -150,13 +150,13 @@
         ScrollbarButtonsDoubleEnd,
         ScrollbarButtonsDoubleBoth
     };
-    
+
     enum ScrollbarOverlayStyle {
         ScrollbarOverlayStyleDefault,
         ScrollbarOverlayStyleDark,
         ScrollbarOverlayStyleLight
     };
-    
+
     typedef unsigned ScrollbarControlPartMask;
 
 }
diff --git a/Source/core/platform/ScrollView.cpp b/Source/core/platform/ScrollView.cpp
index 65c585e..d9f0e35 100644
--- a/Source/core/platform/ScrollView.cpp
+++ b/Source/core/platform/ScrollView.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -60,7 +60,7 @@
 {
 }
 
-void ScrollView::addChild(PassRefPtr<Widget> prpChild) 
+void ScrollView::addChild(PassRefPtr<Widget> prpChild)
 {
     Widget* child = prpChild.get();
     ASSERT(child != this && !child->parent());
@@ -87,7 +87,7 @@
         removeChild(m_horizontalScrollbar.get());
         m_horizontalScrollbar = 0;
     }
-    
+
     if (AXObjectCache* cache = axObjectCache())
         cache->handleScrollbarUpdate(this);
 }
@@ -104,7 +104,7 @@
         removeChild(m_verticalScrollbar.get());
         m_verticalScrollbar = 0;
     }
-    
+
     if (AXObjectCache* cache = axObjectCache())
         cache->handleScrollbarUpdate(this);
 }
@@ -151,19 +151,19 @@
 {
     ScrollbarMode newHorizontalMode;
     ScrollbarMode newVerticalMode;
-    
+
     scrollbarModes(newHorizontalMode, newVerticalMode);
-    
+
     if (canScroll && newVerticalMode == ScrollbarAlwaysOff)
         newVerticalMode = ScrollbarAuto;
     else if (!canScroll)
         newVerticalMode = ScrollbarAlwaysOff;
-    
+
     if (canScroll && newHorizontalMode == ScrollbarAlwaysOff)
         newHorizontalMode = ScrollbarAuto;
     else if (!canScroll)
         newHorizontalMode = ScrollbarAlwaysOff;
-    
+
     setScrollbarModes(newHorizontalMode, newVerticalMode);
 }
 
@@ -388,10 +388,10 @@
 
     bool hasHorizontalScrollbar = m_horizontalScrollbar;
     bool hasVerticalScrollbar = m_verticalScrollbar;
-    
+
     bool newHasHorizontalScrollbar = hasHorizontalScrollbar;
     bool newHasVerticalScrollbar = hasVerticalScrollbar;
-   
+
     ScrollbarMode hScroll = m_horizontalScrollbarMode;
     ScrollbarMode vScroll = m_verticalScrollbarMode;
 
@@ -472,7 +472,7 @@
             }
         }
     }
-    
+
     // Set up the range (and page step/line step), but only do this if we're not in a nested call (to avoid
     // doing it multiple times).
     if (m_updateScrollbarsPass)
@@ -498,14 +498,14 @@
         m_horizontalScrollbar->setSteps(Scrollbar::pixelsPerLineStep(), pageStep);
         m_horizontalScrollbar->setProportion(clientWidth, contentsWidth());
         if (m_scrollbarsSuppressed)
-            m_horizontalScrollbar->setSuppressInvalidation(false); 
-    } 
+            m_horizontalScrollbar->setSuppressInvalidation(false);
+    }
 
     if (m_verticalScrollbar) {
         int clientHeight = visibleHeight();
         int pageStep = max(max<int>(clientHeight * Scrollbar::minFractionToStepWhenPaging(), clientHeight - Scrollbar::maxOverlapBetweenPages()), 1);
         IntRect oldRect(m_verticalScrollbar->frameRect());
-        IntRect vBarRect(width() - m_verticalScrollbar->width(), 
+        IntRect vBarRect(width() - m_verticalScrollbar->width(),
                          0,
                          m_verticalScrollbar->width(),
                          height() - (m_horizontalScrollbar ? m_horizontalScrollbar->height() : 0));
@@ -557,7 +557,7 @@
     if (hasOverlayScrollbars()) {
         int verticalScrollbarWidth = (verticalScrollbar() && !hasLayerForVerticalScrollbar()) ? verticalScrollbar()->width() : 0;
         int horizontalScrollbarHeight = (horizontalScrollbar() && !hasLayerForHorizontalScrollbar()) ? horizontalScrollbar()->height() : 0;
-        
+
         scrollViewRect.setWidth(scrollViewRect.width() - verticalScrollbarWidth);
         scrollViewRect.setHeight(scrollViewRect.height() - horizontalScrollbarHeight);
     }
@@ -572,7 +572,7 @@
     // Since scrolling is double buffered, we will be blitting the scroll view's intersection
     // with the clip rect every time to keep it smooth.
     IntRect clipRect = windowClipRect();
-    IntRect scrollViewRect = rectToCopyOnScroll();    
+    IntRect scrollViewRect = rectToCopyOnScroll();
     IntRect updateRect = clipRect;
     updateRect.intersect(scrollViewRect);
 
@@ -590,7 +590,7 @@
         // FIXME: Find a way to scroll subframes with this faster path
         if (!scrollContentsFastPath(-scrollDelta, scrollViewRect, clipRect))
             scrollContentsSlowPath(updateRect);
-    } else { 
+    } else {
        // We need to go ahead and repaint the entire backing store.  Do it now before moving the
        // windowed plugins.
        scrollContentsSlowPath(updateRect);
@@ -623,7 +623,7 @@
 IntPoint ScrollView::contentsToRootView(const IntPoint& contentsPoint) const
 {
     IntPoint viewPoint = contentsPoint - scrollOffset();
-    return convertToRootView(viewPoint);  
+    return convertToRootView(viewPoint);
 }
 
 IntRect ScrollView::rootViewToContents(const IntRect& rootViewRect) const
@@ -649,7 +649,7 @@
 IntPoint ScrollView::contentsToWindow(const IntPoint& contentsPoint) const
 {
     IntPoint viewPoint = contentsPoint - scrollOffset();
-    return convertToContainingWindow(viewPoint);  
+    return convertToContainingWindow(viewPoint);
 }
 
 IntRect ScrollView::windowToContents(const IntRect& windowRect) const
@@ -746,7 +746,7 @@
 void ScrollView::setFrameRect(const IntRect& newRect)
 {
     IntRect oldRect = frameRect();
-    
+
     if (newRect == oldRect)
         return;
 
@@ -846,7 +846,7 @@
                                  m_verticalScrollbar->width(),
                                  height() - m_verticalScrollbar->height()));
     }
-    
+
     return cornerRect;
 }
 
@@ -1054,7 +1054,7 @@
     int verticalScrollbarXMin = m_verticalScrollbar->frameRect().x();
     int verticalScrollbarXMax = m_verticalScrollbar->frameRect().x() + m_verticalScrollbar->frameRect().width();
     int verticalScrollbarYMin = m_verticalScrollbar->frameRect().y() + m_verticalScrollbar->frameRect().height();
-    
+
     return viewPoint.x() > verticalScrollbarXMin && viewPoint.x() < verticalScrollbarXMax && viewPoint.y() > verticalScrollbarYMin;
 }
 
@@ -1101,12 +1101,12 @@
 {
     if (isParentVisible() == visible)
         return;
-    
+
     Widget::setParentVisible(visible);
 
     if (!isSelfVisible())
         return;
-        
+
     HashSet<RefPtr<Widget> >::iterator end = m_children.end();
     for (HashSet<RefPtr<Widget> >::iterator it = m_children.begin(); it != end; ++it)
         (*it)->setParentVisible(visible);
@@ -1150,7 +1150,7 @@
 {
     if (!hostWindow())
         return;
-    m_drawPanScrollIcon = true;    
+    m_drawPanScrollIcon = true;
     m_panScrollIconPoint = IntPoint(iconPosition.x() - panIconSizeLength / 2 , iconPosition.y() - panIconSizeLength / 2) ;
     hostWindow()->invalidateContentsAndRootView(IntRect(m_panScrollIconPoint, IntSize(panIconSizeLength, panIconSizeLength)));
 }
@@ -1159,7 +1159,7 @@
 {
     if (!hostWindow())
         return;
-    m_drawPanScrollIcon = false; 
+    m_drawPanScrollIcon = false;
     hostWindow()->invalidateContentsAndRootView(IntRect(m_panScrollIconPoint, IntSize(panIconSizeLength, panIconSizeLength)));
 }
 
diff --git a/Source/core/platform/ScrollView.h b/Source/core/platform/ScrollView.h
index fff4633..44180b1 100644
--- a/Source/core/platform/ScrollView.h
+++ b/Source/core/platform/ScrollView.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ScrollView_h
@@ -156,7 +156,7 @@
     virtual IntPoint maximumScrollPosition() const OVERRIDE; // The maximum position we can be scrolled to.
     virtual IntPoint minimumScrollPosition() const OVERRIDE; // The minimum position we can be scrolled to.
     // Adjust the passed in scroll position to keep it between the minimum and maximum positions.
-    IntPoint adjustScrollPositionWithinRange(const IntPoint&) const; 
+    IntPoint adjustScrollPositionWithinRange(const IntPoint&) const;
     int scrollX() const { return scrollPosition().x(); }
     int scrollY() const { return scrollPosition().y(); }
 
@@ -199,7 +199,7 @@
     // The purpose of this function is to answer whether or not the scroll view is currently visible. Animations and painting updates can be suspended if
     // we know that we are either not in a window right now or if that window is not visible.
     bool isOffscreen() const;
-    
+
     // These functions are used to enable scrollbars to avoid window resizer controls that overlap the scroll view. This happens on Mac
     // for example.
     virtual IntRect windowResizerRect() const { return IntRect(); }
@@ -211,7 +211,7 @@
 
     // Called when our frame rect changes (or the rect/scroll position of an ancestor changes).
     virtual void frameRectsChanged();
-    
+
     // Widget override to update our scrollbars and notify our contents of the resize.
     virtual void setFrameRect(const IntRect&);
 
@@ -247,7 +247,7 @@
     virtual void show();
     virtual void hide();
     virtual void setParentVisible(bool);
-    
+
     // Pan scrolling.
     static const int noPanScrollRadius = 15;
     void addPanScrollIcon(const IntPoint&);
diff --git a/Source/core/platform/ScrollableArea.cpp b/Source/core/platform/ScrollableArea.cpp
index 3075a11..96999b5 100644
--- a/Source/core/platform/ScrollableArea.cpp
+++ b/Source/core/platform/ScrollableArea.cpp
@@ -1,11 +1,11 @@
 /*
  * Copyright (c) 2010, Google Inc. All rights reserved.
  * Copyright (C) 2008, 2011 Apple Inc. All Rights Reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -15,7 +15,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -208,7 +208,7 @@
     m_inLiveResize = false;
     if (ScrollAnimator* scrollAnimator = existingScrollAnimator())
         scrollAnimator->willEndLiveResize();
-}    
+}
 
 void ScrollableArea::contentAreaWillPaint() const
 {
@@ -308,7 +308,7 @@
         ScrollbarTheme::theme()->updateScrollbarOverlayStyle(horizontalScrollbar());
         horizontalScrollbar()->invalidate();
     }
-    
+
     if (verticalScrollbar()) {
         ScrollbarTheme::theme()->updateScrollbarOverlayStyle(verticalScrollbar());
         verticalScrollbar()->invalidate();
diff --git a/Source/core/platform/ScrollableArea.h b/Source/core/platform/ScrollableArea.h
index 46f1495..4590a98 100644
--- a/Source/core/platform/ScrollableArea.h
+++ b/Source/core/platform/ScrollableArea.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ScrollableArea_h
@@ -148,7 +148,7 @@
     virtual void scrollbarStyleChanged(int /*newStyle*/, bool /*forceUpdate*/) { }
 
     virtual bool scrollbarsCanBeActive() const = 0;
-    
+
     // Note that this only returns scrollable areas that can actually be scrolled.
     virtual ScrollableArea* enclosingScrollableArea() const = 0;
 
@@ -203,7 +203,7 @@
 
 private:
     void scrollPositionChanged(const IntPoint&);
-    
+
     // NOTE: Only called from the ScrollAnimator.
     friend class ScrollAnimator;
     void setScrollOffsetFromAnimation(const IntPoint&);
diff --git a/Source/core/platform/Scrollbar.cpp b/Source/core/platform/Scrollbar.cpp
index 7bf8b41..742c417 100644
--- a/Source/core/platform/Scrollbar.cpp
+++ b/Source/core/platform/Scrollbar.cpp
@@ -105,9 +105,9 @@
 {
     if (AXObjectCache* cache = existingAXObjectCache())
         cache->remove(this);
-    
+
     stopTimerIfNeeded();
-    
+
     m_theme->unregisterScrollbar(this);
 }
 
@@ -144,7 +144,7 @@
     m_currentPos = position;
     updateThumbPosition();
     if (m_pressedPart == ThumbPart)
-        setPressedPos(m_pressedPos + theme()->thumbPosition(this) - oldThumbPosition);    
+        setPressedPos(m_pressedPos + theme()->thumbPosition(this) - oldThumbPosition);
 }
 
 void Scrollbar::setProportion(int visibleSize, int totalSize)
@@ -313,7 +313,7 @@
         delta = min(trackLen - thumbLen - thumbPos, delta);
     else if (delta < 0)
         delta = max(-thumbPos, delta);
-    
+
     float minPos = m_scrollableArea->minimumScrollPosition(m_orientation);
     float maxPos = m_scrollableArea->maximumScrollPosition(m_orientation);
     if (delta) {
@@ -392,7 +392,7 @@
             if (m_scrollableArea)
                 m_scrollableArea->scrollToOffsetWithoutAnimation(m_orientation, m_dragOrigin);
         } else {
-            moveThumb(m_orientation == HorizontalScrollbar ? 
+            moveThumb(m_orientation == HorizontalScrollbar ?
                       convertFromContainingWindow(evt.position()).x() :
                       convertFromContainingWindow(evt.position()).y(), theme()->shouldDragDocumentInsteadOfThumb(this, evt));
         }
@@ -416,10 +416,10 @@
                 stopTimerIfNeeded();
                 theme()->invalidatePart(this, m_pressedPart);
             }
-        } 
-        
+        }
+
         setHoveredPart(part);
-    } 
+    }
 
     return;
 }
@@ -464,7 +464,7 @@
 
     setPressedPart(theme()->hitTest(this, evt.position()));
     int pressedPos = (orientation() == HorizontalScrollbar ? convertFromContainingWindow(evt.position()).x() : convertFromContainingWindow(evt.position()).y());
-    
+
     if ((m_pressedPart == BackTrackPart || m_pressedPart == ForwardTrackPart) && theme()->shouldCenterOnThumb(this, evt)) {
         setHoveredPart(ThumbPart);
         setPressedPart(ThumbPart);
@@ -478,7 +478,7 @@
         return;
     } else if (m_pressedPart == ThumbPart)
         m_dragOrigin = m_currentPos;
-    
+
     m_pressedPos = pressedPos;
 
     autoscrollPressedPart(theme()->initialAutoscrollTimerDelay());
@@ -526,7 +526,7 @@
 }
 
 void Scrollbar::setEnabled(bool e)
-{ 
+{
     if (m_enabled == e)
         return;
     m_enabled = e;
@@ -556,7 +556,7 @@
 {
     if (!parent())
         return 0;
-    
+
     return parent()->axObjectCache();
 }
 
diff --git a/Source/core/platform/Scrollbar.h b/Source/core/platform/Scrollbar.h
index f8a1555..b3cab27 100644
--- a/Source/core/platform/Scrollbar.h
+++ b/Source/core/platform/Scrollbar.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Scrollbar_h
diff --git a/Source/core/platform/ScrollbarTheme.cpp b/Source/core/platform/ScrollbarTheme.cpp
index 0eb150d..a65d3ed 100644
--- a/Source/core/platform/ScrollbarTheme.cpp
+++ b/Source/core/platform/ScrollbarTheme.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/ScrollbarTheme.h b/Source/core/platform/ScrollbarTheme.h
index d01c859..095a416 100644
--- a/Source/core/platform/ScrollbarTheme.h
+++ b/Source/core/platform/ScrollbarTheme.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ScrollbarTheme_h
@@ -50,7 +50,7 @@
 
     virtual bool paint(ScrollbarThemeClient*, GraphicsContext*, const IntRect& /*damageRect*/) { return false; }
     virtual ScrollbarPart hitTest(ScrollbarThemeClient*, const IntPoint&) { return NoPart; }
-    
+
     virtual int scrollbarThickness(ScrollbarControlSize = RegularScrollbar) { return 0; }
 
     virtual ScrollbarButtonsPlacement buttonsPlacement() const { return ScrollbarButtonsSingle; }
@@ -60,7 +60,7 @@
     virtual void updateScrollbarOverlayStyle(ScrollbarThemeClient*) { }
 
     virtual void themeChanged() {}
-    
+
     virtual bool invalidateOnMouseEnterExit() { return false; }
 
     void invalidateParts(ScrollbarThemeClient* scrollbar, ScrollbarControlPartMask mask)
diff --git a/Source/core/platform/ScrollbarThemeComposite.cpp b/Source/core/platform/ScrollbarThemeComposite.cpp
index 61e3343..fc8ebde 100644
--- a/Source/core/platform/ScrollbarThemeComposite.cpp
+++ b/Source/core/platform/ScrollbarThemeComposite.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -87,10 +87,10 @@
         paintButton(graphicsContext, scrollbar, forwardButtonStartPaintRect, ForwardButtonStartPart);
     if (scrollMask & ForwardButtonEndPart)
         paintButton(graphicsContext, scrollbar, forwardButtonEndPaintRect, ForwardButtonEndPart);
-    
+
     if (scrollMask & TrackBGPart)
         paintTrackBackground(graphicsContext, scrollbar, trackPaintRect);
-    
+
     if ((scrollMask & ForwardTrackPart) || (scrollMask & BackTrackPart)) {
         // Paint the track pieces above and below the thumb.
         if (scrollMask & BackTrackPart)
@@ -116,7 +116,7 @@
 
     IntPoint testPosition = scrollbar->convertFromContainingWindow(position);
     testPosition.move(scrollbar->x(), scrollbar->y());
-    
+
     if (!scrollbar->frameRect().contains(testPosition))
         return NoPart;
 
@@ -152,7 +152,7 @@
     if (part == NoPart)
         return;
 
-    IntRect result;    
+    IntRect result;
     switch (part) {
         case BackButtonStartPart:
             result = backButtonRect(scrollbar, BackButtonStartPart, true);
@@ -195,12 +195,12 @@
     int thickness = scrollbar->orientation() == HorizontalScrollbar ? scrollbar->height() : scrollbar->width();
     int thumbPos = thumbPosition(scrollbar);
     if (scrollbar->orientation() == HorizontalScrollbar) {
-        thumbRect = IntRect(trackRect.x() + thumbPos, trackRect.y() + (trackRect.height() - thickness) / 2, thumbLength(scrollbar), thickness); 
-        beforeThumbRect = IntRect(trackRect.x(), trackRect.y(), thumbPos + thumbRect.width() / 2, trackRect.height()); 
+        thumbRect = IntRect(trackRect.x() + thumbPos, trackRect.y() + (trackRect.height() - thickness) / 2, thumbLength(scrollbar), thickness);
+        beforeThumbRect = IntRect(trackRect.x(), trackRect.y(), thumbPos + thumbRect.width() / 2, trackRect.height());
         afterThumbRect = IntRect(trackRect.x() + beforeThumbRect.width(), trackRect.y(), trackRect.maxX() - beforeThumbRect.maxX(), trackRect.height());
     } else {
         thumbRect = IntRect(trackRect.x() + (trackRect.width() - thickness) / 2, trackRect.y() + thumbPos, thickness, thumbLength(scrollbar));
-        beforeThumbRect = IntRect(trackRect.x(), trackRect.y(), trackRect.width(), thumbPos + thumbRect.height() / 2); 
+        beforeThumbRect = IntRect(trackRect.x(), trackRect.y(), trackRect.width(), thumbPos + thumbRect.height() / 2);
         afterThumbRect = IntRect(trackRect.x(), trackRect.y() + beforeThumbRect.height(), trackRect.width(), trackRect.maxY() - beforeThumbRect.maxY());
     }
 }
diff --git a/Source/core/platform/ScrollbarThemeComposite.h b/Source/core/platform/ScrollbarThemeComposite.h
index f7a2bc3..7b6cc0c 100644
--- a/Source/core/platform/ScrollbarThemeComposite.h
+++ b/Source/core/platform/ScrollbarThemeComposite.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ScrollbarThemeComposite_h
@@ -52,7 +52,7 @@
     virtual IntRect thumbRect(ScrollbarThemeClient*);
 
     virtual void splitTrack(ScrollbarThemeClient*, const IntRect& track, IntRect& startTrack, IntRect& thumb, IntRect& endTrack);
-    
+
     virtual int minimumThumbLength(ScrollbarThemeClient*);
 
     virtual void paintScrollbarBackground(GraphicsContext*, ScrollbarThemeClient*) { }
diff --git a/Source/core/platform/SharedBuffer.cpp b/Source/core/platform/SharedBuffer.cpp
index f883db4..b33d623 100644
--- a/Source/core/platform/SharedBuffer.cpp
+++ b/Source/core/platform/SharedBuffer.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -185,7 +185,7 @@
     didCreateSharedBuffer(this);
 #endif
 }
-    
+
 SharedBuffer::~SharedBuffer()
 {
     clear();
@@ -203,8 +203,8 @@
     return buffer.release();
 }
 
-PassRefPtr<SharedBuffer> SharedBuffer::adoptPurgeableBuffer(PassOwnPtr<PurgeableBuffer> purgeableBuffer) 
-{ 
+PassRefPtr<SharedBuffer> SharedBuffer::adoptPurgeableBuffer(PassOwnPtr<PurgeableBuffer> purgeableBuffer)
+{
     ASSERT(!purgeableBuffer->isPurgeable());
     RefPtr<SharedBuffer> buffer = create();
     buffer->m_purgeableBuffer = purgeableBuffer;
@@ -215,7 +215,7 @@
 {
     if (m_purgeableBuffer)
         return m_purgeableBuffer->size();
-    
+
     return m_size;
 }
 
@@ -231,7 +231,7 @@
 {
     if (m_purgeableBuffer)
         return m_purgeableBuffer->data();
-    
+
     return this->buffer().data();
 }
 
@@ -326,9 +326,9 @@
 }
 
 PassOwnPtr<PurgeableBuffer> SharedBuffer::releasePurgeableBuffer()
-{ 
-    ASSERT(hasOneRef()); 
-    return m_purgeableBuffer.release(); 
+{
+    ASSERT(hasOneRef());
+    return m_purgeableBuffer.release();
 }
 
 const Vector<char>& SharedBuffer::buffer() const
@@ -370,7 +370,7 @@
         someData = m_buffer.data() + position;
         return consecutiveSize - position;
     }
- 
+
     position -= consecutiveSize;
     unsigned segments = m_segments.size();
     unsigned maxSegmentedSize = segments * segmentSize;
diff --git a/Source/core/platform/SharedBuffer.h b/Source/core/platform/SharedBuffer.h
index 94adc29..b5b1fa6 100644
--- a/Source/core/platform/SharedBuffer.h
+++ b/Source/core/platform/SharedBuffer.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SharedBuffer_h
@@ -35,7 +35,7 @@
 #include "wtf/text/WTFString.h"
 
 namespace WebCore {
-    
+
 class PurgeableBuffer;
 
 class SharedBuffer : public RefCounted<SharedBuffer> {
@@ -46,11 +46,11 @@
     static PassRefPtr<SharedBuffer> create(const unsigned char* c, int i) { return adoptRef(new SharedBuffer(c, i)); }
 
     static PassRefPtr<SharedBuffer> adoptVector(Vector<char>& vector);
-    
-    // The buffer must be in non-purgeable state before adopted to a SharedBuffer. 
+
+    // The buffer must be in non-purgeable state before adopted to a SharedBuffer.
     // It will stay that way until released.
     static PassRefPtr<SharedBuffer> adoptPurgeableBuffer(PassOwnPtr<PurgeableBuffer>);
-    
+
     ~SharedBuffer();
 
     // Calling this function will force internal segmented buffers
@@ -69,7 +69,7 @@
     void clear();
 
     PassRefPtr<SharedBuffer> copy() const;
-    
+
     bool hasPurgeableBuffer() const { return m_purgeableBuffer.get(); }
 
     // Ensure this buffer has no other clients before calling this.
@@ -100,7 +100,7 @@
     explicit SharedBuffer(size_t);
     SharedBuffer(const char*, int);
     SharedBuffer(const unsigned char*, int);
-    
+
     // Calling this function will force internal segmented buffers
     // to be merged into a flat buffer. Use getSomeData() whenever possible
     // for better performance.
diff --git a/Source/core/platform/SharedTimer.h b/Source/core/platform/SharedTimer.h
index 4634060..eddeaf9 100644
--- a/Source/core/platform/SharedTimer.h
+++ b/Source/core/platform/SharedTimer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SharedTimer_h
@@ -60,12 +60,12 @@
         {
             setSharedTimerFiredFunction(function);
         }
-        
+
         virtual void setFireInterval(double interval)
         {
             setSharedTimerFireInterval(interval);
         }
-        
+
         virtual void stop()
         {
             stopSharedTimer();
diff --git a/Source/core/platform/Sound.h b/Source/core/platform/Sound.h
index 534129b..be9ebe8 100644
--- a/Source/core/platform/Sound.h
+++ b/Source/core/platform/Sound.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Sound_h
diff --git a/Source/core/platform/Theme.cpp b/Source/core/platform/Theme.cpp
index 57b7ab4..1aa63be 100644
--- a/Source/core/platform/Theme.cpp
+++ b/Source/core/platform/Theme.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/Theme.h b/Source/core/platform/Theme.h
index e8e91ec..f0a20f0 100644
--- a/Source/core/platform/Theme.h
+++ b/Source/core/platform/Theme.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Theme_h
@@ -53,7 +53,7 @@
 
     // A method asking if the control changes its appearance when the window is inactive.
     virtual bool controlHasInactiveAppearance(ControlPart) const { return false; }
-    
+
     // General methods for whether or not any of the controls in the theme change appearance when the window is inactive or
     // when hovered over.
     virtual bool controlsCanHaveInactiveAppearance() const { return false; }
@@ -67,11 +67,11 @@
     // Methods for obtaining platform-specific colors.
     virtual Color selectionColor(ControlPart, ControlState, SelectionPart) const { return Color(); }
     virtual Color textSearchHighlightColor() const { return Color(); }
-    
+
     // CSS system colors and fonts
     virtual Color systemColor(ThemeColor) const { return Color(); }
     virtual Font systemFont(ThemeFont, FontDescription&) const { return Font(); }
-    
+
     // How fast the caret blinks in text fields.
     virtual double caretBlinkInterval() const { return 0.5; }
 
@@ -79,20 +79,20 @@
     virtual void themeChanged() { }
 
     // Methods used to adjust the RenderStyles of controls.
-    
+
     // The font description result should have a zoomed font size.
     virtual FontDescription controlFont(ControlPart, const Font& font, float /*zoomFactor*/) const { return font.fontDescription(); }
-    
+
     // The size here is in zoomed coordinates already.  If a new size is returned, it also needs to be in zoomed coordinates.
     virtual LengthSize controlSize(ControlPart, const Font&, const LengthSize& zoomedSize, float /*zoomFactor*/) const { return zoomedSize; }
-    
-    // Returns the minimum size for a control in zoomed coordinates.  
+
+    // Returns the minimum size for a control in zoomed coordinates.
     virtual LengthSize minimumControlSize(ControlPart, const Font&, float /*zoomFactor*/) const { return LengthSize(Length(0, Fixed), Length(0, Fixed)); }
-    
+
     // Allows the theme to modify the existing padding/border.
     virtual LengthBox controlPadding(ControlPart, const Font&, const LengthBox& zoomedBox, float zoomFactor) const;
     virtual LengthBox controlBorder(ControlPart, const Font&, const LengthBox& zoomedBox, float zoomFactor) const;
-    
+
     // Whether or not whitespace: pre should be forced on always.
     virtual bool controlRequiresPreWhiteSpace(ControlPart) const { return false; }
 
@@ -104,7 +104,7 @@
     // The rect passed in is in zoomed coordinates, so the inflation should take that into account and make sure the inflation
     // amount is also scaled by the zoomFactor.
     virtual void inflateControlPaintRect(ControlPart, ControlStates, IntRect& /*zoomedRect*/, float /*zoomFactor*/) const { }
-    
+
     // This method is called once, from RenderTheme::adjustDefaultStyleSheet(), to let each platform adjust
     // the default CSS rules in html.css.
     static String defaultStyleSheet();
diff --git a/Source/core/platform/ThemeTypes.h b/Source/core/platform/ThemeTypes.h
index cff1cb5..1d58bd4 100644
--- a/Source/core/platform/ThemeTypes.h
+++ b/Source/core/platform/ThemeTypes.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ThemeTypes_h
@@ -65,7 +65,7 @@
 };
 
 enum ThemeFont {
-    CaptionFont, IconFont, MenuFont, MessageBoxFont, SmallCaptionFont, StatusBarFont, MiniControlFont, SmallControlFont, ControlFont 
+    CaptionFont, IconFont, MenuFont, MessageBoxFont, SmallCaptionFont, StatusBarFont, MiniControlFont, SmallControlFont, ControlFont
 };
 
 enum ThemeColor {
diff --git a/Source/core/platform/ThreadGlobalData.cpp b/Source/core/platform/ThreadGlobalData.cpp
index 815deb7..a6f0aac 100644
--- a/Source/core/platform/ThreadGlobalData.cpp
+++ b/Source/core/platform/ThreadGlobalData.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/platform/ThreadGlobalData.h b/Source/core/platform/ThreadGlobalData.h
index 55d21d8..cc56f0e 100644
--- a/Source/core/platform/ThreadGlobalData.h
+++ b/Source/core/platform/ThreadGlobalData.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -72,7 +72,7 @@
         friend ThreadGlobalData& threadGlobalData();
     };
 
-inline ThreadGlobalData& threadGlobalData() 
+inline ThreadGlobalData& threadGlobalData()
 {
     // FIXME: Workers are not necessarily the only feature that make per-thread global data necessary.
     // We need to check for e.g. database objects manipulating strings on secondary threads.
diff --git a/Source/core/platform/ThreadTimers.cpp b/Source/core/platform/ThreadTimers.cpp
index eef621a..884f644 100644
--- a/Source/core/platform/ThreadTimers.cpp
+++ b/Source/core/platform/ThreadTimers.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -70,9 +70,9 @@
         m_sharedTimer->stop();
         m_pendingSharedTimerFireTime = 0;
     }
-    
+
     m_sharedTimer = sharedTimer;
-    
+
     if (sharedTimer) {
         m_sharedTimer->setFiredFunction(ThreadTimers::sharedTimerFired);
         updateSharedTimer();
@@ -83,7 +83,7 @@
 {
     if (!m_sharedTimer)
         return;
-        
+
     if (m_firingTimers || m_timerHeap.isEmpty()) {
         m_pendingSharedTimerFireTime = 0;
         m_sharedTimer->stop();
@@ -94,7 +94,7 @@
             // No need to restart the timer if both the pending fire time and the new fire time are in the past.
             if (m_pendingSharedTimerFireTime <= currentMonotonicTime && nextFireTime <= currentMonotonicTime)
                 return;
-        } 
+        }
         m_pendingSharedTimerFireTime = nextFireTime;
         m_sharedTimer->setFireInterval(max(nextFireTime - currentMonotonicTime, 0.0));
     }
diff --git a/Source/core/platform/ThreadTimers.h b/Source/core/platform/ThreadTimers.h
index d503541..2201a5a 100644
--- a/Source/core/platform/ThreadTimers.h
+++ b/Source/core/platform/ThreadTimers.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ThreadTimers_h
diff --git a/Source/core/platform/Timer.cpp b/Source/core/platform/Timer.cpp
index 3425468..783e6d3 100644
--- a/Source/core/platform/Timer.cpp
+++ b/Source/core/platform/Timer.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -139,10 +139,10 @@
     friend bool operator>(TimerHeapIterator, TimerHeapIterator);
     friend bool operator<=(TimerHeapIterator, TimerHeapIterator);
     friend bool operator>=(TimerHeapIterator, TimerHeapIterator);
-    
+
     friend TimerHeapIterator operator+(TimerHeapIterator, size_t);
     friend TimerHeapIterator operator+(size_t, TimerHeapIterator);
-    
+
     friend TimerHeapIterator operator-(TimerHeapIterator, size_t);
     friend ptrdiff_t operator-(TimerHeapIterator, TimerHeapIterator);
 
@@ -171,15 +171,15 @@
 
 inline bool TimerHeapLessThanFunction::operator()(const TimerBase* a, const TimerBase* b) const
 {
-    // The comparisons below are "backwards" because the heap puts the largest 
+    // The comparisons below are "backwards" because the heap puts the largest
     // element first and we want the lowest time to be the first one in the heap.
     double aFireTime = a->m_nextFireTime;
     double bFireTime = b->m_nextFireTime;
     if (bFireTime != aFireTime)
         return bFireTime < aFireTime;
-    
-    // We need to look at the difference of the insertion orders instead of comparing the two 
-    // outright in case of overflow. 
+
+    // We need to look at the difference of the insertion orders instead of comparing the two
+    // outright in case of overflow.
     unsigned difference = a->m_heapInsertionOrder - b->m_heapInsertionOrder;
     return difference < numeric_limits<unsigned>::max() / 2;
 }
diff --git a/Source/core/platform/Timer.h b/Source/core/platform/Timer.h
index 296b832..7a1c408 100644
--- a/Source/core/platform/Timer.h
+++ b/Source/core/platform/Timer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Timer_h
diff --git a/Source/core/platform/Widget.cpp b/Source/core/platform/Widget.cpp
index b857039..8b26cb6 100644
--- a/Source/core/platform/Widget.cpp
+++ b/Source/core/platform/Widget.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/Widget.h b/Source/core/platform/Widget.h
index ab863f3..0454440 100644
--- a/Source/core/platform/Widget.h
+++ b/Source/core/platform/Widget.h
@@ -129,7 +129,7 @@
 
     // A means to access the AX cache when this object can get a pointer to it.
     virtual AXObjectCache* axObjectCache() const { return 0; }
-    
+
 private:
     ScrollView* m_parent;
     IntRect m_frame;
diff --git a/Source/core/platform/animation/AnimationUtilities.h b/Source/core/platform/animation/AnimationUtilities.h
index 64aea5a..4cdc829 100644
--- a/Source/core/platform/animation/AnimationUtilities.h
+++ b/Source/core/platform/animation/AnimationUtilities.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef AnimationUtilities_h
@@ -33,7 +33,7 @@
 namespace WebCore {
 
 inline int blend(int from, int to, double progress)
-{  
+{
     return lround(from + (to - from) * progress);
 }
 
@@ -43,17 +43,17 @@
 }
 
 inline double blend(double from, double to, double progress)
-{  
+{
     return from + (to - from) * progress;
 }
 
 inline float blend(float from, float to, double progress)
-{  
+{
     return static_cast<float>(from + (to - from) * progress);
 }
 
 inline LayoutUnit blend(LayoutUnit from, LayoutUnit to, double progress)
-{  
+{
     return from + (to - from) * progress;
 }
 
diff --git a/Source/core/platform/animation/TimingFunction.h b/Source/core/platform/animation/TimingFunction.h
index 14bf681..6a61d8e 100644
--- a/Source/core/platform/animation/TimingFunction.h
+++ b/Source/core/platform/animation/TimingFunction.h
@@ -38,7 +38,7 @@
     enum TimingFunctionType {
         LinearFunction, CubicBezierFunction, StepsFunction
     };
-    
+
     virtual ~TimingFunction() { }
 
     TimingFunctionType type() const { return m_type; }
@@ -46,7 +46,7 @@
     bool isLinearTimingFunction() const { return m_type == LinearFunction; }
     bool isCubicBezierTimingFunction() const { return m_type == CubicBezierFunction; }
     bool isStepsTimingFunction() const { return m_type == StepsFunction; }
-    
+
     // Evaluates the timing function at the given fraction. The accuracy parameter provides a hint as to the required
     // accuracy and is not guaranteed.
     virtual double evaluate(double fraction, double accuracy) const = 0;
@@ -57,7 +57,7 @@
         : m_type(type)
     {
     }
-    
+
     TimingFunctionType m_type;
 };
 
@@ -67,9 +67,9 @@
     {
         return adoptRef(new LinearTimingFunction);
     }
-    
+
     ~LinearTimingFunction() { }
-    
+
     virtual double evaluate(double fraction, double) const
     {
         return fraction;
@@ -79,14 +79,14 @@
     {
         return other.isLinearTimingFunction();
     }
-    
+
 private:
     LinearTimingFunction()
         : TimingFunction(LinearFunction)
     {
     }
 };
-    
+
 class CubicBezierTimingFunction : public TimingFunction {
 public:
     enum TimingFunctionPreset {
@@ -96,7 +96,7 @@
         EaseInOut,
         Custom
     };
-    
+
     static PassRefPtr<CubicBezierTimingFunction> create(double x1, double y1, double x2, double y2)
     {
         return adoptRef(new CubicBezierTimingFunction(Custom, x1, y1, x2, y2));
@@ -144,7 +144,7 @@
             const CubicBezierTimingFunction* ctf = static_cast<const CubicBezierTimingFunction*>(&other);
             if (m_timingFunctionPreset != Custom)
                 return m_timingFunctionPreset == ctf->m_timingFunctionPreset;
-            
+
             return m_x1 == ctf->m_x1 && m_y1 == ctf->m_y1 && m_x2 == ctf->m_x2 && m_y2 == ctf->m_y2;
         }
         return false;
@@ -181,7 +181,7 @@
     {
         return adoptRef(new StepsTimingFunction(steps, stepAtStart));
     }
-    
+
     ~StepsTimingFunction() { }
 
     virtual double evaluate(double fraction, double) const
@@ -197,10 +197,10 @@
         }
         return false;
     }
-    
+
     int numberOfSteps() const { return m_steps; }
     bool stepAtStart() const { return m_stepAtStart; }
-    
+
 private:
     StepsTimingFunction(int steps, bool stepAtStart)
         : TimingFunction(StepsFunction)
@@ -208,11 +208,11 @@
         , m_stepAtStart(stepAtStart)
     {
     }
-    
+
     int m_steps;
     bool m_stepAtStart;
 };
-    
+
 } // namespace WebCore
 
 #endif // TimingFunction_h
diff --git a/Source/core/platform/audio/AudioArray.h b/Source/core/platform/audio/AudioArray.h
index a70903b..f611a2b 100644
--- a/Source/core/platform/audio/AudioArray.h
+++ b/Source/core/platform/audio/AudioArray.h
@@ -57,7 +57,7 @@
         // and copyToRange(). Also check for integer overflow.
         if (n > std::numeric_limits<unsigned>::max() / sizeof(T))
             CRASH();
-      
+
         unsigned initialSize = sizeof(T) * n;
 
 #if USE(WEBAUDIO_FFMPEG) || USE(WEBAUDIO_OPENMAX_DL_FFT)
@@ -68,9 +68,9 @@
 
         if (m_allocation)
             fastFree(m_allocation);
-        
+
         bool isAllocationGood = false;
-        
+
         while (!isAllocationGood) {
             // Initially we try to allocate the exact size, but if it's not aligned
             // then we'll have to reallocate and from then on allocate extra.
diff --git a/Source/core/platform/audio/AudioBus.cpp b/Source/core/platform/audio/AudioBus.cpp
index dcdf6fc..dd8acff 100644
--- a/Source/core/platform/audio/AudioBus.cpp
+++ b/Source/core/platform/audio/AudioBus.cpp
@@ -146,7 +146,7 @@
         default: return 0;
         }
     }
-    
+
     ASSERT_NOT_REACHED();
     return 0;
 }
@@ -291,7 +291,7 @@
         float scale = 0.5;
         vsmul(destination, 1, &scale, destination, 1, length());
     } else if (numberOfDestinationChannels == 6 && numberOfSourceChannels == 1) {
-        // Handle mono -> 5.1 case, copy mono channel to center. 
+        // Handle mono -> 5.1 case, copy mono channel to center.
         channel(2)->copyFrom(sourceBus.channel(0));
         channel(0)->zero();
         channel(1)->zero();
@@ -312,7 +312,7 @@
 {
     // FIXME: Implement down mixing 5.1 to stereo.
     // https://bugs.webkit.org/show_bug.cgi?id=79192
-    
+
     unsigned numberOfSourceChannels = sourceBus.numberOfChannels();
     unsigned numberOfDestinationChannels = numberOfChannels();
 
@@ -379,14 +379,14 @@
 {
     unsigned numberOfSourceChannels = sourceBus.numberOfChannels();
     unsigned numberOfDestinationChannels = numberOfChannels();
-    
+
     if (numberOfDestinationChannels < numberOfSourceChannels) {
         // Down-mix by copying channels and dropping the remaining.
         for (unsigned i = 0; i < numberOfDestinationChannels; ++i)
             channel(i)->copyFrom(sourceBus.channel(i));
     } else if (numberOfDestinationChannels > numberOfSourceChannels) {
         // Up-mix by copying as many channels as we have, then zeroing remaining channels.
-        for (unsigned i = 0; i < numberOfSourceChannels; ++i) 
+        for (unsigned i = 0; i < numberOfSourceChannels; ++i)
             channel(i)->copyFrom(sourceBus.channel(i));
         for (unsigned i = numberOfSourceChannels; i < numberOfDestinationChannels; ++i)
             channel(i)->zero();
@@ -400,11 +400,11 @@
 
     if (numberOfDestinationChannels < numberOfSourceChannels) {
         // Down-mix by summing channels and dropping the remaining.
-        for (unsigned i = 0; i < numberOfDestinationChannels; ++i) 
+        for (unsigned i = 0; i < numberOfDestinationChannels; ++i)
             channel(i)->sumFrom(sourceBus.channel(i));
     } else if (numberOfDestinationChannels > numberOfSourceChannels) {
         // Up-mix by summing as many channels as we have.
-        for (unsigned i = 0; i < numberOfSourceChannels; ++i) 
+        for (unsigned i = 0; i < numberOfSourceChannels; ++i)
             channel(i)->sumFrom(sourceBus.channel(i));
     }
 }
@@ -442,7 +442,7 @@
 
     // We don't want to suddenly change the gain from mixing one time slice to the next,
     // so we "de-zipper" by slowly changing the gain each sample-frame until we've achieved the target gain.
-    
+
     // Take master bus gain into account as well as the targetGain.
     float totalDesiredGain = static_cast<float>(m_busGain * targetGain);
 
@@ -453,14 +453,14 @@
     const float DezipperRate = 0.005f;
     unsigned framesToProcess = length();
 
-    // If the gain is within epsilon of totalDesiredGain, we can skip dezippering. 
+    // If the gain is within epsilon of totalDesiredGain, we can skip dezippering.
     // FIXME: this value may need tweaking.
-    const float epsilon = 0.001f; 
+    const float epsilon = 0.001f;
     float gainDiff = fabs(totalDesiredGain - gain);
 
     // Number of frames to de-zipper before we are close enough to the target gain.
     // FIXME: framesToDezipper could be smaller when target gain is close enough within this process loop.
-    unsigned framesToDezipper = (gainDiff < epsilon) ? 0 : framesToProcess; 
+    unsigned framesToDezipper = (gainDiff < epsilon) ? 0 : framesToProcess;
 
     if (framesToDezipper) {
         if (!m_dezipperGainValues.get() || m_dezipperGainValues->size() < framesToDezipper)
@@ -469,7 +469,7 @@
         float* gainValues = m_dezipperGainValues->data();
         for (unsigned i = 0; i < framesToDezipper; ++i) {
             gain += (totalDesiredGain - gain) * DezipperRate;
-        
+
             // FIXME: If we are clever enough in calculating the framesToDezipper value, we can probably get
             // rid of this DenormalDisabler::flushDenormalFloatToZero() call.
             gain = DenormalDisabler::flushDenormalFloatToZero(gain);
@@ -537,7 +537,7 @@
 
     if (numberOfSourceChannels == 1)
         mixToMono = false; // already mono
-        
+
     if (sourceSampleRate == destinationSampleRate) {
         // No sample-rate conversion is necessary.
         if (mixToMono)
@@ -582,7 +582,7 @@
     }
 
     destinationBus->clearSilentFlag();
-    destinationBus->setSampleRate(newSampleRate);    
+    destinationBus->setSampleRate(newSampleRate);
     return destinationBus;
 }
 
@@ -603,13 +603,13 @@
             const float* sourceL = sourceBus->channel(0)->data();
             const float* sourceR = sourceBus->channel(1)->data();
             float* destination = destinationBus->channel(0)->mutableData();
-        
+
             // Do the mono mixdown.
             for (unsigned i = 0; i < n; ++i)
                 destination[i] = (sourceL[i] + sourceR[i]) / 2;
 
             destinationBus->clearSilentFlag();
-            destinationBus->setSampleRate(sourceBus->sampleRate());    
+            destinationBus->setSampleRate(sourceBus->sampleRate());
             return destinationBus;
         }
     }
diff --git a/Source/core/platform/audio/AudioChannel.h b/Source/core/platform/audio/AudioChannel.h
index 44bd3ca..74a43dd 100644
--- a/Source/core/platform/audio/AudioChannel.h
+++ b/Source/core/platform/audio/AudioChannel.h
@@ -87,7 +87,7 @@
     float* mutableData()
     {
         clearSilentFlag();
-        return m_rawPointer ? m_rawPointer : m_memBuffer->data(); 
+        return m_rawPointer ? m_rawPointer : m_memBuffer->data();
     }
 
     const float* data() const { return m_rawPointer ? m_rawPointer : m_memBuffer->data(); }
diff --git a/Source/core/platform/audio/AudioDSPKernelProcessor.cpp b/Source/core/platform/audio/AudioDSPKernelProcessor.cpp
index f7544a0..0875464 100644
--- a/Source/core/platform/audio/AudioDSPKernelProcessor.cpp
+++ b/Source/core/platform/audio/AudioDSPKernelProcessor.cpp
@@ -55,7 +55,7 @@
     // Create processing kernels, one per channel.
     for (unsigned i = 0; i < numberOfChannels(); ++i)
         m_kernels.append(createKernel());
-        
+
     m_initialized = true;
     m_hasJustReset = true;
 }
@@ -64,7 +64,7 @@
 {
     if (!isInitialized())
         return;
-        
+
     m_kernels.clear();
 
     m_initialized = false;
@@ -75,7 +75,7 @@
     ASSERT(source && destination);
     if (!source || !destination)
         return;
-        
+
     if (!isInitialized()) {
         destination->zero();
         return;
@@ -85,7 +85,7 @@
     ASSERT(channelCountMatches);
     if (!channelCountMatches)
         return;
-        
+
     for (unsigned i = 0; i < m_kernels.size(); ++i)
         m_kernels[i]->process(source->channel(i)->data(), destination->channel(i)->mutableData(), framesToProcess);
 }
@@ -108,7 +108,7 @@
 {
     if (numberOfChannels == m_numberOfChannels)
         return;
-        
+
     ASSERT(!isInitialized());
     if (!isInitialized())
         m_numberOfChannels = numberOfChannels;
diff --git a/Source/core/platform/audio/AudioFIFO.cpp b/Source/core/platform/audio/AudioFIFO.cpp
index efa3767..f468d25 100644
--- a/Source/core/platform/audio/AudioFIFO.cpp
+++ b/Source/core/platform/audio/AudioFIFO.cpp
@@ -113,7 +113,7 @@
         if (part2Length)
             memcpy(destination, source + part1Length, part2Length * sizeof(*destination));
     }
-        
+
     m_framesInFifo += sourceLength;
     ASSERT(m_framesInFifo <= m_fifoLength);
     m_writeIndex = updateIndex(m_writeIndex, sourceLength);
diff --git a/Source/core/platform/audio/AudioFIFO.h b/Source/core/platform/audio/AudioFIFO.h
index a744d10..920e606 100644
--- a/Source/core/platform/audio/AudioFIFO.h
+++ b/Source/core/platform/audio/AudioFIFO.h
@@ -53,7 +53,7 @@
     int updateIndex(int index, int step) { return (index + step) % m_fifoLength; }
 
     void findWrapLengths(size_t index, size_t providerSize, size_t& part1Length, size_t& part2Length);
-    
+
     // The FIFO itself. In reality, the FIFO is a circular buffer.
     RefPtr<AudioBus> m_fifoAudioBus;
 
diff --git a/Source/core/platform/audio/AudioFileReader.h b/Source/core/platform/audio/AudioFileReader.h
index bbc117f..683eccd 100644
--- a/Source/core/platform/audio/AudioFileReader.h
+++ b/Source/core/platform/audio/AudioFileReader.h
@@ -45,8 +45,8 @@
 PassRefPtr<AudioBus> createBusFromInMemoryAudioFile(const void* data, size_t dataSize, bool mixToMono, float sampleRate);
 
 PassRefPtr<AudioBus> createBusFromAudioFile(const char* filePath, bool mixToMono, float sampleRate);
-                                
-// May pass in 0.0 for sampleRate in which case it will use the AudioBus's sampleRate                               
+
+// May pass in 0.0 for sampleRate in which case it will use the AudioBus's sampleRate
 void writeBusToAudioFile(AudioBus* bus, const char* filePath, double fileSampleRate);
 
 } // namespace WebCore
diff --git a/Source/core/platform/audio/AudioResampler.cpp b/Source/core/platform/audio/AudioResampler.cpp
index a3c18cb..58ceae1 100644
--- a/Source/core/platform/audio/AudioResampler.cpp
+++ b/Source/core/platform/audio/AudioResampler.cpp
@@ -33,7 +33,7 @@
 #include "wtf/MathExtras.h"
 
 using namespace std;
- 
+
 namespace WebCore {
 
 const double AudioResampler::MaxRate = 8.0;
@@ -76,7 +76,7 @@
     ASSERT(provider);
     if (!provider)
         return;
-        
+
     unsigned numberOfChannels = m_kernels.size();
 
     // Make sure our configuration matches the bus we're rendering to.
@@ -93,7 +93,7 @@
         ASSERT(fillPointer);
         if (!fillPointer)
             return;
-            
+
         m_sourceBus->setChannelMemory(i, fillPointer, framesNeeded);
     }
 
@@ -112,7 +112,7 @@
 {
     if (std::isnan(rate) || std::isinf(rate) || rate <= 0.0)
         return;
-    
+
     m_rate = min(AudioResampler::MaxRate, rate);
 }
 
diff --git a/Source/core/platform/audio/AudioResampler.h b/Source/core/platform/audio/AudioResampler.h
index c0d511f..5ef70ac 100644
--- a/Source/core/platform/audio/AudioResampler.h
+++ b/Source/core/platform/audio/AudioResampler.h
@@ -42,7 +42,7 @@
     AudioResampler();
     AudioResampler(unsigned numberOfChannels);
     ~AudioResampler() { }
-    
+
     // Given an AudioSourceProvider, process() resamples the source stream into destinationBus.
     void process(AudioSourceProvider*, AudioBus* destinationBus, size_t framesToProcess);
 
diff --git a/Source/core/platform/audio/AudioResamplerKernel.cpp b/Source/core/platform/audio/AudioResamplerKernel.cpp
index 311a828..8b9b457 100644
--- a/Source/core/platform/audio/AudioResamplerKernel.cpp
+++ b/Source/core/platform/audio/AudioResamplerKernel.cpp
@@ -34,7 +34,7 @@
 using namespace std;
 
 namespace WebCore {
-    
+
 const size_t AudioResamplerKernel::MaxFramesToProcess = 128;
 
 AudioResamplerKernel::AudioResamplerKernel(AudioResampler* resampler)
@@ -51,7 +51,7 @@
 float* AudioResamplerKernel::getSourcePointer(size_t framesToProcess, size_t* numberOfSourceFramesNeededP)
 {
     ASSERT(framesToProcess <= MaxFramesToProcess);
-    
+
     // Calculate the next "virtual" index.  After process() is called, m_virtualReadIndex will equal this value.
     double nextFractionalIndex = m_virtualReadIndex + framesToProcess * rate();
 
@@ -78,11 +78,11 @@
     ASSERT(framesToProcess <= MaxFramesToProcess);
 
     float* source = m_sourceBuffer.data();
-    
+
     double rate = this->rate();
     rate = max(0.0, rate);
     rate = min(AudioResampler::MaxRate, rate);
-    
+
     // Start out with the previous saved values (if any).
     if (m_fillIndex > 0) {
         source[0] = m_lastValues[0];
@@ -91,7 +91,7 @@
 
     // Make a local copy.
     double virtualReadIndex = m_virtualReadIndex;
-    
+
     // Sanity check source buffer access.
     ASSERT(framesToProcess > 0);
     ASSERT(virtualReadIndex >= 0 && 1 + static_cast<unsigned>(virtualReadIndex + (framesToProcess - 1) * rate) < m_sourceBuffer.size());
@@ -110,7 +110,7 @@
         *destination++ = static_cast<float>(sample);
 
         virtualReadIndex += rate;
-    }                        
+    }
 
     // Save the last two sample-frames which will later be used at the beginning of the source buffer the next time around.
     int readIndex = static_cast<int>(virtualReadIndex);
diff --git a/Source/core/platform/audio/AudioResamplerKernel.h b/Source/core/platform/audio/AudioResamplerKernel.h
index 28ad276..8bfb8a8 100644
--- a/Source/core/platform/audio/AudioResamplerKernel.h
+++ b/Source/core/platform/audio/AudioResamplerKernel.h
@@ -59,7 +59,7 @@
 
     AudioResampler* m_resampler;
     AudioFloatArray m_sourceBuffer;
-    
+
     // This is a (floating point) read index on the input stream.
     double m_virtualReadIndex;
 
diff --git a/Source/core/platform/audio/AudioSourceProvider.h b/Source/core/platform/audio/AudioSourceProvider.h
index d891b39..db82ba6 100644
--- a/Source/core/platform/audio/AudioSourceProvider.h
+++ b/Source/core/platform/audio/AudioSourceProvider.h
@@ -33,7 +33,7 @@
 
 class AudioBus;
 class AudioSourceProviderClient;
-    
+
 // Abstract base-class for a pull-model client.
 class AudioSourceProvider {
 public:
diff --git a/Source/core/platform/audio/AudioUtilities.cpp b/Source/core/platform/audio/AudioUtilities.cpp
index 515499c..758bd8f 100644
--- a/Source/core/platform/audio/AudioUtilities.cpp
+++ b/Source/core/platform/audio/AudioUtilities.cpp
@@ -45,7 +45,7 @@
     ASSERT(linear);
     if (!linear)
         return -1000;
-        
+
     return 20 * log10f(linear);
 }
 
diff --git a/Source/core/platform/audio/Biquad.cpp b/Source/core/platform/audio/Biquad.cpp
index 5928357..a9f9760 100644
--- a/Source/core/platform/audio/Biquad.cpp
+++ b/Source/core/platform/audio/Biquad.cpp
@@ -208,7 +208,7 @@
 {
     // Limit cutoff to 0 to 1.
     cutoff = std::max(0.0, std::min(cutoff, 1.0));
-    
+
     if (cutoff == 1) {
         // When cutoff is 1, the z-transform is 1.
         setNormalizedCoefficients(1, 0, 0,
@@ -281,7 +281,7 @@
 void Biquad::setNormalizedCoefficients(double b0, double b1, double b2, double a0, double a1, double a2)
 {
     double a0Inverse = 1 / a0;
-    
+
     m_b0 = b0 * a0Inverse;
     m_b1 = b1 * a0Inverse;
     m_b2 = b2 * a0Inverse;
@@ -306,7 +306,7 @@
 {
     // Clip frequencies to between 0 and 1, inclusive.
     frequency = std::max(0.0, std::min(frequency, 1.0));
-    
+
     double A = pow(10.0, dbGain / 40);
 
     if (frequency == 1) {
@@ -495,7 +495,7 @@
         if (Q > 0) {
             double alpha = sin(w0) / (2 * Q);
             double k = cos(w0);
-    
+
             double b0 = alpha;
             double b1 = 0;
             double b2 = -alpha;
@@ -570,7 +570,7 @@
     double b2 = m_b2;
     double a1 = m_a1;
     double a2 = m_a2;
-    
+
     for (int k = 0; k < nFrequencies; ++k) {
         double omega = -piDouble * frequency[k];
         Complex z = Complex(cos(omega), sin(omega));
diff --git a/Source/core/platform/audio/Biquad.h b/Source/core/platform/audio/Biquad.h
index e0e421d..ac3e0af 100644
--- a/Source/core/platform/audio/Biquad.h
+++ b/Source/core/platform/audio/Biquad.h
@@ -32,7 +32,7 @@
 #include <sys/types.h>
 #include "core/platform/audio/AudioArray.h"
 #include "wtf/Complex.h"
- 
+
 #if USE(WEBAUDIO_IPP)
 #include <ipps.h>
 #endif // USE(WEBAUDIO_IPP)
@@ -45,7 +45,7 @@
 //    lowpass, highpass, shelving, parameteric, notch, allpass, ...
 
 class Biquad {
-public:   
+public:
     Biquad();
     virtual ~Biquad();
 
@@ -82,7 +82,7 @@
                               float* phaseResponse);
 private:
     void setNormalizedCoefficients(double b0, double b1, double b2, double a0, double a1, double a2);
-    
+
     // Filter coefficients. The filter is defined as
     //
     // y[n] + m_a1*y[n-1] + m_a2*y[n-2] = m_b0*x[n] + m_b1*x[n-1] + m_b2*x[n-2].
diff --git a/Source/core/platform/audio/DirectConvolver.cpp b/Source/core/platform/audio/DirectConvolver.cpp
index 43a3ab3..5594dfb 100644
--- a/Source/core/platform/audio/DirectConvolver.cpp
+++ b/Source/core/platform/audio/DirectConvolver.cpp
@@ -41,7 +41,7 @@
 namespace WebCore {
 
 using namespace VectorMath;
-    
+
 DirectConvolver::DirectConvolver(size_t inputBlockSize)
     : m_inputBlockSize(inputBlockSize)
 #if USE(WEBAUDIO_IPP)
@@ -105,7 +105,7 @@
     while (i < framesToProcess) {
         size_t j = 0;
         float sum = 0;
-        
+
         // FIXME: SSE optimization may be applied here.
         if (kernelSize == 32) {
             CONVOLVE_ONE_SAMPLE // 1
diff --git a/Source/core/platform/audio/DynamicsCompressor.cpp b/Source/core/platform/audio/DynamicsCompressor.cpp
index 6f735cd..46621bb 100644
--- a/Source/core/platform/audio/DynamicsCompressor.cpp
+++ b/Source/core/platform/audio/DynamicsCompressor.cpp
@@ -39,7 +39,7 @@
 namespace WebCore {
 
 using namespace AudioUtilities;
-    
+
 DynamicsCompressor::DynamicsCompressor(float sampleRate, unsigned numberOfChannels)
     : m_numberOfChannels(numberOfChannels)
     , m_sampleRate(sampleRate)
@@ -64,7 +64,7 @@
 void DynamicsCompressor::initializeParameters()
 {
     // Initializes compressor to default values.
-    
+
     m_parameters[ParamThreshold] = -24; // dB
     m_parameters[ParamKnee] = 30; // dB
     m_parameters[ParamRatio] = 12; // unit-less
@@ -81,7 +81,7 @@
     m_parameters[ParamFilterStageGain] = 4.4f; // dB
     m_parameters[ParamFilterStageRatio] = 2;
     m_parameters[ParamFilterAnchor] = 15000 / nyquist();
-    
+
     m_parameters[ParamPostGain] = 0; // dB
     m_parameters[ParamReduction] = 0; // dB
 
@@ -230,8 +230,8 @@
                          releaseZone3,
                          releaseZone4
                          );
-                         
-    // Update the compression amount.                     
+
+    // Update the compression amount.
     setParameterValue(ParamReduction, m_compressor.meteringGain());
 
     // Apply de-emphasis filter.
diff --git a/Source/core/platform/audio/EqualPowerPanner.cpp b/Source/core/platform/audio/EqualPowerPanner.cpp
index 6ebe93b..aed8f2f 100644
--- a/Source/core/platform/audio/EqualPowerPanner.cpp
+++ b/Source/core/platform/audio/EqualPowerPanner.cpp
@@ -63,18 +63,18 @@
     if (!isOutputSafe)
         return;
 
-    const float* sourceL = inputBus->channel(0)->data();                               
+    const float* sourceL = inputBus->channel(0)->data();
     const float* sourceR = numberOfInputChannels > 1 ? inputBus->channel(1)->data() : sourceL;
     float* destinationL = outputBus->channelByType(AudioBus::ChannelLeft)->mutableData();
     float* destinationR = outputBus->channelByType(AudioBus::ChannelRight)->mutableData();
-    
+
     if (!sourceL || !sourceR || !destinationL || !destinationR)
         return;
-    
+
     // Clamp azimuth to allowed range of -180 -> +180.
     azimuth = max(-180.0, azimuth);
     azimuth = min(180.0, azimuth);
-    
+
     // Alias the azimuth ranges behind us to in front of us:
     // -90 -> -180 to -90 -> 0 and 90 -> 180 to 90 -> 0
     if (azimuth < -90)
@@ -103,21 +103,21 @@
 
     desiredGainL = cos(0.5 * piDouble * desiredPanPosition);
     desiredGainR = sin(0.5 * piDouble * desiredPanPosition);
-   
+
     // Don't de-zipper on first render call.
     if (m_isFirstRender) {
         m_isFirstRender = false;
         m_gainL = desiredGainL;
         m_gainR = desiredGainR;
     }
-    
+
     // Cache in local variables.
     double gainL = m_gainL;
     double gainR = m_gainR;
-    
+
     // Get local copy of smoothing constant.
     const double SmoothingConstant = m_smoothingConstant;
-    
+
     int n = framesToProcess;
 
     if (numberOfInputChannels == 1) { // For mono source case.
diff --git a/Source/core/platform/audio/EqualPowerPanner.h b/Source/core/platform/audio/EqualPowerPanner.h
index b8bd106..ebdd9f9 100644
--- a/Source/core/platform/audio/EqualPowerPanner.h
+++ b/Source/core/platform/audio/EqualPowerPanner.h
@@ -46,7 +46,7 @@
     // For smoothing / de-zippering
     bool m_isFirstRender;
     double m_smoothingConstant;
-    
+
     double m_gainL;
     double m_gainR;
 };
diff --git a/Source/core/platform/audio/FFTConvolver.cpp b/Source/core/platform/audio/FFTConvolver.cpp
index 4566ec1..ed62abc 100644
--- a/Source/core/platform/audio/FFTConvolver.cpp
+++ b/Source/core/platform/audio/FFTConvolver.cpp
@@ -37,7 +37,7 @@
 namespace WebCore {
 
 using namespace VectorMath;
-    
+
 FFTConvolver::FFTConvolver(size_t fftSize)
     : m_frame(fftSize)
     , m_readWriteIndex(0)
diff --git a/Source/core/platform/audio/FFTFrame.h b/Source/core/platform/audio/FFTFrame.h
index 94b462a..65ae060 100644
--- a/Source/core/platform/audio/FFTFrame.h
+++ b/Source/core/platform/audio/FFTFrame.h
@@ -151,7 +151,7 @@
     AudioFloatArray m_realData;
     AudioFloatArray m_imagData;
 #endif
-    
+
 #endif // !USE_ACCELERATE_FFT
 };
 
diff --git a/Source/core/platform/audio/HRTFDatabase.cpp b/Source/core/platform/audio/HRTFDatabase.cpp
index 5bf5e1e..9980211 100644
--- a/Source/core/platform/audio/HRTFDatabase.cpp
+++ b/Source/core/platform/audio/HRTFDatabase.cpp
@@ -61,7 +61,7 @@
         ASSERT(hrtfElevation.get());
         if (!hrtfElevation.get())
             return;
-        
+
         m_elevations[elevationIndex] = hrtfElevation.release();
         elevationIndex += InterpolationFactor;
     }
@@ -88,16 +88,16 @@
 {
     unsigned elevationIndex = indexFromElevationAngle(elevationAngle);
     ASSERT_WITH_SECURITY_IMPLICATION(elevationIndex < m_elevations.size() && m_elevations.size() > 0);
-    
+
     if (!m_elevations.size()) {
         kernelL = 0;
         kernelR = 0;
         return;
     }
-    
+
     if (elevationIndex > m_elevations.size() - 1)
-        elevationIndex = m_elevations.size() - 1;    
-    
+        elevationIndex = m_elevations.size() - 1;
+
     HRTFElevation* hrtfElevation = m_elevations[elevationIndex].get();
     ASSERT(hrtfElevation);
     if (!hrtfElevation) {
@@ -105,9 +105,9 @@
         kernelR = 0;
         return;
     }
-    
+
     hrtfElevation->getKernelsFromAzimuth(azimuthBlend, azimuthIndex, kernelL, kernelR, frameDelayL, frameDelayR);
-}                                                     
+}
 
 unsigned HRTFDatabase::indexFromElevationAngle(double elevationAngle)
 {
@@ -115,7 +115,7 @@
     elevationAngle = max(static_cast<double>(MinElevation), elevationAngle);
     elevationAngle = min(static_cast<double>(MaxElevation), elevationAngle);
 
-    unsigned elevationIndex = static_cast<int>(InterpolationFactor * (elevationAngle - MinElevation) / RawElevationAngleSpacing);    
+    unsigned elevationIndex = static_cast<int>(InterpolationFactor * (elevationAngle - MinElevation) / RawElevationAngleSpacing);
     return elevationIndex;
 }
 
diff --git a/Source/core/platform/audio/HRTFDatabase.h b/Source/core/platform/audio/HRTFDatabase.h
index b265d64..30c2c26 100644
--- a/Source/core/platform/audio/HRTFDatabase.h
+++ b/Source/core/platform/audio/HRTFDatabase.h
@@ -69,14 +69,14 @@
 
     // Interpolates by this factor to get the total number of elevations from every elevation loaded from resource.
     static const unsigned InterpolationFactor;
-    
+
     // Total number of elevations after interpolation.
     static const unsigned NumberOfTotalElevations;
 
     // Returns the index for the correct HRTFElevation given the elevation angle.
     static unsigned indexFromElevationAngle(double);
 
-    Vector<OwnPtr<HRTFElevation> > m_elevations;                                            
+    Vector<OwnPtr<HRTFElevation> > m_elevations;
     float m_sampleRate;
 };
 
diff --git a/Source/core/platform/audio/HRTFDatabaseLoader.cpp b/Source/core/platform/audio/HRTFDatabaseLoader.cpp
index 32b7128..47219ec 100644
--- a/Source/core/platform/audio/HRTFDatabaseLoader.cpp
+++ b/Source/core/platform/audio/HRTFDatabaseLoader.cpp
@@ -45,7 +45,7 @@
     ASSERT(isMainThread());
 
     RefPtr<HRTFDatabaseLoader> loader;
-    
+
     if (!s_loaderMap)
         s_loaderMap = adoptPtr(new LoaderMap()).leakPtr();
 
@@ -104,7 +104,7 @@
     ASSERT(isMainThread());
 
     MutexLocker locker(m_threadLock);
-    
+
     if (!m_hrtfDatabase.get() && !m_databaseLoaderThread) {
         // Start the asynchronous database loading process.
         m_databaseLoaderThread = createThread(databaseLoaderEntry, this, "HRTF database loader");
@@ -119,7 +119,7 @@
 void HRTFDatabaseLoader::waitForLoaderThreadCompletion()
 {
     MutexLocker locker(m_threadLock);
-    
+
     // waitForThreadCompletion() should not be called twice for the same thread.
     if (m_databaseLoaderThread)
         waitForThreadCompletion(m_databaseLoaderThread);
diff --git a/Source/core/platform/audio/HRTFDatabaseLoader.h b/Source/core/platform/audio/HRTFDatabaseLoader.h
index e11178c..3174807 100644
--- a/Source/core/platform/audio/HRTFDatabaseLoader.h
+++ b/Source/core/platform/audio/HRTFDatabaseLoader.h
@@ -50,24 +50,24 @@
 
     // Both constructor and destructor must be called from the main thread.
     ~HRTFDatabaseLoader();
-    
+
     // Returns true once the default database has been completely loaded.
     bool isLoaded() const;
 
     // waitForLoaderThreadCompletion() may be called more than once and is thread-safe.
     void waitForLoaderThreadCompletion();
-    
+
     HRTFDatabase* database() { return m_hrtfDatabase.get(); }
 
     float databaseSampleRate() const { return m_databaseSampleRate; }
-    
+
     // Called in asynchronous loading thread.
     void load();
 
 private:
     // Both constructor and destructor must be called from the main thread.
     explicit HRTFDatabaseLoader(float sampleRate);
-    
+
     // If it hasn't already been loaded, creates a new thread and initiates asynchronous loading of the default database.
     // This must be called from the main thread.
     void loadAsynchronously();
diff --git a/Source/core/platform/audio/HRTFElevation.cpp b/Source/core/platform/audio/HRTFElevation.cpp
index 998f604..a37e696 100644
--- a/Source/core/platform/audio/HRTFElevation.cpp
+++ b/Source/core/platform/audio/HRTFElevation.cpp
@@ -39,7 +39,7 @@
 #include "wtf/OwnPtr.h"
 
 using namespace std;
- 
+
 namespace WebCore {
 
 const unsigned HRTFElevation::AzimuthSpacing = 15;
@@ -101,20 +101,20 @@
     bool success = calculateKernelsForAzimuthElevation(azimuth, elevation, sampleRate, subjectName, kernelL1, kernelR1);
     if (!success)
         return false;
-        
+
     // And symmetric version
     int symmetricAzimuth = !azimuth ? 0 : 360 - azimuth;
-                                                              
+
     RefPtr<HRTFKernel> kernelL2;
     RefPtr<HRTFKernel> kernelR2;
     success = calculateKernelsForAzimuthElevation(symmetricAzimuth, elevation, sampleRate, subjectName, kernelL2, kernelR2);
     if (!success)
         return false;
-        
+
     // Notice L/R reversal in symmetric version.
     kernelL = HRTFKernel::createInterpolatedKernel(kernelL1.get(), kernelR2.get(), 0.5f);
     kernelR = HRTFKernel::createInterpolatedKernel(kernelR1.get(), kernelL2.get(), 0.5f);
-    
+
     return true;
 }
 
@@ -133,7 +133,7 @@
     ASSERT(isElevationGood);
     if (!isElevationGood)
         return false;
-    
+
     // Construct the resource name from the subject name, azimuth, and elevation, for example:
     // "IRC_Composite_C_R0195_T015_P000"
     // Note: the passed in subjectName is not a string passed in via JavaScript or the web.
@@ -177,7 +177,7 @@
     ASSERT(impulseResponse.get());
     if (!impulseResponse.get())
         return false;
-    
+
     size_t responseLength = impulseResponse->length();
     size_t expectedLength = static_cast<size_t>(256 * (sampleRate / 44100.0));
 
@@ -186,7 +186,7 @@
     ASSERT(isBusGood);
     if (!isBusGood)
         return false;
-    
+
     AudioChannel* leftEarImpulseResponse = impulseResponse->channelByType(AudioBus::ChannelLeft);
     AudioChannel* rightEarImpulseResponse = impulseResponse->channelByType(AudioBus::ChannelRight);
 #endif
@@ -195,7 +195,7 @@
     const size_t fftSize = HRTFPanner::fftSizeForSampleRate(sampleRate);
     kernelL = HRTFKernel::create(leftEarImpulseResponse, fftSize, sampleRate);
     kernelR = HRTFKernel::create(rightEarImpulseResponse, fftSize, sampleRate);
-    
+
     return true;
 }
 
@@ -205,30 +205,30 @@
 static int maxElevations[] = {
         //  Azimuth
         //
-    90, // 0  
-    45, // 15 
-    60, // 30 
-    45, // 45 
-    75, // 60 
-    45, // 75 
-    60, // 90 
-    45, // 105 
-    75, // 120 
-    45, // 135 
-    60, // 150 
-    45, // 165 
-    75, // 180 
-    45, // 195 
-    60, // 210 
-    45, // 225 
-    75, // 240 
-    45, // 255 
-    60, // 270 
-    45, // 285 
-    75, // 300 
-    45, // 315 
-    60, // 330 
-    45 //  345 
+    90, // 0
+    45, // 15
+    60, // 30
+    45, // 45
+    75, // 60
+    45, // 75
+    60, // 90
+    45, // 105
+    75, // 120
+    45, // 135
+    60, // 150
+    45, // 165
+    75, // 180
+    45, // 195
+    60, // 210
+    45, // 225
+    75, // 240
+    45, // 255
+    60, // 270
+    45, // 285
+    75, // 300
+    45, // 315
+    60, // 330
+    45 //  345
 };
 
 PassOwnPtr<HRTFElevation> HRTFElevation::createForSubject(const String& subjectName, int elevation, float sampleRate)
@@ -237,7 +237,7 @@
     ASSERT(isElevationGood);
     if (!isElevationGood)
         return nullptr;
-        
+
     OwnPtr<HRTFKernelList> kernelListL = adoptPtr(new HRTFKernelList(NumberOfTotalAzimuths));
     OwnPtr<HRTFKernelList> kernelListR = adoptPtr(new HRTFKernelList(NumberOfTotalAzimuths));
 
@@ -251,7 +251,7 @@
         bool success = calculateKernelsForAzimuthElevation(rawIndex * AzimuthSpacing, actualElevation, sampleRate, subjectName, kernelListL->at(interpolatedIndex), kernelListR->at(interpolatedIndex));
         if (!success)
             return nullptr;
-            
+
         interpolatedIndex += InterpolationFactor;
     }
 
@@ -267,7 +267,7 @@
             (*kernelListR)[i + jj] = HRTFKernel::createInterpolatedKernel(kernelListR->at(i).get(), kernelListR->at(j).get(), x);
         }
     }
-    
+
     OwnPtr<HRTFElevation> hrtfElevation = adoptPtr(new HRTFElevation(kernelListL.release(), kernelListR.release(), elevation, sampleRate));
     return hrtfElevation.release();
 }
@@ -277,9 +277,9 @@
     ASSERT(hrtfElevation1 && hrtfElevation2);
     if (!hrtfElevation1 || !hrtfElevation2)
         return nullptr;
-        
+
     ASSERT(x >= 0.0 && x < 1.0);
-    
+
     OwnPtr<HRTFKernelList> kernelListL = adoptPtr(new HRTFKernelList(NumberOfTotalAzimuths));
     OwnPtr<HRTFKernelList> kernelListR = adoptPtr(new HRTFKernelList(NumberOfTotalAzimuths));
 
@@ -287,7 +287,7 @@
     HRTFKernelList* kernelListR1 = hrtfElevation1->kernelListR();
     HRTFKernelList* kernelListL2 = hrtfElevation2->kernelListL();
     HRTFKernelList* kernelListR2 = hrtfElevation2->kernelListR();
-    
+
     // Interpolate kernels of corresponding azimuths of the two elevations.
     for (unsigned i = 0; i < NumberOfTotalAzimuths; ++i) {
         (*kernelListL)[i] = HRTFKernel::createInterpolatedKernel(kernelListL1->at(i).get(), kernelListL2->at(i).get(), x);
@@ -296,9 +296,9 @@
 
     // Interpolate elevation angle.
     double angle = (1.0 - x) * hrtfElevation1->elevationAngle() + x * hrtfElevation2->elevationAngle();
-    
+
     OwnPtr<HRTFElevation> hrtfElevation = adoptPtr(new HRTFElevation(kernelListL.release(), kernelListR.release(), static_cast<int>(angle), sampleRate));
-    return hrtfElevation.release();  
+    return hrtfElevation.release();
 }
 
 void HRTFElevation::getKernelsFromAzimuth(double azimuthBlend, unsigned azimuthIndex, HRTFKernel* &kernelL, HRTFKernel* &kernelR, double& frameDelayL, double& frameDelayR)
@@ -307,7 +307,7 @@
     ASSERT(checkAzimuthBlend);
     if (!checkAzimuthBlend)
         azimuthBlend = 0.0;
-    
+
     unsigned numKernels = m_kernelListL->size();
 
     bool isIndexGood = azimuthIndex < numKernels;
@@ -317,7 +317,7 @@
         kernelR = 0;
         return;
     }
-    
+
     // Return the left and right kernels.
     kernelL = m_kernelListL->at(azimuthIndex).get();
     kernelR = m_kernelListR->at(azimuthIndex).get();
diff --git a/Source/core/platform/audio/HRTFElevation.h b/Source/core/platform/audio/HRTFElevation.h
index d201b97..b16408d 100644
--- a/Source/core/platform/audio/HRTFElevation.h
+++ b/Source/core/platform/audio/HRTFElevation.h
@@ -62,20 +62,20 @@
     double elevationAngle() const { return m_elevationAngle; }
     unsigned numberOfAzimuths() const { return NumberOfTotalAzimuths; }
     float sampleRate() const { return m_sampleRate; }
-    
+
     // Returns the left and right kernels for the given azimuth index.
     // The interpolated delays based on azimuthBlend: 0 -> 1 are returned in frameDelayL and frameDelayR.
     void getKernelsFromAzimuth(double azimuthBlend, unsigned azimuthIndex, HRTFKernel* &kernelL, HRTFKernel* &kernelR, double& frameDelayL, double& frameDelayR);
-    
+
     // Spacing, in degrees, between every azimuth loaded from resource.
     static const unsigned AzimuthSpacing;
-    
+
     // Number of azimuths loaded from resource.
     static const unsigned NumberOfRawAzimuths;
 
     // Interpolates by this factor to get the total number of azimuths from every azimuth loaded from resource.
     static const unsigned InterpolationFactor;
-    
+
     // Total number of azimuths after interpolation.
     static const unsigned NumberOfTotalAzimuths;
 
diff --git a/Source/core/platform/audio/HRTFKernel.cpp b/Source/core/platform/audio/HRTFKernel.cpp
index e7432a1..d825962 100644
--- a/Source/core/platform/audio/HRTFKernel.cpp
+++ b/Source/core/platform/audio/HRTFKernel.cpp
@@ -48,14 +48,14 @@
 static float extractAverageGroupDelay(AudioChannel* channel, size_t analysisFFTSize)
 {
     ASSERT(channel);
-        
+
     float* impulseP = channel->mutableData();
-    
+
     bool isSizeGood = channel->length() >= analysisFFTSize;
     ASSERT(isSizeGood);
     if (!isSizeGood)
         return 0;
-    
+
     // Check for power-of-2.
     ASSERT(1UL << static_cast<unsigned>(log2(analysisFFTSize)) == analysisFFTSize);
 
@@ -115,18 +115,18 @@
     ASSERT(kernel1 && kernel2);
     if (!kernel1 || !kernel2)
         return 0;
- 
+
     ASSERT(x >= 0.0 && x < 1.0);
     x = min(1.0f, max(0.0f, x));
-    
+
     float sampleRate1 = kernel1->sampleRate();
     float sampleRate2 = kernel2->sampleRate();
     ASSERT(sampleRate1 == sampleRate2);
     if (sampleRate1 != sampleRate2)
         return 0;
-    
+
     float frameDelay = (1 - x) * kernel1->frameDelay() + x * kernel2->frameDelay();
-    
+
     OwnPtr<FFTFrame> interpolatedFrame = FFTFrame::createInterpolatedFrame(*kernel1->fftFrame(), *kernel2->fftFrame(), x);
     return HRTFKernel::create(interpolatedFrame.release(), frameDelay, sampleRate1);
 }
diff --git a/Source/core/platform/audio/HRTFKernel.h b/Source/core/platform/audio/HRTFKernel.h
index a076bf8..14b1db0 100644
--- a/Source/core/platform/audio/HRTFKernel.h
+++ b/Source/core/platform/audio/HRTFKernel.h
@@ -40,7 +40,7 @@
 namespace WebCore {
 
 class AudioChannel;
-    
+
 // HRTF stands for Head-Related Transfer Function.
 // HRTFKernel is a frequency-domain representation of an impulse-response used as part of the spatialized panning system.
 // For a given azimuth / elevation angle there will be one HRTFKernel for the left ear transfer function, and one for the right ear.
@@ -63,9 +63,9 @@
 
     // Given two HRTFKernels, and an interpolation factor x: 0 -> 1, returns an interpolated HRTFKernel.
     static PassRefPtr<HRTFKernel> createInterpolatedKernel(HRTFKernel* kernel1, HRTFKernel* kernel2, float x);
-  
+
     FFTFrame* fftFrame() { return m_fftFrame.get(); }
-    
+
     size_t fftSize() const { return m_fftFrame->fftSize(); }
     float frameDelay() const { return m_frameDelay; }
 
@@ -78,14 +78,14 @@
 private:
     // Note: this is destructive on the passed in AudioChannel.
     HRTFKernel(AudioChannel*, size_t fftSize, float sampleRate);
-    
+
     HRTFKernel(PassOwnPtr<FFTFrame> fftFrame, float frameDelay, float sampleRate)
         : m_fftFrame(fftFrame)
         , m_frameDelay(frameDelay)
         , m_sampleRate(sampleRate)
     {
     }
-    
+
     OwnPtr<FFTFrame> m_fftFrame;
     float m_frameDelay;
     float m_sampleRate;
diff --git a/Source/core/platform/audio/HRTFPanner.cpp b/Source/core/platform/audio/HRTFPanner.cpp
index 9234fed..db7f2d8 100644
--- a/Source/core/platform/audio/HRTFPanner.cpp
+++ b/Source/core/platform/audio/HRTFPanner.cpp
@@ -247,7 +247,7 @@
         m_delayLineR.process(segmentSourceR, segmentDestinationR, framesPerSegment);
 
         bool needsCrossfading = m_crossfadeIncr;
-        
+
         // Have the convolvers render directly to the final destination if we're not cross-fading.
         float* convolutionDestinationL1 = needsCrossfading ? m_tempL1.data() : segmentDestinationL;
         float* convolutionDestinationR1 = needsCrossfading ? m_tempR1.data() : segmentDestinationR;
@@ -256,7 +256,7 @@
 
         // Now do the convolutions.
         // Note that we avoid doing convolutions on both sets of convolvers if we're not currently cross-fading.
-        
+
         if (m_crossfadeSelection == CrossfadeSelection1 || needsCrossfading) {
             m_convolverL1.process(kernelL1->fftFrame(), segmentDestinationL, convolutionDestinationL1, framesPerSegment);
             m_convolverR1.process(kernelR1->fftFrame(), segmentDestinationR, convolutionDestinationR1, framesPerSegment);
@@ -266,7 +266,7 @@
             m_convolverL2.process(kernelL2->fftFrame(), segmentDestinationL, convolutionDestinationL2, framesPerSegment);
             m_convolverR2.process(kernelR2->fftFrame(), segmentDestinationR, convolutionDestinationR2, framesPerSegment);
         }
-        
+
         if (needsCrossfading) {
             // Apply linear cross-fade.
             float x = m_crossfadeX;
diff --git a/Source/core/platform/audio/MultiChannelResampler.h b/Source/core/platform/audio/MultiChannelResampler.h
index a5164a7..16a57fd 100644
--- a/Source/core/platform/audio/MultiChannelResampler.h
+++ b/Source/core/platform/audio/MultiChannelResampler.h
@@ -35,11 +35,11 @@
 namespace WebCore {
 
 class AudioBus;
-    
+
 class MultiChannelResampler {
-public:   
+public:
     MultiChannelResampler(double scaleFactor, unsigned numberOfChannels);
-    
+
     // Process given AudioSourceProvider for streaming applications.
     void process(AudioSourceProvider*, AudioBus* destination, size_t framesToProcess);
 
@@ -47,10 +47,10 @@
     // FIXME: the mac port can have a more highly optimized implementation based on CoreAudio
     // instead of SincResampler. For now the default implementation will be used on all ports.
     // https://bugs.webkit.org/show_bug.cgi?id=75118
-    
+
     // Each channel will be resampled using a high-quality SincResampler.
     Vector<OwnPtr<SincResampler> > m_kernels;
-    
+
     unsigned m_numberOfChannels;
 };
 
diff --git a/Source/core/platform/audio/Panner.h b/Source/core/platform/audio/Panner.h
index a7b3bc4..d6eac04 100644
--- a/Source/core/platform/audio/Panner.h
+++ b/Source/core/platform/audio/Panner.h
@@ -45,7 +45,7 @@
         PanningModelHRTF = 1,
         PanningModelSoundField = 2
     };
-    
+
     typedef unsigned PanningModel;
 
     static PassOwnPtr<Panner> create(PanningModel, float sampleRate, HRTFDatabaseLoader*);
diff --git a/Source/core/platform/audio/Reverb.cpp b/Source/core/platform/audio/Reverb.cpp
index 2eb9a6c..4886184 100644
--- a/Source/core/platform/audio/Reverb.cpp
+++ b/Source/core/platform/audio/Reverb.cpp
@@ -54,7 +54,7 @@
 
 // A minimum power value to when normalizing a silent (or very quiet) impulse response
 const float MinPower = 0.000125f;
-    
+
 static float calculateNormalizationScale(AudioBus* response)
 {
     // Normalize by RMS power
@@ -139,8 +139,8 @@
     // Do a fairly comprehensive sanity check.
     // If these conditions are satisfied, all of the source and destination pointers will be valid for the various matrixing cases.
     bool isSafeToProcess = sourceBus && destinationBus && sourceBus->numberOfChannels() > 0 && destinationBus->numberOfChannels() > 0
-        && framesToProcess <= MaxFrameSize && framesToProcess <= sourceBus->length() && framesToProcess <= destinationBus->length(); 
-    
+        && framesToProcess <= MaxFrameSize && framesToProcess <= sourceBus->length() && framesToProcess <= destinationBus->length();
+
     ASSERT(isSafeToProcess);
     if (!isSafeToProcess)
         return;
diff --git a/Source/core/platform/audio/Reverb.h b/Source/core/platform/audio/Reverb.h
index 38e42da..1e79596 100644
--- a/Source/core/platform/audio/Reverb.h
+++ b/Source/core/platform/audio/Reverb.h
@@ -35,7 +35,7 @@
 namespace WebCore {
 
 class AudioBus;
-    
+
 // Multi-channel convolution reverb with channel matrixing - one or more ReverbConvolver objects are used internally.
 
 class Reverb {
diff --git a/Source/core/platform/audio/ReverbAccumulationBuffer.cpp b/Source/core/platform/audio/ReverbAccumulationBuffer.cpp
index f1d79ca..e7506fa 100644
--- a/Source/core/platform/audio/ReverbAccumulationBuffer.cpp
+++ b/Source/core/platform/audio/ReverbAccumulationBuffer.cpp
@@ -49,7 +49,7 @@
 {
     size_t bufferLength = m_buffer.size();
     bool isCopySafe = m_readIndex <= bufferLength && numberOfFrames <= bufferLength;
-    
+
     ASSERT(isCopySafe);
     if (!isCopySafe)
         return;
@@ -81,7 +81,7 @@
 int ReverbAccumulationBuffer::accumulate(float* source, size_t numberOfFrames, int* readIndex, size_t delayFrames)
 {
     size_t bufferLength = m_buffer.size();
-    
+
     size_t writeIndex = (*readIndex + delayFrames) % bufferLength;
 
     // Update caller's readIndex
@@ -101,7 +101,7 @@
     vadd(source, 1, destination + writeIndex, 1, destination + writeIndex, 1, numberOfFrames1);
 
     // Handle wrap-around if necessary
-    if (numberOfFrames2 > 0)       
+    if (numberOfFrames2 > 0)
         vadd(source + numberOfFrames1, 1, destination, 1, destination, 1, numberOfFrames2);
 
     return writeIndex;
diff --git a/Source/core/platform/audio/ReverbConvolver.cpp b/Source/core/platform/audio/ReverbConvolver.cpp
index dc935b8..17ace84 100644
--- a/Source/core/platform/audio/ReverbConvolver.cpp
+++ b/Source/core/platform/audio/ReverbConvolver.cpp
@@ -153,7 +153,7 @@
 {
     while (!m_wantsToExit) {
         // Wait for realtime thread to give us more input
-        m_moreInputBuffered = false;        
+        m_moreInputBuffered = false;
         {
             MutexLocker locker(m_backgroundThreadLock);
             while (!m_moreInputBuffered && !m_wantsToExit)
@@ -163,7 +163,7 @@
         // Process all of the stages until their read indices reach the input buffer's write index
         int writeIndex = m_inputBuffer.writeIndex();
 
-        // Even though it doesn't seem like every stage needs to maintain its own version of readIndex 
+        // Even though it doesn't seem like every stage needs to maintain its own version of readIndex
         // we do this in case we want to run in more than one background thread.
         int readIndex;
 
@@ -184,7 +184,7 @@
     ASSERT(isSafe);
     if (!isSafe)
         return;
-        
+
     const float* source = sourceChannel->data();
     float* destination = destinationChannel->mutableData();
     bool isDataSafe = source && destination;
@@ -201,13 +201,13 @@
 
     // Finally read from accumulation buffer
     m_accumulationBuffer.readAndClear(destination, framesToProcess);
-        
+
     // Now that we've buffered more input, wake up our background thread.
-    
+
     // Not using a MutexLocker looks strange, but we use a tryLock() instead because this is run on the real-time
     // thread where it is a disaster for the lock to be contended (causes audio glitching).  It's OK if we fail to
     // signal from time to time, since we'll get to it the next time we're called.  We're called repeatedly
-    // and frequently (around every 3ms).  The background thread is processing well into the future and has a considerable amount of 
+    // and frequently (around every 3ms).  The background thread is processing well into the future and has a considerable amount of
     // leeway here...
     if (m_backgroundThreadLock.tryLock()) {
         m_moreInputBuffered = true;
diff --git a/Source/core/platform/audio/ReverbConvolverStage.cpp b/Source/core/platform/audio/ReverbConvolverStage.cpp
index 75c61dc..e4c9954 100644
--- a/Source/core/platform/audio/ReverbConvolverStage.cpp
+++ b/Source/core/platform/audio/ReverbConvolverStage.cpp
@@ -103,7 +103,7 @@
     ASSERT(source);
     if (!source)
         return;
-    
+
     // Deal with pre-delay stream : note special handling of zero delay.
 
     const float* preDelayedSource;
@@ -121,16 +121,16 @@
 
         preDelayedDestination = m_preDelayBuffer.data() + m_preReadWriteIndex;
         preDelayedSource = preDelayedDestination;
-        temporaryBuffer = m_temporaryBuffer.data();        
+        temporaryBuffer = m_temporaryBuffer.data();
     } else {
         // Zero delay
         preDelayedDestination = 0;
         preDelayedSource = source;
         temporaryBuffer = m_preDelayBuffer.data();
-        
+
         isTemporaryBufferSafe = framesToProcess <= m_preDelayBuffer.size();
     }
-    
+
     ASSERT(isTemporaryBufferSafe);
     if (!isTemporaryBufferSafe)
         return;
diff --git a/Source/core/platform/audio/ReverbConvolverStage.h b/Source/core/platform/audio/ReverbConvolverStage.h
index b71554c..c88f41b 100644
--- a/Source/core/platform/audio/ReverbConvolverStage.h
+++ b/Source/core/platform/audio/ReverbConvolverStage.h
@@ -39,7 +39,7 @@
 class ReverbConvolver;
 class FFTConvolver;
 class DirectConvolver;
-    
+
 // A ReverbConvolverStage represents the convolution associated with a sub-section of a large impulse response.
 // It incorporates a delay line to account for the offset of the sub-section within the larger impulse response.
 class ReverbConvolverStage {
diff --git a/Source/core/platform/audio/ReverbInputBuffer.cpp b/Source/core/platform/audio/ReverbInputBuffer.cpp
index 1e14de4..0a6dca7 100644
--- a/Source/core/platform/audio/ReverbInputBuffer.cpp
+++ b/Source/core/platform/audio/ReverbInputBuffer.cpp
@@ -47,7 +47,7 @@
     ASSERT(isCopySafe);
     if (!isCopySafe)
         return;
-        
+
     memcpy(m_buffer.data() + m_writeIndex, sourceP, sizeof(float) * numberOfFrames);
 
     m_writeIndex += numberOfFrames;
@@ -68,7 +68,7 @@
             *readIndex = 0;
         return m_buffer.data();
     }
-        
+
     float* sourceP = m_buffer.data();
     float* p = sourceP + *readIndex;
 
diff --git a/Source/core/platform/audio/SincResampler.cpp b/Source/core/platform/audio/SincResampler.cpp
index 4faf98e..d429fbc 100644
--- a/Source/core/platform/audio/SincResampler.cpp
+++ b/Source/core/platform/audio/SincResampler.cpp
@@ -45,15 +45,15 @@
 //
 // |----------------|----------------------------------------------------------------|----------------|
 //
-//                                              blockSize + kernelSize / 2                           
+//                                              blockSize + kernelSize / 2
 //                   <-------------------------------------------------------------------------------->
 //                                                  r0
 //
-//   kernelSize / 2   kernelSize / 2                                 kernelSize / 2     kernelSize / 2 
+//   kernelSize / 2   kernelSize / 2                                 kernelSize / 2     kernelSize / 2
 // <---------------> <--------------->                              <---------------> <--------------->
 //         r1                r2                                             r3                r4
-// 
-//                                              blockSize                           
+//
+//                                              blockSize
 //                                     <-------------------------------------------------------------->
 //                                                  r5
 
@@ -132,13 +132,13 @@
     ASSERT(m_sourceProvider);
     if (!m_sourceProvider)
         return;
-    
+
     // Wrap the provided buffer by an AudioBus for use by the source provider.
     RefPtr<AudioBus> bus = AudioBus::create(1, numberOfSourceFrames, false);
 
     // FIXME: Find a way to make the following const-correct:
     bus->setChannelMemory(0, buffer, numberOfSourceFrames);
-    
+
     m_sourceProvider->provideInput(bus.get(), numberOfSourceFrames);
 }
 
@@ -153,14 +153,14 @@
         , m_sourceFramesAvailable(numberOfSourceFrames)
     {
     }
-    
+
     // Consumes samples from the in-memory buffer.
     virtual void provideInput(AudioBus* bus, size_t framesToProcess)
     {
         ASSERT(m_source && bus);
         if (!m_source || !bus)
             return;
-            
+
         float* buffer = bus->channel(0)->mutableData();
 
         // Clamp to number of frames available and zero-pad.
@@ -174,7 +174,7 @@
         m_sourceFramesAvailable -= framesToCopy;
         m_source += framesToCopy;
     }
-    
+
 private:
     const float* m_source;
     size_t m_sourceFramesAvailable;
@@ -189,11 +189,11 @@
 
     unsigned numberOfDestinationFrames = static_cast<unsigned>(numberOfSourceFrames / m_scaleFactor);
     unsigned remaining = numberOfDestinationFrames;
-    
+
     while (remaining) {
         unsigned framesThisTime = min(remaining, m_blockSize);
         process(&sourceProvider, destination, framesThisTime);
-        
+
         destination += framesThisTime;
         remaining -= framesThisTime;
     }
@@ -205,11 +205,11 @@
     ASSERT(isGood);
     if (!isGood)
         return;
-    
+
     m_sourceProvider = sourceProvider;
 
     unsigned numberOfDestinationFrames = framesToProcess;
-    
+
     // Setup various region pointers in the buffer (see diagram above).
     float* r0 = m_inputBuffer.data() + m_kernelSize / 2;
     float* r1 = m_inputBuffer.data();
@@ -224,7 +224,7 @@
         consumeSource(r0, m_blockSize + m_kernelSize / 2);
         m_isBufferPrimed = true;
     }
-    
+
     // Step (2)
 
     while (numberOfDestinationFrames) {
@@ -235,7 +235,7 @@
 
             double virtualOffsetIndex = subsampleRemainder * m_numberOfKernelOffsets;
             int offsetIndex = static_cast<int>(virtualOffsetIndex);
-            
+
             float* k1 = m_kernelStorage.data() + offsetIndex * m_kernelSize;
             float* k2 = k1 + m_kernelSize;
 
@@ -249,7 +249,7 @@
             // Figure out how much to weight each kernel's "convolution".
             double kernelInterpolationFactor = virtualOffsetIndex - offsetIndex;
 
-            // Generate a single output sample. 
+            // Generate a single output sample.
             int n = m_kernelSize;
 
 #define CONVOLVE_ONE_SAMPLE      \
@@ -331,10 +331,10 @@
                 }
 #else
                 // FIXME: add ARM NEON optimizations for the following. The scalar code-path can probably also be optimized better.
-                
+
                 // Optimize size 32 and size 64 kernels by unrolling the while loop.
                 // A 20 - 30% speed improvement was measured in some cases by using this approach.
-                
+
                 if (n == 32) {
                     CONVOLVE_ONE_SAMPLE // 1
                     CONVOLVE_ONE_SAMPLE // 2
diff --git a/Source/core/platform/audio/SincResampler.h b/Source/core/platform/audio/SincResampler.h
index 74b34c6..807596e 100644
--- a/Source/core/platform/audio/SincResampler.h
+++ b/Source/core/platform/audio/SincResampler.h
@@ -37,12 +37,12 @@
 // SincResampler is a high-quality sample-rate converter.
 
 class SincResampler {
-public:   
+public:
     // scaleFactor == sourceSampleRate / destinationSampleRate
     // kernelSize can be adjusted for quality (higher is better)
     // numberOfKernelOffsets is used for interpolation and is the number of sub-sample kernel shifts.
     SincResampler(double scaleFactor, unsigned kernelSize = 32, unsigned numberOfKernelOffsets = 32);
-    
+
     // Processes numberOfSourceFrames from source to produce numberOfSourceFrames / scaleFactor frames in destination.
     void process(const float* source, float* destination, unsigned numberOfSourceFrames);
 
@@ -52,7 +52,7 @@
 protected:
     void initializeKernel();
     void consumeSource(float* buffer, unsigned numberOfSourceFrames);
-    
+
     double m_scaleFactor;
     unsigned m_kernelSize;
     unsigned m_numberOfKernelOffsets;
@@ -60,11 +60,11 @@
     // m_kernelStorage has m_numberOfKernelOffsets kernels back-to-back, each of size m_kernelSize.
     // The kernel offsets are sub-sample shifts of a windowed sinc() shifted from 0.0 to 1.0 sample.
     AudioFloatArray m_kernelStorage;
-    
+
     // m_virtualSourceIndex is an index on the source input buffer with sub-sample precision.
     // It must be double precision to avoid drift.
     double m_virtualSourceIndex;
-    
+
     // This is the number of destination frames we generate per processing pass on the buffer.
     unsigned m_blockSize;
 
@@ -73,9 +73,9 @@
 
     const float* m_source;
     unsigned m_sourceFramesAvailable;
-    
+
     // m_sourceProvider is used to provide the audio input stream to the resampler.
-    AudioSourceProvider* m_sourceProvider;    
+    AudioSourceProvider* m_sourceProvider;
 
     // The buffer is primed once at the very beginning of processing.
     bool m_isBufferPrimed;
diff --git a/Source/core/platform/audio/VectorMath.cpp b/Source/core/platform/audio/VectorMath.cpp
index 9788228..6b20f07 100644
--- a/Source/core/platform/audio/VectorMath.cpp
+++ b/Source/core/platform/audio/VectorMath.cpp
@@ -157,9 +157,9 @@
                 destP += 4;                         \
             }
 
-        if (destAligned) 
+        if (destAligned)
             SSE2_MULT_ADD(load, store)
-        else 
+        else
             SSE2_MULT_ADD(loadu, storeu)
 
         n = tailFrames;
@@ -309,7 +309,7 @@
                 destP += 4;
             }
 
-        } else if (source2Aligned && !destAligned) { // source2 aligned but dest not aligned 
+        } else if (source2Aligned && !destAligned) { // source2 aligned but dest not aligned
             while (group--) {
                 pSource1 = reinterpret_cast<__m128*>(const_cast<float*>(source1P));
                 pSource2 = reinterpret_cast<__m128*>(const_cast<float*>(source2P));
@@ -321,7 +321,7 @@
                 destP += 4;
             }
 
-        } else if (!source2Aligned && destAligned) { // source2 not aligned but dest aligned 
+        } else if (!source2Aligned && destAligned) { // source2 not aligned but dest aligned
             while (group--) {
                 pSource1 = reinterpret_cast<__m128*>(const_cast<float*>(source1P));
                 source2 = _mm_loadu_ps(source2P);
@@ -332,7 +332,7 @@
                 source2P += 4;
                 destP += 4;
             }
-        } else if (!source2Aligned && !destAligned) { // both source2 and dest not aligned 
+        } else if (!source2Aligned && !destAligned) { // both source2 and dest not aligned
             while (group--) {
                 pSource1 = reinterpret_cast<__m128*>(const_cast<float*>(source1P));
                 source2 = _mm_loadu_ps(source2P);
@@ -462,7 +462,7 @@
 {
     unsigned i = 0;
 #ifdef __SSE2__
-    // Only use the SSE optimization in the very common case that all addresses are 16-byte aligned. 
+    // Only use the SSE optimization in the very common case that all addresses are 16-byte aligned.
     // Otherwise, fall through to the scalar code below.
     if (!(reinterpret_cast<uintptr_t>(real1P) & 0x0F)
         && !(reinterpret_cast<uintptr_t>(imag1P) & 0x0F)
@@ -470,7 +470,7 @@
         && !(reinterpret_cast<uintptr_t>(imag2P) & 0x0F)
         && !(reinterpret_cast<uintptr_t>(realDestP) & 0x0F)
         && !(reinterpret_cast<uintptr_t>(imagDestP) & 0x0F)) {
-        
+
         unsigned endSize = framesToProcess - framesToProcess % 4;
         while (i < endSize) {
             __m128 real1 = _mm_load_ps(real1P + i);
@@ -519,35 +519,35 @@
     int n = framesToProcess;
     float sum = 0;
 
-#ifdef __SSE2__ 
-    if (sourceStride == 1) { 
-        // If the sourceP address is not 16-byte aligned, the first several frames (at most three) should be processed separately. 
-        while ((reinterpret_cast<uintptr_t>(sourceP) & 0x0F) && n) { 
-            float sample = *sourceP; 
-            sum += sample * sample; 
-            sourceP++; 
-            n--; 
-        } 
- 
+#ifdef __SSE2__
+    if (sourceStride == 1) {
+        // If the sourceP address is not 16-byte aligned, the first several frames (at most three) should be processed separately.
+        while ((reinterpret_cast<uintptr_t>(sourceP) & 0x0F) && n) {
+            float sample = *sourceP;
+            sum += sample * sample;
+            sourceP++;
+            n--;
+        }
+
         // Now the sourceP is aligned, use SSE.
-        int tailFrames = n % 4; 
-        const float* endP = sourceP + n - tailFrames; 
-        __m128 source; 
-        __m128 mSum = _mm_setzero_ps(); 
- 
-        while (sourceP < endP) { 
-            source = _mm_load_ps(sourceP); 
-            source = _mm_mul_ps(source, source); 
-            mSum = _mm_add_ps(mSum, source); 
-            sourceP += 4; 
-        } 
- 
-        // Summarize the SSE results. 
-        const float* groupSumP = reinterpret_cast<float*>(&mSum); 
-        sum += groupSumP[0] + groupSumP[1] + groupSumP[2] + groupSumP[3]; 
- 
-        n = tailFrames; 
-    } 
+        int tailFrames = n % 4;
+        const float* endP = sourceP + n - tailFrames;
+        __m128 source;
+        __m128 mSum = _mm_setzero_ps();
+
+        while (sourceP < endP) {
+            source = _mm_load_ps(sourceP);
+            source = _mm_mul_ps(source, source);
+            mSum = _mm_add_ps(mSum, source);
+            sourceP += 4;
+        }
+
+        // Summarize the SSE results.
+        const float* groupSumP = reinterpret_cast<float*>(&mSum);
+        sum += groupSumP[0] + groupSumP[1] + groupSumP[2] + groupSumP[3];
+
+        n = tailFrames;
+    }
 #elif HAVE(ARM_NEON_INTRINSICS)
     if (sourceStride == 1) {
         int tailFrames = n % 4;
diff --git a/Source/core/platform/audio/ZeroPole.cpp b/Source/core/platform/audio/ZeroPole.cpp
index bab135f..86daf4e 100644
--- a/Source/core/platform/audio/ZeroPole.cpp
+++ b/Source/core/platform/audio/ZeroPole.cpp
@@ -44,7 +44,7 @@
     // Gain compensation to make 0dB @ 0Hz
     const float k1 = 1 / (1 - zero);
     const float k2 = 1 - pole;
-    
+
     // Member variables to locals.
     float lastX = m_lastX;
     float lastY = m_lastY;
@@ -62,7 +62,7 @@
 
         *destination++ = output2;
     }
-    
+
     // Locals to member variables. Flush denormals here so we don't
     // slow down the inner loop above.
     m_lastX = DenormalDisabler::flushDenormalFloatToZero(lastX);
diff --git a/Source/core/platform/audio/ZeroPole.h b/Source/core/platform/audio/ZeroPole.h
index 4cb1d17..a6de4e2 100644
--- a/Source/core/platform/audio/ZeroPole.h
+++ b/Source/core/platform/audio/ZeroPole.h
@@ -47,10 +47,10 @@
 
     // Reset filter state.
     void reset() { m_lastX = 0; m_lastY = 0; }
-    
+
     void setZero(float zero) { m_zero = zero; }
     void setPole(float pole) { m_pole = pole; }
-    
+
     float zero() const { return m_zero; }
     float pole() const { return m_pole; }
 
diff --git a/Source/core/platform/audio/chromium/AudioDestinationChromium.h b/Source/core/platform/audio/chromium/AudioDestinationChromium.h
index 632858f..253556a 100644
--- a/Source/core/platform/audio/chromium/AudioDestinationChromium.h
+++ b/Source/core/platform/audio/chromium/AudioDestinationChromium.h
@@ -36,7 +36,7 @@
 #include "public/platform/WebAudioDevice.h"
 #include "public/platform/WebVector.h"
 
-namespace WebCore { 
+namespace WebCore {
 
 class AudioFIFO;
 class AudioPullFIFO;
diff --git a/Source/core/platform/audio/chromium/FFTFrameOpenMAXDLAndroid.cpp b/Source/core/platform/audio/chromium/FFTFrameOpenMAXDLAndroid.cpp
index 9f5d9ba..6e501ed 100644
--- a/Source/core/platform/audio/chromium/FFTFrameOpenMAXDLAndroid.cpp
+++ b/Source/core/platform/audio/chromium/FFTFrameOpenMAXDLAndroid.cpp
@@ -116,7 +116,7 @@
     float real0 = realP1[0];
     float imag0 = imagP1[0];
 
-    VectorMath::zvmul(realP1, imagP1, realP2, imagP2, realP1, imagP1, halfSize); 
+    VectorMath::zvmul(realP1, imagP1, realP2, imagP2, realP1, imagP1, halfSize);
 
     // Multiply the packed DC/nyquist component
     realP1[0] = real0 * realP2[0];
@@ -170,7 +170,7 @@
         fftData[1] = 0;
         fftData[m_FFTSize] = imag[0];
         fftData[m_FFTSize + 1] = 0;
-    
+
         omxSP_FFTInv_CCSToR_F32_Sfs(fftData, data, m_inverseContext);
     }
 }
diff --git a/Source/core/platform/audio/ffmpeg/FFTFrameFFMPEG.cpp b/Source/core/platform/audio/ffmpeg/FFTFrameFFMPEG.cpp
index 761c613..05af6f4 100644
--- a/Source/core/platform/audio/ffmpeg/FFTFrameFFMPEG.cpp
+++ b/Source/core/platform/audio/ffmpeg/FFTFrameFFMPEG.cpp
@@ -157,7 +157,7 @@
     float real0 = realP1[0];
     float imag0 = imagP1[0];
 
-    VectorMath::zvmul(realP1, imagP1, realP2, imagP2, realP1, imagP1, halfSize); 
+    VectorMath::zvmul(realP1, imagP1, realP2, imagP2, realP1, imagP1, halfSize);
 
     // Multiply the packed DC/nyquist component
     realP1[0] = real0 * realP2[0];
diff --git a/Source/core/platform/audio/ipp/FFTFrameIPP.cpp b/Source/core/platform/audio/ipp/FFTFrameIPP.cpp
index b484d8c..fa25a9f 100644
--- a/Source/core/platform/audio/ipp/FFTFrameIPP.cpp
+++ b/Source/core/platform/audio/ipp/FFTFrameIPP.cpp
@@ -115,7 +115,7 @@
     float real0 = realP1[0];
     float imag0 = imagP1[0];
 
-    VectorMath::zvmul(realP1, imagP1, realP2, imagP2, realP1, imagP1, halfSize); 
+    VectorMath::zvmul(realP1, imagP1, realP2, imagP2, realP1, imagP1, halfSize);
 
     // Multiply the packed DC/nyquist component
     realP1[0] = real0 * realP2[0];
diff --git a/Source/core/platform/audio/mac/FFTFrameMac.cpp b/Source/core/platform/audio/mac/FFTFrameMac.cpp
index a0abc47..802117e 100644
--- a/Source/core/platform/audio/mac/FFTFrameMac.cpp
+++ b/Source/core/platform/audio/mac/FFTFrameMac.cpp
@@ -113,7 +113,7 @@
     float imag0 = imagP1[0];
 
     // Complex multiply
-    VectorMath::zvmul(realP1, imagP1, realP2, imagP2, realP1, imagP1, halfSize); 
+    VectorMath::zvmul(realP1, imagP1, realP2, imagP2, realP1, imagP1, halfSize);
 
     // Multiply the packed DC/nyquist component
     realP1[0] = real0 * realP2[0];
@@ -180,7 +180,7 @@
 {
     return m_frame.realp;
 }
-    
+
 float* FFTFrame::imagData() const
 {
     return m_frame.imagp;
diff --git a/Source/core/platform/chromium/ChromiumDataObject.cpp b/Source/core/platform/chromium/ChromiumDataObject.cpp
index d29b06e..3b32349 100644
--- a/Source/core/platform/chromium/ChromiumDataObject.cpp
+++ b/Source/core/platform/chromium/ChromiumDataObject.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, 2012 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/ChromiumDataObject.h b/Source/core/platform/chromium/ChromiumDataObject.h
index 1279f0f..f788aae 100644
--- a/Source/core/platform/chromium/ChromiumDataObject.h
+++ b/Source/core/platform/chromium/ChromiumDataObject.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/ChromiumDataObjectItem.h b/Source/core/platform/chromium/ChromiumDataObjectItem.h
index a0e4e72..82956b3 100644
--- a/Source/core/platform/chromium/ChromiumDataObjectItem.h
+++ b/Source/core/platform/chromium/ChromiumDataObjectItem.h
@@ -28,7 +28,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef ChromiumDataObjectItem_h 
+#ifndef ChromiumDataObjectItem_h
 #define ChromiumDataObjectItem_h
 
 #include "core/fileapi/File.h"
diff --git a/Source/core/platform/chromium/ClipboardChromium.h b/Source/core/platform/chromium/ClipboardChromium.h
index 893e98d..9df2d14 100644
--- a/Source/core/platform/chromium/ClipboardChromium.h
+++ b/Source/core/platform/chromium/ClipboardChromium.h
@@ -1,10 +1,10 @@
 // Copyright (c) 2008, Google Inc.
 // All rights reserved.
-// 
+//
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions are
 // met:
-// 
+//
 //     * Redistributions of source code must retain the above copyright
 // notice, this list of conditions and the following disclaimer.
 //     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
 //     * Neither the name of Google Inc. nor the names of its
 // contributors may be used to endorse or promote products derived from
 // this software without specific prior written permission.
-// 
+//
 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/ClipboardUtilitiesChromium.cpp b/Source/core/platform/chromium/ClipboardUtilitiesChromium.cpp
index f2e7ee9..a3f4457 100644
--- a/Source/core/platform/chromium/ClipboardUtilitiesChromium.cpp
+++ b/Source/core/platform/chromium/ClipboardUtilitiesChromium.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/ClipboardUtilitiesChromium.h b/Source/core/platform/chromium/ClipboardUtilitiesChromium.h
index 173f383..4bd35ae 100644
--- a/Source/core/platform/chromium/ClipboardUtilitiesChromium.h
+++ b/Source/core/platform/chromium/ClipboardUtilitiesChromium.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/DragDataRef.h b/Source/core/platform/chromium/DragDataRef.h
index 4d22f51..7df3554 100644
--- a/Source/core/platform/chromium/DragDataRef.h
+++ b/Source/core/platform/chromium/DragDataRef.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/FileSystemChromium.cpp b/Source/core/platform/chromium/FileSystemChromium.cpp
index 05f6166..6d606c2 100644
--- a/Source/core/platform/chromium/FileSystemChromium.cpp
+++ b/Source/core/platform/chromium/FileSystemChromium.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/FileSystemChromiumLinux.cpp b/Source/core/platform/chromium/FileSystemChromiumLinux.cpp
index 80a9c19..4d1d4a8 100644
--- a/Source/core/platform/chromium/FileSystemChromiumLinux.cpp
+++ b/Source/core/platform/chromium/FileSystemChromiumLinux.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/FileSystemChromiumWin.cpp b/Source/core/platform/chromium/FileSystemChromiumWin.cpp
index 4ceec8a..3b9d2f8 100644
--- a/Source/core/platform/chromium/FileSystemChromiumWin.cpp
+++ b/Source/core/platform/chromium/FileSystemChromiumWin.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/FramelessScrollView.cpp b/Source/core/platform/chromium/FramelessScrollView.cpp
index acd705f..0a98c86 100644
--- a/Source/core/platform/chromium/FramelessScrollView.cpp
+++ b/Source/core/platform/chromium/FramelessScrollView.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/FramelessScrollView.h b/Source/core/platform/chromium/FramelessScrollView.h
index e839b04..aed2839 100644
--- a/Source/core/platform/chromium/FramelessScrollView.h
+++ b/Source/core/platform/chromium/FramelessScrollView.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/FramelessScrollViewClient.h b/Source/core/platform/chromium/FramelessScrollViewClient.h
index d304dcb..a5c9474 100644
--- a/Source/core/platform/chromium/FramelessScrollViewClient.h
+++ b/Source/core/platform/chromium/FramelessScrollViewClient.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/KeyCodeConversion.h b/Source/core/platform/chromium/KeyCodeConversion.h
index 8bd0b46..0257f5b 100644
--- a/Source/core/platform/chromium/KeyCodeConversion.h
+++ b/Source/core/platform/chromium/KeyCodeConversion.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/KeyboardCodes.h b/Source/core/platform/chromium/KeyboardCodes.h
index f7d462b..594e280 100644
--- a/Source/core/platform/chromium/KeyboardCodes.h
+++ b/Source/core/platform/chromium/KeyboardCodes.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/LanguageChromium.cpp b/Source/core/platform/chromium/LanguageChromium.cpp
index 360af74..d937bbb 100644
--- a/Source/core/platform/chromium/LanguageChromium.cpp
+++ b/Source/core/platform/chromium/LanguageChromium.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/LocalizedStringsChromium.cpp b/Source/core/platform/chromium/LocalizedStringsChromium.cpp
index b72a813..dbf0c21 100644
--- a/Source/core/platform/chromium/LocalizedStringsChromium.cpp
+++ b/Source/core/platform/chromium/LocalizedStringsChromium.cpp
@@ -184,7 +184,7 @@
 {
     return String();
 }
-    
+
 #if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
 String AXAMPMFieldText()
 {
diff --git a/Source/core/platform/chromium/MIMETypeRegistryChromium.cpp b/Source/core/platform/chromium/MIMETypeRegistryChromium.cpp
index bab382c..1dfa8b1 100644
--- a/Source/core/platform/chromium/MIMETypeRegistryChromium.cpp
+++ b/Source/core/platform/chromium/MIMETypeRegistryChromium.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -87,14 +87,14 @@
 }
 
 bool MIMETypeRegistry::isSupportedImageMIMEType(const String& mimeType)
-{ 
+{
     return WebKit::Platform::current()->mimeRegistry()->supportsImageMIMEType(mimeType)
         != WebKit::WebMimeRegistry::IsNotSupported;
 }
 
 bool MIMETypeRegistry::isSupportedImageResourceMIMEType(const String& mimeType)
-{ 
-    return isSupportedImageMIMEType(mimeType); 
+{
+    return isSupportedImageMIMEType(mimeType);
 }
 
 bool MIMETypeRegistry::isSupportedImageMIMETypeForEncoding(const String& mimeType)
@@ -111,7 +111,7 @@
     return WebKit::Platform::current()->mimeRegistry()->supportsJavaScriptMIMEType(mimeType)
         != WebKit::WebMimeRegistry::IsNotSupported;
 }
-    
+
 bool MIMETypeRegistry::isSupportedNonImageMIMEType(const String& mimeType)
 {
     return WebKit::Platform::current()->mimeRegistry()->supportsNonImageMIMEType(mimeType)
@@ -130,8 +130,8 @@
     // of using a hash set.
     // Any of the MIME types below may be followed by any number of specific versions of the JVM,
     // which is why we use startsWith()
-    return mimeType.startsWith("application/x-java-applet", false) 
-        || mimeType.startsWith("application/x-java-bean", false) 
+    return mimeType.startsWith("application/x-java-applet", false)
+        || mimeType.startsWith("application/x-java-bean", false)
         || mimeType.startsWith("application/x-java-vm", false);
 }
 
diff --git a/Source/core/platform/chromium/PlatformKeyboardEventChromium.cpp b/Source/core/platform/chromium/PlatformKeyboardEventChromium.cpp
index cca00f5..e37f84e 100644
--- a/Source/core/platform/chromium/PlatformKeyboardEventChromium.cpp
+++ b/Source/core/platform/chromium/PlatformKeyboardEventChromium.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/chromium/PlatformScreenChromium.cpp b/Source/core/platform/chromium/PlatformScreenChromium.cpp
index 81dd95d..b33c37b 100644
--- a/Source/core/platform/chromium/PlatformScreenChromium.cpp
+++ b/Source/core/platform/chromium/PlatformScreenChromium.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/Prerender.h b/Source/core/platform/chromium/Prerender.h
index c49e1d9..3a994ea 100644
--- a/Source/core/platform/chromium/Prerender.h
+++ b/Source/core/platform/chromium/Prerender.h
@@ -74,7 +74,7 @@
 
     void setExtraData(PassRefPtr<ExtraData> extraData) { m_extraData = extraData; }
     ExtraData* extraData() { return m_extraData.get(); }
-    
+
     void didStartPrerender();
     void didStopPrerender();
     void didSendLoadForPrerender();
diff --git a/Source/core/platform/chromium/ScrollbarThemeChromiumMac.h b/Source/core/platform/chromium/ScrollbarThemeChromiumMac.h
deleted file mode 100644
index 60e5d2d..0000000
--- a/Source/core/platform/chromium/ScrollbarThemeChromiumMac.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (C) 2008 Apple Inc. All Rights Reserved.
- * Copyright (C) 2009 Google Inc. All Rights Reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef ScrollbarThemeChromiumMac_h
-#define ScrollbarThemeChromiumMac_h
-
-#include "core/platform/mac/ScrollbarThemeMac.h"
-
-namespace WebCore {
-
-class ScrollbarThemeChromiumMac : public ScrollbarThemeMac {
-public:
-    ScrollbarThemeChromiumMac();
-    virtual ~ScrollbarThemeChromiumMac();
-
-    virtual bool paint(ScrollbarThemeClient*, GraphicsContext*, const IntRect& damageRect);
-
-    virtual void paintOverhangAreas(ScrollView*, GraphicsContext*, const IntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRect& dirtyRect);
-    virtual void paintTickmarks(GraphicsContext*, ScrollbarThemeClient*, const IntRect&) OVERRIDE;
-    
-private:
-    void paintGivenTickmarks(GraphicsContext*, ScrollbarThemeClient*, const IntRect&, const Vector<IntRect>&);
-
-    RefPtr<Pattern> m_overhangPattern;
-};
-
-}
-
-#endif // ScrollbarThemeChromiumMac_h
diff --git a/Source/core/platform/chromium/ScrollbarThemeChromiumMac.mm b/Source/core/platform/chromium/ScrollbarThemeChromiumMac.mm
deleted file mode 100644
index c09f23a..0000000
--- a/Source/core/platform/chromium/ScrollbarThemeChromiumMac.mm
+++ /dev/null
@@ -1,439 +0,0 @@
-/*
- * Copyright (C) 2008 Apple Inc. All Rights Reserved.
- * Copyright (C) 2009 Google Inc. All Rights Reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "core/platform/chromium/ScrollbarThemeChromiumMac.h"
-
-#include <Carbon/Carbon.h>
-#include "core/page/FrameView.h"
-#include "core/platform/ScrollView.h"
-#include "core/platform/graphics/Gradient.h"
-#include "core/platform/graphics/GraphicsContext.h"
-#include "core/platform/graphics/GraphicsContextStateSaver.h"
-#include "core/platform/graphics/ImageBuffer.h"
-#include "core/platform/mac/LocalCurrentGraphicsContext.h"
-#include "core/platform/mac/NSScrollerImpDetails.h"
-#include "core/platform/mac/ScrollAnimatorMac.h"
-#include "public/platform/mac/WebThemeEngine.h"
-#include "skia/ext/skia_utils_mac.h"
-#include "public/platform/Platform.h"
-#include "public/platform/WebRect.h"
-
-namespace WebCore {
-
-ScrollbarTheme* ScrollbarTheme::nativeTheme()
-{
-    DEFINE_STATIC_LOCAL(ScrollbarThemeChromiumMac, theme, ());
-    return &theme;
-}
-
-ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac()
-{
-    // Load the linen pattern image used for overhang drawing.
-    RefPtr<Image> patternImage = Image::loadPlatformResource("overhangPattern");
-    m_overhangPattern = Pattern::create(patternImage, true, true);
-}
-
-ScrollbarThemeChromiumMac::~ScrollbarThemeChromiumMac()
-{
-}
-
-static WebKit::WebThemeEngine::State scrollbarStateToThemeState(ScrollbarThemeClient* scrollbar)
-{
-    if (!scrollbar->enabled())
-        return WebKit::WebThemeEngine::StateDisabled;
-    if (!scrollbar->isScrollableAreaActive())
-        return WebKit::WebThemeEngine::StateInactive;
-    if (scrollbar->pressedPart() == ThumbPart)
-        return WebKit::WebThemeEngine::StatePressed;
-
-    return WebKit::WebThemeEngine::StateActive;
-}
-
-static void scrollbarPainterPaintTrack(ScrollbarPainter scrollbarPainter, bool enabled, double value, CGFloat proportion, CGRect frameRect)
-{
-    [scrollbarPainter setEnabled:enabled];
-    [scrollbarPainter setBoundsSize: NSSizeFromCGSize(frameRect.size)];
-    [scrollbarPainter setDoubleValue:value];
-    [scrollbarPainter setKnobProportion:proportion];
-
-    // The scrollbar's frameRect includes a side inset for overlay scrollers, so we have to use the 
-    // trackWidth for drawKnobSlotInRect
-    NSRect trackRect;
-    if ([scrollbarPainter isHorizontal])
-        trackRect = NSMakeRect(0, 0, frameRect.size.width, [scrollbarPainter trackWidth]);
-    else
-        trackRect = NSMakeRect(0, 0, [scrollbarPainter trackWidth], frameRect.size.height);
-    [scrollbarPainter drawKnobSlotInRect:trackRect highlight:NO];
-}
-
-// Override ScrollbarThemeMac::paint() to add support for the following:
-//     - drawing using WebThemeEngine functions
-//     - drawing tickmarks
-//     - Skia specific changes
-bool ScrollbarThemeChromiumMac::paint(ScrollbarThemeClient* scrollbar, GraphicsContext* context, const IntRect& damageRect)
-{
-    // Get the tickmarks for the frameview.
-    Vector<IntRect> tickmarks;
-    scrollbar->getTickmarks(tickmarks);
-
-    if (isScrollbarOverlayAPIAvailable()) {
-        float value = 0;
-        float overhang = 0;
-
-        if (scrollbar->currentPos() < 0) {
-            // Scrolled past the top.
-            value = 0;
-            overhang = -scrollbar->currentPos();
-        } else if (scrollbar->visibleSize() + scrollbar->currentPos() > scrollbar->totalSize()) {
-            // Scrolled past the bottom.
-            value = 1;
-            overhang = scrollbar->currentPos() + scrollbar->visibleSize() - scrollbar->totalSize();
-        } else {
-            // Within the bounds of the scrollable area.
-            int maximum = scrollbar->maximum();
-            if (maximum > 0)
-                value = scrollbar->currentPos() / maximum;
-            else
-                value = 0;
-        }
-
-        setIsCurrentlyDrawingIntoLayer(false);
-
-        CGFloat oldKnobAlpha = 0;
-        CGFloat oldTrackAlpha = 0;
-        BOOL oldIsExpanded = NO;
-        bool hasTickmarks = tickmarks.size() > 0 && scrollbar->orientation() == VerticalScrollbar;
-        ScrollbarPainter scrollbarPainter = painterForScrollbar(scrollbar);
-        if (hasTickmarks) {
-            scrollbar->setIsAlphaLocked(true);
-            oldKnobAlpha = [scrollbarPainter knobAlpha];
-            [scrollbarPainter setKnobAlpha:1.0];
-            oldTrackAlpha = [scrollbarPainter trackAlpha];
-            [scrollbarPainter setTrackAlpha:1.0];
-            if ([scrollbarPainter respondsToSelector:@selector(setExpanded:)]) {
-              oldIsExpanded = [scrollbarPainter isExpanded];
-              [scrollbarPainter setExpanded:YES];
-            }
-        } else
-            scrollbar->setIsAlphaLocked(false);
-
-        GraphicsContextStateSaver stateSaver(*context);
-        context->clip(damageRect);
-        context->translate(scrollbar->frameRect().x(), scrollbar->frameRect().y());
-        LocalCurrentGraphicsContext localContext(context);
-        scrollbarPainterPaintTrack(scrollbarPainter,
-                                   scrollbar->enabled(),
-                                   value,
-                                   (static_cast<CGFloat>(scrollbar->visibleSize()) - overhang) / scrollbar->totalSize(),
-                                   scrollbar->frameRect());
-
-        IntRect tickmarkTrackRect(IntPoint(), trackRect(scrollbar, false).size());
-        if (tickmarkTrackRect.width() <= 10) {
-            // For narrow scrollbars inset by 1 on the left and 3 on the right.
-            tickmarkTrackRect.setX(tickmarkTrackRect.x() + 1);
-            tickmarkTrackRect.setWidth(tickmarkTrackRect.width() - 4);
-        } else {
-            // For wide scrollbars inset by 2 on the left and 3 on the right.
-            tickmarkTrackRect.setX(tickmarkTrackRect.x() + 2);
-            tickmarkTrackRect.setWidth(tickmarkTrackRect.width() - 5);
-        }
-        paintGivenTickmarks(context, scrollbar, tickmarkTrackRect, tickmarks);
-
-        if (scrollbar->enabled())
-            [scrollbarPainter drawKnob];
-
-        setIsCurrentlyDrawingIntoLayer(false);
-
-        if (hasTickmarks) {
-            [scrollbarPainter setKnobAlpha:oldKnobAlpha];
-            [scrollbarPainter setTrackAlpha:oldTrackAlpha];
-            if ([scrollbarPainter respondsToSelector:@selector(setExpanded:)])
-              [scrollbarPainter setExpanded:oldIsExpanded];
-        }
-
-        return true;
-    }
-
-    HIThemeTrackDrawInfo trackInfo;
-    trackInfo.version = 0;
-    trackInfo.kind = scrollbar->controlSize() == RegularScrollbar ? kThemeMediumScrollBar : kThemeSmallScrollBar;
-    trackInfo.bounds = scrollbar->frameRect();
-    trackInfo.min = 0;
-    trackInfo.max = scrollbar->maximum();
-    trackInfo.value = scrollbar->currentPos();
-    trackInfo.trackInfo.scrollbar.viewsize = scrollbar->visibleSize();
-    trackInfo.attributes = 0;
-    if (scrollbar->orientation() == HorizontalScrollbar)
-        trackInfo.attributes |= kThemeTrackHorizontal;
-
-    if (!scrollbar->enabled())
-        trackInfo.enableState = kThemeTrackDisabled;
-    else
-        trackInfo.enableState = scrollbar->isScrollableAreaActive() ? kThemeTrackActive : kThemeTrackInactive;
-
-    if (!hasButtons(scrollbar))
-        trackInfo.enableState = kThemeTrackNothingToScroll;
-    trackInfo.trackInfo.scrollbar.pressState = scrollbarPartToHIPressedState(scrollbar->pressedPart());
-
-    SkCanvas* canvas = context->canvas();
-    CGAffineTransform currentCTM = gfx::SkMatrixToCGAffineTransform(canvas->getTotalMatrix());
-
-    // The Aqua scrollbar is buggy when rotated and scaled.  We will just draw into a bitmap if we detect a scale or rotation.
-    bool canDrawDirectly = currentCTM.a == 1.0f && currentCTM.b == 0.0f && currentCTM.c == 0.0f && (currentCTM.d == 1.0f || currentCTM.d == -1.0f);
-    GraphicsContext* drawingContext = context;
-    OwnPtr<ImageBuffer> imageBuffer;
-    if (!canDrawDirectly) {
-        trackInfo.bounds = IntRect(IntPoint(), scrollbar->frameRect().size());
-
-        IntRect bufferRect(scrollbar->frameRect());
-        bufferRect.intersect(damageRect);
-        bufferRect.move(-scrollbar->frameRect().x(), -scrollbar->frameRect().y());
-
-        imageBuffer = ImageBuffer::create(bufferRect.size());
-        if (!imageBuffer)
-            return true;
-
-        drawingContext = imageBuffer->context();
-    }
-
-    // Draw thumbless.
-    gfx::SkiaBitLocker bitLocker(drawingContext->canvas());
-    CGContextRef cgContext = bitLocker.cgContext();
-    HIThemeDrawTrack(&trackInfo, 0, cgContext, kHIThemeOrientationNormal);
-
-    IntRect tickmarkTrackRect = trackRect(scrollbar, false);
-    if (!canDrawDirectly) {
-        tickmarkTrackRect.setX(0);
-        tickmarkTrackRect.setY(0);
-    }
-    // The ends are rounded and the thumb doesn't go there.
-    tickmarkTrackRect.inflateY(-tickmarkTrackRect.width());
-    // Inset a bit.
-    tickmarkTrackRect.setX(tickmarkTrackRect.x() + 2);
-    tickmarkTrackRect.setWidth(tickmarkTrackRect.width() - 5);
-    paintGivenTickmarks(drawingContext, scrollbar, tickmarkTrackRect, tickmarks);
-
-    if (hasThumb(scrollbar)) {
-        WebKit::WebThemeEngine::ScrollbarInfo scrollbarInfo;
-        scrollbarInfo.orientation = scrollbar->orientation() == HorizontalScrollbar ? WebKit::WebThemeEngine::ScrollbarOrientationHorizontal : WebKit::WebThemeEngine::ScrollbarOrientationVertical;
-        scrollbarInfo.parent = scrollbar->isScrollViewScrollbar() ? WebKit::WebThemeEngine::ScrollbarParentScrollView : WebKit::WebThemeEngine::ScrollbarParentRenderLayer;
-        scrollbarInfo.maxValue = scrollbar->maximum();
-        scrollbarInfo.currentValue = scrollbar->currentPos();
-        scrollbarInfo.visibleSize = scrollbar->visibleSize();
-        scrollbarInfo.totalSize = scrollbar->totalSize();
-
-        WebKit::WebCanvas* webCanvas = drawingContext->canvas();
-        WebKit::Platform::current()->themeEngine()->paintScrollbarThumb(
-            webCanvas,
-            scrollbarStateToThemeState(scrollbar),
-            scrollbar->controlSize() == RegularScrollbar ? WebKit::WebThemeEngine::SizeRegular : WebKit::WebThemeEngine::SizeSmall,
-            WebKit::WebRect(scrollbar->frameRect()),
-            scrollbarInfo);
-    }
-
-    if (!canDrawDirectly)
-        context->drawImageBuffer(imageBuffer.get(), scrollbar->frameRect().location());
-
-    return true;
-}
-
-void ScrollbarThemeChromiumMac::paintGivenTickmarks(GraphicsContext* context, ScrollbarThemeClient* scrollbar, const IntRect& rect, const Vector<IntRect>& tickmarks)
-{
-    if (scrollbar->orientation() != VerticalScrollbar)
-        return;
-
-    if (rect.height() <= 0 || rect.width() <= 0)
-        return;  // nothing to draw on.
-
-    if (!tickmarks.size())
-        return;
-
-    GraphicsContextStateSaver stateSaver(*context);
-    context->setShouldAntialias(false);
-    context->setStrokeColor(Color(0xCC, 0xAA, 0x00, 0xFF));
-    context->setFillColor(Color(0xFF, 0xDD, 0x00, 0xFF));
-
-    for (Vector<IntRect>::const_iterator i = tickmarks.begin(); i != tickmarks.end(); ++i) {
-        // Calculate how far down (in %) the tick-mark should appear.
-        const float percent = static_cast<float>(i->y()) / scrollbar->totalSize();
-        if (percent < 0.0 || percent > 1.0)
-            continue;
-
-        // Calculate how far down (in pixels) the tick-mark should appear.
-        const int yPos = rect.y() + (rect.height() * percent);
-
-        // Paint.
-        FloatRect tickRect(rect.x(), yPos, rect.width(), 2);
-        context->fillRect(tickRect);
-        context->strokeRect(tickRect, 1);
-    }
-}
-
-void ScrollbarThemeChromiumMac::paintOverhangAreas(ScrollView* view, GraphicsContext* context, const IntRect& horizontalOverhangRect, const IntRect& verticalOverhangRect, const IntRect& dirtyRect)
-{
-    // The extent of each shadow in pixels.
-    const int kShadowSize = 4;
-    // Offset of negative one pixel to make the gradient blend with the toolbar's bottom border.
-    const int kToolbarShadowOffset = -1;
-    const struct {
-        float stop;
-        Color color;
-    } kShadowColors[] = {
-        { 0.000, Color(0, 0, 0, 255) },
-        { 0.125, Color(0, 0, 0, 57) },
-        { 0.375, Color(0, 0, 0, 41) },
-        { 0.625, Color(0, 0, 0, 18) },
-        { 0.875, Color(0, 0, 0, 6) },
-        { 1.000, Color(0, 0, 0, 0) }
-    };
-    const unsigned kNumShadowColors = sizeof(kShadowColors)/sizeof(kShadowColors[0]);
-
-    const bool hasHorizontalOverhang = !horizontalOverhangRect.isEmpty();
-    const bool hasVerticalOverhang = !verticalOverhangRect.isEmpty();
-    // Prefer non-additive shadows, but degrade to additive shadows if there is vertical overhang.
-    const bool useAdditiveShadows = hasVerticalOverhang;
-
-    GraphicsContextStateSaver stateSaver(*context);
-
-    context->setFillPattern(m_overhangPattern);
-    if (hasHorizontalOverhang)
-        context->fillRect(intersection(horizontalOverhangRect, dirtyRect));
-    if (hasVerticalOverhang)
-        context->fillRect(intersection(verticalOverhangRect, dirtyRect));
-
-    IntSize scrollOffset = view->scrollOffset();
-    FloatPoint shadowCornerOrigin;
-    FloatPoint shadowCornerOffset;
-
-    // Draw the shadow for the horizontal overhang.
-    if (hasHorizontalOverhang) {
-        int toolbarShadowHeight = kShadowSize;
-        RefPtr<Gradient> gradient;
-        IntRect shadowRect = horizontalOverhangRect;
-        shadowRect.setHeight(kShadowSize);
-        if (scrollOffset.height() < 0) {
-            if (useAdditiveShadows) {
-                toolbarShadowHeight = std::min(horizontalOverhangRect.height(), kShadowSize);
-            } else if (horizontalOverhangRect.height() < 2 * kShadowSize + kToolbarShadowOffset) {
-                // Split the overhang area between the web content shadow and toolbar shadow if it's too small.
-                shadowRect.setHeight((horizontalOverhangRect.height() + 1) / 2);
-                toolbarShadowHeight = horizontalOverhangRect.height() - shadowRect.height() - kToolbarShadowOffset;
-            }
-            shadowRect.setY(horizontalOverhangRect.maxY() - shadowRect.height());
-            gradient = Gradient::create(FloatPoint(0, shadowRect.maxY()), FloatPoint(0, shadowRect.maxY() - kShadowSize));
-            shadowCornerOrigin.setY(shadowRect.maxY());
-            shadowCornerOffset.setY(-kShadowSize);
-        } else {
-            gradient = Gradient::create(FloatPoint(0, shadowRect.y()), FloatPoint(0, shadowRect.maxY()));
-            shadowCornerOrigin.setY(shadowRect.y());
-        }
-        if (hasVerticalOverhang) {
-            shadowRect.setWidth(shadowRect.width() - verticalOverhangRect.width());
-            if (scrollOffset.width() < 0) {
-                shadowRect.setX(shadowRect.x() + verticalOverhangRect.width());
-                shadowCornerOrigin.setX(shadowRect.x());
-                shadowCornerOffset.setX(-kShadowSize);
-            } else {
-                shadowCornerOrigin.setX(shadowRect.maxX());
-            }
-        }
-        for (unsigned i = 0; i < kNumShadowColors; i++)
-            gradient->addColorStop(kShadowColors[i].stop, kShadowColors[i].color);
-        context->setFillGradient(gradient);
-        context->fillRect(intersection(shadowRect, dirtyRect));
-
-        // Draw a drop-shadow from the toolbar.
-        if (scrollOffset.height() < 0) {
-            shadowRect.setY(kToolbarShadowOffset);
-            shadowRect.setHeight(toolbarShadowHeight);
-            gradient = Gradient::create(FloatPoint(0, shadowRect.y()), FloatPoint(0, shadowRect.y() + kShadowSize));
-            for (unsigned i = 0; i < kNumShadowColors; i++)
-                gradient->addColorStop(kShadowColors[i].stop, kShadowColors[i].color);
-            context->setFillGradient(gradient);
-            context->fillRect(intersection(shadowRect, dirtyRect));
-        }
-    }
-
-    // Draw the shadow for the vertical overhang.
-    if (hasVerticalOverhang) {
-        RefPtr<Gradient> gradient;
-        IntRect shadowRect = verticalOverhangRect;
-        shadowRect.setWidth(kShadowSize);
-        if (scrollOffset.width() < 0) {
-            shadowRect.setX(verticalOverhangRect.maxX() - shadowRect.width());
-            gradient = Gradient::create(FloatPoint(shadowRect.maxX(), 0), FloatPoint(shadowRect.x(), 0));
-        } else {
-            gradient = Gradient::create(FloatPoint(shadowRect.x(), 0), FloatPoint(shadowRect.maxX(), 0));
-        }
-        for (unsigned i = 0; i < kNumShadowColors; i++)
-            gradient->addColorStop(kShadowColors[i].stop, kShadowColors[i].color);
-        context->setFillGradient(gradient);
-        context->fillRect(intersection(shadowRect, dirtyRect));
-
-        // Draw a drop-shadow from the toolbar.
-        shadowRect = verticalOverhangRect;
-        shadowRect.setY(kToolbarShadowOffset);
-        shadowRect.setHeight(kShadowSize);
-        gradient = Gradient::create(FloatPoint(0, shadowRect.y()), FloatPoint(0, shadowRect.maxY()));
-        for (unsigned i = 0; i < kNumShadowColors; i++)
-            gradient->addColorStop(kShadowColors[i].stop, kShadowColors[i].color);
-        context->setFillGradient(gradient);
-        context->fillRect(intersection(shadowRect, dirtyRect));
-    }
-
-    // If both rectangles present, draw a radial gradient for the corner.
-    if (hasHorizontalOverhang && hasVerticalOverhang) {
-        RefPtr<Gradient> gradient = Gradient::create(shadowCornerOrigin, 0, shadowCornerOrigin, kShadowSize);
-        for (unsigned i = 0; i < kNumShadowColors; i++)
-            gradient->addColorStop(kShadowColors[i].stop, kShadowColors[i].color);
-        context->setFillGradient(gradient);
-        context->fillRect(FloatRect(shadowCornerOrigin.x() + shadowCornerOffset.x(), shadowCornerOrigin.y() + shadowCornerOffset.y(), kShadowSize, kShadowSize));
-    }
-}
-
-void ScrollbarThemeChromiumMac::paintTickmarks(GraphicsContext* context, ScrollbarThemeClient* scrollbar, const IntRect& rect)
-{
-    // Note: This is only used for css-styled scrollbars on mac.
-    if (scrollbar->orientation() != VerticalScrollbar)
-        return;
-
-    if (rect.height() <= 0 || rect.width() <= 0)
-        return;
-
-    Vector<IntRect> tickmarks;
-    scrollbar->getTickmarks(tickmarks);
-    if (!tickmarks.size())
-        return;
-
-    // Inset a bit.
-    IntRect tickmarkTrackRect = rect;
-    tickmarkTrackRect.setX(tickmarkTrackRect.x() + 1);
-    tickmarkTrackRect.setWidth(tickmarkTrackRect.width() - 2);
-    paintGivenTickmarks(context, scrollbar, tickmarkTrackRect, tickmarks);
-}
-
-}
diff --git a/Source/core/platform/chromium/SoundChromiumPosix.cpp b/Source/core/platform/chromium/SoundChromiumPosix.cpp
index e23ee4b..163d123 100644
--- a/Source/core/platform/chromium/SoundChromiumPosix.cpp
+++ b/Source/core/platform/chromium/SoundChromiumPosix.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/TraceEvent.h b/Source/core/platform/chromium/TraceEvent.h
index e9dc7e1..62f01c4 100644
--- a/Source/core/platform/chromium/TraceEvent.h
+++ b/Source/core/platform/chromium/TraceEvent.h
@@ -483,7 +483,7 @@
 #define TRACE_EVENT_API_GET_CATEGORY_ENABLED \
     WebCore::EventTracer::getTraceCategoryEnabledFlag
 
-// Add a trace event to the platform tracing system. 
+// Add a trace event to the platform tracing system.
 // void TRACE_EVENT_API_ADD_TRACE_EVENT(
 //                    char phase,
 //                    const unsigned char* category_enabled,
diff --git a/Source/core/platform/chromium/support/WebAudioBus.cpp b/Source/core/platform/chromium/support/WebAudioBus.cpp
index 666e1c5..56f7770 100644
--- a/Source/core/platform/chromium/support/WebAudioBus.cpp
+++ b/Source/core/platform/chromium/support/WebAudioBus.cpp
@@ -47,7 +47,7 @@
 };
 
 void WebAudioBus::initialize(unsigned numberOfChannels, size_t length, double sampleRate)
-{        
+{
 #if ENABLE(WEB_AUDIO)
     RefPtr<AudioBus> audioBus = AudioBus::create(numberOfChannels, length);
     audioBus->setSampleRate(sampleRate);
diff --git a/Source/core/platform/chromium/support/WebCrypto.cpp b/Source/core/platform/chromium/support/WebCrypto.cpp
new file mode 100644
index 0000000..73e8a29
--- /dev/null
+++ b/Source/core/platform/chromium/support/WebCrypto.cpp
@@ -0,0 +1,116 @@
+/*
+ * Copyright (C) 2013 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "public/platform/WebCrypto.h"
+
+namespace WebKit {
+
+// FIXME: Assert that these methods are called from the right thread.
+
+void WebCryptoOperationResult::initializationFailed()
+{
+    m_impl->initializationFailed();
+    reset();
+}
+
+void WebCryptoOperationResult::initializationSucceeded(WebCryptoOperation* op)
+{
+    m_impl->initializationSucceeded(op);
+    reset();
+}
+
+void WebCryptoOperationResult::completeWithError()
+{
+    m_impl->completeWithError();
+    reset();
+}
+
+void WebCryptoOperationResult::completeWithArrayBuffer(const WebArrayBuffer& buffer)
+{
+    m_impl->completeWithArrayBuffer(buffer);
+    reset();
+}
+
+void WebCryptoOperationResult::reset()
+{
+    m_impl.reset();
+}
+
+void WebCryptoOperationResult::assign(const WebCryptoOperationResult& o)
+{
+    m_impl = o.m_impl;
+}
+
+void WebCryptoOperationResult::assign(WebCryptoOperationResultPrivate* impl)
+{
+    m_impl = impl;
+}
+
+void WebCryptoKeyOperationResult::initializationFailed()
+{
+    m_impl->initializationFailed();
+    reset();
+}
+
+void WebCryptoKeyOperationResult::initializationSucceeded(WebCryptoKeyOperation* op)
+{
+    m_impl->initializationSucceeded(op);
+    reset();
+}
+
+void WebCryptoKeyOperationResult::completeWithError()
+{
+    m_impl->completeWithError();
+    reset();
+}
+
+void WebCryptoKeyOperationResult::completeWithKey(const WebCryptoKey& key)
+{
+    m_impl->completeWithKey(key);
+    reset();
+}
+
+void WebCryptoKeyOperationResult::reset()
+{
+    m_impl.reset();
+}
+
+void WebCryptoKeyOperationResult::assign(const WebCryptoKeyOperationResult& o)
+{
+    m_impl = o.m_impl;
+}
+
+void WebCryptoKeyOperationResult::assign(WebCryptoKeyOperationResultPrivate* impl)
+{
+    m_impl = impl;
+}
+
+} // namespace WebKit
diff --git a/Source/core/platform/chromium/support/WebCryptoAlgorithm.cpp b/Source/core/platform/chromium/support/WebCryptoAlgorithm.cpp
index 685bd3d..309ba56 100644
--- a/Source/core/platform/chromium/support/WebCryptoAlgorithm.cpp
+++ b/Source/core/platform/chromium/support/WebCryptoAlgorithm.cpp
@@ -87,6 +87,13 @@
     return 0;
 }
 
+WebCryptoHmacParams* WebCryptoAlgorithm::hmacParams() const
+{
+    if (paramsType() == WebCryptoAlgorithmParamsTypeHmacParams)
+        return static_cast<WebCryptoHmacParams*>(m_private->params.get());
+    return 0;
+}
+
 void WebCryptoAlgorithm::assign(const WebCryptoAlgorithm& other)
 {
     m_private = other.m_private;
diff --git a/Source/core/platform/chromium/support/WebData.cpp b/Source/core/platform/chromium/support/WebData.cpp
index dbf51f5..87d2baf 100644
--- a/Source/core/platform/chromium/support/WebData.cpp
+++ b/Source/core/platform/chromium/support/WebData.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/support/WebMediaStream.cpp b/Source/core/platform/chromium/support/WebMediaStream.cpp
index d89f23e..d7ddd7b 100644
--- a/Source/core/platform/chromium/support/WebMediaStream.cpp
+++ b/Source/core/platform/chromium/support/WebMediaStream.cpp
@@ -70,11 +70,6 @@
     m_private.reset();
 }
 
-WebString WebMediaStream::label() const
-{
-    return m_private->id();
-}
-
 WebString WebMediaStream::id() const
 {
     return m_private->id();
@@ -139,20 +134,6 @@
     return m_private.get();
 }
 
-void WebMediaStream::initialize(const WebString& label, const WebVector<WebMediaStreamSource>& audioSources, const WebVector<WebMediaStreamSource>& videoSources)
-{
-    MediaStreamComponentVector audio, video;
-    for (size_t i = 0; i < audioSources.size(); ++i) {
-        MediaStreamSource* source = audioSources[i];
-        audio.append(MediaStreamComponent::create(source->id(), source));
-    }
-    for (size_t i = 0; i < videoSources.size(); ++i) {
-        MediaStreamSource* source = videoSources[i];
-        video.append(MediaStreamComponent::create(source->id(), source));
-    }
-    m_private = MediaStreamDescriptor::create(label, audio, video);
-}
-
 void WebMediaStream::initialize(const WebVector<WebMediaStreamTrack>& audioTracks, const WebVector<WebMediaStreamTrack>& videoTracks)
 {
     initialize(createCanonicalUUIDString(), audioTracks, videoTracks);
diff --git a/Source/core/platform/chromium/support/WebString.cpp b/Source/core/platform/chromium/support/WebString.cpp
index d110a8c..4b5dd6b 100644
--- a/Source/core/platform/chromium/support/WebString.cpp
+++ b/Source/core/platform/chromium/support/WebString.cpp
@@ -34,6 +34,7 @@
 #include "public/platform/WebCString.h"
 #include "wtf/text/AtomicString.h"
 #include "wtf/text/CString.h"
+#include "wtf/text/StringUTF8Adaptor.h"
 #include "wtf/text/WTFString.h"
 
 namespace WebKit {
@@ -79,9 +80,10 @@
     return !m_private.isNull() && !is8Bit() ? m_private->characters16() : 0;
 }
 
-WebCString WebString::utf8() const
+std::string WebString::utf8() const
 {
-    return WTF::String(m_private.get()).utf8();
+    StringUTF8Adaptor utf8(m_private.get());
+    return std::string(utf8.data(), utf8.length());
 }
 
 WebString WebString::fromUTF8(const char* data, size_t length)
diff --git a/Source/core/platform/chromium/support/WebThreadSafeData.cpp b/Source/core/platform/chromium/support/WebThreadSafeData.cpp
index 804913c..a53e366 100644
--- a/Source/core/platform/chromium/support/WebThreadSafeData.cpp
+++ b/Source/core/platform/chromium/support/WebThreadSafeData.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2010 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/chromium/support/WebURL.cpp b/Source/core/platform/chromium/support/WebURL.cpp
index 9d4ed0a..0242ca8 100644
--- a/Source/core/platform/chromium/support/WebURL.cpp
+++ b/Source/core/platform/chromium/support/WebURL.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/ANGLEWebKitBridge.cpp b/Source/core/platform/graphics/ANGLEWebKitBridge.cpp
index 7e6ac3d..ac7820e 100644
--- a/Source/core/platform/graphics/ANGLEWebKitBridge.cpp
+++ b/Source/core/platform/graphics/ANGLEWebKitBridge.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -73,7 +73,7 @@
     // The maximum allowed symbol name length is 256 characters.
     Vector<char, 256> nameBuffer(maxNameLength);
     Vector<char, 256> mappedNameBuffer(maxMappedNameLength);
-    
+
     for (ANGLEGetInfoType i = 0; i < numSymbols; ++i) {
         ANGLEShaderSymbol symbol;
         ANGLEGetInfoType nameLength = 0;
@@ -92,7 +92,7 @@
         }
         if (!nameLength)
             return false;
-        
+
         // The ShGetActive* calls above are guaranteed to produce null-terminated strings for
         // nameBuffer and mappedNameBuffer. Also, the character set for symbol names
         // is a subset of Latin-1 as specified by the OpenGL ES Shading Language, Section 3.1 and
@@ -100,7 +100,7 @@
 
         String name = String(nameBuffer.data());
         String mappedName = String(mappedNameBuffer.data());
-        
+
         // ANGLE returns array names in the format "array[0]".
         // The only way to know if a symbol is an array is to check if it ends with "[0]".
         // We can't check the size because regular symbols and arrays of length 1 both have a size of 1.
@@ -114,7 +114,7 @@
         symbol.name = name;
         symbol.mappedName = mappedName;
         symbols.append(symbol);
-    
+
         if (symbol.isArray) {
             // Add symbols for each array element.
             symbol.isArray = false;
@@ -156,12 +156,12 @@
 
     builtCompilers = false;
 }
-    
+
 void ANGLEWebKitBridge::setResources(ShBuiltInResources resources)
 {
     // Resources are (possibly) changing - cleanup compilers if we had them already
     cleanupCompilers();
-    
+
     m_resources = resources;
 }
 
@@ -177,7 +177,7 @@
 
         builtCompilers = true;
     }
-    
+
     ShHandle compiler;
 
     if (shaderType == SHADER_TYPE_VERTEX)
@@ -208,7 +208,7 @@
         ShGetObjectCode(compiler, translationBuffer.get());
         translatedShaderSource = translationBuffer.get();
     }
-    
+
     if (!getSymbolInfo(compiler, SH_ACTIVE_ATTRIBUTES, symbols))
         return false;
     if (!getSymbolInfo(compiler, SH_ACTIVE_UNIFORMS, symbols))
diff --git a/Source/core/platform/graphics/ANGLEWebKitBridge.h b/Source/core/platform/graphics/ANGLEWebKitBridge.h
index 12757ac..143a15b 100644
--- a/Source/core/platform/graphics/ANGLEWebKitBridge.h
+++ b/Source/core/platform/graphics/ANGLEWebKitBridge.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ANGLEWebKitBridge_h
@@ -66,10 +66,10 @@
 
     ANGLEWebKitBridge(ShShaderOutput = SH_GLSL_OUTPUT, ShShaderSpec = SH_WEBGL_SPEC);
     ~ANGLEWebKitBridge();
-    
+
     ShBuiltInResources getResources() { return m_resources; }
     void setResources(ShBuiltInResources);
-    
+
     bool compileShaderSource(const char* shaderSource, ANGLEShaderType, String& translatedShaderSource, String& shaderValidationLog, Vector<ANGLEShaderSymbol>& symbols, int extraCompileOptions = 0);
 
 private:
@@ -77,7 +77,7 @@
     void cleanupCompilers();
 
     bool builtCompilers;
-    
+
     ShHandle m_fragmentCompiler;
     ShHandle m_vertexCompiler;
 
diff --git a/Source/core/platform/graphics/BitmapImage.cpp b/Source/core/platform/graphics/BitmapImage.cpp
index 18e903c..f00c3e0 100644
--- a/Source/core/platform/graphics/BitmapImage.cpp
+++ b/Source/core/platform/graphics/BitmapImage.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -270,11 +270,11 @@
             frameBytesCleared += (m_frames[i].clear(true) ? frameBytes : 0);
     }
     destroyMetadataAndNotify(frameBytesCleared);
-    
+
     // Feed all the data we've seen so far to the image decoder.
     m_allDataReceived = allDataReceived;
     m_source.setData(data(), allDataReceived);
-    
+
     m_haveFrameCount = false;
     m_hasUniformFrameSize = true;
     return isSizeAvailable();
@@ -566,7 +566,7 @@
     m_repetitionsComplete = 0;
     m_desiredFrameStartTime = 0;
     m_animationFinished = false;
-    
+
     // For extremely large animations, when the animation is reset, we just throw everything away.
     destroyDecodedDataIfNecessary();
 }
@@ -590,7 +590,7 @@
 {
     // Stop the animation.
     stopAnimation();
-    
+
     // See if anyone is still paying attention to this animation.  If not, we don't
     // advance and will remain suspended at the current frame until the animation is resumed.
     if (!skippingFrames && imageObserver()->shouldPauseAnimation(this))
diff --git a/Source/core/platform/graphics/Color.cpp b/Source/core/platform/graphics/Color.cpp
index 96aa93c..4e0cb62 100644
--- a/Source/core/platform/graphics/Color.cpp
+++ b/Source/core/platform/graphics/Color.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -95,7 +95,7 @@
 
 // Explanation of this algorithm can be found in the CSS3 Color Module
 // specification at http://www.w3.org/TR/css3-color/#hsl-color with further
-// explanation available at http://en.wikipedia.org/wiki/HSL_color_space 
+// explanation available at http://en.wikipedia.org/wiki/HSL_color_space
 
 // all values are in the range of 0 to 1.0
 RGBA32 makeRGBAFromHSLA(double hue, double saturation, double lightness, double alpha)
@@ -109,8 +109,8 @@
 
     double temp2 = lightness < 0.5 ? lightness * (1.0 + saturation) : lightness + saturation - lightness * saturation;
     double temp1 = 2.0 * lightness - temp2;
-    
-    return makeRGBA(static_cast<int>(calcHue(temp1, temp2, hue + 1.0 / 3.0) * scaleFactor), 
+
+    return makeRGBA(static_cast<int>(calcHue(temp1, temp2, hue + 1.0 / 3.0) * scaleFactor),
                     static_cast<int>(calcHue(temp1, temp2, hue) * scaleFactor),
                     static_cast<int>(calcHue(temp1, temp2, hue - 1.0 / 3.0) * scaleFactor),
                     static_cast<int>(alpha * scaleFactor));
@@ -163,7 +163,7 @@
 bool Color::parseHexColor(const String& name, RGBA32& rgb)
 {
     unsigned length = name.length();
-    
+
     if (!length)
         return false;
     if (name.is8Bit())
@@ -191,17 +191,17 @@
         return builder.toString();
     }
 
-    Vector<LChar> result;
-    result.reserveInitialCapacity(28);
+    StringBuilder result;
+    result.reserveCapacity(28);
     const char commaSpace[] = ", ";
     const char rgbaParen[] = "rgba(";
 
     result.append(rgbaParen, 5);
-    appendNumber(result, red());
+    result.appendNumber(red());
     result.append(commaSpace, 2);
-    appendNumber(result, green());
+    result.appendNumber(green());
     result.append(commaSpace, 2);
-    appendNumber(result, blue());
+    result.appendNumber(blue());
     result.append(commaSpace, 2);
 
     if (!alpha())
@@ -213,7 +213,7 @@
     }
 
     result.append(')');
-    return String::adopt(result);
+    return result.toString();
 }
 
 String Color::nameForRenderTreeAsText() const
@@ -228,7 +228,7 @@
     // Hardcode this common case for speed.
     if (m_color == black)
         return lightenedBlack;
-    
+
     const float scaleFactor = nextafterf(256.0f, 0.0f);
 
     float r, g, b, a;
@@ -253,7 +253,7 @@
     // Hardcode this common case for speed.
     if (m_color == white)
         return darkenedWhite;
-    
+
     const float scaleFactor = nextafterf(256.0f, 0.0f);
 
     float r, g, b, a;
@@ -310,7 +310,7 @@
         int r = blendComponent(red(), alpha);
         int g = blendComponent(green(), alpha);
         int b = blendComponent(blue(), alpha);
-        
+
         newColor = Color(r, g, b, alpha);
 
         if (r >= 0 && g >= 0 && b >= 0)
diff --git a/Source/core/platform/graphics/Color.h b/Source/core/platform/graphics/Color.h
index 1734fb1..4416bde 100644
--- a/Source/core/platform/graphics/Color.h
+++ b/Source/core/platform/graphics/Color.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Color_h
@@ -89,7 +89,7 @@
     int green() const { return greenChannel(m_color); }
     int blue() const { return blueChannel(m_color); }
     int alpha() const { return alphaChannel(m_color); }
-    
+
     RGBA32 rgb() const { return m_color; } // Preserve the alpha.
     void setRGB(int r, int g, int b) { m_color = makeRGB(r, g, b); }
     void setRGB(RGBA32 rgb) { m_color = rgb; }
diff --git a/Source/core/platform/graphics/ColorSpace.h b/Source/core/platform/graphics/ColorSpace.h
index 7622c47..989d0fb 100644
--- a/Source/core/platform/graphics/ColorSpace.h
+++ b/Source/core/platform/graphics/ColorSpace.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ColorSpace_h
@@ -33,7 +33,7 @@
     ColorSpaceSRGB,
     ColorSpaceLinearRGB
 };
-    
+
 } // namespace WebCore
 
 #endif // ColorSpace_h
diff --git a/Source/core/platform/graphics/DashArray.h b/Source/core/platform/graphics/DashArray.h
index 1a59f53..1134eb4 100644
--- a/Source/core/platform/graphics/DashArray.h
+++ b/Source/core/platform/graphics/DashArray.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DashArray_h
diff --git a/Source/core/platform/graphics/Extensions3D.h b/Source/core/platform/graphics/Extensions3D.h
index b1ddf79..cd51baa 100644
--- a/Source/core/platform/graphics/Extensions3D.h
+++ b/Source/core/platform/graphics/Extensions3D.h
@@ -115,13 +115,13 @@
 
         // GL_EXT/OES_packed_depth_stencil enums
         DEPTH24_STENCIL8 = 0x88F0,
-        
+
         // GL_ANGLE_framebuffer_blit names
         READ_FRAMEBUFFER = 0x8CA8,
         DRAW_FRAMEBUFFER = 0x8CA9,
-        DRAW_FRAMEBUFFER_BINDING = 0x8CA6, 
+        DRAW_FRAMEBUFFER_BINDING = 0x8CA6,
         READ_FRAMEBUFFER_BINDING = 0x8CAA,
-        
+
         // GL_ANGLE_framebuffer_multisample names
         RENDERBUFFER_SAMPLES = 0x8CAB,
         FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56,
@@ -133,7 +133,7 @@
         // GL_OES_rgb8_rgba8 names
         RGB8_OES = 0x8051,
         RGBA8_OES = 0x8058,
-        
+
         // GL_OES_vertex_array_object names
         VERTEX_ARRAY_BINDING_OES = 0x85B5,
 
@@ -248,13 +248,13 @@
     // returning the same error. Restoring the GraphicsContext3D is handled
     // externally.
     int getGraphicsResetStatusARB();
-    
+
     // GL_ANGLE_framebuffer_blit
     void blitFramebuffer(long srcX0, long srcY0, long srcX1, long srcY1, long dstX0, long dstY0, long dstX1, long dstY1, unsigned long mask, unsigned long filter);
-    
+
     // GL_ANGLE_framebuffer_multisample
     void renderbufferStorageMultisample(unsigned long target, unsigned long samples, unsigned long internalformat, unsigned long width, unsigned long height);
-    
+
     // GL_OES_vertex_array_object
     Platform3DObject createVertexArrayOES();
     void deleteVertexArrayOES(Platform3DObject);
diff --git a/Source/core/platform/graphics/FloatPoint.cpp b/Source/core/platform/graphics/FloatPoint.cpp
index 3c1e681..d92d6ab 100644
--- a/Source/core/platform/graphics/FloatPoint.cpp
+++ b/Source/core/platform/graphics/FloatPoint.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -116,7 +116,7 @@
     return slope;
 }
 
-bool findIntersection(const FloatPoint& p1, const FloatPoint& p2, const FloatPoint& d1, const FloatPoint& d2, FloatPoint& intersection) 
+bool findIntersection(const FloatPoint& p1, const FloatPoint& p2, const FloatPoint& d1, const FloatPoint& d2, FloatPoint& intersection)
 {
     float pOffset = 0;
     float pSlope = findSlope(p1, p2, pOffset);
@@ -126,7 +126,7 @@
 
     if (dSlope == pSlope)
         return false;
-    
+
     if (pSlope == std::numeric_limits<float>::infinity()) {
         intersection.setX(p1.x());
         intersection.setY(dSlope * intersection.x() + dOffset);
@@ -137,7 +137,7 @@
         intersection.setY(pSlope * intersection.x() + pOffset);
         return true;
     }
-    
+
     // Find x at intersection, where ys overlap; x = (c' - c) / (m - m')
     intersection.setX((dOffset - pOffset) / (pSlope - dSlope));
     intersection.setY(pSlope * intersection.x() + pOffset);
diff --git a/Source/core/platform/graphics/FloatPoint3D.h b/Source/core/platform/graphics/FloatPoint3D.h
index 549606a..2a136c9 100644
--- a/Source/core/platform/graphics/FloatPoint3D.h
+++ b/Source/core/platform/graphics/FloatPoint3D.h
@@ -120,7 +120,7 @@
 
     float lengthSquared() const { return this->dot(*this); }
     float length() const { return sqrtf(lengthSquared()); }
-    
+
     float distanceTo(const FloatPoint3D& a) const;
 
 private:
diff --git a/Source/core/platform/graphics/FloatPolygon.cpp b/Source/core/platform/graphics/FloatPolygon.cpp
index 0fe4893..85f75fa 100644
--- a/Source/core/platform/graphics/FloatPolygon.cpp
+++ b/Source/core/platform/graphics/FloatPolygon.cpp
@@ -12,7 +12,7 @@
  *    copyright notice, this list of conditions and the following
  *    disclaimer in the documentation and/or other materials
  *    provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
diff --git a/Source/core/platform/graphics/FloatPolygon.h b/Source/core/platform/graphics/FloatPolygon.h
index 5fa75a2..389aa2a 100644
--- a/Source/core/platform/graphics/FloatPolygon.h
+++ b/Source/core/platform/graphics/FloatPolygon.h
@@ -12,7 +12,7 @@
  *    copyright notice, this list of conditions and the following
  *    disclaimer in the documentation and/or other materials
  *    provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
diff --git a/Source/core/platform/graphics/FloatQuad.cpp b/Source/core/platform/graphics/FloatQuad.cpp
index c556f4b..0a7e092 100644
--- a/Source/core/platform/graphics/FloatQuad.cpp
+++ b/Source/core/platform/graphics/FloatQuad.cpp
@@ -8,13 +8,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -60,11 +60,11 @@
 
 inline bool isPointInTriangle(const FloatPoint& p, const FloatPoint& t1, const FloatPoint& t2, const FloatPoint& t3)
 {
-    // Compute vectors        
+    // Compute vectors
     FloatSize v0 = t3 - t1;
     FloatSize v1 = t2 - t1;
     FloatSize v2 = p - t1;
-    
+
     // Compute dot products
     float dot00 = dot(v0, v0);
     float dot01 = dot(v0, v1);
@@ -88,7 +88,7 @@
 
     float right  = max4(m_p1.x(), m_p2.x(), m_p3.x(), m_p4.x());
     float bottom = max4(m_p1.y(), m_p2.y(), m_p3.y(), m_p4.y());
-    
+
     return FloatRect(left, top, right - left, bottom - top);
 }
 
@@ -106,7 +106,7 @@
 bool FloatQuad::containsPoint(const FloatPoint& p) const
 {
     return isPointInTriangle(p, m_p1, m_p2, m_p3) || isPointInTriangle(p, m_p1, m_p3, m_p4);
-} 
+}
 
 // Note that we only handle convex quads here.
 bool FloatQuad::containsQuad(const FloatQuad& other) const
diff --git a/Source/core/platform/graphics/FloatQuad.h b/Source/core/platform/graphics/FloatQuad.h
index d85c867..3a8e822 100644
--- a/Source/core/platform/graphics/FloatQuad.h
+++ b/Source/core/platform/graphics/FloatQuad.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -160,7 +160,7 @@
 inline bool operator==(const FloatQuad& a, const FloatQuad& b)
 {
     return a.p1() == b.p1() &&
-           a.p2() == b.p2() && 
+           a.p2() == b.p2() &&
            a.p3() == b.p3() &&
            a.p4() == b.p4();
 }
@@ -168,7 +168,7 @@
 inline bool operator!=(const FloatQuad& a, const FloatQuad& b)
 {
     return a.p1() != b.p1() ||
-           a.p2() != b.p2() || 
+           a.p2() != b.p2() ||
            a.p3() != b.p3() ||
            a.p4() != b.p4();
 }
diff --git a/Source/core/platform/graphics/FloatRect.h b/Source/core/platform/graphics/FloatRect.h
index fc17a27..40bea2b 100644
--- a/Source/core/platform/graphics/FloatRect.h
+++ b/Source/core/platform/graphics/FloatRect.h
@@ -89,7 +89,7 @@
 
     FloatPoint center() const { return FloatPoint(x() + width() / 2, y() + height() / 2); }
 
-    void move(const FloatSize& delta) { m_location += delta; } 
+    void move(const FloatSize& delta) { m_location += delta; }
     void moveBy(const FloatPoint& delta) { m_location.move(delta.x(), delta.y()); }
     void move(float dx, float dy) { m_location.move(dx, dy); }
 
diff --git a/Source/core/platform/graphics/FloatSize.cpp b/Source/core/platform/graphics/FloatSize.cpp
index ad12eb4..f3283b2 100644
--- a/Source/core/platform/graphics/FloatSize.cpp
+++ b/Source/core/platform/graphics/FloatSize.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/Font.cpp b/Source/core/platform/graphics/Font.cpp
index b6074ec..481b6eb 100644
--- a/Source/core/platform/graphics/Font.cpp
+++ b/Source/core/platform/graphics/Font.cpp
@@ -60,6 +60,27 @@
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
 };
 
+static const UChar32 cjkIsolatedSymbolsArray[] = {
+    // 0x2C7 Caron, Mandarin Chinese 3rd Tone
+    0x2C7,
+    // 0x2CA Modifier Letter Acute Accent, Mandarin Chinese 2nd Tone
+    0x2CA,
+    // 0x2CB Modifier Letter Grave Access, Mandarin Chinese 4th Tone
+    0x2CB,
+    // 0x2D9 Dot Above, Mandarin Chinese 5th Tone
+    0x2D9,
+    0x2020, 0x2021, 0x2030, 0x203B, 0x203C, 0x2042, 0x2047, 0x2048, 0x2049, 0x2051,
+    0x20DD, 0x20DE, 0x2100, 0x2103, 0x2105, 0x2109, 0x210A, 0x2113, 0x2116, 0x2121,
+    0x212B, 0x213B, 0x2150, 0x2151, 0x2152, 0x217F, 0x2189, 0x2307, 0x2312, 0x23CE,
+    0x2423, 0x25A0, 0x25A1, 0x25A2, 0x25AA, 0x25AB, 0x25B1, 0x25B2, 0x25B3, 0x25B6,
+    0x25B7, 0x25BC, 0x25BD, 0x25C0, 0x25C1, 0x25C6, 0x25C7, 0x25C9, 0x25CB, 0x25CC,
+    0x25EF, 0x2605, 0x2606, 0x260E, 0x2616, 0x2617, 0x2640, 0x2642, 0x26A0, 0x26BD,
+    0x26BE, 0x2713, 0x271A, 0x273F, 0x2740, 0x2756, 0x2B1A, 0xFE10, 0xFE11, 0xFE12,
+    0xFE19, 0xFF1D,
+    // Emoji.
+    0x1F100
+};
+
 Font::CodePath Font::s_codePath = Auto;
 
 TypesettingFeatures Font::s_defaultTypesettingFeatures = 0;
@@ -129,7 +150,7 @@
     // FIXME: This does not work if the font was made with the FontPlatformData constructor.
     if (loadingCustomFonts() || other.loadingCustomFonts())
         return false;
-    
+
     FontSelector* first = m_fontFallbackList ? m_fontFallbackList->fontSelector() : 0;
     FontSelector* second = other.m_fontFallbackList ? other.m_fontFallbackList->fontSelector() : 0;
 
@@ -143,7 +164,7 @@
 
 void Font::update(PassRefPtr<FontSelector> fontSelector) const
 {
-    // FIXME: It is pretty crazy that we are willing to just poke into a RefPtr, but it ends up 
+    // FIXME: It is pretty crazy that we are willing to just poke into a RefPtr, but it ends up
     // being reasonably safe (because inherited fonts in the render tree pick up the new
     // style anyway. Other copies are transient, e.g., the state in the GraphicsContext, and
     // won't stick around long enough to get you in trouble). Still, this is pretty disgusting,
@@ -161,7 +182,7 @@
     // font).
     if (loadingCustomFonts() && customFontNotReadyAction == DoNotPaintIfFontNotReady)
         return;
-    
+
     CodePath codePathToUse = codePath(runInfo.run);
     // FIXME: Use the fast code path once it handles partial runs with kerning and ligatures. See http://webkit.org/b/100050
     if (codePathToUse != Complex && typesettingFeatures() && (runInfo.from || runInfo.to != runInfo.run.length()))
@@ -340,7 +361,7 @@
 
     if (m_fontDescription.featureSettings() && m_fontDescription.featureSettings()->size() > 0)
         return Complex;
-    
+
     if (run.length() > 1 && !WidthIterator::supportsTypesettingFeatures(*this))
         return Complex;
 
@@ -527,89 +548,8 @@
     static HashSet<UChar32>* cjkIsolatedSymbols = 0;
     if (!cjkIsolatedSymbols) {
         cjkIsolatedSymbols = new HashSet<UChar32>();
-        // 0x2C7 Caron, Mandarin Chinese 3rd Tone
-        cjkIsolatedSymbols->add(0x2C7);
-        // 0x2CA Modifier Letter Acute Accent, Mandarin Chinese 2nd Tone
-        cjkIsolatedSymbols->add(0x2CA);
-        // 0x2CB Modifier Letter Grave Access, Mandarin Chinese 4th Tone
-        cjkIsolatedSymbols->add(0x2CB);
-        // 0x2D9 Dot Above, Mandarin Chinese 5th Tone
-        cjkIsolatedSymbols->add(0x2D9);
-
-        cjkIsolatedSymbols->add(0x2020);
-        cjkIsolatedSymbols->add(0x2021);
-        cjkIsolatedSymbols->add(0x2030);
-        cjkIsolatedSymbols->add(0x203B);
-        cjkIsolatedSymbols->add(0x203C);
-        cjkIsolatedSymbols->add(0x2042);
-        cjkIsolatedSymbols->add(0x2047);
-        cjkIsolatedSymbols->add(0x2048);
-        cjkIsolatedSymbols->add(0x2049);
-        cjkIsolatedSymbols->add(0x2051);
-        cjkIsolatedSymbols->add(0x20DD);
-        cjkIsolatedSymbols->add(0x20DE);
-        cjkIsolatedSymbols->add(0x2100);
-        cjkIsolatedSymbols->add(0x2103);
-        cjkIsolatedSymbols->add(0x2105);
-        cjkIsolatedSymbols->add(0x2109);
-        cjkIsolatedSymbols->add(0x210A);
-        cjkIsolatedSymbols->add(0x2113);
-        cjkIsolatedSymbols->add(0x2116);
-        cjkIsolatedSymbols->add(0x2121);
-        cjkIsolatedSymbols->add(0x212B);
-        cjkIsolatedSymbols->add(0x213B);
-        cjkIsolatedSymbols->add(0x2150);
-        cjkIsolatedSymbols->add(0x2151);
-        cjkIsolatedSymbols->add(0x2152);
-        cjkIsolatedSymbols->add(0x217F);
-        cjkIsolatedSymbols->add(0x2189);
-        cjkIsolatedSymbols->add(0x2307);
-        cjkIsolatedSymbols->add(0x2312);
-        cjkIsolatedSymbols->add(0x23CE);
-        cjkIsolatedSymbols->add(0x2423);
-        cjkIsolatedSymbols->add(0x25A0);
-        cjkIsolatedSymbols->add(0x25A1);
-        cjkIsolatedSymbols->add(0x25A2);
-        cjkIsolatedSymbols->add(0x25AA);
-        cjkIsolatedSymbols->add(0x25AB);
-        cjkIsolatedSymbols->add(0x25B1);
-        cjkIsolatedSymbols->add(0x25B2);
-        cjkIsolatedSymbols->add(0x25B3);
-        cjkIsolatedSymbols->add(0x25B6);
-        cjkIsolatedSymbols->add(0x25B7);
-        cjkIsolatedSymbols->add(0x25BC);
-        cjkIsolatedSymbols->add(0x25BD);
-        cjkIsolatedSymbols->add(0x25C0);
-        cjkIsolatedSymbols->add(0x25C1);
-        cjkIsolatedSymbols->add(0x25C6);
-        cjkIsolatedSymbols->add(0x25C7);
-        cjkIsolatedSymbols->add(0x25C9);
-        cjkIsolatedSymbols->add(0x25CB);
-        cjkIsolatedSymbols->add(0x25CC);
-        cjkIsolatedSymbols->add(0x25EF);
-        cjkIsolatedSymbols->add(0x2605);
-        cjkIsolatedSymbols->add(0x2606);
-        cjkIsolatedSymbols->add(0x260E);
-        cjkIsolatedSymbols->add(0x2616);
-        cjkIsolatedSymbols->add(0x2617);
-        cjkIsolatedSymbols->add(0x2640);
-        cjkIsolatedSymbols->add(0x2642);
-        cjkIsolatedSymbols->add(0x26A0);
-        cjkIsolatedSymbols->add(0x26BD);
-        cjkIsolatedSymbols->add(0x26BE);
-        cjkIsolatedSymbols->add(0x2713);
-        cjkIsolatedSymbols->add(0x271A);
-        cjkIsolatedSymbols->add(0x273F);
-        cjkIsolatedSymbols->add(0x2740);
-        cjkIsolatedSymbols->add(0x2756);
-        cjkIsolatedSymbols->add(0x2B1A);
-        cjkIsolatedSymbols->add(0xFE10);
-        cjkIsolatedSymbols->add(0xFE11);
-        cjkIsolatedSymbols->add(0xFE12);
-        cjkIsolatedSymbols->add(0xFE19);
-        cjkIsolatedSymbols->add(0xFF1D);
-        // Emoji.
-        cjkIsolatedSymbols->add(0x1F100);
+        for (size_t i = 0; i < WTF_ARRAY_LENGTH(cjkIsolatedSymbolsArray); ++i)
+            cjkIsolatedSymbols->add(cjkIsolatedSymbolsArray[i]);
     }
     if (cjkIsolatedSymbols->contains(c))
         return true;
diff --git a/Source/core/platform/graphics/Font.h b/Source/core/platform/graphics/Font.h
index 429a506..bd7a19d 100644
--- a/Source/core/platform/graphics/Font.h
+++ b/Source/core/platform/graphics/Font.h
@@ -166,7 +166,7 @@
     CodePath codePath(const TextRun&) const;
     static CodePath characterRangeCodePath(const LChar*, unsigned) { return Simple; }
     static CodePath characterRangeCodePath(const UChar*, unsigned len);
-    
+
 private:
     enum ForTextEmphasisOrNot { NotForTextEmphasis, ForTextEmphasis };
 
diff --git a/Source/core/platform/graphics/FontBaseline.h b/Source/core/platform/graphics/FontBaseline.h
index f7d256d..7e416f9 100644
--- a/Source/core/platform/graphics/FontBaseline.h
+++ b/Source/core/platform/graphics/FontBaseline.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FontBaseline_h
diff --git a/Source/core/platform/graphics/FontCache.cpp b/Source/core/platform/graphics/FontCache.cpp
index 8c658b3..55cc917 100644
--- a/Source/core/platform/graphics/FontCache.cpp
+++ b/Source/core/platform/graphics/FontCache.cpp
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -112,7 +112,7 @@
     {
         return computeHash(font);
     }
-         
+
     static bool equal(const FontPlatformDataCacheKey& a, const FontPlatformDataCacheKey& b)
     {
         return a == b;
@@ -149,7 +149,7 @@
         return timesNewRoman;
     if (equalIgnoringCase(familyName, timesNewRoman))
         return times;
-    
+
     // Alias Arial and Helvetica
     DEFINE_STATIC_LOCAL(AtomicString, arial, ("Arial", AtomicString::ConstructFromLiteral));
     DEFINE_STATIC_LOCAL(AtomicString, helvetica, ("Helvetica", AtomicString::ConstructFromLiteral));
@@ -159,14 +159,14 @@
         return arial;
 
 #if OS(WINDOWS)
-    // On Windows, bitmap fonts are blocked altogether so that we have to 
+    // On Windows, bitmap fonts are blocked altogether so that we have to
     // alias MS Sans Serif (bitmap font) -> Microsoft Sans Serif (truetype font)
     DEFINE_STATIC_LOCAL(AtomicString, msSans, ("MS Sans Serif", AtomicString::ConstructFromLiteral));
     DEFINE_STATIC_LOCAL(AtomicString, microsoftSans, ("Microsoft Sans Serif", AtomicString::ConstructFromLiteral));
     if (equalIgnoringCase(familyName, msSans))
         return microsoftSans;
 
-    // Alias MS Serif (bitmap) -> Times New Roman (truetype font). There's no 
+    // Alias MS Serif (bitmap) -> Times New Roman (truetype font). There's no
     // 'Microsoft Sans Serif-equivalent' for Serif.
     DEFINE_STATIC_LOCAL(AtomicString, msSerif, ("MS Serif", AtomicString::ConstructFromLiteral));
     if (equalIgnoringCase(familyName, msSerif))
@@ -210,7 +210,7 @@
     }
 
     if (!foundResult && !checkingAlternateName) {
-        // We were unable to find a font.  We have a small set of fonts that we alias to other names, 
+        // We were unable to find a font.  We have a small set of fonts that we alias to other names,
         // e.g., Arial/Helvetica, Courier/Courier New, etc.  Try looking up the font under the aliased name.
         const AtomicString& alternateName = alternateFamilyName(familyName);
         if (!alternateName.isEmpty())
@@ -251,7 +251,7 @@
     {
         return platformData.hash();
     }
-         
+
     static bool equal(const FontPlatformData& a, const FontPlatformData& b)
     {
         return a == b;
@@ -332,7 +332,7 @@
     if (shouldRetain == Retain)
         result.get()->value.second++;
     else if (!result.get()->value.second) {
-        // If shouldRetain is DoNotRetain and count is 0, we want to remove the fontData from 
+        // If shouldRetain is DoNotRetain and count is 0, we want to remove the fontData from
         // gInactiveFontData (above) and re-add here to update LRU position.
         gInactiveFontData->add(result.get()->value.first);
     }
@@ -405,7 +405,7 @@
             if (platformData->value && !gFontDataCache->contains(*platformData->value))
                 keysToRemove.append(platformData->key);
         }
-        
+
         size_t keysToRemoveCount = keysToRemove.size();
         for (size_t i = 0; i < keysToRemoveCount; ++i)
             delete gFontPlatformDataCache->take(keysToRemove[i]);
diff --git a/Source/core/platform/graphics/FontCache.h b/Source/core/platform/graphics/FontCache.h
index d7d194a..3f6dea6 100644
--- a/Source/core/platform/graphics/FontCache.h
+++ b/Source/core/platform/graphics/FontCache.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/platform/graphics/FontData.cpp b/Source/core/platform/graphics/FontData.cpp
index 6e23984..6044933 100644
--- a/Source/core/platform/graphics/FontData.cpp
+++ b/Source/core/platform/graphics/FontData.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/FontData.h b/Source/core/platform/graphics/FontData.h
index b710095..f4d64ab 100644
--- a/Source/core/platform/graphics/FontData.h
+++ b/Source/core/platform/graphics/FontData.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FontData_h
diff --git a/Source/core/platform/graphics/FontDescription.cpp b/Source/core/platform/graphics/FontDescription.cpp
index 5b0f32c..7162512 100644
--- a/Source/core/platform/graphics/FontDescription.cpp
+++ b/Source/core/platform/graphics/FontDescription.cpp
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -92,7 +92,7 @@
     return static_cast<FontTraitsMask>((m_italic ? FontStyleItalicMask : FontStyleNormalMask)
             | (m_smallCaps ? FontVariantSmallCapsMask : FontVariantNormalMask)
             | (FontWeight100Mask << (m_weight - FontWeight100)));
-    
+
 }
 
 FontDescription FontDescription::makeNormalFeatureSettings() const
diff --git a/Source/core/platform/graphics/FontDescription.h b/Source/core/platform/graphics/FontDescription.h
index eebb777..0411fc9 100644
--- a/Source/core/platform/graphics/FontDescription.h
+++ b/Source/core/platform/graphics/FontDescription.h
@@ -68,7 +68,7 @@
 
 class FontDescription {
 public:
-    enum GenericFamilyType { NoFamily, StandardFamily, SerifFamily, SansSerifFamily, 
+    enum GenericFamilyType { NoFamily, StandardFamily, SerifFamily, SansSerifFamily,
                              MonospaceFamily, CursiveFamily, FantasyFamily, PictographFamily };
 
     enum Kerning { AutoKerning, NormalKerning, NoneKerning };
@@ -101,7 +101,7 @@
 
     bool operator==(const FontDescription&) const;
     bool operator!=(const FontDescription& other) const { return !(*this == other); }
-    
+
     const FontFamily& family() const { return m_familyList; }
     FontFamily& firstFamily() { return m_familyList; }
     float specifiedSize() const { return m_specifiedSize; }
@@ -169,7 +169,7 @@
 
     float m_specifiedSize;   // Specified CSS value. Independent of rendering issues such as integer
                              // rounding, minimum font sizes, and zooming.
-    float m_computedSize;    // Computed size adjusted for the minimum font size and the zoom factor.  
+    float m_computedSize;    // Computed size adjusted for the minimum font size and the zoom factor.
 
     unsigned m_orientation : 1; // FontOrientation - Whether the font is rendering on a horizontal line or a vertical line.
     unsigned m_nonCJKGlyphOrientation : 1; // NonCJKGlyphOrientation - Only used by vertical text. Determines the default orientation for non-ideograph glyphs.
diff --git a/Source/core/platform/graphics/FontFallbackList.cpp b/Source/core/platform/graphics/FontFallbackList.cpp
index 99f6698..f04fa94 100644
--- a/Source/core/platform/graphics/FontFallbackList.cpp
+++ b/Source/core/platform/graphics/FontFallbackList.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -53,7 +53,7 @@
     m_pageZero = 0;
     m_pages.clear();
     m_cachedPrimarySimpleFontData = 0;
-    m_familyIndex = 0;    
+    m_familyIndex = 0;
     m_pitch = UnknownPitch;
     m_loadingCustomFonts = false;
     m_fontSelector = fontSelector;
diff --git a/Source/core/platform/graphics/FontFallbackList.h b/Source/core/platform/graphics/FontFallbackList.h
index c78a2af..edf8dcb 100644
--- a/Source/core/platform/graphics/FontFallbackList.h
+++ b/Source/core/platform/graphics/FontFallbackList.h
@@ -69,7 +69,7 @@
 
     ~FontFallbackList() { releaseFontData(); }
     void invalidate(PassRefPtr<FontSelector>);
-    
+
     bool isFixedPitch(const Font* f) const { if (m_pitch == UnknownPitch) determinePitch(f); return m_pitch == FixedPitch; };
     void determinePitch(const Font*) const;
 
@@ -86,7 +86,7 @@
     FontFallbackList();
 
     const SimpleFontData* primarySimpleFontData(const Font* f)
-    { 
+    {
         ASSERT(isMainThread());
         if (!m_cachedPrimarySimpleFontData)
             m_cachedPrimarySimpleFontData = primaryFontData(f)->fontDataForCharacter(' ');
@@ -99,7 +99,7 @@
     void setPlatformFont(const FontPlatformData&);
 
     void releaseFontData();
-    
+
     mutable Vector<RefPtr<FontData>, 1> m_fontList;
     mutable GlyphPages m_pages;
     mutable GlyphPageTreeNode* m_pageZero;
diff --git a/Source/core/platform/graphics/FontFamily.cpp b/Source/core/platform/graphics/FontFamily.cpp
index 99dd706..513c2bf 100644
--- a/Source/core/platform/graphics/FontFamily.cpp
+++ b/Source/core/platform/graphics/FontFamily.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/FontFamily.h b/Source/core/platform/graphics/FontFamily.h
index c1aa3ff..6c032ed 100644
--- a/Source/core/platform/graphics/FontFamily.h
+++ b/Source/core/platform/graphics/FontFamily.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FontFamily_h
diff --git a/Source/core/platform/graphics/FontFastPath.cpp b/Source/core/platform/graphics/FontFastPath.cpp
index ded212c..f90a781 100644
--- a/Source/core/platform/graphics/FontFastPath.cpp
+++ b/Source/core/platform/graphics/FontFastPath.cpp
@@ -57,7 +57,7 @@
 
     if (isInRange(character, 0x002E5, 0x002EB))
         return true;
-    
+
     if (isInRange(character, 0x01100, 0x011FF) || isInRange(character, 0x01401, 0x0167F) || isInRange(character, 0x01800, 0x018FF))
         return true;
 
@@ -119,13 +119,13 @@
         || isInRange(character, 0x1D000, 0x1D1FF) || isInRange(character, 0x1D300, 0x1D37F)
         || isInRange(character, 0x1F000, 0x1F64F) || isInRange(character, 0x1F680, 0x1F77F))
         return true;
-    
+
     if (isInRange(character, 0x20000, 0x2FFFD) || isInRange(character, 0x30000, 0x3FFFD))
         return true;
 
     return false;
 }
-    
+
 static inline std::pair<GlyphData, GlyphPage*> glyphDataAndPageForNonCJKCharacterWithGlyphOrientation(UChar32 character, NonCJKGlyphOrientation orientation, GlyphData& data, GlyphPage* page, unsigned pageNumber)
 {
     if (orientation == NonCJKGlyphOrientationUpright || shouldIgnoreRotation(character)) {
@@ -351,7 +351,7 @@
 int Font::emphasisMarkAscent(const AtomicString& mark) const
 {
     FontCachePurgePreventer purgePreventer;
-    
+
     GlyphData markGlyphData;
     if (!getEmphasisMarkGlyphData(mark, markGlyphData))
         return 0;
@@ -367,7 +367,7 @@
 int Font::emphasisMarkDescent(const AtomicString& mark) const
 {
     FontCachePurgePreventer purgePreventer;
-    
+
     GlyphData markGlyphData;
     if (!getEmphasisMarkGlyphData(mark, markGlyphData))
         return 0;
@@ -452,7 +452,7 @@
 }
 
 void Font::drawGlyphBuffer(GraphicsContext* context, const TextRunPaintInfo& runInfo, const GlyphBuffer& glyphBuffer, const FloatPoint& point) const
-{   
+{
     // Draw each contiguous run of glyphs that use the same font data.
     const SimpleFontData* fontData = glyphBuffer.fontDataAt(0);
     FloatSize offset = glyphBuffer.offsetAt(0);
@@ -510,7 +510,7 @@
 void Font::drawEmphasisMarks(GraphicsContext* context, const TextRunPaintInfo& runInfo, const GlyphBuffer& glyphBuffer, const AtomicString& mark, const FloatPoint& point) const
 {
     FontCachePurgePreventer purgePreventer;
-    
+
     GlyphData markGlyphData;
     if (!getEmphasisMarkGlyphData(mark, markGlyphData))
         return;
diff --git a/Source/core/platform/graphics/FontMetrics.h b/Source/core/platform/graphics/FontMetrics.h
index d8ac0b0..5f0073a 100644
--- a/Source/core/platform/graphics/FontMetrics.h
+++ b/Source/core/platform/graphics/FontMetrics.h
@@ -75,8 +75,8 @@
     void setLineSpacing(float lineSpacing) { m_lineSpacing = lineSpacing; }
 
     float xHeight() const { return m_xHeight; }
-    void setXHeight(float xHeight) 
-    { 
+    void setXHeight(float xHeight)
+    {
         m_xHeight = xHeight;
         m_hasXHeight = true;
     }
diff --git a/Source/core/platform/graphics/FontOrientation.h b/Source/core/platform/graphics/FontOrientation.h
index 12cf5c1..9239e38 100644
--- a/Source/core/platform/graphics/FontOrientation.h
+++ b/Source/core/platform/graphics/FontOrientation.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FontOrientation_h
diff --git a/Source/core/platform/graphics/FontSelector.h b/Source/core/platform/graphics/FontSelector.h
index 4f5469c..69dc632 100644
--- a/Source/core/platform/graphics/FontSelector.h
+++ b/Source/core/platform/graphics/FontSelector.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FontSelector_h
@@ -45,7 +45,7 @@
 
     virtual void registerForInvalidationCallbacks(FontSelectorClient*) = 0;
     virtual void unregisterForInvalidationCallbacks(FontSelectorClient*) = 0;
-    
+
     virtual unsigned version() const = 0;
 };
 
diff --git a/Source/core/platform/graphics/FontSmoothingMode.h b/Source/core/platform/graphics/FontSmoothingMode.h
index 8d070eb..90b0c5c 100644
--- a/Source/core/platform/graphics/FontSmoothingMode.h
+++ b/Source/core/platform/graphics/FontSmoothingMode.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FontSmoothingMode_h
@@ -29,7 +29,7 @@
 namespace WebCore {
 
 enum FontSmoothingMode { AutoSmoothing, NoSmoothing, Antialiased, SubpixelAntialiased };
-    
+
 } // namespace WebCore
 
 #endif // FontSmoothingMode_h
diff --git a/Source/core/platform/graphics/FontTraitsMask.h b/Source/core/platform/graphics/FontTraitsMask.h
index 643d5f0..b95d131 100644
--- a/Source/core/platform/graphics/FontTraitsMask.h
+++ b/Source/core/platform/graphics/FontTraitsMask.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FontTraitsMask_h
diff --git a/Source/core/platform/graphics/FontWidthVariant.h b/Source/core/platform/graphics/FontWidthVariant.h
index f443297..0e25c69 100644
--- a/Source/core/platform/graphics/FontWidthVariant.h
+++ b/Source/core/platform/graphics/FontWidthVariant.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FontWidthVariant_h
diff --git a/Source/core/platform/graphics/GeneratedImage.h b/Source/core/platform/graphics/GeneratedImage.h
index 17eef2e..64c6136 100644
--- a/Source/core/platform/graphics/GeneratedImage.h
+++ b/Source/core/platform/graphics/GeneratedImage.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef GeneratedImage_h
diff --git a/Source/core/platform/graphics/Glyph.h b/Source/core/platform/graphics/Glyph.h
index 309463f..a96770f 100644
--- a/Source/core/platform/graphics/Glyph.h
+++ b/Source/core/platform/graphics/Glyph.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/platform/graphics/GlyphBuffer.h b/Source/core/platform/graphics/GlyphBuffer.h
index d3cf331..929c51a 100644
--- a/Source/core/platform/graphics/GlyphBuffer.h
+++ b/Source/core/platform/graphics/GlyphBuffer.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -66,7 +66,7 @@
 public:
     bool isEmpty() const { return m_fontData.isEmpty(); }
     int size() const { return m_fontData.size(); }
-    
+
     void clear()
     {
         m_fontData.clear();
@@ -80,7 +80,7 @@
     const GlyphBufferAdvance* advances(int from) const { return m_advances.data() + from; }
 
     const SimpleFontData* fontDataAt(int index) const { return m_fontData[index]; }
-    
+
     Glyph glyphAt(int index) const
     {
         return m_glyphs[index];
@@ -112,7 +112,7 @@
 
         UNUSED_PARAM(offset);
     }
-    
+
     void add(Glyph glyph, const SimpleFontData* font, GlyphBufferAdvance advance)
     {
         m_fontData.append(font);
diff --git a/Source/core/platform/graphics/GlyphMetricsMap.h b/Source/core/platform/graphics/GlyphMetricsMap.h
index 15cc399..64245a2 100644
--- a/Source/core/platform/graphics/GlyphMetricsMap.h
+++ b/Source/core/platform/graphics/GlyphMetricsMap.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -73,7 +73,7 @@
     private:
         T m_metrics[size];
     };
-    
+
     GlyphMetricsPage* locatePage(unsigned pageNumber)
     {
         if (!pageNumber && m_filledPrimaryPage)
@@ -82,7 +82,7 @@
     }
 
     GlyphMetricsPage* locatePageSlowCase(unsigned pageNumber);
-    
+
     static T unknownMetrics();
 
     bool m_filledPrimaryPage;
@@ -123,7 +123,7 @@
 
     return page;
 }
-    
+
 } // namespace WebCore
 
 #endif
diff --git a/Source/core/platform/graphics/GlyphPage.h b/Source/core/platform/graphics/GlyphPage.h
index cf39d98..214fcd9 100644
--- a/Source/core/platform/graphics/GlyphPage.h
+++ b/Source/core/platform/graphics/GlyphPage.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/platform/graphics/GlyphPageTreeNode.cpp b/Source/core/platform/graphics/GlyphPageTreeNode.cpp
index 912a59d..7a23d13 100644
--- a/Source/core/platform/graphics/GlyphPageTreeNode.cpp
+++ b/Source/core/platform/graphics/GlyphPageTreeNode.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -77,7 +77,7 @@
         for (HashMap<int, GlyphPageTreeNode*>::iterator it = roots->begin(); it != end; ++it)
             count += it->value->pageCount();
     }
-    
+
     if (pageZeroRoot)
         count += pageZeroRoot->pageCount();
 
@@ -102,7 +102,7 @@
         for (HashMap<int, GlyphPageTreeNode*>::iterator it = roots->begin(); it != end; ++it)
             it->value->pruneCustomFontData(fontData);
     }
-    
+
     if (pageZeroRoot)
         pageZeroRoot->pruneCustomFontData(fontData);
 }
@@ -114,7 +114,7 @@
         for (HashMap<int, GlyphPageTreeNode*>::iterator it = roots->begin(); it != end; ++it)
             it->value->pruneFontData(fontData);
     }
-    
+
     if (pageZeroRoot)
         pageZeroRoot->pruneFontData(fontData);
 }
@@ -202,7 +202,7 @@
             }
 
             // Now that we have a buffer full of characters, we want to get back an array
-            // of glyph indices.  This part involves calling into the platform-specific 
+            // of glyph indices.  This part involves calling into the platform-specific
             // routine of our glyph map for actually filling in the page with the glyphs.
             // Success is not guaranteed. For example, Times fails to fill page 260, giving glyph data
             // for only 128 out of 256 characters.
@@ -346,7 +346,7 @@
 {
     if (!fontData || !m_customFontCount)
         return;
-        
+
     // Prune any branch that contains this FontData.
     if (OwnPtr<GlyphPageTreeNode> node = m_children.take(fontData)) {
         if (unsigned customFontCount = node->m_customFontCount + 1) {
@@ -354,7 +354,7 @@
                 curr->m_customFontCount -= customFontCount;
         }
     }
-    
+
     // Check any branches that remain that still have custom fonts underneath them.
     if (!m_customFontCount)
         return;
diff --git a/Source/core/platform/graphics/GlyphPageTreeNode.h b/Source/core/platform/graphics/GlyphPageTreeNode.h
index def0192..63ffead 100644
--- a/Source/core/platform/graphics/GlyphPageTreeNode.h
+++ b/Source/core/platform/graphics/GlyphPageTreeNode.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/platform/graphics/Gradient.cpp b/Source/core/platform/graphics/Gradient.cpp
index 5a69dfd..30e1cac 100644
--- a/Source/core/platform/graphics/Gradient.cpp
+++ b/Source/core/platform/graphics/Gradient.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -207,10 +207,10 @@
     // StringHasher requires that the memory it hashes be a multiple of two in size.
     COMPILE_ASSERT(!(sizeof(parameters) % 2), Gradient_parameters_size_should_be_multiple_of_two);
     COMPILE_ASSERT(!(sizeof(ColorStop) % 2), Color_stop_size_should_be_multiple_of_two);
-    
+
     // Ensure that any padding in the struct is zero-filled, so it will not affect the hash value.
     memset(&parameters, 0, sizeof(parameters));
-    
+
     parameters.gradientSpaceTransformation = m_gradientSpaceTransformation;
     parameters.p0 = m_p0;
     parameters.p1 = m_p1;
diff --git a/Source/core/platform/graphics/Gradient.h b/Source/core/platform/graphics/Gradient.h
index 04e4598..3c4d7d0 100644
--- a/Source/core/platform/graphics/Gradient.h
+++ b/Source/core/platform/graphics/Gradient.h
@@ -23,7 +23,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Gradient_h
diff --git a/Source/core/platform/graphics/GraphicsContext3D.cpp b/Source/core/platform/graphics/GraphicsContext3D.cpp
index a5deef4..92cc549 100644
--- a/Source/core/platform/graphics/GraphicsContext3D.cpp
+++ b/Source/core/platform/graphics/GraphicsContext3D.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/GraphicsLayer.cpp b/Source/core/platform/graphics/GraphicsLayer.cpp
index 5e56df4..982a1d4 100644
--- a/Source/core/platform/graphics/GraphicsLayer.cpp
+++ b/Source/core/platform/graphics/GraphicsLayer.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -95,7 +95,7 @@
             return;
         }
     }
-    
+
     m_values.append(value);
 }
 
@@ -177,7 +177,7 @@
         if (curr == ancestor)
             return true;
     }
-    
+
     return false;
 }
 
@@ -201,7 +201,7 @@
 void GraphicsLayer::addChildInternal(GraphicsLayer* childLayer)
 {
     ASSERT(childLayer != this);
-    
+
     if (childLayer->parent())
         childLayer->removeFromParent();
 
@@ -387,18 +387,18 @@
 {
     if (!preserves3D())
         return 1;
-        
+
     return m_opacity * (parent() ? parent()->accumulatedOpacity() : 1);
 }
 
 void GraphicsLayer::distributeOpacity(float accumulatedOpacity)
 {
     // If this is a transform layer we need to distribute our opacity to all our children
-    
+
     // Incoming accumulatedOpacity is the contribution from our parent(s). We mutiply this by our own
     // opacity to get the total contribution
     accumulatedOpacity *= m_opacity;
-    
+
     if (preserves3D()) {
         size_t numChildren = children().size();
         for (size_t i = 0; i < numChildren; ++i)
@@ -429,23 +429,23 @@
         return -1;
 
     const FilterOperations* firstVal = filterOperationsAt(valueList, firstIndex);
-    
+
     for (size_t i = firstIndex + 1; i < valueList.size(); ++i) {
         const FilterOperations* val = filterOperationsAt(valueList, i);
-        
+
         // An emtpy filter list matches anything.
         if (val->operations().isEmpty())
             continue;
-        
+
         if (!firstVal->operationsMatch(*val))
             return -1;
     }
-    
+
     return firstIndex;
 }
 
 // An "invalid" list is one whose functions don't match, and therefore has to be animated as a Matrix
-// The hasBigRotation flag will always return false if isValid is false. Otherwise hasBigRotation is 
+// The hasBigRotation flag will always return false if isValid is false. Otherwise hasBigRotation is
 // true if the rotation between any two keyframes is >= 180 degrees.
 
 static inline const TransformOperations* operationsAt(const KeyframeValueList& valueList, size_t index)
@@ -458,51 +458,51 @@
     ASSERT(valueList.property() == AnimatedPropertyWebkitTransform);
 
     hasBigRotation = false;
-    
+
     if (valueList.size() < 2)
         return -1;
-    
+
     // Empty transforms match anything, so find the first non-empty entry as the reference.
     size_t firstIndex = 0;
     for ( ; firstIndex < valueList.size(); ++firstIndex) {
         if (operationsAt(valueList, firstIndex)->operations().size() > 0)
             break;
     }
-    
+
     if (firstIndex >= valueList.size())
         return -1;
-        
+
     const TransformOperations* firstVal = operationsAt(valueList, firstIndex);
-    
+
     // See if the keyframes are valid.
     for (size_t i = firstIndex + 1; i < valueList.size(); ++i) {
         const TransformOperations* val = operationsAt(valueList, i);
-        
+
         // An emtpy transform list matches anything.
         if (val->operations().isEmpty())
             continue;
-            
+
         if (!firstVal->operationsMatch(*val))
             return -1;
     }
 
-    // Keyframes are valid, check for big rotations.    
+    // Keyframes are valid, check for big rotations.
     double lastRotAngle = 0.0;
     double maxRotAngle = -1.0;
-        
+
     for (size_t j = 0; j < firstVal->operations().size(); ++j) {
         TransformOperation::OperationType type = firstVal->operations().at(j)->getOperationType();
-        
+
         // if this is a rotation entry, we need to see if any angle differences are >= 180 deg
         if (type == TransformOperation::ROTATE_X ||
             type == TransformOperation::ROTATE_Y ||
             type == TransformOperation::ROTATE_Z ||
             type == TransformOperation::ROTATE_3D) {
             lastRotAngle = static_cast<RotateTransformOperation*>(firstVal->operations().at(j).get())->angle();
-            
+
             if (maxRotAngle < 0)
                 maxRotAngle = fabs(lastRotAngle);
-            
+
             for (size_t i = firstIndex + 1; i < valueList.size(); ++i) {
                 const TransformOperations* val = operationsAt(valueList, i);
                 double rotAngle = val->operations().isEmpty() ? 0 : (static_cast<RotateTransformOperation*>(val->operations().at(j).get())->angle());
@@ -513,9 +513,9 @@
             }
         }
     }
-    
+
     hasBigRotation = maxRotAngle >= 180.0;
-    
+
     return firstIndex;
 }
 
@@ -672,7 +672,7 @@
 {
     if (!drawsContent())
         return 0;
-    
+
     // Effects of page and device scale are ignored; subclasses should override to take these into account.
     return static_cast<double>(4 * size().width()) * size().height();
 }
@@ -747,7 +747,7 @@
         writeIndent(ts, indent + 1);
         ts << "(opacity " << m_opacity << ")\n";
     }
-    
+
     if (m_contentsOpaque) {
         writeIndent(ts, indent + 1);
         ts << "(contentsOpaque " << m_contentsOpaque << ")\n";
@@ -871,11 +871,11 @@
     }
 
     dumpAdditionalProperties(ts, indent, flags);
-    
+
     if (m_children.size()) {
         writeIndent(ts, indent + 1);
         ts << "(children " << m_children.size() << "\n";
-        
+
         unsigned i;
         for (i = 0; i < m_children.size(); i++)
             m_children[i]->dumpLayer(ts, indent + 2, flags);
diff --git a/Source/core/platform/graphics/GraphicsLayer.h b/Source/core/platform/graphics/GraphicsLayer.h
index ef40e45..e4bb578 100644
--- a/Source/core/platform/graphics/GraphicsLayer.h
+++ b/Source/core/platform/graphics/GraphicsLayer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef GraphicsLayer_h
@@ -76,7 +76,7 @@
         , m_timingFunction(timingFunction)
     {
     }
-    
+
     virtual ~AnimationValue() { }
 
     float keyTime() const { return m_keyTime; }
@@ -175,10 +175,10 @@
 
     size_t size() const { return m_values.size(); }
     const AnimationValue* at(size_t i) const { return m_values.at(i).get(); }
-    
+
     // Insert, sorted by keyTime.
     void insert(PassOwnPtr<const AnimationValue>);
-    
+
 protected:
     Vector<OwnPtr<const AnimationValue> > m_values;
     AnimatedPropertyID m_property;
@@ -222,10 +222,10 @@
 
     GraphicsLayer* parent() const { return m_parent; };
     void setParent(GraphicsLayer*); // Internal use only.
-    
+
     // Returns true if the layer has the given layer as an ancestor (excluding self).
     bool hasAncestor(GraphicsLayer*) const;
-    
+
     const Vector<GraphicsLayer*>& children() const { return m_children; }
     // Returns true if the child list changed.
     bool setChildren(const Vector<GraphicsLayer*>&);
@@ -242,7 +242,7 @@
 
     GraphicsLayer* maskLayer() const { return m_maskLayer; }
     void setMaskLayer(GraphicsLayer*);
-    
+
     // The given layer will replicate this layer and its children; the replica renders behind this layer.
     void setReplicatedByLayer(GraphicsLayer*);
     // Whether this layer is being replicated by another layer.
@@ -287,7 +287,7 @@
 
     bool preserves3D() const { return m_preserves3D; }
     void setPreserves3D(bool);
-    
+
     bool masksToBounds() const { return m_masksToBounds; }
     void setMasksToBounds(bool);
 
@@ -314,7 +314,7 @@
     void setOpacity(float);
 
     const FilterOperations& filters() const { return m_filters; }
-    
+
     // Returns true if filter can be rendered by the compositor
     bool setFilters(const FilterOperations&);
     void setBackgroundFilters(const FilterOperations&);
@@ -335,7 +335,7 @@
 
     // Transitions are identified by a special animation name that cannot clash with a keyframe identifier.
     static String animationNameForTransition(AnimatedPropertyID);
-    
+
     // Return true if the animation is handled by the compositing system. If this returns
     // false, the animation will be run by AnimationController.
     // These methods handle both transitions and keyframe animations.
@@ -345,7 +345,7 @@
 
     void suspendAnimations(double time);
     void resumeAnimations();
-    
+
     // Layer contents
     void setContentsToImage(Image*);
     bool shouldDirectlyCompositeImage(Image*) const { return true; }
@@ -362,7 +362,7 @@
     void paintGraphicsLayerContents(GraphicsContext&, const IntRect& clip);
     // Callback from the underlying graphics system when the layer has been displayed
     void layerDidDisplay(WebKit::WebLayer*) { }
-    
+
     // For hosting this GraphicsLayer in a native layer hierarchy.
     WebKit::WebLayer* platformLayer() const;
 
@@ -448,7 +448,7 @@
     // Given a list of TransformAnimationValues, see if all the operations for each keyframe match. If so
     // return the index of the KeyframeValueList entry that has that list of operations (it may not be
     // the first entry because some keyframes might have an empty transform and those match any list).
-    // If the lists don't match return -1. On return, if hasBigRotation is true, functions contain 
+    // If the lists don't match return -1. On return, if hasBigRotation is true, functions contain
     // rotations of >= 180 degrees
     static int validateTransformOperations(const KeyframeValueList&, bool& hasBigRotation);
 
@@ -478,10 +478,10 @@
 
     GraphicsLayerClient* m_client;
     String m_name;
-    
+
     // Offset from the owning renderer
     IntSize m_offsetFromRenderer;
-    
+
     // Position is relative to the parent GraphicsLayer
     FloatPoint m_position;
     FloatPoint3D m_anchorPoint;
@@ -494,7 +494,7 @@
     Color m_backgroundColor;
     float m_opacity;
     float m_zPosition;
-    
+
     FilterOperations m_filters;
 
     bool m_contentsOpaque : 1;
@@ -504,7 +504,7 @@
     bool m_drawsContent : 1;
     bool m_contentsVisible : 1;
     bool m_showRepaintCounter : 1;
-    
+
     GraphicsLayerPaintingPhase m_paintingPhase;
     CompositingCoordinatesOrientation m_contentsOrientation; // affects orientation of layer contents
 
diff --git a/Source/core/platform/graphics/GraphicsLayerClient.h b/Source/core/platform/graphics/GraphicsLayerClient.h
index ec566ea..ecc9888 100644
--- a/Source/core/platform/graphics/GraphicsLayerClient.h
+++ b/Source/core/platform/graphics/GraphicsLayerClient.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef GraphicsLayerClient_h
diff --git a/Source/core/platform/graphics/GraphicsTypes.cpp b/Source/core/platform/graphics/GraphicsTypes.cpp
index ba9886f..6273435 100644
--- a/Source/core/platform/graphics/GraphicsTypes.cpp
+++ b/Source/core/platform/graphics/GraphicsTypes.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -77,7 +77,7 @@
             return true;
         }
     }
-    
+
     for (int i = 0; i < numBlendOperatorNames; i++) {
         if (s == blendOperatorNames[i]) {
             blendOp = static_cast<BlendMode>(i+1);
@@ -86,7 +86,7 @@
             return true;
         }
     }
-    
+
     return false;
 }
 
diff --git a/Source/core/platform/graphics/GraphicsTypes.h b/Source/core/platform/graphics/GraphicsTypes.h
index c3aff19..1d1a367 100644
--- a/Source/core/platform/graphics/GraphicsTypes.h
+++ b/Source/core/platform/graphics/GraphicsTypes.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef GraphicsTypes_h
diff --git a/Source/core/platform/graphics/GraphicsTypes3D.h b/Source/core/platform/graphics/GraphicsTypes3D.h
index a593cc8..f4f750e 100644
--- a/Source/core/platform/graphics/GraphicsTypes3D.h
+++ b/Source/core/platform/graphics/GraphicsTypes3D.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef GraphicsTypes3D_h
diff --git a/Source/core/platform/graphics/Image.h b/Source/core/platform/graphics/Image.h
index 0db90f3..219a4ce 100644
--- a/Source/core/platform/graphics/Image.h
+++ b/Source/core/platform/graphics/Image.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Image_h
@@ -62,13 +62,13 @@
 
     static PassRefPtr<Image> create(ImageObserver* = 0);
     static PassRefPtr<Image> loadPlatformResource(const char* name);
-    static bool supportsType(const String&); 
+    static bool supportsType(const String&);
 
     virtual bool isSVGImage() const { return false; }
     virtual bool isBitmapImage() const { return false; }
     virtual bool currentFrameKnownToBeOpaque() = 0;
 
-    // Derived classes should override this if they can assure that 
+    // Derived classes should override this if they can assure that
     // the image contains only resources from its own security origin.
     virtual bool hasSingleSecurityOrigin() const { return false; }
 
diff --git a/Source/core/platform/graphics/ImageBuffer.h b/Source/core/platform/graphics/ImageBuffer.h
index bbbb183..bb46890 100644
--- a/Source/core/platform/graphics/ImageBuffer.h
+++ b/Source/core/platform/graphics/ImageBuffer.h
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ImageBuffer_h
diff --git a/Source/core/platform/graphics/ImageObserver.h b/Source/core/platform/graphics/ImageObserver.h
index 8b693d9..5db6a9e 100644
--- a/Source/core/platform/graphics/ImageObserver.h
+++ b/Source/core/platform/graphics/ImageObserver.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ImageObserver_h
diff --git a/Source/core/platform/graphics/ImageSource.h b/Source/core/platform/graphics/ImageSource.h
index 32f523c..8ff82d1 100644
--- a/Source/core/platform/graphics/ImageSource.h
+++ b/Source/core/platform/graphics/ImageSource.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ImageSource_h
diff --git a/Source/core/platform/graphics/InbandTextTrackPrivateClient.h b/Source/core/platform/graphics/InbandTextTrackPrivateClient.h
index b9da62e..4473c8a 100644
--- a/Source/core/platform/graphics/InbandTextTrackPrivateClient.h
+++ b/Source/core/platform/graphics/InbandTextTrackPrivateClient.h
@@ -114,7 +114,7 @@
 class InbandTextTrackPrivateClient {
 public:
     virtual ~InbandTextTrackPrivateClient() { }
-    
+
     virtual void addWebVTTCue(InbandTextTrackPrivate*, double /*start*/, double /*end*/, const String& /*id*/, const String& /*content*/, const String& /*settings*/) = 0;
     virtual void addGenericCue(InbandTextTrackPrivate*, GenericCueData*) = 0;
 };
diff --git a/Source/core/platform/graphics/IntPoint.h b/Source/core/platform/graphics/IntPoint.h
index d230aa6..778016d 100644
--- a/Source/core/platform/graphics/IntPoint.h
+++ b/Source/core/platform/graphics/IntPoint.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef IntPoint_h
@@ -56,7 +56,7 @@
     void setX(int x) { m_x = x; }
     void setY(int y) { m_y = y; }
 
-    void move(const IntSize& s) { move(s.width(), s.height()); } 
+    void move(const IntSize& s) { move(s.width(), s.height()); }
     void moveBy(const IntPoint& offset) { move(offset.x(), offset.y()); }
     void move(int dx, int dy) { m_x += dx; m_y += dy; }
     void scale(float sx, float sy)
@@ -64,7 +64,7 @@
         m_x = lroundf(static_cast<float>(m_x * sx));
         m_y = lroundf(static_cast<float>(m_y * sy));
     }
-    
+
     IntPoint expandedTo(const IntPoint& other) const
     {
         return IntPoint(m_x > other.m_x ? m_x : other.m_x,
diff --git a/Source/core/platform/graphics/IntRect.h b/Source/core/platform/graphics/IntRect.h
index e2380c5..22ea0d7 100644
--- a/Source/core/platform/graphics/IntRect.h
+++ b/Source/core/platform/graphics/IntRect.h
@@ -84,9 +84,9 @@
     // center point.
     IntPoint center() const { return IntPoint(x() + width() / 2, y() + height() / 2); }
 
-    void move(const IntSize& size) { m_location += size; } 
+    void move(const IntSize& size) { m_location += size; }
     void moveBy(const IntPoint& offset) { m_location.move(offset.x(), offset.y()); }
-    void move(int dx, int dy) { m_location.move(dx, dy); } 
+    void move(int dx, int dy) { m_location.move(dx, dy); }
 
     void expand(const IntSize& size) { m_size += size; }
     void expand(int dw, int dh) { m_size.expand(dw, dh); }
diff --git a/Source/core/platform/graphics/IntSize.h b/Source/core/platform/graphics/IntSize.h
index ba6e3cf..7f97f9c 100644
--- a/Source/core/platform/graphics/IntSize.h
+++ b/Source/core/platform/graphics/IntSize.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef IntSize_h
@@ -45,7 +45,7 @@
 public:
     IntSize() : m_width(0), m_height(0) { }
     IntSize(int width, int height) : m_width(width), m_height(height) { }
-    
+
     int width() const { return m_width; }
     int height() const { return m_height; }
 
@@ -56,7 +56,7 @@
     bool isZero() const { return !m_width && !m_height; }
 
     float aspectRatio() const { return static_cast<float>(m_width) / static_cast<float>(m_height); }
-    
+
     void expand(int width, int height)
     {
         m_width += width;
@@ -68,7 +68,7 @@
         m_width = static_cast<int>(static_cast<float>(m_width) * widthScale);
         m_height = static_cast<int>(static_cast<float>(m_height) * heightScale);
     }
-    
+
     void scale(float scale)
     {
         this->scale(scale, scale);
diff --git a/Source/core/platform/graphics/LayoutPoint.h b/Source/core/platform/graphics/LayoutPoint.h
index 299a697..e5de27c 100644
--- a/Source/core/platform/graphics/LayoutPoint.h
+++ b/Source/core/platform/graphics/LayoutPoint.h
@@ -53,7 +53,7 @@
     void setX(LayoutUnit x) { m_x = x; }
     void setY(LayoutUnit y) { m_y = y; }
 
-    void move(const LayoutSize& s) { move(s.width(), s.height()); } 
+    void move(const LayoutSize& s) { move(s.width(), s.height()); }
     void moveBy(const LayoutPoint& offset) { move(offset.x(), offset.y()); }
     void move(LayoutUnit dx, LayoutUnit dy) { m_x += dx; m_y += dy; }
     void scale(float sx, float sy)
@@ -61,7 +61,7 @@
         m_x *= sx;
         m_y *= sy;
     }
-    
+
     LayoutPoint expandedTo(const LayoutPoint& other) const
     {
         return LayoutPoint(std::max(m_x, other.m_x), std::max(m_y, other.m_y));
diff --git a/Source/core/platform/graphics/LayoutRect.h b/Source/core/platform/graphics/LayoutRect.h
index a9a5a4d..2133977 100644
--- a/Source/core/platform/graphics/LayoutRect.h
+++ b/Source/core/platform/graphics/LayoutRect.h
@@ -52,7 +52,7 @@
     LayoutRect(const IntRect& rect) : m_location(rect.location()), m_size(rect.size()) { }
 
     explicit LayoutRect(const FloatRect&); // don't do this implicitly since it's lossy
-        
+
     LayoutPoint location() const { return m_location; }
     LayoutSize size() const { return m_size; }
 
@@ -87,9 +87,9 @@
     // center point.
     LayoutPoint center() const { return LayoutPoint(x() + width() / 2, y() + height() / 2); }
 
-    void move(const LayoutSize& size) { m_location += size; } 
+    void move(const LayoutSize& size) { m_location += size; }
     void moveBy(const LayoutPoint& offset) { m_location.move(offset.x(), offset.y()); }
-    void move(LayoutUnit dx, LayoutUnit dy) { m_location.move(dx, dy); } 
+    void move(LayoutUnit dx, LayoutUnit dy) { m_location.move(dx, dy); }
 
     void expand(const LayoutSize& size) { m_size += size; }
     void expand(const LayoutBoxExtent& box)
@@ -133,7 +133,7 @@
     LayoutPoint maxXMinYCorner() const { return LayoutPoint(m_location.x() + m_size.width(), m_location.y()); } // typically topRight
     LayoutPoint minXMaxYCorner() const { return LayoutPoint(m_location.x(), m_location.y() + m_size.height()); } // typically bottomLeft
     LayoutPoint maxXMaxYCorner() const { return LayoutPoint(m_location.x() + m_size.width(), m_location.y() + m_size.height()); } // typically bottomRight
-    
+
     bool intersects(const LayoutRect&) const;
     bool contains(const LayoutRect&) const;
 
diff --git a/Source/core/platform/graphics/LayoutSize.h b/Source/core/platform/graphics/LayoutSize.h
index 6675407..3bce732 100644
--- a/Source/core/platform/graphics/LayoutSize.h
+++ b/Source/core/platform/graphics/LayoutSize.h
@@ -46,7 +46,7 @@
     LayoutSize(LayoutUnit width, LayoutUnit height) : m_width(width), m_height(height) { }
 
     explicit LayoutSize(const FloatSize& size) : m_width(size.width()), m_height(size.height()) { }
-    
+
     LayoutUnit width() const { return m_width; }
     LayoutUnit height() const { return m_height; }
 
@@ -57,19 +57,19 @@
     bool isZero() const { return !m_width && !m_height; }
 
     float aspectRatio() const { return static_cast<float>(m_width) / static_cast<float>(m_height); }
-    
+
     void expand(LayoutUnit width, LayoutUnit height)
     {
         m_width += width;
         m_height += height;
     }
-    
+
     void shrink(LayoutUnit width, LayoutUnit height)
     {
         m_width -= width;
         m_height -= height;
     }
-    
+
     void scale(float scale)
     {
         m_width *= scale;
@@ -81,7 +81,7 @@
         m_width *= widthScale;
         m_height *= heightScale;
     }
-    
+
     LayoutSize expandedTo(const LayoutSize& other) const
     {
         return LayoutSize(m_width > other.m_width ? m_width : other.m_width,
@@ -98,7 +98,7 @@
     {
         *this = expandedTo(LayoutSize());
     }
-    
+
     void clampToMinimumSize(const LayoutSize& minimumSize)
     {
         if (m_width < minimumSize.width())
diff --git a/Source/core/platform/graphics/MediaPlayer.cpp b/Source/core/platform/graphics/MediaPlayer.cpp
index 19bae5c..5d5a379 100644
--- a/Source/core/platform/graphics/MediaPlayer.cpp
+++ b/Source/core/platform/graphics/MediaPlayer.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/MediaPlayer.h b/Source/core/platform/graphics/MediaPlayer.h
index 1e528b0..268cd97 100644
--- a/Source/core/platform/graphics/MediaPlayer.h
+++ b/Source/core/platform/graphics/MediaPlayer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MediaPlayer_h
@@ -84,7 +84,7 @@
 #if ENABLE(ENCRYPTED_MEDIA_V2)
     virtual bool mediaPlayerKeyNeeded(Uint8Array*) = 0;
 #endif
-    
+
     virtual CORSMode mediaPlayerCORSMode() const = 0;
 
     virtual void mediaPlayerScheduleLayerUpdate() = 0;
diff --git a/Source/core/platform/graphics/Path.cpp b/Source/core/platform/graphics/Path.cpp
index 015788d..b07d659 100644
--- a/Source/core/platform/graphics/Path.cpp
+++ b/Source/core/platform/graphics/Path.cpp
@@ -23,7 +23,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -337,7 +337,7 @@
     FloatSize halfSize(rect.width() / 2, rect.height() / 2);
 
     // Apply the SVG corner radius constraints, per the rect section of the SVG shapes spec: if
-    // one of rx,ry is negative, then the other corner radius value is used. If both values are 
+    // one of rx,ry is negative, then the other corner radius value is used. If both values are
     // negative then rx = ry = 0. If rx is greater than half of the width of the rectangle
     // then set rx to half of the width; ry is handled similarly.
 
diff --git a/Source/core/platform/graphics/Path.h b/Source/core/platform/graphics/Path.h
index a804036..93f6230 100644
--- a/Source/core/platform/graphics/Path.h
+++ b/Source/core/platform/graphics/Path.h
@@ -23,7 +23,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Path_h
diff --git a/Source/core/platform/graphics/PathTraversalState.cpp b/Source/core/platform/graphics/PathTraversalState.cpp
index 5a56f84..532fbae 100644
--- a/Source/core/platform/graphics/PathTraversalState.cpp
+++ b/Source/core/platform/graphics/PathTraversalState.cpp
@@ -45,17 +45,17 @@
         , end(e)
     {
     }
-    
+
     float approximateDistance() const
     {
         return distanceLine(start, control) + distanceLine(control, end);
     }
-    
+
     void split(QuadraticBezier& left, QuadraticBezier& right) const
     {
         left.control = midPoint(start, control);
         right.control = midPoint(control, end);
-        
+
         FloatPoint leftControlToRightControl = midPoint(left.control, right.control);
         left.end = leftControlToRightControl;
         right.start = leftControlToRightControl;
@@ -63,7 +63,7 @@
         left.start = start;
         right.end = end;
     }
-    
+
     FloatPoint start;
     FloatPoint control;
     FloatPoint end;
@@ -78,29 +78,29 @@
         , end(e)
     {
     }
-    
+
     float approximateDistance() const
     {
         return distanceLine(start, control1) + distanceLine(control1, control2) + distanceLine(control2, end);
     }
-        
+
     void split(CubicBezier& left, CubicBezier& right) const
-    {    
+    {
         FloatPoint startToControl1 = midPoint(control1, control2);
-        
+
         left.start = start;
         left.control1 = midPoint(start, control1);
         left.control2 = midPoint(left.control1, startToControl1);
-        
+
         right.control2 = midPoint(control2, end);
         right.control1 = midPoint(right.control2, startToControl1);
         right.end = end;
-        
+
         FloatPoint leftControl2ToRightControl1 = midPoint(left.control2, right.control1);
         left.end = leftControl2ToRightControl1;
         right.start = leftControl2ToRightControl1;
     }
-    
+
     FloatPoint start;
     FloatPoint control1;
     FloatPoint control2;
@@ -143,7 +143,7 @@
             curveStack.removeLast();
         }
     } while (!curveStack.isEmpty());
-    
+
     return totalLength;
 }
 
@@ -184,7 +184,7 @@
     m_control1 = newControl;
     m_control2 = newEnd;
 
-    if (m_action != TraversalPointAtLength && m_action != TraversalNormalAngleAtLength) 
+    if (m_action != TraversalPointAtLength && m_action != TraversalNormalAngleAtLength)
         m_current = newEnd;
 
     return distance;
@@ -196,8 +196,8 @@
 
     m_control1 = newEnd;
     m_control2 = newControl2;
- 
-    if (m_action != TraversalPointAtLength && m_action != TraversalNormalAngleAtLength) 
+
+    if (m_action != TraversalPointAtLength && m_action != TraversalNormalAngleAtLength)
         m_current = newEnd;
 
     return distance;
@@ -207,7 +207,7 @@
 {
     if (m_action == TraversalSegmentAtLength && m_totalLength >= m_desiredLength)
         m_success = true;
-        
+
     if ((m_action == TraversalPointAtLength || m_action == TraversalNormalAngleAtLength) && m_totalLength >= m_desiredLength) {
         float slope = FloatPoint(m_current - m_previous).slopeAngleRadians();
         if (m_action == TraversalPointAtLength) {
diff --git a/Source/core/platform/graphics/PathTraversalState.h b/Source/core/platform/graphics/PathTraversalState.h
index 95656e1..19498be 100644
--- a/Source/core/platform/graphics/PathTraversalState.h
+++ b/Source/core/platform/graphics/PathTraversalState.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PathTraversalState_h
@@ -46,7 +46,7 @@
     float lineTo(const FloatPoint&);
     float quadraticBezierTo(const FloatPoint& newControl, const FloatPoint& newEnd);
     float cubicBezierTo(const FloatPoint& newControl1, const FloatPoint& newControl2, const FloatPoint& newEnd);
-    
+
     void processSegment();
 
 public:
@@ -65,7 +65,7 @@
     // For normal calculations
     FloatPoint m_previous;
     float m_normalAngle; // degrees
-};    
+};
 }
 
 #endif
diff --git a/Source/core/platform/graphics/Pattern.cpp b/Source/core/platform/graphics/Pattern.cpp
index 7e12c81..35b6267 100644
--- a/Source/core/platform/graphics/Pattern.cpp
+++ b/Source/core/platform/graphics/Pattern.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/Pattern.h b/Source/core/platform/graphics/Pattern.h
index cbede45..84b441c 100644
--- a/Source/core/platform/graphics/Pattern.h
+++ b/Source/core/platform/graphics/Pattern.h
@@ -23,7 +23,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Pattern_h
diff --git a/Source/core/platform/graphics/Region.cpp b/Source/core/platform/graphics/Region.cpp
index 670feb1..148e838 100644
--- a/Source/core/platform/graphics/Region.cpp
+++ b/Source/core/platform/graphics/Region.cpp
@@ -262,7 +262,7 @@
 {
     if (canCoalesce(begin, end))
         return;
-  
+
     appendSpan(y);
     m_segments.appendRange(begin, end);
 }
@@ -455,7 +455,7 @@
 
             if (flag == Operation::opCode || oldFlag == Operation::opCode)
                 segments.append(x);
-            
+
             oldFlag = flag;
         }
 
@@ -486,7 +486,7 @@
             result = shape2;
             return true;
         }
-        
+
         return false;
     }
 
@@ -508,9 +508,9 @@
     {
         return false;
     }
-    
+
     static const int opCode = 3;
-    
+
     static const bool shouldAddRemainingSegmentsFromSpan1 = false;
     static const bool shouldAddRemainingSegmentsFromSpan2 = false;
     static const bool shouldAddRemainingSpansFromShape1 = false;
@@ -527,9 +527,9 @@
     {
         return false;
     }
-    
+
     static const int opCode = 1;
-    
+
     static const bool shouldAddRemainingSegmentsFromSpan1 = true;
     static const bool shouldAddRemainingSegmentsFromSpan2 = false;
     static const bool shouldAddRemainingSpansFromShape1 = true;
diff --git a/Source/core/platform/graphics/Region.h b/Source/core/platform/graphics/Region.h
index 8658729..9e8406c 100644
--- a/Source/core/platform/graphics/Region.h
+++ b/Source/core/platform/graphics/Region.h
@@ -85,7 +85,7 @@
         typedef const Span* SpanIterator;
         SpanIterator spans_begin() const;
         SpanIterator spans_end() const;
-        
+
         typedef const int* SegmentIterator;
         SegmentIterator segments_begin(SpanIterator) const;
         SegmentIterator segments_end(SpanIterator) const;
@@ -111,7 +111,7 @@
         struct UnionOperation;
         struct IntersectOperation;
         struct SubtractOperation;
-        
+
         template<typename Operation>
         static Shape shapeOperation(const Shape& shape1, const Shape& shape2);
 
@@ -143,7 +143,7 @@
 
     return result;
 }
-    
+
 static inline Region subtract(const Region& a, const Region& b)
 {
     Region result(a);
diff --git a/Source/core/platform/graphics/RoundedRect.cpp b/Source/core/platform/graphics/RoundedRect.cpp
index 124af84..8eab02d 100644
--- a/Source/core/platform/graphics/RoundedRect.cpp
+++ b/Source/core/platform/graphics/RoundedRect.cpp
@@ -123,7 +123,7 @@
             m_topRight = IntSize();
         m_topLeft = IntSize();
     }
-        
+
     if (excludeLogicalRightEdge) {
         if (isHorizontal)
             m_topRight = IntSize();
diff --git a/Source/core/platform/graphics/SegmentedFontData.cpp b/Source/core/platform/graphics/SegmentedFontData.cpp
index d1815c1..0272081 100644
--- a/Source/core/platform/graphics/SegmentedFontData.cpp
+++ b/Source/core/platform/graphics/SegmentedFontData.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/SegmentedFontData.h b/Source/core/platform/graphics/SegmentedFontData.h
index 2df1256..c57fca9 100644
--- a/Source/core/platform/graphics/SegmentedFontData.h
+++ b/Source/core/platform/graphics/SegmentedFontData.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SegmentedFontData_h
diff --git a/Source/core/platform/graphics/ShadowBlur.cpp b/Source/core/platform/graphics/ShadowBlur.cpp
index 9f2ee07..4028b6d 100644
--- a/Source/core/platform/graphics/ShadowBlur.cpp
+++ b/Source/core/platform/graphics/ShadowBlur.cpp
@@ -23,7 +23,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -128,7 +128,7 @@
     // Two stages: horizontal and vertical
     for (int pass = 0; pass < 2; ++pass) {
         unsigned char* pixels = imageData;
-        
+
         if (!pass && !m_blurRadius.width())
             final = 0; // Do no work if horizonal blur is zero.
 
@@ -166,13 +166,13 @@
                     *ptr = (sum * invCount) >> blurSumShift;
                     sum += ((ofs < dim) ? *next : alpha2) - alpha1;
                 }
-                
+
                 prev = pixels + channels[step];
                 for (; ofs < dim; ptr += stride, prev += stride, next += stride, ++i, ++ofs) {
                     *ptr = (sum * invCount) >> blurSumShift;
                     sum += (*next) - (*prev);
                 }
-                
+
                 for (; i < dim; ptr += stride, prev += stride, ++i) {
                     *ptr = (sum * invCount) >> blurSumShift;
                     sum += alpha2 - (*prev);
diff --git a/Source/core/platform/graphics/ShadowBlur.h b/Source/core/platform/graphics/ShadowBlur.h
index 2dada77..eb94a05 100644
--- a/Source/core/platform/graphics/ShadowBlur.h
+++ b/Source/core/platform/graphics/ShadowBlur.h
@@ -23,7 +23,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ShadowBlur_h
diff --git a/Source/core/platform/graphics/SimpleFontData.cpp b/Source/core/platform/graphics/SimpleFontData.cpp
index 8c6bc00..649a00d 100644
--- a/Source/core/platform/graphics/SimpleFontData.cpp
+++ b/Source/core/platform/graphics/SimpleFontData.cpp
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -123,7 +123,7 @@
     m_zeroWidthSpaceGlyph = glyphPageZero->glyphDataForCharacter(0).glyph;
 
     // Nasty hack to determine if we should round or ceil space widths.
-    // If the font is monospace or fake monospace we ceil to ensure that 
+    // If the font is monospace or fake monospace we ceil to ensure that
     // every character and the space are the same width.  Otherwise we round.
     m_spaceGlyph = glyphPageZero->glyphDataForCharacter(' ').glyph;
     float width = widthForGlyph(m_spaceGlyph);
diff --git a/Source/core/platform/graphics/SimpleFontData.h b/Source/core/platform/graphics/SimpleFontData.h
index a1fd20b..8b15f55 100644
--- a/Source/core/platform/graphics/SimpleFontData.h
+++ b/Source/core/platform/graphics/SimpleFontData.h
@@ -118,7 +118,7 @@
     FontMetrics& fontMetrics() { return m_fontMetrics; }
     const FontMetrics& fontMetrics() const { return m_fontMetrics; }
     float sizePerUnit() const { return platformData().size() / (fontMetrics().unitsPerEm() ? fontMetrics().unitsPerEm() : 1); }
-    
+
     float maxCharWidth() const { return m_maxCharWidth; }
     void setMaxCharWidth(float maxCharWidth) { m_maxCharWidth = maxCharWidth; }
 
@@ -199,7 +199,7 @@
     void platformGlyphInit();
     void platformCharWidthInit();
     void platformDestroy();
-    
+
     void initCharWidths();
 
     PassRefPtr<SimpleFontData> createScaledFontData(const FontDescription&, float scaleFactor) const;
@@ -208,7 +208,7 @@
     FontMetrics m_fontMetrics;
     float m_maxCharWidth;
     float m_avgCharWidth;
-    
+
     FontPlatformData m_platformData;
     OwnPtr<AdditionalFontData> m_fontData;
 
@@ -218,14 +218,14 @@
     bool m_treatAsFixedPitch;
     bool m_isCustomFont;  // Whether or not we are custom font loaded via @font-face
     bool m_isLoading; // Whether or not this custom font is still in the act of loading.
-    
+
     bool m_isTextOrientationFallback;
     bool m_isBrokenIdeographFallback;
 #if ENABLE(OPENTYPE_VERTICAL)
     RefPtr<OpenTypeVerticalData> m_verticalData;
 #endif
     bool m_hasVerticalGlyphs;
-    
+
     Glyph m_spaceGlyph;
     float m_spaceWidth;
     Glyph m_zeroGlyph;
@@ -248,7 +248,7 @@
 #if OS(DARWIN)
         mutable RetainPtr<CFMutableDictionaryRef> compositeFontReferences;
 #endif
-        
+
     private:
         DerivedFontData(bool custom)
             : forCustomFont(custom)
diff --git a/Source/core/platform/graphics/StringTruncator.cpp b/Source/core/platform/graphics/StringTruncator.cpp
index 4bc39ef..650db60 100644
--- a/Source/core/platform/graphics/StringTruncator.cpp
+++ b/Source/core/platform/graphics/StringTruncator.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -61,19 +61,19 @@
 {
     ASSERT(keepCount < length);
     ASSERT(keepCount < STRING_BUFFER_SIZE);
-    
+
     unsigned omitStart = (keepCount + 1) / 2;
     NonSharedCharacterBreakIterator it(string);
     unsigned omitEnd = boundedTextBreakFollowing(it, omitStart + (length - keepCount) - 1, length);
     omitStart = textBreakAtOrPreceding(it, omitStart);
-    
+
     unsigned truncatedLength = omitStart + 1 + (length - omitEnd);
     ASSERT(truncatedLength <= length);
 
     string.copyTo(buffer, 0, omitStart);
     buffer[omitStart] = horizontalEllipsis;
     string.copyTo(&buffer[omitStart + 1], omitEnd, length - omitEnd);
-    
+
     return truncatedLength;
 }
 
@@ -81,14 +81,14 @@
 {
     ASSERT(keepCount < length);
     ASSERT(keepCount < STRING_BUFFER_SIZE);
-    
+
     NonSharedCharacterBreakIterator it(string);
     unsigned keepLength = textBreakAtOrPreceding(it, keepCount);
     unsigned truncatedLength = keepLength + 1;
 
     string.copyTo(buffer, 0, keepLength);
     buffer[keepLength] = horizontalEllipsis;
-    
+
     return truncatedLength;
 }
 
@@ -112,11 +112,11 @@
 {
     if (string.isEmpty())
         return string;
-    
+
     ASSERT(maxWidth >= 0);
-    
+
     float currentEllipsisWidth = stringWidth(font, &horizontalEllipsis, 1, disableRoundingHacks);
-    
+
     UChar stringBuffer[STRING_BUFFER_SIZE];
     unsigned truncatedLength;
     unsigned keepCount;
@@ -137,10 +137,10 @@
 
     unsigned keepCountForLargestKnownToFit = 0;
     float widthForLargestKnownToFit = currentEllipsisWidth;
-    
+
     unsigned keepCountForSmallestKnownToNotFit = keepCount;
     float widthForSmallestKnownToNotFit = width;
-    
+
     if (currentEllipsisWidth >= maxWidth) {
         keepCountForLargestKnownToFit = 1;
         keepCountForSmallestKnownToNotFit = 2;
@@ -153,18 +153,18 @@
         float ratio = (keepCountForSmallestKnownToNotFit - keepCountForLargestKnownToFit)
             / (widthForSmallestKnownToNotFit - widthForLargestKnownToFit);
         keepCount = static_cast<unsigned>(maxWidth * ratio);
-        
+
         if (keepCount <= keepCountForLargestKnownToFit) {
             keepCount = keepCountForLargestKnownToFit + 1;
         } else if (keepCount >= keepCountForSmallestKnownToNotFit) {
             keepCount = keepCountForSmallestKnownToNotFit - 1;
         }
-        
+
         ASSERT(keepCount < length);
         ASSERT(keepCount > 0);
         ASSERT(keepCount < keepCountForSmallestKnownToNotFit);
         ASSERT(keepCount > keepCountForLargestKnownToFit);
-        
+
         truncatedLength = truncateToBuffer(string, length, keepCount, stringBuffer);
 
         width = stringWidth(font, stringBuffer, truncatedLength, disableRoundingHacks);
@@ -176,16 +176,16 @@
             widthForSmallestKnownToNotFit = width;
         }
     }
-    
+
     if (keepCountForLargestKnownToFit == 0) {
         keepCountForLargestKnownToFit = 1;
     }
-    
+
     if (keepCount != keepCountForLargestKnownToFit) {
         keepCount = keepCountForLargestKnownToFit;
         truncatedLength = truncateToBuffer(string, length, keepCount, stringBuffer);
     }
-    
+
     return String(stringBuffer, truncatedLength);
 }
 
diff --git a/Source/core/platform/graphics/StringTruncator.h b/Source/core/platform/graphics/StringTruncator.h
index 8e81a54..093be30 100644
--- a/Source/core/platform/graphics/StringTruncator.h
+++ b/Source/core/platform/graphics/StringTruncator.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -32,7 +32,7 @@
 #include "wtf/Forward.h"
 
 namespace WebCore {
-    
+
 class Font;
 
 class StringTruncator {
@@ -43,7 +43,7 @@
     static String rightTruncate(const String&, float maxWidth, const Font&, EnableRoundingHacksOrNot = DisableRoundingHacks);
     static float width(const String&, const Font&, EnableRoundingHacksOrNot = DisableRoundingHacks);
 };
-    
+
 } // namespace WebCore
 
 #endif // !defined(StringTruncator_h)
diff --git a/Source/core/platform/graphics/SurrogatePairAwareTextIterator.cpp b/Source/core/platform/graphics/SurrogatePairAwareTextIterator.cpp
index 8d4105d..3952418 100644
--- a/Source/core/platform/graphics/SurrogatePairAwareTextIterator.cpp
+++ b/Source/core/platform/graphics/SurrogatePairAwareTextIterator.cpp
@@ -83,7 +83,7 @@
     if (combiningClass(m_characters[1]) == hiraganaKatakanaVoicingMarksCombiningClass) {
         // Normalize into composed form using 3.2 rules.
         UChar normalizedCharacters[2] = { 0, 0 };
-        UErrorCode uStatus = U_ZERO_ERROR;  
+        UErrorCode uStatus = U_ZERO_ERROR;
         int32_t resultLength = unorm_normalize(m_characters, 2, UNORM_NFC, UNORM_UNICODE_3_2, &normalizedCharacters[0], 2, &uStatus);
         if (resultLength == 1 && !uStatus)
             return normalizedCharacters[0];
diff --git a/Source/core/platform/graphics/TextRenderingMode.h b/Source/core/platform/graphics/TextRenderingMode.h
index d4d64ee..6c36b3a 100644
--- a/Source/core/platform/graphics/TextRenderingMode.h
+++ b/Source/core/platform/graphics/TextRenderingMode.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextRenderingMode_h
@@ -29,7 +29,7 @@
 namespace WebCore {
 
 enum TextRenderingMode { AutoTextRendering, OptimizeSpeed, OptimizeLegibility, GeometricPrecision };
-    
+
 } // namespace WebCore
 
 #endif // TextRenderingMode_h
diff --git a/Source/core/platform/graphics/TextRun.h b/Source/core/platform/graphics/TextRun.h
index f2e8482..3f2836e 100644
--- a/Source/core/platform/graphics/TextRun.h
+++ b/Source/core/platform/graphics/TextRun.h
@@ -175,7 +175,7 @@
 
     const LChar* characters8() const { ASSERT(is8Bit()); return m_data.characters8; }
     const UChar* characters16() const { ASSERT(!is8Bit()); return m_data.characters16; }
-    
+
     bool is8Bit() const { return m_is8Bit; }
     int length() const { return m_len; }
     int charactersLength() const { return m_charactersLength; }
@@ -240,7 +240,7 @@
     // m_xpos is the x position relative to the left start of the text line, not relative to the left
     // start of the containing block. In the case of right alignment or center alignment, left start of
     // the text line is not the same as left start of the containing block.
-    float m_xpos;  
+    float m_xpos;
     float m_horizontalGlyphStretch;
 
     float m_expansion;
diff --git a/Source/core/platform/graphics/UnitBezier.h b/Source/core/platform/graphics/UnitBezier.h
index 5321dd4..f940dc3 100644
--- a/Source/core/platform/graphics/UnitBezier.h
+++ b/Source/core/platform/graphics/UnitBezier.h
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #ifndef UnitBezier_h
 #define UnitBezier_h
 
diff --git a/Source/core/platform/graphics/WidthCache.h b/Source/core/platform/graphics/WidthCache.h
index 52b6f78..65d72f4 100644
--- a/Source/core/platform/graphics/WidthCache.h
+++ b/Source/core/platform/graphics/WidthCache.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WidthCache_h
diff --git a/Source/core/platform/graphics/WindRule.h b/Source/core/platform/graphics/WindRule.h
index 8eb7749..d4f123e 100644
--- a/Source/core/platform/graphics/WindRule.h
+++ b/Source/core/platform/graphics/WindRule.h
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WindRule_h
diff --git a/Source/core/platform/graphics/cg/FloatPointCG.cpp b/Source/core/platform/graphics/cg/FloatPointCG.cpp
index 61b7351..a45fbd8 100644
--- a/Source/core/platform/graphics/cg/FloatPointCG.cpp
+++ b/Source/core/platform/graphics/cg/FloatPointCG.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/cg/FloatSizeCG.cpp b/Source/core/platform/graphics/cg/FloatSizeCG.cpp
index bba408b..0c19837 100644
--- a/Source/core/platform/graphics/cg/FloatSizeCG.cpp
+++ b/Source/core/platform/graphics/cg/FloatSizeCG.cpp
@@ -21,9 +21,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #include "config.h"
 #include "core/platform/graphics/FloatSize.h"
 
diff --git a/Source/core/platform/graphics/cg/GraphicsContextCG.h b/Source/core/platform/graphics/cg/GraphicsContextCG.h
index d956b3d..5f956d2 100644
--- a/Source/core/platform/graphics/cg/GraphicsContextCG.h
+++ b/Source/core/platform/graphics/cg/GraphicsContextCG.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef GraphicsContextCG_h
diff --git a/Source/core/platform/graphics/cg/IntPointCG.cpp b/Source/core/platform/graphics/cg/IntPointCG.cpp
index bd73949..aca2d87 100644
--- a/Source/core/platform/graphics/cg/IntPointCG.cpp
+++ b/Source/core/platform/graphics/cg/IntPointCG.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/cg/IntRectCG.cpp b/Source/core/platform/graphics/cg/IntRectCG.cpp
index 565d539..0044cfa 100644
--- a/Source/core/platform/graphics/cg/IntRectCG.cpp
+++ b/Source/core/platform/graphics/cg/IntRectCG.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/cg/IntSizeCG.cpp b/Source/core/platform/graphics/cg/IntSizeCG.cpp
index 7f54420..1a8a548 100644
--- a/Source/core/platform/graphics/cg/IntSizeCG.cpp
+++ b/Source/core/platform/graphics/cg/IntSizeCG.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/chromium/Canvas2DLayerManager.cpp b/Source/core/platform/graphics/chromium/Canvas2DLayerManager.cpp
index 6b1f7ce..ed38bd3 100644
--- a/Source/core/platform/graphics/chromium/Canvas2DLayerManager.cpp
+++ b/Source/core/platform/graphics/chromium/Canvas2DLayerManager.cpp
@@ -114,7 +114,7 @@
     if (!isInList(layer))
         addLayerToList(layer);
     else {
-        ASSERT((intptr_t)m_bytesAllocated + deltaBytes >= 0); 
+        ASSERT((intptr_t)m_bytesAllocated + deltaBytes >= 0);
         m_bytesAllocated = (intptr_t)m_bytesAllocated + deltaBytes;
     }
     if (deltaBytes > 0)
@@ -127,7 +127,7 @@
         removeLayerFromList(layer);
 }
 
-void Canvas2DLayerManager::freeMemoryIfNecessary() 
+void Canvas2DLayerManager::freeMemoryIfNecessary()
 {
     if (m_bytesAllocated > m_maxBytesAllocated) {
         // Pass 1: Free memory from caches
diff --git a/Source/core/platform/graphics/chromium/Canvas2DLayerManager.h b/Source/core/platform/graphics/chromium/Canvas2DLayerManager.h
index d111bc3..3379cec 100644
--- a/Source/core/platform/graphics/chromium/Canvas2DLayerManager.h
+++ b/Source/core/platform/graphics/chromium/Canvas2DLayerManager.h
@@ -9,7 +9,7 @@
 2.  Redistributions in binary form must reproduce the above copyright
     notice, this list of conditions and the following disclaimer in the
     documentation and/or other materials provided with the distribution.
-    
+
 THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
diff --git a/Source/core/platform/graphics/chromium/CrossProcessFontLoading.h b/Source/core/platform/graphics/chromium/CrossProcessFontLoading.h
index e8deeb1..782c837 100644
--- a/Source/core/platform/graphics/chromium/CrossProcessFontLoading.h
+++ b/Source/core/platform/graphics/chromium/CrossProcessFontLoading.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2010 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -74,7 +74,7 @@
     // Use to create a new object, see docs on constructor below.
     static PassRefPtr<MemoryActivatedFont> create(uint32_t fontID, NSFont*, CGFontRef);
     ~MemoryActivatedFont();
-    
+
     // Get cached CGFontRef corresponding to the in-memory font.
     CGFontRef cgFont() { return m_cgFont.get(); }
 
diff --git a/Source/core/platform/graphics/chromium/FontChromiumWin.cpp b/Source/core/platform/graphics/chromium/FontChromiumWin.cpp
index 61cc527..814ff39 100644
--- a/Source/core/platform/graphics/chromium/FontChromiumWin.cpp
+++ b/Source/core/platform/graphics/chromium/FontChromiumWin.cpp
@@ -1,11 +1,11 @@
 /*
  * Copyright (C) 2006, 2007 Apple Computer, Inc.
  * Copyright (c) 2006, 2007, 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -15,7 +15,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -138,7 +138,7 @@
             advances[i] = lroundf(horizontalOffset) - lastHorizontalOffsetRounded;
             lastHorizontalOffsetRounded += advances[i];
             currentWidth += glyphBuffer.advanceAt(from + glyphIndex);
-            
+
             // Bug 26088 - very large positive or negative runs can fail to
             // render so we clamp the size here. In the specs, negative
             // letter-spacing is implementation-defined, so this should be
@@ -147,7 +147,7 @@
             // -32830, so we give ourselves a little breathing room.
             const int maxNegativeRun = -32768;
             const int maxPositiveRun =  32768;
-            if ((currentWidth + advances[i] < maxNegativeRun) || (currentWidth + advances[i] > maxPositiveRun)) 
+            if ((currentWidth + advances[i] < maxNegativeRun) || (currentWidth + advances[i] > maxPositiveRun))
                 advances[i] = 0;
         }
 
diff --git a/Source/core/platform/graphics/chromium/FontPlatformDataChromiumWin.cpp b/Source/core/platform/graphics/chromium/FontPlatformDataChromiumWin.cpp
index b22bd02..f939e9b 100644
--- a/Source/core/platform/graphics/chromium/FontPlatformDataChromiumWin.cpp
+++ b/Source/core/platform/graphics/chromium/FontPlatformDataChromiumWin.cpp
@@ -1,11 +1,11 @@
 /*
  * Copyright (C) 2006, 2007 Apple Computer, Inc.
  * Copyright (c) 2006, 2007, 2008, 2009, 2012 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -15,7 +15,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -188,7 +188,7 @@
         ScriptFreeCache(&m_scriptCache);
         m_scriptCache = 0;
         m_scriptFontProperties.clear();
-    } 
+    }
     return *this;
 }
 
diff --git a/Source/core/platform/graphics/chromium/FontPlatformDataChromiumWin.h b/Source/core/platform/graphics/chromium/FontPlatformDataChromiumWin.h
index bf3fea4..8a88841 100644
--- a/Source/core/platform/graphics/chromium/FontPlatformDataChromiumWin.h
+++ b/Source/core/platform/graphics/chromium/FontPlatformDataChromiumWin.h
@@ -1,11 +1,11 @@
 /*
  * Copyright (C) 2006, 2007 Apple Computer, Inc.
  * Copyright (c) 2006, 2007, 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -15,7 +15,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -99,7 +99,7 @@
     }
 
     bool operator==(const FontPlatformData& other) const
-    { 
+    {
         return m_font == other.m_font && m_size == other.m_size && m_orientation == other.m_orientation;
     }
 
@@ -142,7 +142,7 @@
         }
 
     private:
-        // The create() function assumes there is already a refcount of one 
+        // The create() function assumes there is already a refcount of one
         // so it can do adoptRef.
         RefCountedHFONT(HFONT hfont) : m_hfont(hfont)
         {
diff --git a/Source/core/platform/graphics/chromium/FontUtilsChromiumWin.cpp b/Source/core/platform/graphics/chromium/FontUtilsChromiumWin.cpp
index 5fbebba..a73198a 100644
--- a/Source/core/platform/graphics/chromium/FontUtilsChromiumWin.cpp
+++ b/Source/core/platform/graphics/chromium/FontUtilsChromiumWin.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2006, 2007, 2008, 2009, 2010, 2012 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -113,7 +113,7 @@
         const UChar** families;
     };
 
-    // Kartika on Vista or earlier lacks the support for Chillu 
+    // Kartika on Vista or earlier lacks the support for Chillu
     // letters added to Unicode 5.1.
     // Try AnjaliOldLipi (a very widely used Malaylalam font with the full
     // Unicode 5.x support) before falling back to Kartika.
@@ -121,7 +121,7 @@
     // Try Khmer OS before Vista fonts because 'Khmer OS' goes along better
     // with Latin and looks better/larger for the same size.
     static const UChar* khmerFonts[] = {L"Khmer OS", L"MoolBoran", L"DaunPenh", L"Code2000", 0};
-    // For the following 6 scripts, two or fonts are listed. The fonts in 
+    // For the following 6 scripts, two or fonts are listed. The fonts in
     // the 1st slot are not available on Windows XP. To support these
     // scripts on XP, listed in the rest of slots are widely used
     // fonts.
@@ -134,7 +134,7 @@
     // http://www.bethmardutho.org/support/meltho/download/index.php
     static const UChar* syriacFonts[] = {L"Estrangelo Edessa", L"Estrangelo Nisibin", L"Code2000", 0};
     // No Myanmar/Burmese font is shipped with Windows, yet. Try a few
-    // widely available/used ones that supports Unicode 5.1 or later. 
+    // widely available/used ones that supports Unicode 5.1 or later.
     static const UChar* myanmarFonts[] = {L"Padauk", L"Parabaik", L"Myanmar3", L"Code2000", 0};
 
     static const ScriptToFontFamilies scriptToFontFamilies[] = {
@@ -153,9 +153,9 @@
     for (size_t i = 0; i < WTF_ARRAY_LENGTH(fontMap); ++i)
         scriptFontMap[fontMap[i].script] = fontMap[i].family;
 
-    // FIXME: Instead of scanning the hard-coded list, we have to 
+    // FIXME: Instead of scanning the hard-coded list, we have to
     // use EnumFont* to 'inspect' fonts to pick up fonts covering scripts
-    // when it's possible (e.g. using OS/2 table). If we do that, this 
+    // when it's possible (e.g. using OS/2 table). If we do that, this
     // had better be pulled out of here.
     for (size_t i = 0; i < WTF_ARRAY_LENGTH(scriptToFontFamilies); ++i) {
         UScriptCode script = scriptToFontFamilies[i].script;
@@ -251,7 +251,7 @@
 
 const WORD kUnsupportedGlyph = 0xffff;
 
-WORD getSpaceGlyph(HFONT hfont) 
+WORD getSpaceGlyph(HFONT hfont)
 {
     HWndDC dc(0);
     HGDIOBJ oldFont = SelectObject(dc, hfont);
diff --git a/Source/core/platform/graphics/chromium/FontUtilsChromiumWin.h b/Source/core/platform/graphics/chromium/FontUtilsChromiumWin.h
index 6a5c649..ef2eea2 100644
--- a/Source/core/platform/graphics/chromium/FontUtilsChromiumWin.h
+++ b/Source/core/platform/graphics/chromium/FontUtilsChromiumWin.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2006, 2007, 2008, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp b/Source/core/platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp
index 36fb53c..cd9eb6b 100644
--- a/Source/core/platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp
+++ b/Source/core/platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, 2012 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -73,9 +73,9 @@
     return getGlyphIndices(font, dc, &space, 1, spaceGlyph, 0);
 }
 
-// Fills |length| glyphs starting at |offset| in a |page| in the Basic 
+// Fills |length| glyphs starting at |offset| in a |page| in the Basic
 // Multilingual Plane (<= U+FFFF). The input buffer size should be the
-// same as |length|. We can use the standard Windows GDI functions here. 
+// same as |length|. We can use the standard Windows GDI functions here.
 // Returns true if any glyphs were found.
 static bool fillBMPGlyphs(unsigned offset,
                           unsigned length,
@@ -240,13 +240,13 @@
 {
     // We have to handle BMP and non-BMP characters differently.
     // FIXME: Add assertions to make sure that buffer is entirely in BMP
-    // or entirely in non-BMP. 
+    // or entirely in non-BMP.
     if (bufferLength == length)
         return fillBMPGlyphs(offset, length, characterBuffer, this, fontData);
 
     if (bufferLength == 2 * length) {
         // A non-BMP input buffer will be twice as long as output glyph buffer
-        // because each character in the non-BMP input buffer will be 
+        // because each character in the non-BMP input buffer will be
         // represented by a surrogate pair (two UChar's).
         return fillNonBMPGlyphs(offset, length, characterBuffer, this, fontData);
     }
diff --git a/Source/core/platform/graphics/chromium/ImageChromium.cpp b/Source/core/platform/graphics/chromium/ImageChromium.cpp
index fafffbd..0466042 100644
--- a/Source/core/platform/graphics/chromium/ImageChromium.cpp
+++ b/Source/core/platform/graphics/chromium/ImageChromium.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008-2010, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/chromium/SimpleFontDataChromiumWin.cpp b/Source/core/platform/graphics/chromium/SimpleFontDataChromiumWin.cpp
index 3907453..07125c2 100644
--- a/Source/core/platform/graphics/chromium/SimpleFontDataChromiumWin.cpp
+++ b/Source/core/platform/graphics/chromium/SimpleFontDataChromiumWin.cpp
@@ -1,11 +1,11 @@
 /*
  * Copyright (C) 2006, 2007 Apple Inc. All Rights Reserved.
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -15,7 +15,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/chromium/TransparencyWin.cpp b/Source/core/platform/graphics/chromium/TransparencyWin.cpp
index 03dc91b..6ac2267 100644
--- a/Source/core/platform/graphics/chromium/TransparencyWin.cpp
+++ b/Source/core/platform/graphics/chromium/TransparencyWin.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -251,7 +251,7 @@
 
     AffineTransform mapping;
     mapping.translate(-m_transformedSourceRect.x(), -m_transformedSourceRect.y());
-    if (m_transformMode == Untransform){ 
+    if (m_transformMode == Untransform){
         // Compute the inverse mapping from the canvas space to the
         // coordinate space of our bitmap.
         mapping *= m_orgTransform.inverse();
@@ -360,7 +360,7 @@
 void TransparencyWin::initializeNewContext()
 {
     int pixelSize = m_layerSize.width() * m_layerSize.height();
-    if (pixelSize <= 0) 
+    if (pixelSize <= 0)
         return;
 
     if (pixelSize > maxCachedBufferPixelSize) {
@@ -375,7 +375,7 @@
         m_drawContext = m_layerBuffer->context();
         if (needReferenceBitmap) {
             m_referenceBitmap = m_ownedBuffers->referenceBitmap();
-            if (!m_referenceBitmap || !m_referenceBitmap->getPixels()) 
+            if (!m_referenceBitmap || !m_referenceBitmap->getPixels())
                 return;
         }
         m_validLayer = true;
@@ -414,7 +414,7 @@
 
     SkBitmap* bitmap = const_cast<SkBitmap*>(
         &bitmapForContext(*m_layerBuffer->context()));
-    
+
     // This function will be called for WhiteLayer as well, which we don't want
     // to change.
     if (m_layerMode == OpaqueCompositeLayer) {
diff --git a/Source/core/platform/graphics/chromium/TransparencyWin.h b/Source/core/platform/graphics/chromium/TransparencyWin.h
index e755bb4..ab5bbfe 100644
--- a/Source/core/platform/graphics/chromium/TransparencyWin.h
+++ b/Source/core/platform/graphics/chromium/TransparencyWin.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -35,7 +35,7 @@
 
 #include "core/platform/graphics/ImageBuffer.h"
 #include "core/platform/graphics/transforms/AffineTransform.h"
- 
+
 #include "wtf/Noncopyable.h"
 #include "wtf/OwnPtr.h"
 
@@ -250,7 +250,7 @@
     OwnPtr<OwnedBuffers> m_ownedBuffers;
 
     // Sometimes we're asked to create layers that have negative dimensions.
-    // This API is not designed to fail to initialize, so we hide the fact 
+    // This API is not designed to fail to initialize, so we hide the fact
     // that they are illegal and can't be rendered (failing silently, drawing
     // nothing).
     bool m_validLayer;
diff --git a/Source/core/platform/graphics/chromium/UniscribeHelper.cpp b/Source/core/platform/graphics/chromium/UniscribeHelper.cpp
index d74037f..1794a02 100644
--- a/Source/core/platform/graphics/chromium/UniscribeHelper.cpp
+++ b/Source/core/platform/graphics/chromium/UniscribeHelper.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2006, 2007, 2008, 2009, 2012 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -218,11 +218,11 @@
     // The documentation for Scriptjustify is wrong, the parameter is the space
     // to add and not the width of the column you want.
     int minKashida;
-    // Disable kashida justification based on 
+    // Disable kashida justification based on
     // http://blogs.msdn.com/b/michkap/archive/2010/08/31/10056140.aspx.
     for (int i = 0; i < totalGlyphs; ++i) {
         if (visualAttributes[i].uJustification == SCRIPT_JUSTIFY_ARABIC_KASHIDA)
-            visualAttributes[i].uJustification = SCRIPT_JUSTIFY_NONE;   
+            visualAttributes[i].uJustification = SCRIPT_JUSTIFY_NONE;
     }
     minKashida = 0;
     ScriptJustify(&visualAttributes[0], &advances[0], totalGlyphs,
@@ -707,7 +707,7 @@
             bool fontOk = getDerivedFontData(family, m_style, &m_logfont,
                                              &ascent, &hfont, &scriptCache,
                                              &spaceGlyph);
-                                              
+
 
             if (!fontOk) {
                 // If this GetDerivedFontData is called from the renderer it
@@ -901,7 +901,7 @@
 
             // For characters treated as zero-width space in complex
             // scripts, set the advance width to zero, adjust
-            // |abcB| of the current run accordingly and set 
+            // |abcB| of the current run accordingly and set
             // the glyph to m_spaceGlyph (invisible).
             shaping.m_advance[glyphIndex] = 0;
             shaping.m_abc.abcB -= currentAdvance;
diff --git a/Source/core/platform/graphics/chromium/UniscribeHelper.h b/Source/core/platform/graphics/chromium/UniscribeHelper.h
index 9287dcc..66826ad 100644
--- a/Source/core/platform/graphics/chromium/UniscribeHelper.h
+++ b/Source/core/platform/graphics/chromium/UniscribeHelper.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2006, 2007, 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/chromium/UniscribeHelperTextRun.cpp b/Source/core/platform/graphics/chromium/UniscribeHelperTextRun.cpp
index 40ed69c..1733f8e 100644
--- a/Source/core/platform/graphics/chromium/UniscribeHelperTextRun.cpp
+++ b/Source/core/platform/graphics/chromium/UniscribeHelperTextRun.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2006, 2007, 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/chromium/UniscribeHelperTextRun.h b/Source/core/platform/graphics/chromium/UniscribeHelperTextRun.h
index 1cc2d25..0bac52e 100644
--- a/Source/core/platform/graphics/chromium/UniscribeHelperTextRun.h
+++ b/Source/core/platform/graphics/chromium/UniscribeHelperTextRun.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2006, 2007, 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/filters/DistantLightSource.cpp b/Source/core/platform/graphics/filters/DistantLightSource.cpp
index a1805a6..25864af 100644
--- a/Source/core/platform/graphics/filters/DistantLightSource.cpp
+++ b/Source/core/platform/graphics/filters/DistantLightSource.cpp
@@ -25,7 +25,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/filters/FEColorMatrix.cpp b/Source/core/platform/graphics/filters/FEColorMatrix.cpp
index 64dbcd4..2793882 100644
--- a/Source/core/platform/graphics/filters/FEColorMatrix.cpp
+++ b/Source/core/platform/graphics/filters/FEColorMatrix.cpp
@@ -166,7 +166,7 @@
     case FECOLORMATRIX_TYPE_MATRIX:
         effectType<FECOLORMATRIX_TYPE_MATRIX>(pixelArray.get(), m_values);
         break;
-    case FECOLORMATRIX_TYPE_SATURATE: 
+    case FECOLORMATRIX_TYPE_SATURATE:
         effectType<FECOLORMATRIX_TYPE_SATURATE>(pixelArray.get(), m_values);
         break;
     case FECOLORMATRIX_TYPE_HUEROTATE:
@@ -323,7 +323,7 @@
         while (ptr < end) {
             ts << *ptr;
             ++ptr;
-            if (ptr < end) 
+            if (ptr < end)
                 ts << " ";
         }
         ts << "\"";
diff --git a/Source/core/platform/graphics/filters/FEComponentTransfer.cpp b/Source/core/platform/graphics/filters/FEComponentTransfer.cpp
index 2a16160..d766d0a 100644
--- a/Source/core/platform/graphics/filters/FEComponentTransfer.cpp
+++ b/Source/core/platform/graphics/filters/FEComponentTransfer.cpp
@@ -54,7 +54,7 @@
 {
 }
 
-PassRefPtr<FEComponentTransfer> FEComponentTransfer::create(Filter* filter, const ComponentTransferFunction& redFunc, 
+PassRefPtr<FEComponentTransfer> FEComponentTransfer::create(Filter* filter, const ComponentTransferFunction& redFunc,
     const ComponentTransferFunction& greenFunc, const ComponentTransferFunction& blueFunc, const ComponentTransferFunction& alphaFunc)
 {
     return adoptRef(new FEComponentTransfer(filter, redFunc, greenFunc, blueFunc, alphaFunc));
@@ -109,9 +109,9 @@
     const Vector<float>& tableValues = transferFunction.tableValues;
     unsigned n = tableValues.size();
     if (n < 1)
-        return;            
+        return;
     for (unsigned i = 0; i < 256; ++i) {
-        double c = i / 255.0;                
+        double c = i / 255.0;
         unsigned k = static_cast<unsigned>(c * (n - 1));
         double v1 = tableValues[k];
         double v2 = tableValues[std::min((k + 1), (n - 1))];
@@ -255,7 +255,7 @@
 
 static TextStream& operator<<(TextStream& ts, const ComponentTransferFunction& function)
 {
-    ts << "type=\"" << function.type 
+    ts << "type=\"" << function.type
        << "\" slope=\"" << function.slope
        << "\" intercept=\"" << function.intercept
        << "\" amplitude=\"" << function.amplitude
@@ -275,7 +275,7 @@
     writeIndent(ts, indent + 2);
     ts << "{green: " << m_greenFunc << "}\n";
     writeIndent(ts, indent + 2);
-    ts << "{blue: " << m_blueFunc << "}\n";    
+    ts << "{blue: " << m_blueFunc << "}\n";
     writeIndent(ts, indent + 2);
     ts << "{alpha: " << m_alphaFunc << "}]\n";
     inputEffect(0)->externalRepresentation(ts, indent + 1);
diff --git a/Source/core/platform/graphics/filters/FEComposite.h b/Source/core/platform/graphics/filters/FEComposite.h
index 9d66533..4887329 100644
--- a/Source/core/platform/graphics/filters/FEComposite.h
+++ b/Source/core/platform/graphics/filters/FEComposite.h
@@ -31,7 +31,7 @@
 namespace WebCore {
 
 enum CompositeOperationType {
-    FECOMPOSITE_OPERATOR_UNKNOWN    = 0, 
+    FECOMPOSITE_OPERATOR_UNKNOWN    = 0,
     FECOMPOSITE_OPERATOR_OVER       = 1,
     FECOMPOSITE_OPERATOR_IN         = 2,
     FECOMPOSITE_OPERATOR_OUT        = 3,
diff --git a/Source/core/platform/graphics/filters/FEConvolveMatrix.cpp b/Source/core/platform/graphics/filters/FEConvolveMatrix.cpp
index c8ab271..e516f40 100644
--- a/Source/core/platform/graphics/filters/FEConvolveMatrix.cpp
+++ b/Source/core/platform/graphics/filters/FEConvolveMatrix.cpp
@@ -79,17 +79,17 @@
 
 const Vector<float>& FEConvolveMatrix::kernel() const
 {
-    return m_kernelMatrix; 
+    return m_kernelMatrix;
 }
 
 void FEConvolveMatrix::setKernel(const Vector<float>& kernel)
 {
-    m_kernelMatrix = kernel; 
+    m_kernelMatrix = kernel;
 }
 
 float FEConvolveMatrix::divisor() const
 {
-    return m_divisor; 
+    return m_divisor;
 }
 
 bool FEConvolveMatrix::setDivisor(float divisor)
@@ -103,7 +103,7 @@
 
 float FEConvolveMatrix::bias() const
 {
-    return m_bias; 
+    return m_bias;
 }
 
 bool FEConvolveMatrix::setBias(float bias)
@@ -116,7 +116,7 @@
 
 IntPoint FEConvolveMatrix::targetOffset() const
 {
-    return m_targetOffset; 
+    return m_targetOffset;
 }
 
 bool FEConvolveMatrix::setTargetOffset(const IntPoint& targetOffset)
@@ -142,7 +142,7 @@
 
 FloatPoint FEConvolveMatrix::kernelUnitLength() const
 {
-    return m_kernelUnitLength; 
+    return m_kernelUnitLength;
 }
 
 bool FEConvolveMatrix::setKernelUnitLength(const FloatPoint& kernelUnitLength)
@@ -157,7 +157,7 @@
 
 bool FEConvolveMatrix::preserveAlpha() const
 {
-    return m_preserveAlpha; 
+    return m_preserveAlpha;
 }
 
 bool FEConvolveMatrix::setPreserveAlpha(bool preserveAlpha)
diff --git a/Source/core/platform/graphics/filters/FEDiffuseLighting.cpp b/Source/core/platform/graphics/filters/FEDiffuseLighting.cpp
index c6ab72c..0333f48 100644
--- a/Source/core/platform/graphics/filters/FEDiffuseLighting.cpp
+++ b/Source/core/platform/graphics/filters/FEDiffuseLighting.cpp
@@ -60,7 +60,7 @@
     return true;
 }
 
-float FEDiffuseLighting::surfaceScale() const 
+float FEDiffuseLighting::surfaceScale() const
 {
     return m_surfaceScale;
 }
@@ -118,7 +118,7 @@
 }
 
 void FEDiffuseLighting::setLightSource(PassRefPtr<LightSource> lightSource)
-{    
+{
     m_lightSource = lightSource;
 }
 
diff --git a/Source/core/platform/graphics/filters/FEDropShadow.cpp b/Source/core/platform/graphics/filters/FEDropShadow.cpp
index 04bb1e9..179a663 100644
--- a/Source/core/platform/graphics/filters/FEDropShadow.cpp
+++ b/Source/core/platform/graphics/filters/FEDropShadow.cpp
@@ -34,7 +34,7 @@
 using namespace std;
 
 namespace WebCore {
-    
+
 FEDropShadow::FEDropShadow(Filter* filter, float stdX, float stdY, float dx, float dy, const Color& shadowColor, float shadowOpacity)
     : FilterEffect(filter)
     , m_stdX(stdX)
@@ -139,5 +139,5 @@
     inputEffect(0)->externalRepresentation(ts, indent + 1);
     return ts;
 }
-    
+
 } // namespace WebCore
diff --git a/Source/core/platform/graphics/filters/FEDropShadow.h b/Source/core/platform/graphics/filters/FEDropShadow.h
index 51ed046..36cd2b1 100644
--- a/Source/core/platform/graphics/filters/FEDropShadow.h
+++ b/Source/core/platform/graphics/filters/FEDropShadow.h
@@ -26,7 +26,7 @@
 #include "core/platform/graphics/filters/FilterEffect.h"
 
 namespace WebCore {
-    
+
 class FEDropShadow : public FilterEffect {
 public:
     static PassRefPtr<FEDropShadow> create(Filter*, float, float, float, float, const Color&, float);
@@ -43,7 +43,7 @@
     float dy() const { return m_dy; }
     void setDy(float dy) { m_dy = dy; }
 
-    Color shadowColor() const { return m_shadowColor; } 
+    Color shadowColor() const { return m_shadowColor; }
     void setShadowColor(const Color& shadowColor) { m_shadowColor = shadowColor; }
 
     float shadowOpacity() const { return m_shadowOpacity; }
@@ -58,7 +58,7 @@
 
 private:
     FEDropShadow(Filter*, float, float, float, float, const Color&, float);
-    
+
     virtual void applySoftware() OVERRIDE;
 
     float m_stdX;
@@ -68,7 +68,7 @@
     Color m_shadowColor;
     float m_shadowOpacity;
 };
-    
+
 } // namespace WebCore
 
 #endif // FEDropShadow_h
diff --git a/Source/core/platform/graphics/filters/FEGaussianBlur.cpp b/Source/core/platform/graphics/filters/FEGaussianBlur.cpp
index cb13681..d622b80 100644
--- a/Source/core/platform/graphics/filters/FEGaussianBlur.cpp
+++ b/Source/core/platform/graphics/filters/FEGaussianBlur.cpp
@@ -241,7 +241,7 @@
     kernelSizeY = 0;
     if (stdY)
         kernelSizeY = max<unsigned>(2, static_cast<unsigned>(floorf(stdY * gaussianKernelFactor() + 0.5f)));
-    
+
     // Limit the kernel size to 1000. A bigger radius won't make a big difference for the result image but
     // inflates the absolute paint rect to much. This is compatible with Firefox' behavior.
     if (kernelSizeX > gMaxKernelSize)
diff --git a/Source/core/platform/graphics/filters/FELighting.cpp b/Source/core/platform/graphics/filters/FELighting.cpp
index 246d269..3f43262 100644
--- a/Source/core/platform/graphics/filters/FELighting.cpp
+++ b/Source/core/platform/graphics/filters/FELighting.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/filters/FELighting.h b/Source/core/platform/graphics/filters/FELighting.h
index c2c674c..6974d14 100644
--- a/Source/core/platform/graphics/filters/FELighting.h
+++ b/Source/core/platform/graphics/filters/FELighting.h
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FELighting_h
diff --git a/Source/core/platform/graphics/filters/FEMerge.cpp b/Source/core/platform/graphics/filters/FEMerge.cpp
index 0bcdeca..f1e43a1 100644
--- a/Source/core/platform/graphics/filters/FEMerge.cpp
+++ b/Source/core/platform/graphics/filters/FEMerge.cpp
@@ -34,7 +34,7 @@
 
 namespace WebCore {
 
-FEMerge::FEMerge(Filter* filter) 
+FEMerge::FEMerge(Filter* filter)
     : FilterEffect(filter)
 {
 }
diff --git a/Source/core/platform/graphics/filters/FEMorphology.h b/Source/core/platform/graphics/filters/FEMorphology.h
index ff87b1a..5ab36cd 100644
--- a/Source/core/platform/graphics/filters/FEMorphology.h
+++ b/Source/core/platform/graphics/filters/FEMorphology.h
@@ -36,7 +36,7 @@
 
 class FEMorphology : public FilterEffect {
 public:
-    static PassRefPtr<FEMorphology> create(Filter*, MorphologyOperatorType, float radiusX, float radiusY);  
+    static PassRefPtr<FEMorphology> create(Filter*, MorphologyOperatorType, float radiusX, float radiusY);
     MorphologyOperatorType morphologyOperator() const;
     bool setMorphologyOperator(MorphologyOperatorType);
 
diff --git a/Source/core/platform/graphics/filters/FEOffset.cpp b/Source/core/platform/graphics/filters/FEOffset.cpp
index c18fa35..9c41ced 100644
--- a/Source/core/platform/graphics/filters/FEOffset.cpp
+++ b/Source/core/platform/graphics/filters/FEOffset.cpp
@@ -162,7 +162,7 @@
 TextStream& FEOffset::externalRepresentation(TextStream& ts, int indent) const
 {
     writeIndent(ts, indent);
-    ts << "[feOffset"; 
+    ts << "[feOffset";
     FilterEffect::externalRepresentation(ts);
     ts << " dx=\"" << dx() << "\" dy=\"" << dy() << "\"]\n";
     inputEffect(0)->externalRepresentation(ts, indent + 1);
diff --git a/Source/core/platform/graphics/filters/FETile.h b/Source/core/platform/graphics/filters/FETile.h
index a9c6e12..d1a3e11 100644
--- a/Source/core/platform/graphics/filters/FETile.h
+++ b/Source/core/platform/graphics/filters/FETile.h
@@ -27,7 +27,7 @@
 #include "core/platform/graphics/filters/FilterEffect.h"
 
 namespace WebCore {
-    
+
 class FETile : public FilterEffect {
 public:
     static PassRefPtr<FETile> create(Filter* filter);
diff --git a/Source/core/platform/graphics/filters/FETurbulence.cpp b/Source/core/platform/graphics/filters/FETurbulence.cpp
index 1cae91a..3ca5dc6 100644
--- a/Source/core/platform/graphics/filters/FETurbulence.cpp
+++ b/Source/core/platform/graphics/filters/FETurbulence.cpp
@@ -109,7 +109,7 @@
 
 float FETurbulence::seed() const
 {
-    return m_seed; 
+    return m_seed;
 }
 
 bool FETurbulence::setSeed(float seed)
diff --git a/Source/core/platform/graphics/filters/Filter.h b/Source/core/platform/graphics/filters/Filter.h
index 187bfd7..1ac9e1c 100644
--- a/Source/core/platform/graphics/filters/Filter.h
+++ b/Source/core/platform/graphics/filters/Filter.h
@@ -60,7 +60,7 @@
             1.0f : absoluteFilterRegion().height() / filterRegion().height();
         return value * m_filterResolution.height() * filterRegionScale;
     }
-    
+
     virtual FloatRect sourceImageRect() const = 0;
 
     FloatRect absoluteFilterRegion() const { return m_absoluteFilterRegion; }
diff --git a/Source/core/platform/graphics/filters/FilterEffect.cpp b/Source/core/platform/graphics/filters/FilterEffect.cpp
index f555397..144f000 100644
--- a/Source/core/platform/graphics/filters/FilterEffect.cpp
+++ b/Source/core/platform/graphics/filters/FilterEffect.cpp
@@ -67,13 +67,13 @@
     unsigned size = m_inputEffects.size();
     for (unsigned i = 0; i < size; ++i)
         m_absolutePaintRect.unite(m_inputEffects.at(i)->absolutePaintRect());
-    
+
     // Filters in SVG clip to primitive subregion, while CSS doesn't.
     if (m_clipsToBounds)
         m_absolutePaintRect.intersect(enclosingIntRect(m_maxEffectRect));
     else
         m_absolutePaintRect.unite(enclosingIntRect(m_maxEffectRect));
-    
+
 }
 
 FloatRect FilterEffect::mapRectRecursive(const FloatRect& rect)
@@ -160,7 +160,7 @@
         for (unsigned i = 0; i < size; ++i)
             inputEffect(i)->correctFilterResultIfNeeded();
     }
-    
+
     if (applySkia())
         return;
 
diff --git a/Source/core/platform/graphics/filters/FilterEffect.h b/Source/core/platform/graphics/filters/FilterEffect.h
index e7a7036..46230ea 100644
--- a/Source/core/platform/graphics/filters/FilterEffect.h
+++ b/Source/core/platform/graphics/filters/FilterEffect.h
@@ -71,7 +71,7 @@
     FilterEffectVector& inputEffects() { return m_inputEffects; }
     FilterEffect* inputEffect(unsigned) const;
     unsigned numberOfEffectInputs() const { return m_inputEffects.size(); }
-    
+
     inline bool hasResult() const
     {
         // This function needs platform specific checks, if the memory managment is not done by FilterEffect.
@@ -91,7 +91,7 @@
     void setAbsolutePaintRect(const IntRect& absolutePaintRect) { m_absolutePaintRect = absolutePaintRect; }
 
     FloatRect maxEffectRect() const { return m_maxEffectRect; }
-    void setMaxEffectRect(const FloatRect& maxEffectRect) { m_maxEffectRect = maxEffectRect; } 
+    void setMaxEffectRect(const FloatRect& maxEffectRect) { m_maxEffectRect = maxEffectRect; }
 
     void apply();
 
@@ -184,12 +184,12 @@
     bool m_alphaImage;
 
     IntRect m_absolutePaintRect;
-    
+
     // The maximum size of a filter primitive. In SVG this is the primitive subregion in absolute coordinate space.
     // The absolute paint rect should never be bigger than m_maxEffectRect.
     FloatRect m_maxEffectRect;
     Filter* m_filter;
-    
+
     // The following member variables are SVG specific and will move to RenderSVGResourceFilterPrimitive.
     // See bug https://bugs.webkit.org/show_bug.cgi?id=45614.
 
diff --git a/Source/core/platform/graphics/filters/FilterOperation.cpp b/Source/core/platform/graphics/filters/FilterOperation.cpp
index 7afa3b8..8b06964 100644
--- a/Source/core/platform/graphics/filters/FilterOperation.cpp
+++ b/Source/core/platform/graphics/filters/FilterOperation.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -35,10 +35,10 @@
 {
     if (from && !from->isSameType(*this))
         return this;
-    
+
     if (blendToPassthrough)
         return BasicColorMatrixFilterOperation::create(WebCore::blend(m_amount, passthroughAmount(), progress), m_type);
-        
+
     const BasicColorMatrixFilterOperation* fromOp = static_cast<const BasicColorMatrixFilterOperation*>(from);
     double fromAmount = fromOp ? fromOp->amount() : passthroughAmount();
     return BasicColorMatrixFilterOperation::create(WebCore::blend(fromAmount, m_amount, progress), m_type);
@@ -63,10 +63,10 @@
 {
     if (from && !from->isSameType(*this))
         return this;
-    
+
     if (blendToPassthrough)
         return BasicComponentTransferFilterOperation::create(WebCore::blend(m_amount, passthroughAmount(), progress), m_type);
-        
+
     const BasicComponentTransferFilterOperation* fromOp = static_cast<const BasicComponentTransferFilterOperation*>(from);
     double fromAmount = fromOp ? fromOp->amount() : passthroughAmount();
     return BasicComponentTransferFilterOperation::create(WebCore::blend(fromAmount, m_amount, progress), m_type);
@@ -93,13 +93,13 @@
 {
     if (from && !from->isSameType(*this))
         return this;
-    
+
     if (blendToPassthrough)
         return GammaFilterOperation::create(
             WebCore::blend(m_amplitude, 1.0, progress),
             WebCore::blend(m_exponent, 1.0, progress),
             WebCore::blend(m_offset, 0.0, progress), m_type);
-        
+
     const GammaFilterOperation* fromOp = static_cast<const GammaFilterOperation*>(from);
     double fromAmplitude = fromOp ? fromOp->amplitude() : 1;
     double fromExponent = fromOp ? fromOp->exponent() : 1;
@@ -141,7 +141,7 @@
     IntPoint fromLocation = fromOp ? fromOp->location() : IntPoint();
     int fromStdDeviation = fromOp ? fromOp->stdDeviation() : 0;
     Color fromColor = fromOp ? fromOp->color() : Color(Color::transparent);
-    
+
     return DropShadowFilterOperation::create(
         WebCore::blend(fromLocation, m_location, progress),
         WebCore::blend(fromStdDeviation, m_stdDeviation, progress),
diff --git a/Source/core/platform/graphics/filters/FilterOperation.h b/Source/core/platform/graphics/filters/FilterOperation.h
index d296063..b90b04d 100644
--- a/Source/core/platform/graphics/filters/FilterOperation.h
+++ b/Source/core/platform/graphics/filters/FilterOperation.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FilterOperation_h
@@ -73,20 +73,20 @@
     bool operator!=(const FilterOperation& o) const { return !(*this == o); }
 
     virtual PassRefPtr<FilterOperation> blend(const FilterOperation* /*from*/, double /*progress*/, bool /*blendToPassthrough*/ = false)
-    { 
+    {
         ASSERT(!blendingNeedsRendererSize());
-        return 0; 
+        return 0;
     }
 
     virtual PassRefPtr<FilterOperation> blend(const FilterOperation* /*from*/, double /*progress*/, const LayoutSize&, bool /*blendToPassthrough*/ = false)
-    { 
+    {
         ASSERT(blendingNeedsRendererSize());
-        return 0; 
+        return 0;
     }
 
     virtual OperationType getOperationType() const { return m_type; }
     virtual bool isSameType(const FilterOperation& o) const { return o.getOperationType() == m_type; }
-    
+
     virtual bool isDefault() const { return false; }
 
     // True if the alpha channel of any pixel can change under this operation.
@@ -210,9 +210,9 @@
         const BasicColorMatrixFilterOperation* other = static_cast<const BasicColorMatrixFilterOperation*>(&o);
         return m_amount == other->m_amount;
     }
-    
+
     double passthroughAmount() const;
-    
+
     BasicColorMatrixFilterOperation(double amount, OperationType type)
         : FilterOperation(type)
         , m_amount(amount)
diff --git a/Source/core/platform/graphics/filters/FilterOperations.cpp b/Source/core/platform/graphics/filters/FilterOperations.cpp
index 6fd4491..8857a23 100644
--- a/Source/core/platform/graphics/filters/FilterOperations.cpp
+++ b/Source/core/platform/graphics/filters/FilterOperations.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -60,13 +60,13 @@
 {
     if (m_operations.size() != o.m_operations.size())
         return false;
-        
+
     unsigned s = m_operations.size();
     for (unsigned i = 0; i < s; i++) {
         if (*m_operations[i] != *o.m_operations[i])
             return false;
     }
-    
+
     return true;
 }
 
@@ -76,7 +76,7 @@
     // If the sizes of the function lists don't match, the lists don't match
     if (numOperations != other.operations().size())
         return false;
-    
+
     // If the types of each function are not the same, the lists don't match
     for (size_t i = 0; i < numOperations; ++i) {
         if (!operations()[i]->isSameType(*other.operations()[i]))
diff --git a/Source/core/platform/graphics/filters/FilterOperations.h b/Source/core/platform/graphics/filters/FilterOperations.h
index bedf2a4..a1f0cfc 100644
--- a/Source/core/platform/graphics/filters/FilterOperations.h
+++ b/Source/core/platform/graphics/filters/FilterOperations.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FilterOperations_h
@@ -40,20 +40,20 @@
 public:
     FilterOperations();
     FilterOperations(const FilterOperations& other) { *this = other; }
-    
+
     FilterOperations& operator=(const FilterOperations&);
-    
+
     bool operator==(const FilterOperations&) const;
     bool operator!=(const FilterOperations& o) const
     {
         return !(*this == o);
     }
-    
+
     void clear()
     {
         m_operations.clear();
     }
-    
+
     Vector<RefPtr<FilterOperation> >& operations() { return m_operations; }
     const Vector<RefPtr<FilterOperation> >& operations() const { return m_operations; }
 
diff --git a/Source/core/platform/graphics/filters/PointLightSource.cpp b/Source/core/platform/graphics/filters/PointLightSource.cpp
index bfa5af3..232787c 100644
--- a/Source/core/platform/graphics/filters/PointLightSource.cpp
+++ b/Source/core/platform/graphics/filters/PointLightSource.cpp
@@ -25,7 +25,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/filters/SourceAlpha.h b/Source/core/platform/graphics/filters/SourceAlpha.h
index b5f352a..6a089c6 100644
--- a/Source/core/platform/graphics/filters/SourceAlpha.h
+++ b/Source/core/platform/graphics/filters/SourceAlpha.h
@@ -27,7 +27,7 @@
 namespace WebCore {
 
 class SourceAlpha : public FilterEffect {
-public:        
+public:
     static PassRefPtr<SourceAlpha> create(Filter*);
 
     static const AtomicString& effectName();
diff --git a/Source/core/platform/graphics/filters/SourceGraphic.h b/Source/core/platform/graphics/filters/SourceGraphic.h
index 6fd2c77..0a84f16 100644
--- a/Source/core/platform/graphics/filters/SourceGraphic.h
+++ b/Source/core/platform/graphics/filters/SourceGraphic.h
@@ -28,7 +28,7 @@
 namespace WebCore {
 
 class SourceGraphic : public FilterEffect {
-public:        
+public:
     static PassRefPtr<SourceGraphic> create(Filter*);
 
     static const AtomicString& effectName();
diff --git a/Source/core/platform/graphics/filters/SpotLightSource.cpp b/Source/core/platform/graphics/filters/SpotLightSource.cpp
index 29afcaa..7ffe750 100644
--- a/Source/core/platform/graphics/filters/SpotLightSource.cpp
+++ b/Source/core/platform/graphics/filters/SpotLightSource.cpp
@@ -26,7 +26,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/gpu/DrawingBuffer.cpp b/Source/core/platform/graphics/gpu/DrawingBuffer.cpp
index 0ffa0b0..0524092 100644
--- a/Source/core/platform/graphics/gpu/DrawingBuffer.cpp
+++ b/Source/core/platform/graphics/gpu/DrawingBuffer.cpp
@@ -512,7 +512,7 @@
             m_context->bindRenderbuffer(GraphicsContext3D::RENDERBUFFER, m_stencilBuffer);
             if (multisample())
                 m_context->getExtensions()->renderbufferStorageMultisample(GraphicsContext3D::RENDERBUFFER, sampleCount, GraphicsContext3D::STENCIL_INDEX8, size.width(), size.height());
-            else 
+            else
                 m_context->renderbufferStorage(GraphicsContext3D::RENDERBUFFER, GraphicsContext3D::STENCIL_INDEX8, size.width(), size.height());
             m_context->framebufferRenderbuffer(GraphicsContext3D::FRAMEBUFFER, GraphicsContext3D::STENCIL_ATTACHMENT, GraphicsContext3D::RENDERBUFFER, m_stencilBuffer);
         }
diff --git a/Source/core/platform/graphics/harfbuzz/FontHarfBuzz.cpp b/Source/core/platform/graphics/harfbuzz/FontHarfBuzz.cpp
index 534614f..c71c306 100644
--- a/Source/core/platform/graphics/harfbuzz/FontHarfBuzz.cpp
+++ b/Source/core/platform/graphics/harfbuzz/FontHarfBuzz.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2007, 2008, 2010 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/mac/ColorMac.h b/Source/core/platform/graphics/mac/ColorMac.h
index 5f63980..da14b97 100644
--- a/Source/core/platform/graphics/mac/ColorMac.h
+++ b/Source/core/platform/graphics/mac/ColorMac.h
@@ -11,7 +11,7 @@
  *    documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
@@ -23,7 +23,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ColorMac_h
@@ -34,14 +34,14 @@
 OBJC_CLASS NSColor;
 
 namespace WebCore {
-    
+
     // These functions assume NSColors are in DeviceRGB colorspace
     Color colorFromNSColor(NSColor *);
     NSColor *nsColor(const Color&);
 
     bool usesTestModeFocusRingColor();
     void setUsesTestModeFocusRingColor(bool);
-    
+
     // Focus ring color used for testing purposes.
     RGBA32 oldAquaFocusRingColor();
 
diff --git a/Source/core/platform/graphics/mac/ComplexTextController.cpp b/Source/core/platform/graphics/mac/ComplexTextController.cpp
index e027ce6..8811f4b 100644
--- a/Source/core/platform/graphics/mac/ComplexTextController.cpp
+++ b/Source/core/platform/graphics/mac/ComplexTextController.cpp
@@ -441,7 +441,7 @@
 unsigned ComplexTextController::indexOfCurrentRun(unsigned& leftmostGlyph)
 {
     leftmostGlyph = 0;
-    
+
     size_t runCount = m_complexTextRuns.size();
     if (m_currentRun >= runCount)
         return runCount;
@@ -630,11 +630,11 @@
 
             advance.width += fontData->syntheticBoldOffset();
 
- 
-            // We special case spaces in two ways when applying word rounding. 
-            // First, we round spaces to an adjusted width in all fonts. 
-            // Second, in fixed-pitch fonts we ensure that all glyphs that 
-            // match the width of the space glyph have the same width as the space glyph. 
+
+            // We special case spaces in two ways when applying word rounding.
+            // First, we round spaces to an adjusted width in all fonts.
+            // Second, in fixed-pitch fonts we ensure that all glyphs that
+            // match the width of the space glyph have the same width as the space glyph.
             if (m_run.applyWordRounding() && roundedAdvanceWidth == roundedSpaceWidth && (fontData->pitch() == FixedPitch || glyph == fontData->spaceGlyph()))
                 advance.width = fontData->adjustedSpaceWidth();
 
@@ -676,31 +676,31 @@
             }
 
             // Apply rounding hacks if needed.
-            // We adjust the width of the last character of a "word" to ensure an integer width. 
-            // Force characters that are used to determine word boundaries for the rounding hack 
-            // to be integer width, so the following words will start on an integer boundary. 
-            if (m_run.applyWordRounding() && Font::isRoundingHackCharacter(ch)) 
-                advance.width = ceilCGFloat(advance.width); 
+            // We adjust the width of the last character of a "word" to ensure an integer width.
+            // Force characters that are used to determine word boundaries for the rounding hack
+            // to be integer width, so the following words will start on an integer boundary.
+            if (m_run.applyWordRounding() && Font::isRoundingHackCharacter(ch))
+                advance.width = ceilCGFloat(advance.width);
 
-            // Check to see if the next character is a "rounding hack character", if so, adjust the 
-            // width so that the total run width will be on an integer boundary. 
-            if ((m_run.applyWordRounding() && !lastGlyph && Font::isRoundingHackCharacter(nextCh)) || (m_run.applyRunRounding() && lastGlyph)) { 
-                CGFloat totalWidth = widthSinceLastCommit + advance.width; 
-                widthSinceLastCommit = ceilCGFloat(totalWidth); 
-                CGFloat extraWidth = widthSinceLastCommit - totalWidth; 
-                if (m_run.ltr()) 
-                    advance.width += extraWidth; 
-                else { 
-                    if (m_lastRoundingGlyph) 
-                        m_adjustedAdvances[m_lastRoundingGlyph - 1].width += extraWidth; 
-                    else 
-                        m_finalRoundingWidth = extraWidth; 
-                    m_lastRoundingGlyph = m_adjustedAdvances.size() + 1; 
-                } 
-                m_totalWidth += widthSinceLastCommit; 
-                widthSinceLastCommit = 0; 
-            } else 
-                widthSinceLastCommit += advance.width; 
+            // Check to see if the next character is a "rounding hack character", if so, adjust the
+            // width so that the total run width will be on an integer boundary.
+            if ((m_run.applyWordRounding() && !lastGlyph && Font::isRoundingHackCharacter(nextCh)) || (m_run.applyRunRounding() && lastGlyph)) {
+                CGFloat totalWidth = widthSinceLastCommit + advance.width;
+                widthSinceLastCommit = ceilCGFloat(totalWidth);
+                CGFloat extraWidth = widthSinceLastCommit - totalWidth;
+                if (m_run.ltr())
+                    advance.width += extraWidth;
+                else {
+                    if (m_lastRoundingGlyph)
+                        m_adjustedAdvances[m_lastRoundingGlyph - 1].width += extraWidth;
+                    else
+                        m_finalRoundingWidth = extraWidth;
+                    m_lastRoundingGlyph = m_adjustedAdvances.size() + 1;
+                }
+                m_totalWidth += widthSinceLastCommit;
+                widthSinceLastCommit = 0;
+            } else
+                widthSinceLastCommit += advance.width;
 
             // FIXME: Combining marks should receive a text emphasis mark if they are combine with a space.
             if (m_forTextEmphasis && (!Font::canReceiveTextEmphasis(ch) || (U_GET_GC_MASK(ch) & U_GC_M_MASK)))
@@ -709,7 +709,7 @@
             advance.height *= -1;
             m_adjustedAdvances.append(advance);
             m_adjustedGlyphs.append(glyph);
-            
+
             FloatRect glyphBounds = fontData->boundsForGlyph(glyph);
             glyphBounds.move(glyphOrigin.x, glyphOrigin.y);
             m_minGlyphBoundingBoxX = min(m_minGlyphBoundingBoxX, glyphBounds.x());
@@ -718,7 +718,7 @@
             m_maxGlyphBoundingBoxY = max(m_maxGlyphBoundingBoxY, glyphBounds.maxY());
             glyphOrigin.x += advance.width;
             glyphOrigin.y += advance.height;
-            
+
             lastCharacterIndex = characterIndex;
         }
         if (!isMonotonic)
diff --git a/Source/core/platform/graphics/mac/ComplexTextController.h b/Source/core/platform/graphics/mac/ComplexTextController.h
index 3693841..fdc100d 100644
--- a/Source/core/platform/graphics/mac/ComplexTextController.h
+++ b/Source/core/platform/graphics/mac/ComplexTextController.h
@@ -70,7 +70,7 @@
     float maxGlyphBoundingBoxX() const { return m_maxGlyphBoundingBoxX; }
     float minGlyphBoundingBoxY() const { return m_minGlyphBoundingBoxY; }
     float maxGlyphBoundingBoxY() const { return m_maxGlyphBoundingBoxY; }
-    
+
 private:
     class ComplexTextRun : public RefCounted<ComplexTextRun> {
     public:
@@ -120,7 +120,7 @@
         bool m_isLTR;
         bool m_isMonotonic;
     };
-    
+
     static unsigned stringBegin(const ComplexTextRun& run) { return run.stringLocation() + run.indexBegin(); }
     static unsigned stringEnd(const ComplexTextRun& run) { return run.stringLocation() + run.indexEnd(); }
 
@@ -152,7 +152,7 @@
     Vector<RefPtr<ComplexTextRun>, 16> m_complexTextRuns;
     Vector<CGSize, 256> m_adjustedAdvances;
     Vector<CGGlyph, 256> m_adjustedGlyphs;
- 
+
     unsigned m_currentCharacter;
     int m_end;
 
diff --git a/Source/core/platform/graphics/mac/FontComplexTextMac.cpp b/Source/core/platform/graphics/mac/FontComplexTextMac.cpp
index 0da9a0f..00235e6 100644
--- a/Source/core/platform/graphics/mac/FontComplexTextMac.cpp
+++ b/Source/core/platform/graphics/mac/FontComplexTextMac.cpp
@@ -64,7 +64,7 @@
     if (run.rtl()) {
         float totalWidth = controller.totalWidth();
         return FloatRect(floorf(point.x() + totalWidth - afterWidth), point.y(), roundf(point.x() + totalWidth - beforeWidth) - floorf(point.x() + totalWidth - afterWidth), h);
-    } 
+    }
 
     return FloatRect(floorf(point.x() + beforeWidth), point.y(), roundf(point.x() + afterWidth) - floorf(point.x() + beforeWidth), h);
 }
diff --git a/Source/core/platform/graphics/mac/GlyphPageTreeNodeMac.cpp b/Source/core/platform/graphics/mac/GlyphPageTreeNodeMac.cpp
index f011470..dc6b984 100644
--- a/Source/core/platform/graphics/mac/GlyphPageTreeNodeMac.cpp
+++ b/Source/core/platform/graphics/mac/GlyphPageTreeNodeMac.cpp
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/platform/graphics/opentype/OpenTypeUtilities.cpp b/Source/core/platform/graphics/opentype/OpenTypeUtilities.cpp
index 81e2bb1..53bfeef 100644
--- a/Source/core/platform/graphics/opentype/OpenTypeUtilities.cpp
+++ b/Source/core/platform/graphics/opentype/OpenTypeUtilities.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -31,13 +31,13 @@
 
 namespace WebCore {
 
-struct BigEndianUShort { 
+struct BigEndianUShort {
     operator unsigned short() const { return (v & 0x00ff) << 8 | v >> 8; }
     BigEndianUShort(unsigned short u) : v((u & 0x00ff) << 8 | u >> 8) { }
     unsigned short v;
 };
 
-struct BigEndianULong { 
+struct BigEndianULong {
     operator unsigned() const { return (v & 0xff) << 24 | (v & 0xff00) << 8 | (v & 0xff0000) >> 8 | v >> 24; }
     BigEndianULong(unsigned u) : v((u & 0xff) << 24 | (u & 0xff00) << 8 | (u & 0xff0000) >> 8 | u >> 24) { }
     unsigned v;
@@ -247,7 +247,7 @@
                     prefix->weight = OS2->weightClass;
                     // FIXME: Should use OS2->fsType, but some TrueType fonts set it to an over-restrictive value.
                     // Since ATS does not enforce this on Mac OS X, we do not enforce it either.
-                    prefix->fsType = 0;            
+                    prefix->fsType = 0;
                     for (unsigned j = 0; j < 4; j++)
                         prefix->unicodeRange[j] = OS2->unicodeRange[j];
                     for (unsigned j = 0; j < 2; j++)
@@ -280,7 +280,7 @@
 
                             unsigned short nameLength = name->nameRecords[j].length;
                             const BigEndianUShort* nameString = reinterpret_cast<const BigEndianUShort*>(data + tableOffset + name->stringOffset + name->nameRecords[j].offset);
-                            
+
                             switch (name->nameRecords[j].nameID) {
                                 case 1:
                                     familyNameLength = nameLength;
diff --git a/Source/core/platform/graphics/opentype/OpenTypeUtilities.h b/Source/core/platform/graphics/opentype/OpenTypeUtilities.h
index b725b78..8aa7e4a 100644
--- a/Source/core/platform/graphics/opentype/OpenTypeUtilities.h
+++ b/Source/core/platform/graphics/opentype/OpenTypeUtilities.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef OpenTypeUtilities_h
diff --git a/Source/core/platform/graphics/skia/FontCacheSkia.cpp b/Source/core/platform/graphics/skia/FontCacheSkia.cpp
index 0be6d56..885b9e9 100644
--- a/Source/core/platform/graphics/skia/FontCacheSkia.cpp
+++ b/Source/core/platform/graphics/skia/FontCacheSkia.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2006, 2007, 2008, 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/skia/FontCustomPlatformData.h b/Source/core/platform/graphics/skia/FontCustomPlatformData.h
index 4791d04..1ab29b6 100644
--- a/Source/core/platform/graphics/skia/FontCustomPlatformData.h
+++ b/Source/core/platform/graphics/skia/FontCustomPlatformData.h
@@ -1,11 +1,11 @@
 /*
  * Copyright (C) 2007 Apple Computer, Inc.
  * Copyright (c) 2007, 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -15,7 +15,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/skia/GlyphPageTreeNodeSkia.cpp b/Source/core/platform/graphics/skia/GlyphPageTreeNodeSkia.cpp
index 2b231bf..7cf6034 100644
--- a/Source/core/platform/graphics/skia/GlyphPageTreeNodeSkia.cpp
+++ b/Source/core/platform/graphics/skia/GlyphPageTreeNodeSkia.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -45,7 +45,7 @@
         SkDebugf("%s last char is high-surrogate", __FUNCTION__);
         return false;
     }
-    
+
     SkPaint paint;
     fontData->platformData().setupPaint(&paint);
     paint.setTextEncoding(SkPaint::kUTF16_TextEncoding);
diff --git a/Source/core/platform/graphics/skia/ImageSkia.cpp b/Source/core/platform/graphics/skia/ImageSkia.cpp
index ebbe966..e9f4584 100644
--- a/Source/core/platform/graphics/skia/ImageSkia.cpp
+++ b/Source/core/platform/graphics/skia/ImageSkia.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -148,7 +148,7 @@
     // High quality interpolation only enabled for scaling and translation.
     if (!(matrix.getType() & (SkMatrix::kAffine_Mask | SkMatrix::kPerspective_Mask)))
         return RESAMPLE_AWESOME;
-    
+
     return RESAMPLE_LINEAR;
 }
 
diff --git a/Source/core/platform/graphics/skia/NativeImageSkia.cpp b/Source/core/platform/graphics/skia/NativeImageSkia.cpp
index 68025e8..d521c25 100644
--- a/Source/core/platform/graphics/skia/NativeImageSkia.cpp
+++ b/Source/core/platform/graphics/skia/NativeImageSkia.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/skia/NativeImageSkia.h b/Source/core/platform/graphics/skia/NativeImageSkia.h
index 518b5f8..0838c0e 100644
--- a/Source/core/platform/graphics/skia/NativeImageSkia.h
+++ b/Source/core/platform/graphics/skia/NativeImageSkia.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/skia/SimpleFontDataSkia.cpp b/Source/core/platform/graphics/skia/SimpleFontDataSkia.cpp
index f92d81f..aec25cf 100644
--- a/Source/core/platform/graphics/skia/SimpleFontDataSkia.cpp
+++ b/Source/core/platform/graphics/skia/SimpleFontDataSkia.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -235,7 +235,7 @@
     }
     return FloatRect(bounds);
 }
-    
+
 float SimpleFontData::platformWidthForGlyph(Glyph glyph) const
 {
     if (!m_platformData.size())
diff --git a/Source/core/platform/graphics/skia/SkiaFontWin.cpp b/Source/core/platform/graphics/skia/SkiaFontWin.cpp
index 5aca837..6622321 100644
--- a/Source/core/platform/graphics/skia/SkiaFontWin.cpp
+++ b/Source/core/platform/graphics/skia/SkiaFontWin.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/skia/SkiaFontWin.h b/Source/core/platform/graphics/skia/SkiaFontWin.h
index 926d29d..5e41a0d 100644
--- a/Source/core/platform/graphics/skia/SkiaFontWin.h
+++ b/Source/core/platform/graphics/skia/SkiaFontWin.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/skia/SkiaUtils.cpp b/Source/core/platform/graphics/skia/SkiaUtils.cpp
index 77ed53c..56901f0 100644
--- a/Source/core/platform/graphics/skia/SkiaUtils.cpp
+++ b/Source/core/platform/graphics/skia/SkiaUtils.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2006,2007,2008, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -90,7 +90,7 @@
     }
 
     const CompositOpToXfermodeMode* table = gMapCompositOpsToXfermodeModes;
-    
+
     for (unsigned i = 0; i < SK_ARRAY_COUNT(gMapCompositOpsToXfermodeModes); i++) {
         if (table[i].mCompositOp == op)
             return (SkXfermode::Mode)table[i].m_xfermodeMode;
@@ -115,13 +115,13 @@
         // A zero alpha value when there are non-zero R, G, or B channels is an
         // invalid premultiplied color (since all channels should have been
         // multiplied by 0 if a=0).
-        SkASSERT(false); 
+        SkASSERT(false);
         // In production, return 0 to protect against division by zero.
         return 0;
     }
-    
+
     uint32_t scale = (255 << 16) / a;
-    
+
     return SkColorSetARGB(a,
                           InvScaleByte(SkGetPackedR32(pm), scale),
                           InvScaleByte(SkGetPackedG32(pm), scale),
@@ -164,7 +164,7 @@
     const SkScalar kMaxCoordinate = SkIntToScalar(1 << 15);
     SkScalar scale = SkScalarDiv(kMaxCoordinate, biggestCoord);
 
-    SkRegion rgn;  
+    SkRegion rgn;
     SkRegion clip;
     SkMatrix m;
     SkPath scaledPath(originalPath);
diff --git a/Source/core/platform/graphics/skia/SkiaUtils.h b/Source/core/platform/graphics/skia/SkiaUtils.h
index b56e5c8..d8a13e8 100644
--- a/Source/core/platform/graphics/skia/SkiaUtils.h
+++ b/Source/core/platform/graphics/skia/SkiaUtils.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2006,2007,2008, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/graphics/transforms/AffineTransform.cpp b/Source/core/platform/graphics/transforms/AffineTransform.cpp
index 8b36b5d..277018f 100644
--- a/Source/core/platform/graphics/transforms/AffineTransform.cpp
+++ b/Source/core/platform/graphics/transforms/AffineTransform.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -121,7 +121,7 @@
 AffineTransform& AffineTransform::multiply(const AffineTransform& other)
 {
     AffineTransform trans;
-    
+
     trans.m_transform[0] = other.m_transform[0] * m_transform[0] + other.m_transform[1] * m_transform[2];
     trans.m_transform[1] = other.m_transform[0] * m_transform[1] + other.m_transform[1] * m_transform[3];
     trans.m_transform[2] = other.m_transform[2] * m_transform[0] + other.m_transform[3] * m_transform[2];
@@ -167,7 +167,7 @@
         m_transform[5] += ty;
         return *this;
     }
-        
+
     m_transform[4] += tx * m_transform[0] + ty * m_transform[2];
     m_transform[5] += tx * m_transform[1] + ty * m_transform[3];
     return *this;
@@ -239,7 +239,7 @@
 {
     double x2, y2;
     map(point.x(), point.y(), x2, y2);
-    
+
     // Round the point.
     return IntPoint(lround(x2), lround(y2));
 }
@@ -329,7 +329,7 @@
         else
             srB.angle -= piDouble * 2;
     }
-    
+
     srA.scaleX += progress * (srB.scaleX - srA.scaleX);
     srA.scaleY += progress * (srB.scaleY - srA.scaleY);
     srA.angle += progress * (srB.angle - srA.angle);
@@ -372,11 +372,11 @@
 bool AffineTransform::decompose(DecomposedType& decomp) const
 {
     AffineTransform m(*this);
-    
+
     // Compute scaling factors
     double sx = xScale();
     double sy = yScale();
-    
+
     // Compute cross product of transformed unit vectors. If negative,
     // one axis was flipped.
     if (m.a() * m.d() - m.c() * m.b() < 0) {
@@ -386,17 +386,17 @@
         else
             sy = -sy;
     }
-    
+
     // Remove scale from matrix
     m.scale(1 / sx, 1 / sy);
-    
+
     // Compute rotation
     double angle = atan2(m.b(), m.a());
-    
+
     // Remove rotation from matrix
     m.rotate(rad2deg(-angle));
-    
-    // Return results    
+
+    // Return results
     decomp.scaleX = sx;
     decomp.scaleY = sy;
     decomp.angle = angle;
@@ -406,7 +406,7 @@
     decomp.remainderD = m.d();
     decomp.translateX = m.e();
     decomp.translateY = m.f();
-    
+
     return true;
 }
 
diff --git a/Source/core/platform/graphics/transforms/AffineTransform.h b/Source/core/platform/graphics/transforms/AffineTransform.h
index dbddc5b..536fa66 100644
--- a/Source/core/platform/graphics/transforms/AffineTransform.h
+++ b/Source/core/platform/graphics/transforms/AffineTransform.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef AffineTransform_h
@@ -89,8 +89,8 @@
     void makeIdentity();
 
     AffineTransform& multiply(const AffineTransform& other);
-    AffineTransform& scale(double); 
-    AffineTransform& scale(double sx, double sy); 
+    AffineTransform& scale(double);
+    AffineTransform& scale(double sx, double sy);
     AffineTransform& scaleNonUniform(double sx, double sy);
     AffineTransform& rotate(double d);
     AffineTransform& rotateFromVector(double x, double y);
@@ -117,7 +117,7 @@
     {
         return m_transform[0] == 1 && m_transform[1] == 0 && m_transform[2] == 0 && m_transform[3] == 1;
     }
-    
+
     bool isIdentityOrTranslationOrFlipped() const
     {
         return m_transform[0] == 1 && m_transform[1] == 0 && m_transform[2] == 0 && (m_transform[3] == 1 || m_transform[3] == -1);
@@ -145,7 +145,7 @@
     {
         return multiply(t);
     }
-    
+
     // result = *this * t (i.e., a multRight)
     AffineTransform operator*(const AffineTransform& t) const
     {
@@ -160,7 +160,7 @@
     {
         return AffineTransform(1, 0, 0, 1, x, y);
     }
-    
+
     // decompose the matrix into its component parts
     typedef struct {
         double scaleX, scaleY;
@@ -168,7 +168,7 @@
         double remainderA, remainderB, remainderC, remainderD;
         double translateX, translateY;
     } DecomposedType;
-    
+
     bool decompose(DecomposedType&) const;
     void recompose(const DecomposedType&);
 
diff --git a/Source/core/platform/graphics/transforms/IdentityTransformOperation.h b/Source/core/platform/graphics/transforms/IdentityTransformOperation.h
index 7463e46..223efdd 100644
--- a/Source/core/platform/graphics/transforms/IdentityTransformOperation.h
+++ b/Source/core/platform/graphics/transforms/IdentityTransformOperation.h
@@ -35,7 +35,7 @@
     {
         return adoptRef(new IdentityTransformOperation());
     }
-        
+
 private:
     virtual bool isIdentity() const { return true; }
     virtual OperationType getOperationType() const { return IDENTITY; }
diff --git a/Source/core/platform/graphics/transforms/Matrix3DTransformOperation.cpp b/Source/core/platform/graphics/transforms/Matrix3DTransformOperation.cpp
index 17b1bb3..b8732b2 100644
--- a/Source/core/platform/graphics/transforms/Matrix3DTransformOperation.cpp
+++ b/Source/core/platform/graphics/transforms/Matrix3DTransformOperation.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/graphics/transforms/Matrix3DTransformOperation.h b/Source/core/platform/graphics/transforms/Matrix3DTransformOperation.h
index 05b2619..e54bbd7 100644
--- a/Source/core/platform/graphics/transforms/Matrix3DTransformOperation.h
+++ b/Source/core/platform/graphics/transforms/Matrix3DTransformOperation.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Matrix3DTransformOperation_h
@@ -39,7 +39,7 @@
 
     TransformationMatrix matrix() const {return m_matrix; }
 
-private:    
+private:
     virtual bool isIdentity() const { return m_matrix.isIdentity(); }
 
     virtual OperationType getOperationType() const { return MATRIX_3D; }
@@ -60,7 +60,7 @@
     }
 
     virtual PassRefPtr<TransformOperation> blend(const TransformOperation* from, double progress, bool blendToIdentity = false);
-    
+
     Matrix3DTransformOperation(const TransformationMatrix& mat)
     {
         m_matrix = mat;
diff --git a/Source/core/platform/graphics/transforms/MatrixTransformOperation.cpp b/Source/core/platform/graphics/transforms/MatrixTransformOperation.cpp
index cdfee2b..d14c7bf 100644
--- a/Source/core/platform/graphics/transforms/MatrixTransformOperation.cpp
+++ b/Source/core/platform/graphics/transforms/MatrixTransformOperation.cpp
@@ -41,7 +41,7 @@
         const MatrixTransformOperation* m = static_cast<const MatrixTransformOperation*>(from);
         fromT.setMatrix(m->m_a, m->m_b, m->m_c, m->m_d, m->m_e, m->m_f);
     }
-    
+
     if (blendToIdentity)
         std::swap(fromT, toT);
 
diff --git a/Source/core/platform/graphics/transforms/MatrixTransformOperation.h b/Source/core/platform/graphics/transforms/MatrixTransformOperation.h
index d47c0ee..6b33a32 100644
--- a/Source/core/platform/graphics/transforms/MatrixTransformOperation.h
+++ b/Source/core/platform/graphics/transforms/MatrixTransformOperation.h
@@ -67,7 +67,7 @@
     }
 
     virtual PassRefPtr<TransformOperation> blend(const TransformOperation* from, double progress, bool blendToIdentity = false);
-    
+
     MatrixTransformOperation(double a, double b, double c, double d, double e, double f)
         : m_a(a)
         , m_b(b)
@@ -87,7 +87,7 @@
         , m_f(t.f())
     {
     }
-    
+
     double m_a;
     double m_b;
     double m_c;
diff --git a/Source/core/platform/graphics/transforms/PerspectiveTransformOperation.cpp b/Source/core/platform/graphics/transforms/PerspectiveTransformOperation.cpp
index 07dbb1f..5d5b900 100644
--- a/Source/core/platform/graphics/transforms/PerspectiveTransformOperation.cpp
+++ b/Source/core/platform/graphics/transforms/PerspectiveTransformOperation.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -37,13 +37,13 @@
 {
     if (from && !from->isSameType(*this))
         return this;
-    
+
     if (blendToIdentity) {
         double p = floatValueForLength(m_p, 1);
         p = WebCore::blend(p, 1.0, progress); // FIXME: this seems wrong. https://bugs.webkit.org/show_bug.cgi?id=52700
         return PerspectiveTransformOperation::create(Length(clampToPositiveInteger(p), Fixed));
     }
-    
+
     const PerspectiveTransformOperation* fromOp = static_cast<const PerspectiveTransformOperation*>(from);
     Length fromP = fromOp ? fromOp->m_p : Length(m_p.type());
     Length toP = m_p;
diff --git a/Source/core/platform/graphics/transforms/PerspectiveTransformOperation.h b/Source/core/platform/graphics/transforms/PerspectiveTransformOperation.h
index 8af41fe..49305e7 100644
--- a/Source/core/platform/graphics/transforms/PerspectiveTransformOperation.h
+++ b/Source/core/platform/graphics/transforms/PerspectiveTransformOperation.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PerspectiveTransformOperation_h
@@ -40,7 +40,7 @@
     }
 
     Length perspective() const { return m_p; }
-    
+
 private:
     virtual bool isIdentity() const { return !floatValueForLength(m_p, 1); }
     virtual OperationType getOperationType() const { return PERSPECTIVE; }
diff --git a/Source/core/platform/graphics/transforms/RotateTransformOperation.cpp b/Source/core/platform/graphics/transforms/RotateTransformOperation.cpp
index ba1ce1f..99bd207 100644
--- a/Source/core/platform/graphics/transforms/RotateTransformOperation.cpp
+++ b/Source/core/platform/graphics/transforms/RotateTransformOperation.cpp
@@ -34,20 +34,20 @@
 {
     if (from && !from->isSameType(*this))
         return this;
-    
+
     if (blendToIdentity)
         return RotateTransformOperation::create(m_x, m_y, m_z, m_angle - m_angle * progress, m_type);
-    
+
     const RotateTransformOperation* fromOp = static_cast<const RotateTransformOperation*>(from);
-    
+
     // Optimize for single axis rotation
-    if (!fromOp || (fromOp->m_x == 0 && fromOp->m_y == 0 && fromOp->m_z == 1) || 
-                   (fromOp->m_x == 0 && fromOp->m_y == 1 && fromOp->m_z == 0) || 
+    if (!fromOp || (fromOp->m_x == 0 && fromOp->m_y == 0 && fromOp->m_z == 1) ||
+                   (fromOp->m_x == 0 && fromOp->m_y == 1 && fromOp->m_z == 0) ||
                    (fromOp->m_x == 1 && fromOp->m_y == 0 && fromOp->m_z == 0)) {
         double fromAngle = fromOp ? fromOp->m_angle : 0;
-        return RotateTransformOperation::create(fromOp ? fromOp->m_x : m_x, 
-                                                fromOp ? fromOp->m_y : m_y, 
-                                                fromOp ? fromOp->m_z : m_z, 
+        return RotateTransformOperation::create(fromOp ? fromOp->m_x : m_x,
+                                                fromOp ? fromOp->m_y : m_y,
+                                                fromOp ? fromOp->m_z : m_z,
                                                 WebCore::blend(fromAngle, m_angle, progress), m_type);
     }
 
@@ -65,21 +65,21 @@
         (toOp ? toOp->m_y : 0),
         (toOp ? toOp->m_z : 1),
         (toOp ? toOp->m_angle : 0));
-    
+
     // Blend them
     toT.blend(fromT, progress);
-    
+
     // Extract the result as a quaternion
     TransformationMatrix::DecomposedType decomp;
     toT.decompose(decomp);
-    
+
     // Convert that to Axis/Angle form
     double x = -decomp.quaternionX;
     double y = -decomp.quaternionY;
     double z = -decomp.quaternionZ;
     double length = sqrt(x * x + y * y + z * z);
     double angle = 0;
-    
+
     if (length > 0.00001) {
         x /= length;
         y /= length;
diff --git a/Source/core/platform/graphics/transforms/ScaleTransformOperation.cpp b/Source/core/platform/graphics/transforms/ScaleTransformOperation.cpp
index ff23179..f19e8ae 100644
--- a/Source/core/platform/graphics/transforms/ScaleTransformOperation.cpp
+++ b/Source/core/platform/graphics/transforms/ScaleTransformOperation.cpp
@@ -30,12 +30,12 @@
 {
     if (from && !from->isSameType(*this))
         return this;
-    
+
     if (blendToIdentity)
         return ScaleTransformOperation::create(WebCore::blend(m_x, 1.0, progress),
                                                WebCore::blend(m_y, 1.0, progress),
                                                WebCore::blend(m_z, 1.0, progress), m_type);
-    
+
     const ScaleTransformOperation* fromOp = static_cast<const ScaleTransformOperation*>(from);
     double fromX = fromOp ? fromOp->m_x : 1.0;
     double fromY = fromOp ? fromOp->m_y : 1.0;
diff --git a/Source/core/platform/graphics/transforms/ScaleTransformOperation.h b/Source/core/platform/graphics/transforms/ScaleTransformOperation.h
index 4ab3f2a..fa9cdb8 100644
--- a/Source/core/platform/graphics/transforms/ScaleTransformOperation.h
+++ b/Source/core/platform/graphics/transforms/ScaleTransformOperation.h
@@ -75,7 +75,7 @@
     {
         ASSERT(type == SCALE_X || type == SCALE_Y || type == SCALE_Z || type == SCALE || type == SCALE_3D);
     }
-        
+
     double m_x;
     double m_y;
     double m_z;
diff --git a/Source/core/platform/graphics/transforms/SkewTransformOperation.cpp b/Source/core/platform/graphics/transforms/SkewTransformOperation.cpp
index 0706167..e620ea1 100644
--- a/Source/core/platform/graphics/transforms/SkewTransformOperation.cpp
+++ b/Source/core/platform/graphics/transforms/SkewTransformOperation.cpp
@@ -30,10 +30,10 @@
 {
     if (from && !from->isSameType(*this))
         return this;
-    
+
     if (blendToIdentity)
         return SkewTransformOperation::create(WebCore::blend(m_angleX, 0.0, progress), WebCore::blend(m_angleY, 0.0, progress), m_type);
-    
+
     const SkewTransformOperation* fromOp = static_cast<const SkewTransformOperation*>(from);
     double fromAngleX = fromOp ? fromOp->m_angleX : 0;
     double fromAngleY = fromOp ? fromOp->m_angleY : 0;
diff --git a/Source/core/platform/graphics/transforms/SkewTransformOperation.h b/Source/core/platform/graphics/transforms/SkewTransformOperation.h
index 6f04991..c64f8c8 100644
--- a/Source/core/platform/graphics/transforms/SkewTransformOperation.h
+++ b/Source/core/platform/graphics/transforms/SkewTransformOperation.h
@@ -59,14 +59,14 @@
     }
 
     virtual PassRefPtr<TransformOperation> blend(const TransformOperation* from, double progress, bool blendToIdentity = false);
-    
+
     SkewTransformOperation(double angleX, double angleY, OperationType type)
         : m_angleX(angleX)
         , m_angleY(angleY)
         , m_type(type)
     {
     }
-    
+
     double m_angleX;
     double m_angleY;
     OperationType m_type;
diff --git a/Source/core/platform/graphics/transforms/TransformOperation.h b/Source/core/platform/graphics/transforms/TransformOperation.h
index 7a4c952..31ca039 100644
--- a/Source/core/platform/graphics/transforms/TransformOperation.h
+++ b/Source/core/platform/graphics/transforms/TransformOperation.h
@@ -37,11 +37,11 @@
 class TransformOperation : public RefCounted<TransformOperation> {
 public:
     enum OperationType {
-        SCALE_X, SCALE_Y, SCALE, 
-        TRANSLATE_X, TRANSLATE_Y, TRANSLATE, 
+        SCALE_X, SCALE_Y, SCALE,
+        TRANSLATE_X, TRANSLATE_Y, TRANSLATE,
         ROTATE,
         ROTATE_Z = ROTATE,
-        SKEW_X, SKEW_Y, SKEW, 
+        SKEW_X, SKEW_Y, SKEW,
         MATRIX,
         SCALE_Z, SCALE_3D,
         TRANSLATE_Z, TRANSLATE_3D,
@@ -65,7 +65,7 @@
 
     virtual OperationType getOperationType() const = 0;
     virtual bool isSameType(const TransformOperation&) const { return false; }
-    
+
     bool is3DOperation() const
     {
         OperationType opType = getOperationType();
diff --git a/Source/core/platform/graphics/transforms/TransformOperations.cpp b/Source/core/platform/graphics/transforms/TransformOperations.cpp
index 6fd512f..e4eabf1 100644
--- a/Source/core/platform/graphics/transforms/TransformOperations.cpp
+++ b/Source/core/platform/graphics/transforms/TransformOperations.cpp
@@ -40,13 +40,13 @@
 {
     if (m_operations.size() != o.m_operations.size())
         return false;
-        
+
     unsigned s = m_operations.size();
     for (unsigned i = 0; i < s; i++) {
         if (*m_operations[i] != *o.m_operations[i])
             return false;
     }
-    
+
     return true;
 }
 
@@ -56,7 +56,7 @@
     // If the sizes of the function lists don't match, the lists don't match
     if (numOperations != other.operations().size())
         return false;
-    
+
     // If the types of each function are not the same, the lists don't match
     for (size_t i = 0; i < numOperations; ++i) {
         if (!operations()[i]->isSameType(*other.operations()[i]))
diff --git a/Source/core/platform/graphics/transforms/TransformOperations.h b/Source/core/platform/graphics/transforms/TransformOperations.h
index 39024bc..7c43a95 100644
--- a/Source/core/platform/graphics/transforms/TransformOperations.h
+++ b/Source/core/platform/graphics/transforms/TransformOperations.h
@@ -36,19 +36,19 @@
     WTF_MAKE_FAST_ALLOCATED;
 public:
     TransformOperations(bool makeIdentity = false);
-    
+
     bool operator==(const TransformOperations& o) const;
     bool operator!=(const TransformOperations& o) const
     {
         return !(*this == o);
     }
-    
+
     void apply(const FloatSize& sz, TransformationMatrix& t) const
     {
         for (unsigned i = 0; i < m_operations.size(); ++i)
             m_operations[i]->apply(t, sz);
     }
-    
+
     // Return true if any of the operation types are 3D operation types (even if the
     // values describe affine transforms)
     bool has3DOperation() const
@@ -58,14 +58,14 @@
                 return true;
         return false;
     }
-    
+
     bool operationsMatch(const TransformOperations&) const;
-    
+
     void clear()
     {
         m_operations.clear();
     }
-    
+
     Vector<RefPtr<TransformOperation> >& operations() { return m_operations; }
     const Vector<RefPtr<TransformOperation> >& operations() const { return m_operations; }
 
diff --git a/Source/core/platform/graphics/transforms/TransformState.cpp b/Source/core/platform/graphics/transforms/TransformState.cpp
index 51db25d..5f9e6bc 100644
--- a/Source/core/platform/graphics/transforms/TransformState.cpp
+++ b/Source/core/platform/graphics/transforms/TransformState.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -41,12 +41,12 @@
         m_lastPlanarQuad = other.m_lastPlanarQuad;
     m_accumulatingTransform = other.m_accumulatingTransform;
     m_direction = other.m_direction;
-    
+
     m_accumulatedTransform.clear();
 
     if (other.m_accumulatedTransform)
         m_accumulatedTransform = adoptPtr(new TransformationMatrix(*other.m_accumulatedTransform));
-        
+
     return *this;
 }
 
@@ -128,7 +128,7 @@
         // Make one if we started to accumulate
         m_accumulatedTransform = adoptPtr(new TransformationMatrix(transformFromContainer));
     }
-    
+
     if (accumulate == FlattenTransform) {
         const TransformationMatrix* finalTransform = m_accumulatedTransform ? m_accumulatedTransform.get() : &transformFromContainer;
         flattenWithTransform(*finalTransform, wasClamped);
@@ -147,7 +147,7 @@
         m_accumulatingTransform = false;
         return;
     }
-    
+
     flattenWithTransform(*m_accumulatedTransform, wasClamped);
 }
 
diff --git a/Source/core/platform/graphics/transforms/TransformState.h b/Source/core/platform/graphics/transforms/TransformState.h
index 5020213..638e417 100644
--- a/Source/core/platform/graphics/transforms/TransformState.h
+++ b/Source/core/platform/graphics/transforms/TransformState.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TransformState_h
@@ -50,7 +50,7 @@
         , m_direction(mappingDirection)
     {
     }
-    
+
     TransformState(TransformDirection mappingDirection, const FloatPoint& p)
         : m_lastPlanarPoint(p)
         , m_accumulatingTransform(false)
@@ -59,7 +59,7 @@
         , m_direction(mappingDirection)
     {
     }
-    
+
     TransformState(TransformDirection mappingDirection, const FloatQuad& quad)
         : m_lastPlanarQuad(quad)
         , m_accumulatingTransform(false)
@@ -68,11 +68,11 @@
         , m_direction(mappingDirection)
     {
     }
-    
+
     TransformState(const TransformState& other) { *this = other; }
 
     TransformState& operator=(const TransformState&);
-    
+
     void setQuad(const FloatQuad& quad)
     {
         // FIXME: this assumes that the quad being added is in the coordinate system of the current state.
@@ -105,7 +105,7 @@
     void translateMappedCoordinates(const LayoutSize&);
     void flattenWithTransform(const TransformationMatrix&, bool* wasClamped);
     void applyAccumulatedOffset();
-    
+
     FloatPoint m_lastPlanarPoint;
     FloatQuad m_lastPlanarQuad;
 
diff --git a/Source/core/platform/graphics/transforms/TransformationMatrix.cpp b/Source/core/platform/graphics/transforms/TransformationMatrix.cpp
index 1f81208..e95936b 100644
--- a/Source/core/platform/graphics/transforms/TransformationMatrix.cpp
+++ b/Source/core/platform/graphics/transforms/TransformationMatrix.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -56,16 +56,16 @@
 //
 // Adapted from Matrix Inversion by Richard Carling, Graphics Gems <http://tog.acm.org/GraphicsGems/index.html>.
 
-// EULA: The Graphics Gems code is copyright-protected. In other words, you cannot claim the text of the code 
-// as your own and resell it. Using the code is permitted in any program, product, or library, non-commercial 
-// or commercial. Giving credit is not required, though is a nice gesture. The code comes as-is, and if there 
-// are any flaws or problems with any Gems code, nobody involved with Gems - authors, editors, publishers, or 
-// webmasters - are to be held responsible. Basically, don't be a jerk, and remember that anything free comes 
+// EULA: The Graphics Gems code is copyright-protected. In other words, you cannot claim the text of the code
+// as your own and resell it. Using the code is permitted in any program, product, or library, non-commercial
+// or commercial. Giving credit is not required, though is a nice gesture. The code comes as-is, and if there
+// are any flaws or problems with any Gems code, nobody involved with Gems - authors, editors, publishers, or
+// webmasters - are to be held responsible. Basically, don't be a jerk, and remember that anything free comes
 // with no guarantee.
 
 // A clarification about the storage of matrix elements
 //
-// This class uses a 2 dimensional array internally to store the elements of the matrix.  The first index into 
+// This class uses a 2 dimensional array internally to store the elements of the matrix.  The first index into
 // the array refers to the column that the element lies in; the second index refers to the row.
 //
 // In other words, this is the layout of the matrix:
@@ -81,15 +81,15 @@
 const double SMALL_NUMBER = 1.e-8;
 
 // inverse(original_matrix, inverse_matrix)
-// 
+//
 // calculate the inverse of a 4x4 matrix
-// 
-// -1     
+//
+// -1
 // A  = ___1__ adjoint A
 //       det A
 
 //  double = determinant2x2(double a, double b, double c, double d)
-//  
+//
 //  calculate the determinant of a 2x2 matrix.
 
 static double determinant2x2(double a, double b, double c, double d)
@@ -98,10 +98,10 @@
 }
 
 //  double = determinant3x3(a1, a2, a3, b1, b2, b3, c1, c2, c3)
-//  
+//
 //  Calculate the determinant of a 3x3 matrix
 //  in the form
-// 
+//
 //      | a1,  b1,  c1 |
 //      | a2,  b2,  c2 |
 //      | a3,  b3,  c3 |
@@ -114,7 +114,7 @@
 }
 
 //  double = determinant4x4(matrix)
-//  
+//
 //  calculate the determinant of a 4x4 matrix.
 
 static double determinant4x4(const TransformationMatrix::Matrix4& m)
@@ -123,22 +123,22 @@
     // correct elements
 
     double a1 = m[0][0];
-    double b1 = m[0][1]; 
+    double b1 = m[0][1];
     double c1 = m[0][2];
     double d1 = m[0][3];
 
     double a2 = m[1][0];
-    double b2 = m[1][1]; 
+    double b2 = m[1][1];
     double c2 = m[1][2];
     double d2 = m[1][3];
 
-    double a3 = m[2][0]; 
+    double a3 = m[2][0];
     double b3 = m[2][1];
     double c3 = m[2][2];
     double d3 = m[2][3];
 
     double a4 = m[3][0];
-    double b4 = m[3][1]; 
+    double b4 = m[3][1];
     double c4 = m[3][2];
     double d4 = m[3][3];
 
@@ -156,11 +156,11 @@
 //         ij
 //
 //    deleting the ith row and jth column from A.
-// 
+//
 //                  i+j
 //   Let  b   = (-1)    a
 //        ij            ji
-// 
+//
 //  The matrix B = (b  ) is the adjoint of A
 //                   ij
 
@@ -169,12 +169,12 @@
     // Assign to individual variable names to aid
     // selecting correct values
     double a1 = matrix[0][0];
-    double b1 = matrix[0][1]; 
+    double b1 = matrix[0][1];
     double c1 = matrix[0][2];
     double d1 = matrix[0][3];
 
     double a2 = matrix[1][0];
-    double b2 = matrix[1][1]; 
+    double b2 = matrix[1][1];
     double c2 = matrix[1][2];
     double d2 = matrix[1][3];
 
@@ -184,7 +184,7 @@
     double d3 = matrix[2][3];
 
     double a4 = matrix[3][0];
-    double b4 = matrix[3][1]; 
+    double b4 = matrix[3][1];
     double c4 = matrix[3][2];
     double d4 = matrix[3][3];
 
@@ -193,17 +193,17 @@
     result[1][0]  = - determinant3x3(a2, a3, a4, c2, c3, c4, d2, d3, d4);
     result[2][0]  =   determinant3x3(a2, a3, a4, b2, b3, b4, d2, d3, d4);
     result[3][0]  = - determinant3x3(a2, a3, a4, b2, b3, b4, c2, c3, c4);
-        
+
     result[0][1]  = - determinant3x3(b1, b3, b4, c1, c3, c4, d1, d3, d4);
     result[1][1]  =   determinant3x3(a1, a3, a4, c1, c3, c4, d1, d3, d4);
     result[2][1]  = - determinant3x3(a1, a3, a4, b1, b3, b4, d1, d3, d4);
     result[3][1]  =   determinant3x3(a1, a3, a4, b1, b3, b4, c1, c3, c4);
-        
+
     result[0][2]  =   determinant3x3(b1, b2, b4, c1, c2, c4, d1, d2, d4);
     result[1][2]  = - determinant3x3(a1, a2, a4, c1, c2, c4, d1, d2, d4);
     result[2][2]  =   determinant3x3(a1, a2, a4, b1, b2, b4, d1, d2, d4);
     result[3][2]  = - determinant3x3(a1, a2, a4, b1, b2, b4, c1, c2, c4);
-        
+
     result[0][3]  = - determinant3x3(b1, b2, b3, c1, c2, c3, d1, d2, d3);
     result[1][3]  =   determinant3x3(a1, a2, a3, c1, c2, c3, d1, d2, d3);
     result[2][3]  = - determinant3x3(a1, a2, a3, b1, b2, b3, d1, d2, d3);
@@ -217,7 +217,7 @@
     adjoint(matrix, result);
 
     // Calculate the 4x4 determinant
-    // If the determinant is zero, 
+    // If the determinant is zero,
     // then the inverse matrix is not unique.
     double det = determinant4x4(matrix);
 
@@ -264,7 +264,7 @@
     return sqrt((a[0] * a[0]) + (a[1] * a[1]) + (a[2] * a[2]));
 }
 
-static void v3Scale(Vector3 v, double desiredLength) 
+static void v3Scale(Vector3 v, double desiredLength)
 {
     double len = v3Length(v);
     if (len != 0) {
@@ -275,7 +275,7 @@
     }
 }
 
-static double v3Dot(const Vector3 a, const Vector3 b) 
+static double v3Dot(const Vector3 a, const Vector3 b)
 {
     return (a[0] * b[0]) + (a[1] * b[1]) + (a[2] * b[2]);
 }
@@ -340,12 +340,12 @@
 
         Vector4 perspectivePoint;
         v4MulPointByMatrix(rightHandSide, transposedInversePerspectiveMatrix, perspectivePoint);
- 
+
         result.perspectiveX = perspectivePoint[0];
         result.perspectiveY = perspectivePoint[1];
         result.perspectiveZ = perspectivePoint[2];
         result.perspectiveW = perspectivePoint[3];
-        
+
         // Clear the perspective partition
         localMatrix[0][3] = localMatrix[1][3] = localMatrix[2][3] = 0;
         localMatrix[3][3] = 1;
@@ -354,7 +354,7 @@
         result.perspectiveX = result.perspectiveY = result.perspectiveZ = 0;
         result.perspectiveW = 1;
     }
-    
+
     // Next take care of translation (easy).
     result.translateX = localMatrix[3][0];
     localMatrix[3][0] = 0;
@@ -397,7 +397,7 @@
     v3Scale(row[2], 1.0);
     result.skewXZ /= result.scaleZ;
     result.skewYZ /= result.scaleZ;
- 
+
     // At this point, the matrix (in rows[]) is orthonormal.
     // Check for a coordinate system flip.  If the determinant
     // is -1, then negate the matrix and the scaling factors.
@@ -414,9 +414,9 @@
             row[i][2] *= -1;
         }
     }
- 
+
     // Now, get the rotations out, as described in the gem.
-    
+
     // FIXME - Add the ability to return either quaternions (which are
     // easier to recompose with) or Euler angles (rx, ry, rz), which
     // are easier for authors to deal with. The latter will only be useful
@@ -431,7 +431,7 @@
     //     ret.rotateX = atan2(-row[2][0], row[1][1]);
     //     ret.rotateZ = 0;
     // }
-    
+
     double s, t, x, y, z, w;
 
     t = row[0][0] + row[1][1] + row[2][2] + 1.0;
@@ -442,22 +442,22 @@
         x = (row[2][1] - row[1][2]) * s;
         y = (row[0][2] - row[2][0]) * s;
         z = (row[1][0] - row[0][1]) * s;
-    } else if (row[0][0] > row[1][1] && row[0][0] > row[2][2]) { 
-        s = sqrt (1.0 + row[0][0] - row[1][1] - row[2][2]) * 2.0; // S=4*qx 
+    } else if (row[0][0] > row[1][1] && row[0][0] > row[2][2]) {
+        s = sqrt (1.0 + row[0][0] - row[1][1] - row[2][2]) * 2.0; // S=4*qx
         x = 0.25 * s;
-        y = (row[0][1] + row[1][0]) / s; 
-        z = (row[0][2] + row[2][0]) / s; 
+        y = (row[0][1] + row[1][0]) / s;
+        z = (row[0][2] + row[2][0]) / s;
         w = (row[2][1] - row[1][2]) / s;
-    } else if (row[1][1] > row[2][2]) { 
+    } else if (row[1][1] > row[2][2]) {
         s = sqrt (1.0 + row[1][1] - row[0][0] - row[2][2]) * 2.0; // S=4*qy
-        x = (row[0][1] + row[1][0]) / s; 
+        x = (row[0][1] + row[1][0]) / s;
         y = 0.25 * s;
-        z = (row[1][2] + row[2][1]) / s; 
+        z = (row[1][2] + row[2][1]) / s;
         w = (row[0][2] - row[2][0]) / s;
-    } else { 
+    } else {
         s = sqrt(1.0 + row[2][2] - row[0][0] - row[1][1]) * 2.0; // S=4*qz
         x = (row[0][2] + row[2][0]) / s;
-        y = (row[1][2] + row[2][1]) / s; 
+        y = (row[1][2] + row[2][1]) / s;
         z = 0.25 * s;
         w = (row[1][0] - row[0][1]) / s;
     }
@@ -466,7 +466,7 @@
     result.quaternionY = y;
     result.quaternionZ = z;
     result.quaternionW = w;
-    
+
     return true;
 }
 
@@ -553,11 +553,11 @@
     // with the transform applied. Once we have that point we apply the
     // inverse transform to find the corresponding point in the source
     // space.
-    // 
+    //
     // Given a plane with normal Pn, and a ray starting at point R0 and
     // with direction defined by the vector Rd, we can find the
     // intersection point as a distance d from R0 in units of Rd by:
-    // 
+    //
     // d = -dot (Pn', R0) / dot (Pn', Rd)
     if (clamped)
         *clamped = false;
@@ -567,7 +567,7 @@
         // trace, and there is no well-defined value for the projection.
         return FloatPoint();
     }
-    
+
     double x = p.x();
     double y = p.y();
     double z = -(m13() * x + m23() * y + m43()) / m33();
@@ -610,7 +610,7 @@
 
     if (clamped)
         *clamped = clamped1 || clamped2 || clamped3 || clamped4;
-        
+
     // If all points on the quad had w < 0, then the entire quad would not be visible to the projected surface.
     bool everythingWasClipped = clamped1 && clamped2 && clamped3 && clamped4;
     if (everythingWasClipped)
@@ -717,7 +717,7 @@
     m_matrix[0][1] *= sx;
     m_matrix[0][2] *= sx;
     m_matrix[0][3] *= sx;
-    
+
     m_matrix[1][0] *= sy;
     m_matrix[1][1] *= sy;
     m_matrix[1][2] *= sy;
@@ -728,7 +728,7 @@
 TransformationMatrix& TransformationMatrix::scale3d(double sx, double sy, double sz)
 {
     scaleNonUniform(sx, sy);
-    
+
     m_matrix[2][0] *= sz;
     m_matrix[2][1] *= sz;
     m_matrix[2][2] *= sz;
@@ -741,7 +741,7 @@
     // Normalize the axis of rotation
     double length = sqrt(x * x + y * y + z * z);
     if (length == 0) {
-        // A direction vector that cannot be normalized, such as [0, 0, 0], will cause the rotation to not be applied. 
+        // A direction vector that cannot be normalized, such as [0, 0, 0], will cause the rotation to not be applied.
         return *this;
     } else if (length != 1) {
         x /= length;
@@ -754,7 +754,7 @@
 
     double sinTheta = sin(angle);
     double cosTheta = cos(angle);
-    
+
     TransformationMatrix mat;
 
     // Optimize cases where the axis is along a major axis
@@ -829,12 +829,12 @@
     rx = deg2rad(rx);
     ry = deg2rad(ry);
     rz = deg2rad(rz);
-    
+
     TransformationMatrix mat;
-    
+
     double sinTheta = sin(rz);
     double cosTheta = cos(rz);
-    
+
     mat.m_matrix[0][0] = cosTheta;
     mat.m_matrix[0][1] = sinTheta;
     mat.m_matrix[0][2] = 0.0;
@@ -847,12 +847,12 @@
     mat.m_matrix[0][3] = mat.m_matrix[1][3] = mat.m_matrix[2][3] = 0.0;
     mat.m_matrix[3][0] = mat.m_matrix[3][1] = mat.m_matrix[3][2] = 0.0;
     mat.m_matrix[3][3] = 1.0;
-    
+
     TransformationMatrix rmat(mat);
-    
+
     sinTheta = sin(ry);
     cosTheta = cos(ry);
-    
+
     mat.m_matrix[0][0] = cosTheta;
     mat.m_matrix[0][1] = 0.0;
     mat.m_matrix[0][2] = -sinTheta;
@@ -870,7 +870,7 @@
 
     sinTheta = sin(rx);
     cosTheta = cos(rx);
-    
+
     mat.m_matrix[0][0] = 1.0;
     mat.m_matrix[0][1] = 0.0;
     mat.m_matrix[0][2] = 0.0;
@@ -945,7 +945,7 @@
     // angles are in degrees. Switch to radians
     sx = deg2rad(sx);
     sy = deg2rad(sy);
-    
+
     TransformationMatrix mat;
     mat.m_matrix[0][1] = tan(sy); // note that the y shear goes in the first row
     mat.m_matrix[1][0] = tan(sx); // and the x shear in the second row
@@ -1204,7 +1204,7 @@
     _mm_store_pd(&m_matrix[3][2], accumulator);
 #else
     Matrix4 tmp;
-    
+
     tmp[0][0] = (mat.m_matrix[0][0] * m_matrix[0][0] + mat.m_matrix[0][1] * m_matrix[1][0]
                + mat.m_matrix[0][2] * m_matrix[2][0] + mat.m_matrix[0][3] * m_matrix[3][0]);
     tmp[0][1] = (mat.m_matrix[0][0] * m_matrix[0][1] + mat.m_matrix[0][1] * m_matrix[1][1]
@@ -1240,7 +1240,7 @@
                + mat.m_matrix[3][2] * m_matrix[2][2] + mat.m_matrix[3][3] * m_matrix[3][2]);
     tmp[3][3] = (mat.m_matrix[3][0] * m_matrix[0][3] + mat.m_matrix[3][1] * m_matrix[1][3]
                + mat.m_matrix[3][2] * m_matrix[2][3] + mat.m_matrix[3][3] * m_matrix[3][3]);
-    
+
     setMatrix(tmp);
 #endif
     return *this;
@@ -1283,25 +1283,25 @@
     return true;
 }
 
-TransformationMatrix TransformationMatrix::inverse() const 
+TransformationMatrix TransformationMatrix::inverse() const
 {
     if (isIdentityOrTranslation()) {
         // identity matrix
         if (m_matrix[3][0] == 0 && m_matrix[3][1] == 0 && m_matrix[3][2] == 0)
             return TransformationMatrix();
-        
+
         // translation
         return TransformationMatrix(1, 0, 0, 0,
                                     0, 1, 0, 0,
                                     0, 0, 1, 0,
                                     -m_matrix[3][0], -m_matrix[3][1], -m_matrix[3][2], 1);
     }
-    
+
     TransformationMatrix invMat;
     bool inverted = WebCore::inverse(m_matrix, invMat.m_matrix);
     if (!inverted)
         return TransformationMatrix();
-    
+
     return invMat;
 }
 
@@ -1309,15 +1309,15 @@
 {
     m_matrix[0][2] = 0;
     m_matrix[0][3] = 0;
-    
+
     m_matrix[1][2] = 0;
     m_matrix[1][3] = 0;
-    
+
     m_matrix[2][0] = 0;
     m_matrix[2][1] = 0;
     m_matrix[2][2] = 1;
     m_matrix[2][3] = 0;
-    
+
     m_matrix[3][2] = 0;
     m_matrix[3][3] = 1;
 }
@@ -1358,7 +1358,7 @@
 {
     if (from.isIdentity() && isIdentity())
         return;
-        
+
     // decompose
     DecomposedType fromDecomp;
     DecomposedType toDecomp;
@@ -1379,9 +1379,9 @@
     blendFloat(fromDecomp.perspectiveY, toDecomp.perspectiveY, progress);
     blendFloat(fromDecomp.perspectiveZ, toDecomp.perspectiveZ, progress);
     blendFloat(fromDecomp.perspectiveW, toDecomp.perspectiveW, progress);
-    
+
     slerp(&fromDecomp.quaternionX, &toDecomp.quaternionX, progress);
-        
+
     // recompose
     recompose(fromDecomp);
 }
@@ -1395,7 +1395,7 @@
         decomp.scaleY = 1;
         decomp.scaleZ = 1;
     }
-    
+
     if (!WebCore::decompose(m_matrix, decomp))
         return false;
     return true;
@@ -1404,16 +1404,16 @@
 void TransformationMatrix::recompose(const DecomposedType& decomp)
 {
     makeIdentity();
-    
+
     // first apply perspective
     m_matrix[0][3] = decomp.perspectiveX;
     m_matrix[1][3] = decomp.perspectiveY;
     m_matrix[2][3] = decomp.perspectiveZ;
     m_matrix[3][3] = decomp.perspectiveW;
-    
+
     // now translate
     translate3d(decomp.translateX, decomp.translateY, decomp.translateZ);
-    
+
     // apply rotation
     double xx = decomp.quaternionX * decomp.quaternionX;
     double xy = decomp.quaternionX * decomp.quaternionY;
@@ -1424,34 +1424,34 @@
     double yw = decomp.quaternionY * decomp.quaternionW;
     double zz = decomp.quaternionZ * decomp.quaternionZ;
     double zw = decomp.quaternionZ * decomp.quaternionW;
-    
+
     // Construct a composite rotation matrix from the quaternion values
-    TransformationMatrix rotationMatrix(1 - 2 * (yy + zz), 2 * (xy - zw), 2 * (xz + yw), 0, 
+    TransformationMatrix rotationMatrix(1 - 2 * (yy + zz), 2 * (xy - zw), 2 * (xz + yw), 0,
                            2 * (xy + zw), 1 - 2 * (xx + zz), 2 * (yz - xw), 0,
                            2 * (xz - yw), 2 * (yz + xw), 1 - 2 * (xx + yy), 0,
                            0, 0, 0, 1);
-    
+
     multiply(rotationMatrix);
-    
+
     // now apply skew
     if (decomp.skewYZ) {
         TransformationMatrix tmp;
         tmp.setM32(decomp.skewYZ);
         multiply(tmp);
     }
-    
+
     if (decomp.skewXZ) {
         TransformationMatrix tmp;
         tmp.setM31(decomp.skewXZ);
         multiply(tmp);
     }
-    
+
     if (decomp.skewXY) {
         TransformationMatrix tmp;
         tmp.setM21(decomp.skewXY);
         multiply(tmp);
     }
-    
+
     // finally, apply scale
     scale3d(decomp.scaleX, decomp.scaleY, decomp.scaleZ);
 }
diff --git a/Source/core/platform/graphics/transforms/TransformationMatrix.h b/Source/core/platform/graphics/transforms/TransformationMatrix.h
index 28b1abf..c28546b 100644
--- a/Source/core/platform/graphics/transforms/TransformationMatrix.h
+++ b/Source/core/platform/graphics/transforms/TransformationMatrix.h
@@ -74,23 +74,23 @@
 
     void setMatrix(double a, double b, double c, double d, double e, double f)
     {
-        m_matrix[0][0] = a; m_matrix[0][1] = b; m_matrix[0][2] = 0; m_matrix[0][3] = 0; 
-        m_matrix[1][0] = c; m_matrix[1][1] = d; m_matrix[1][2] = 0; m_matrix[1][3] = 0; 
-        m_matrix[2][0] = 0; m_matrix[2][1] = 0; m_matrix[2][2] = 1; m_matrix[2][3] = 0; 
+        m_matrix[0][0] = a; m_matrix[0][1] = b; m_matrix[0][2] = 0; m_matrix[0][3] = 0;
+        m_matrix[1][0] = c; m_matrix[1][1] = d; m_matrix[1][2] = 0; m_matrix[1][3] = 0;
+        m_matrix[2][0] = 0; m_matrix[2][1] = 0; m_matrix[2][2] = 1; m_matrix[2][3] = 0;
         m_matrix[3][0] = e; m_matrix[3][1] = f; m_matrix[3][2] = 0; m_matrix[3][3] = 1;
     }
-    
+
     void setMatrix(double m11, double m12, double m13, double m14,
                    double m21, double m22, double m23, double m24,
                    double m31, double m32, double m33, double m34,
                    double m41, double m42, double m43, double m44)
     {
-        m_matrix[0][0] = m11; m_matrix[0][1] = m12; m_matrix[0][2] = m13; m_matrix[0][3] = m14; 
-        m_matrix[1][0] = m21; m_matrix[1][1] = m22; m_matrix[1][2] = m23; m_matrix[1][3] = m24; 
-        m_matrix[2][0] = m31; m_matrix[2][1] = m32; m_matrix[2][2] = m33; m_matrix[2][3] = m34; 
+        m_matrix[0][0] = m11; m_matrix[0][1] = m12; m_matrix[0][2] = m13; m_matrix[0][3] = m14;
+        m_matrix[1][0] = m21; m_matrix[1][1] = m22; m_matrix[1][2] = m23; m_matrix[1][3] = m24;
+        m_matrix[2][0] = m31; m_matrix[2][1] = m32; m_matrix[2][2] = m33; m_matrix[2][3] = m34;
         m_matrix[3][0] = m41; m_matrix[3][1] = m42; m_matrix[3][2] = m43; m_matrix[3][3] = m44;
     }
-    
+
     TransformationMatrix& operator =(const TransformationMatrix &t)
     {
         setMatrix(t.m_matrix);
@@ -184,7 +184,7 @@
     void setM43(double f) { m_matrix[3][2] = f; }
     double m44() const { return m_matrix[3][3]; }
     void setM44(double f) { m_matrix[3][3] = f; }
-    
+
     double a() const { return m_matrix[0][0]; }
     void setA(double a) { m_matrix[0][0] = a; }
 
@@ -209,22 +209,22 @@
     TransformationMatrix& scale(double);
     TransformationMatrix& scaleNonUniform(double sx, double sy);
     TransformationMatrix& scale3d(double sx, double sy, double sz);
-    
+
     TransformationMatrix& rotate(double d) { return rotate3d(0, 0, d); }
     TransformationMatrix& rotateFromVector(double x, double y);
     TransformationMatrix& rotate3d(double rx, double ry, double rz);
-    
+
     // The vector (x,y,z) is normalized if it's not already. A vector of
     // (0,0,0) uses a vector of (0,0,1).
     TransformationMatrix& rotate3d(double x, double y, double z, double angle);
-    
+
     TransformationMatrix& translate(double tx, double ty);
     TransformationMatrix& translate3d(double tx, double ty, double tz);
 
     // translation added with a post-multiply
     TransformationMatrix& translateRight(double tx, double ty);
     TransformationMatrix& translateRight3d(double tx, double ty, double tz);
-    
+
     TransformationMatrix& flipX();
     TransformationMatrix& flipY();
     TransformationMatrix& skew(double angleX, double angleY);
@@ -251,15 +251,15 @@
         double translateX, translateY, translateZ;
         double perspectiveX, perspectiveY, perspectiveZ, perspectiveW;
     } DecomposedType;
-    
+
     bool decompose(DecomposedType& decomp) const;
     void recompose(const DecomposedType& decomp);
-    
+
     void blend(const TransformationMatrix& from, double progress);
 
     bool isAffine() const
     {
-        return (m13() == 0 && m14() == 0 && m23() == 0 && m24() == 0 && 
+        return (m13() == 0 && m14() == 0 && m23() == 0 && m24() == 0 &&
                 m31() == 0 && m32() == 0 && m33() == 1 && m34() == 0 && m43() == 0 && m44() == 1);
     }
 
@@ -295,7 +295,7 @@
     {
         return multiply(t);
     }
-    
+
     // result = *this * t
     TransformationMatrix operator*(const TransformationMatrix& t) const
     {
@@ -318,7 +318,7 @@
 
     // This method returns the matrix without 3D components.
     TransformationMatrix to2dTransform() const;
-    
+
     typedef float FloatMatrix4[16];
     void toColumnMajorFloatArray(FloatMatrix4& result) const;
 
diff --git a/Source/core/platform/graphics/transforms/TranslateTransformOperation.cpp b/Source/core/platform/graphics/transforms/TranslateTransformOperation.cpp
index 76d0ee6..5e5404f 100644
--- a/Source/core/platform/graphics/transforms/TranslateTransformOperation.cpp
+++ b/Source/core/platform/graphics/transforms/TranslateTransformOperation.cpp
@@ -28,10 +28,10 @@
 {
     if (from && !from->isSameType(*this))
         return this;
-    
+
     if (blendToIdentity)
-        return TranslateTransformOperation::create(Length(m_x.type()).blend(m_x, progress), 
-                                                   Length(m_y.type()).blend(m_y, progress), 
+        return TranslateTransformOperation::create(Length(m_x.type()).blend(m_x, progress),
+                                                   Length(m_y.type()).blend(m_y, progress),
                                                    Length(m_z.type()).blend(m_z, progress), m_type);
 
     const TranslateTransformOperation* fromOp = static_cast<const TranslateTransformOperation*>(from);
diff --git a/Source/core/platform/image-decoders/bmp/BMPImageDecoder.cpp b/Source/core/platform/image-decoders/bmp/BMPImageDecoder.cpp
index 40a188c..e4e1e90 100644
--- a/Source/core/platform/image-decoders/bmp/BMPImageDecoder.cpp
+++ b/Source/core/platform/image-decoders/bmp/BMPImageDecoder.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/image-decoders/bmp/BMPImageDecoder.h b/Source/core/platform/image-decoders/bmp/BMPImageDecoder.h
index 4cf7b4d..1302484 100644
--- a/Source/core/platform/image-decoders/bmp/BMPImageDecoder.h
+++ b/Source/core/platform/image-decoders/bmp/BMPImageDecoder.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/image-decoders/bmp/BMPImageReader.cpp b/Source/core/platform/image-decoders/bmp/BMPImageReader.cpp
index e2f18ae..e062eb0 100644
--- a/Source/core/platform/image-decoders/bmp/BMPImageReader.cpp
+++ b/Source/core/platform/image-decoders/bmp/BMPImageReader.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -338,7 +338,7 @@
         if (!m_isOS22x || (m_infoHeader.biBitCount != 24))
             return false;
         break;
-    
+
     default:
         // Some type we don't understand.  This should have been caught in
         // readInfoHeader().
diff --git a/Source/core/platform/image-decoders/bmp/BMPImageReader.h b/Source/core/platform/image-decoders/bmp/BMPImageReader.h
index 8a98d87..066a26c 100644
--- a/Source/core/platform/image-decoders/bmp/BMPImageReader.h
+++ b/Source/core/platform/image-decoders/bmp/BMPImageReader.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/image-decoders/gif/GIFImageDecoder.cpp b/Source/core/platform/image-decoders/gif/GIFImageDecoder.cpp
index 9626d7b..c620e1b 100644
--- a/Source/core/platform/image-decoders/gif/GIFImageDecoder.cpp
+++ b/Source/core/platform/image-decoders/gif/GIFImageDecoder.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -170,7 +170,7 @@
         return false;
 
     ImageFrame::PixelData* currentAddress = buffer.getAddr(xBegin, yBegin);
-    // Write one row's worth of data into the frame.  
+    // Write one row's worth of data into the frame.
     for (int x = xBegin; x < xEnd; ++x) {
         const unsigned char sourceValue = rowBuffer[x - frameContext->xOffset];
         if ((!frameContext->isTransparent || (sourceValue != frameContext->tpixel)) && (sourceValue < colorMapSize)) {
@@ -342,7 +342,7 @@
     // Initialize the frame rect in our buffer.
     const GIFFrameContext* frameContext = m_reader->frameContext(frameIndex);
     ImageFrame* const buffer = &m_frameBufferCache[frameIndex];
-    
+
     size_t requiredPreviousFrameIndex = buffer->requiredPreviousFrameIndex();
     if (requiredPreviousFrameIndex == notFound) {
         // This frame doesn't rely on any previous data.
diff --git a/Source/core/platform/image-decoders/gif/GIFImageReader.cpp b/Source/core/platform/image-decoders/gif/GIFImageReader.cpp
index 22c44a9..bedb65d 100644
--- a/Source/core/platform/image-decoders/gif/GIFImageReader.cpp
+++ b/Source/core/platform/image-decoders/gif/GIFImageReader.cpp
@@ -578,7 +578,7 @@
 
         case GIFApplicationExtension: {
             // Check for netscape application extension.
-            if (m_bytesToConsume == 11 
+            if (m_bytesToConsume == 11
                 && (!strncmp((char*)currentComponent, "NETSCAPE2.0", 11) || !strncmp((char*)currentComponent, "ANIMEXTS1.0", 11)))
                 GETN(1, GIFNetscapeExtensionBlock);
             else
diff --git a/Source/core/platform/image-decoders/gif/GIFImageReader.h b/Source/core/platform/image-decoders/gif/GIFImageReader.h
index c66d017..eef86f9 100644
--- a/Source/core/platform/image-decoders/gif/GIFImageReader.h
+++ b/Source/core/platform/image-decoders/gif/GIFImageReader.h
@@ -58,7 +58,7 @@
     GIFType,
     GIFGlobalHeader,
     GIFGlobalColormap,
-    GIFImageStart,            
+    GIFImageStart,
     GIFImageHeader,
     GIFImageColormap,
     GIFImageBody,
@@ -161,7 +161,7 @@
     size_t localColormapPosition; // Per-image colormap.
     int localColormapSize; // Size of local colormap array.
     int datasize;
-    
+
     bool isLocalColormapDefined : 1;
     bool progressiveDisplay : 1; // If true, do Haeberli interlace hack.
     bool interlaced : 1; // True, if scanlines arrive interlaced order.
@@ -191,7 +191,7 @@
         , m_isDataSizeDefined(false)
     {
     }
-    
+
     ~GIFFrameContext()
     {
     }
@@ -310,7 +310,7 @@
     GIFState m_state; // Current decoder master state.
     size_t m_bytesToConsume; // Number of bytes to consume for next stage of parsing.
     size_t m_bytesRead; // Number of bytes processed.
-    
+
     // Global (multi-image) state.
     int m_version; // Either 89 for GIF89 or 87 for GIF87.
     unsigned m_screenWidth; // Logical screen width & height.
@@ -319,7 +319,7 @@
     size_t m_globalColormapPosition; // (3* MAX_COLORS in size) Default colormap if local not supplied, 3 bytes for each color.
     int m_globalColormapSize; // Size of global colormap array.
     int m_loopCount; // Netscape specific extension block to control the number of animation loops a GIF renders.
-    
+
     Vector<OwnPtr<GIFFrameContext> > m_frames;
 
     RefPtr<WebCore::SharedBuffer> m_data;
diff --git a/Source/core/platform/image-decoders/ico/ICOImageDecoder.cpp b/Source/core/platform/image-decoders/ico/ICOImageDecoder.cpp
index bdc1b4f..a5f4f7f 100644
--- a/Source/core/platform/image-decoders/ico/ICOImageDecoder.cpp
+++ b/Source/core/platform/image-decoders/ico/ICOImageDecoder.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/image-decoders/ico/ICOImageDecoder.h b/Source/core/platform/image-decoders/ico/ICOImageDecoder.h
index fa88f10..4c27435 100644
--- a/Source/core/platform/image-decoders/ico/ICOImageDecoder.h
+++ b/Source/core/platform/image-decoders/ico/ICOImageDecoder.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/image-decoders/jpeg/JPEGImageDecoder.h b/Source/core/platform/image-decoders/jpeg/JPEGImageDecoder.h
index f21f0dc..b63f058 100644
--- a/Source/core/platform/image-decoders/jpeg/JPEGImageDecoder.h
+++ b/Source/core/platform/image-decoders/jpeg/JPEGImageDecoder.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef JPEGImageDecoder_h
diff --git a/Source/core/platform/image-decoders/png/PNGImageDecoder.h b/Source/core/platform/image-decoders/png/PNGImageDecoder.h
index be40d95..bb771f6 100644
--- a/Source/core/platform/image-decoders/png/PNGImageDecoder.h
+++ b/Source/core/platform/image-decoders/png/PNGImageDecoder.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PNGImageDecoder_h
diff --git a/Source/core/platform/image-decoders/webp/WEBPImageDecoder.cpp b/Source/core/platform/image-decoders/webp/WEBPImageDecoder.cpp
index da5252b..c356d9b 100644
--- a/Source/core/platform/image-decoders/webp/WEBPImageDecoder.cpp
+++ b/Source/core/platform/image-decoders/webp/WEBPImageDecoder.cpp
@@ -36,7 +36,6 @@
 #endif
 
 #include "RuntimeEnabledFeatures.h"
-#include "webp/format_constants.h"
 
 #if CPU(BIG_ENDIAN) || CPU(MIDDLE_ENDIAN)
 inline WEBP_CSP_MODE outputMode(bool hasAlpha) { return hasAlpha ? MODE_rgbA : MODE_RGBA; }
@@ -205,7 +204,8 @@
 
     m_haveAlreadyParsedThisData = true;
 
-    if (m_data->size() < RIFF_HEADER_SIZE + CHUNK_HEADER_SIZE)
+    const unsigned webpHeaderSize = 20;
+    if (m_data->size() < webpHeaderSize)
         return false; // Wait for headers so that WebPDemuxPartial doesn't return null.
 
     WebPDemuxDelete(m_demux);
diff --git a/Source/core/platform/image-encoders/skia/JPEGImageEncoder.cpp b/Source/core/platform/image-encoders/skia/JPEGImageEncoder.cpp
index 1fee547..f19c5c1 100644
--- a/Source/core/platform/image-encoders/skia/JPEGImageEncoder.cpp
+++ b/Source/core/platform/image-encoders/skia/JPEGImageEncoder.cpp
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 2010, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
diff --git a/Source/core/platform/image-encoders/skia/JPEGImageEncoder.h b/Source/core/platform/image-encoders/skia/JPEGImageEncoder.h
index f8013ee..ca3ef48 100644
--- a/Source/core/platform/image-encoders/skia/JPEGImageEncoder.h
+++ b/Source/core/platform/image-encoders/skia/JPEGImageEncoder.h
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 2010, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
diff --git a/Source/core/platform/image-encoders/skia/PNGImageEncoder.h b/Source/core/platform/image-encoders/skia/PNGImageEncoder.h
index 83c9e6c..a8f0ea5 100644
--- a/Source/core/platform/image-encoders/skia/PNGImageEncoder.h
+++ b/Source/core/platform/image-encoders/skia/PNGImageEncoder.h
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 2010, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
diff --git a/Source/core/platform/mac/BlockExceptions.h b/Source/core/platform/mac/BlockExceptions.h
index b272f7e..9761cb5 100644
--- a/Source/core/platform/mac/BlockExceptions.h
+++ b/Source/core/platform/mac/BlockExceptions.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #import <Foundation/NSException.h>
diff --git a/Source/core/platform/mac/LocalCurrentGraphicsContext.h b/Source/core/platform/mac/LocalCurrentGraphicsContext.h
index 14ca45d..72780e3 100644
--- a/Source/core/platform/mac/LocalCurrentGraphicsContext.h
+++ b/Source/core/platform/mac/LocalCurrentGraphicsContext.h
@@ -45,7 +45,7 @@
     WTF_MAKE_NONCOPYABLE(ContextContainer);
 public:
     ContextContainer(GraphicsContext*);
-    
+
     // This synchronizes the CGContext to reflect the current SkCanvas state.
     // The implementation may not return the same CGContext each time.
     CGContextRef context() { return m_skiaBitLocker.cgContext(); }
diff --git a/Source/core/platform/mac/NSScrollerImpDetails.h b/Source/core/platform/mac/NSScrollerImpDetails.h
index 309e2d2..bc260f0 100644
--- a/Source/core/platform/mac/NSScrollerImpDetails.h
+++ b/Source/core/platform/mac/NSScrollerImpDetails.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WebCore_NSScrollerImpDetails_h
diff --git a/Source/core/platform/mac/ScrollAnimatorMac.h b/Source/core/platform/mac/ScrollAnimatorMac.h
index c557196..92d9b52 100644
--- a/Source/core/platform/mac/ScrollAnimatorMac.h
+++ b/Source/core/platform/mac/ScrollAnimatorMac.h
@@ -94,7 +94,7 @@
 
     virtual void cancelAnimations();
     virtual void setIsActive();
-    
+
     virtual void notifyPositionChanged(const FloatSize& delta);
     virtual void contentAreaWillPaint() const;
     virtual void mouseEnteredContentArea() const;
diff --git a/Source/core/platform/mac/ScrollElasticityController.h b/Source/core/platform/mac/ScrollElasticityController.h
index 70bb62a..6a032ac 100644
--- a/Source/core/platform/mac/ScrollElasticityController.h
+++ b/Source/core/platform/mac/ScrollElasticityController.h
@@ -39,7 +39,7 @@
 
 class ScrollElasticityControllerClient {
 protected:
-    virtual ~ScrollElasticityControllerClient() { } 
+    virtual ~ScrollElasticityControllerClient() { }
 
 public:
     virtual bool allowsHorizontalStretching() = 0;
@@ -81,7 +81,7 @@
     bool m_inScrollGesture;
     bool m_momentumScrollInProgress;
     bool m_ignoreMomentumScrolls;
-    
+
     CFTimeInterval m_lastMomentumScrollTimestamp;
     FloatSize m_overflowScrollDelta;
     FloatSize m_stretchScrollForce;
diff --git a/Source/core/platform/mac/ScrollbarThemeMac.h b/Source/core/platform/mac/ScrollbarThemeMac.h
index 847b70e..16d008a 100644
--- a/Source/core/platform/mac/ScrollbarThemeMac.h
+++ b/Source/core/platform/mac/ScrollbarThemeMac.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ScrollbarThemeMac_h
@@ -42,7 +42,7 @@
     virtual void updateEnabledState(ScrollbarThemeClient*);
 
     virtual int scrollbarThickness(ScrollbarControlSize = RegularScrollbar);
-    
+
     virtual bool supportsControlTints() const { return true; }
     virtual bool usesOverlayScrollbars() const;
     virtual void updateScrollbarOverlayStyle(ScrollbarThemeClient*);
@@ -61,7 +61,12 @@
     static bool isCurrentlyDrawingIntoLayer();
     static void setIsCurrentlyDrawingIntoLayer(bool);
 
+    virtual bool paint(ScrollbarThemeClient*, GraphicsContext*, const IntRect& damageRect);
+    virtual void paintOverhangAreas(ScrollView*, GraphicsContext*, const IntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRect& dirtyRect);
+    virtual void paintTickmarks(GraphicsContext*, ScrollbarThemeClient*, const IntRect&) OVERRIDE;
+
 protected:
+
     virtual bool hasButtons(ScrollbarThemeClient*);
     virtual bool hasThumb(ScrollbarThemeClient*);
 
@@ -72,10 +77,14 @@
     virtual int maxOverlapBetweenPages() { return 40; }
 
     virtual int minimumThumbLength(ScrollbarThemeClient*);
-    
+
     virtual bool shouldCenterOnThumb(ScrollbarThemeClient*, const PlatformMouseEvent&);
     virtual bool shouldDragDocumentInsteadOfThumb(ScrollbarThemeClient*, const PlatformMouseEvent&);
     int scrollbarPartToHIPressedState(ScrollbarPart);
+
+    void paintGivenTickmarks(GraphicsContext*, ScrollbarThemeClient*, const IntRect&, const Vector<IntRect>&);
+
+    RefPtr<Pattern> m_overhangPattern;
 };
 
 }
diff --git a/Source/core/platform/mac/ScrollbarThemeMac.mm b/Source/core/platform/mac/ScrollbarThemeMac.mm
index 3461647..25f83a9 100644
--- a/Source/core/platform/mac/ScrollbarThemeMac.mm
+++ b/Source/core/platform/mac/ScrollbarThemeMac.mm
@@ -27,14 +27,22 @@
 #include "core/platform/mac/ScrollbarThemeMac.h"
 
 #include <Carbon/Carbon.h>
+#include "core/page/FrameView.h"
 #include "core/platform/PlatformMouseEvent.h"
 #include "core/platform/ScrollView.h"
+#include "core/platform/graphics/Gradient.h"
+#include "core/platform/graphics/GraphicsContext.h"
+#include "core/platform/graphics/GraphicsContextStateSaver.h"
 #include "core/platform/graphics/GraphicsLayer.h"
 #include "core/platform/graphics/ImageBuffer.h"
 #include "core/platform/graphics/mac/ColorMac.h"
 #include "core/platform/mac/LocalCurrentGraphicsContext.h"
 #include "core/platform/mac/NSScrollerImpDetails.h"
 #include "core/platform/mac/ScrollAnimatorMac.h"
+#include "public/platform/mac/WebThemeEngine.h"
+#include "public/platform/Platform.h"
+#include "public/platform/WebRect.h"
+#include "skia/ext/skia_utils_mac.h"
 #include "wtf/HashMap.h"
 #include "wtf/StdLibExtras.h"
 #include "wtf/TemporaryChange.h"
@@ -155,6 +163,24 @@
     }
 }
 
+ScrollbarTheme* ScrollbarTheme::nativeTheme()
+{
+    DEFINE_STATIC_LOCAL(ScrollbarThemeMac, theme, ());
+    return &theme;
+}
+
+static WebKit::WebThemeEngine::State scrollbarStateToThemeState(ScrollbarThemeClient* scrollbar)
+{
+    if (!scrollbar->enabled())
+        return WebKit::WebThemeEngine::StateDisabled;
+    if (!scrollbar->isScrollableAreaActive())
+        return WebKit::WebThemeEngine::StateInactive;
+    if (scrollbar->pressedPart() == ThumbPart)
+        return WebKit::WebThemeEngine::StatePressed;
+
+    return WebKit::WebThemeEngine::StateActive;
+}
+
 void ScrollbarThemeMac::registerScrollbar(ScrollbarThemeClient* scrollbar)
 {
     if (isScrollbarOverlayAPIAvailable()) {
@@ -197,6 +223,369 @@
     g_isCurrentlyDrawingIntoLayer = b;
 }
 
+static void scrollbarPainterPaintTrack(ScrollbarPainter scrollbarPainter, bool enabled, double value, CGFloat proportion, CGRect frameRect)
+{
+    [scrollbarPainter setEnabled:enabled];
+    [scrollbarPainter setBoundsSize: NSSizeFromCGSize(frameRect.size)];
+    [scrollbarPainter setDoubleValue:value];
+    [scrollbarPainter setKnobProportion:proportion];
+
+    // The scrollbar's frameRect includes a side inset for overlay scrollers, so we have to use the
+    // trackWidth for drawKnobSlotInRect
+    NSRect trackRect;
+    if ([scrollbarPainter isHorizontal])
+        trackRect = NSMakeRect(0, 0, frameRect.size.width, [scrollbarPainter trackWidth]);
+    else
+        trackRect = NSMakeRect(0, 0, [scrollbarPainter trackWidth], frameRect.size.height);
+    [scrollbarPainter drawKnobSlotInRect:trackRect highlight:NO];
+}
+
+// Override ScrollbarThemeMac::paint() to add support for the following:
+//     - drawing using WebThemeEngine functions
+//     - drawing tickmarks
+//     - Skia specific changes
+bool ScrollbarThemeMac::paint(ScrollbarThemeClient* scrollbar, GraphicsContext* context, const IntRect& damageRect)
+{
+    // Get the tickmarks for the frameview.
+    Vector<IntRect> tickmarks;
+    scrollbar->getTickmarks(tickmarks);
+
+    if (isScrollbarOverlayAPIAvailable()) {
+        float value = 0;
+        float overhang = 0;
+
+        if (scrollbar->currentPos() < 0) {
+            // Scrolled past the top.
+            value = 0;
+            overhang = -scrollbar->currentPos();
+        } else if (scrollbar->visibleSize() + scrollbar->currentPos() > scrollbar->totalSize()) {
+            // Scrolled past the bottom.
+            value = 1;
+            overhang = scrollbar->currentPos() + scrollbar->visibleSize() - scrollbar->totalSize();
+        } else {
+            // Within the bounds of the scrollable area.
+            int maximum = scrollbar->maximum();
+            if (maximum > 0)
+                value = scrollbar->currentPos() / maximum;
+            else
+                value = 0;
+        }
+
+        setIsCurrentlyDrawingIntoLayer(false);
+
+        CGFloat oldKnobAlpha = 0;
+        CGFloat oldTrackAlpha = 0;
+        BOOL oldIsExpanded = NO;
+        bool hasTickmarks = tickmarks.size() > 0 && scrollbar->orientation() == VerticalScrollbar;
+        ScrollbarPainter scrollbarPainter = painterForScrollbar(scrollbar);
+        if (hasTickmarks) {
+            scrollbar->setIsAlphaLocked(true);
+            oldKnobAlpha = [scrollbarPainter knobAlpha];
+            [scrollbarPainter setKnobAlpha:1.0];
+            oldTrackAlpha = [scrollbarPainter trackAlpha];
+            [scrollbarPainter setTrackAlpha:1.0];
+            if ([scrollbarPainter respondsToSelector:@selector(setExpanded:)]) {
+              oldIsExpanded = [scrollbarPainter isExpanded];
+              [scrollbarPainter setExpanded:YES];
+            }
+        } else
+            scrollbar->setIsAlphaLocked(false);
+
+        GraphicsContextStateSaver stateSaver(*context);
+        context->clip(damageRect);
+        context->translate(scrollbar->frameRect().x(), scrollbar->frameRect().y());
+        LocalCurrentGraphicsContext localContext(context);
+        scrollbarPainterPaintTrack(scrollbarPainter,
+                                   scrollbar->enabled(),
+                                   value,
+                                   (static_cast<CGFloat>(scrollbar->visibleSize()) - overhang) / scrollbar->totalSize(),
+                                   scrollbar->frameRect());
+
+        IntRect tickmarkTrackRect(IntPoint(), trackRect(scrollbar, false).size());
+        if (tickmarkTrackRect.width() <= 10) {
+            // For narrow scrollbars inset by 1 on the left and 3 on the right.
+            tickmarkTrackRect.setX(tickmarkTrackRect.x() + 1);
+            tickmarkTrackRect.setWidth(tickmarkTrackRect.width() - 4);
+        } else {
+            // For wide scrollbars inset by 2 on the left and 3 on the right.
+            tickmarkTrackRect.setX(tickmarkTrackRect.x() + 2);
+            tickmarkTrackRect.setWidth(tickmarkTrackRect.width() - 5);
+        }
+        paintGivenTickmarks(context, scrollbar, tickmarkTrackRect, tickmarks);
+
+        if (scrollbar->enabled())
+            [scrollbarPainter drawKnob];
+
+        setIsCurrentlyDrawingIntoLayer(false);
+
+        if (hasTickmarks) {
+            [scrollbarPainter setKnobAlpha:oldKnobAlpha];
+            [scrollbarPainter setTrackAlpha:oldTrackAlpha];
+            if ([scrollbarPainter respondsToSelector:@selector(setExpanded:)])
+              [scrollbarPainter setExpanded:oldIsExpanded];
+        }
+
+        return true;
+    }
+
+    HIThemeTrackDrawInfo trackInfo;
+    trackInfo.version = 0;
+    trackInfo.kind = scrollbar->controlSize() == RegularScrollbar ? kThemeMediumScrollBar : kThemeSmallScrollBar;
+    trackInfo.bounds = scrollbar->frameRect();
+    trackInfo.min = 0;
+    trackInfo.max = scrollbar->maximum();
+    trackInfo.value = scrollbar->currentPos();
+    trackInfo.trackInfo.scrollbar.viewsize = scrollbar->visibleSize();
+    trackInfo.attributes = 0;
+    if (scrollbar->orientation() == HorizontalScrollbar)
+        trackInfo.attributes |= kThemeTrackHorizontal;
+
+    if (!scrollbar->enabled())
+        trackInfo.enableState = kThemeTrackDisabled;
+    else
+        trackInfo.enableState = scrollbar->isScrollableAreaActive() ? kThemeTrackActive : kThemeTrackInactive;
+
+    if (!hasButtons(scrollbar))
+        trackInfo.enableState = kThemeTrackNothingToScroll;
+    trackInfo.trackInfo.scrollbar.pressState = scrollbarPartToHIPressedState(scrollbar->pressedPart());
+
+    SkCanvas* canvas = context->canvas();
+    CGAffineTransform currentCTM = gfx::SkMatrixToCGAffineTransform(canvas->getTotalMatrix());
+
+    // The Aqua scrollbar is buggy when rotated and scaled.  We will just draw into a bitmap if we detect a scale or rotation.
+    bool canDrawDirectly = currentCTM.a == 1.0f && currentCTM.b == 0.0f && currentCTM.c == 0.0f && (currentCTM.d == 1.0f || currentCTM.d == -1.0f);
+    GraphicsContext* drawingContext = context;
+    OwnPtr<ImageBuffer> imageBuffer;
+    if (!canDrawDirectly) {
+        trackInfo.bounds = IntRect(IntPoint(), scrollbar->frameRect().size());
+
+        IntRect bufferRect(scrollbar->frameRect());
+        bufferRect.intersect(damageRect);
+        bufferRect.move(-scrollbar->frameRect().x(), -scrollbar->frameRect().y());
+
+        imageBuffer = ImageBuffer::create(bufferRect.size());
+        if (!imageBuffer)
+            return true;
+
+        drawingContext = imageBuffer->context();
+    }
+
+    // Draw thumbless.
+    gfx::SkiaBitLocker bitLocker(drawingContext->canvas());
+    CGContextRef cgContext = bitLocker.cgContext();
+    HIThemeDrawTrack(&trackInfo, 0, cgContext, kHIThemeOrientationNormal);
+
+    IntRect tickmarkTrackRect = trackRect(scrollbar, false);
+    if (!canDrawDirectly) {
+        tickmarkTrackRect.setX(0);
+        tickmarkTrackRect.setY(0);
+    }
+    // The ends are rounded and the thumb doesn't go there.
+    tickmarkTrackRect.inflateY(-tickmarkTrackRect.width());
+    // Inset a bit.
+    tickmarkTrackRect.setX(tickmarkTrackRect.x() + 2);
+    tickmarkTrackRect.setWidth(tickmarkTrackRect.width() - 5);
+    paintGivenTickmarks(drawingContext, scrollbar, tickmarkTrackRect, tickmarks);
+
+    if (hasThumb(scrollbar)) {
+        WebKit::WebThemeEngine::ScrollbarInfo scrollbarInfo;
+        scrollbarInfo.orientation = scrollbar->orientation() == HorizontalScrollbar ? WebKit::WebThemeEngine::ScrollbarOrientationHorizontal : WebKit::WebThemeEngine::ScrollbarOrientationVertical;
+        scrollbarInfo.parent = scrollbar->isScrollViewScrollbar() ? WebKit::WebThemeEngine::ScrollbarParentScrollView : WebKit::WebThemeEngine::ScrollbarParentRenderLayer;
+        scrollbarInfo.maxValue = scrollbar->maximum();
+        scrollbarInfo.currentValue = scrollbar->currentPos();
+        scrollbarInfo.visibleSize = scrollbar->visibleSize();
+        scrollbarInfo.totalSize = scrollbar->totalSize();
+
+        WebKit::WebCanvas* webCanvas = drawingContext->canvas();
+        WebKit::Platform::current()->themeEngine()->paintScrollbarThumb(
+            webCanvas,
+            scrollbarStateToThemeState(scrollbar),
+            scrollbar->controlSize() == RegularScrollbar ? WebKit::WebThemeEngine::SizeRegular : WebKit::WebThemeEngine::SizeSmall,
+            WebKit::WebRect(scrollbar->frameRect()),
+            scrollbarInfo);
+    }
+
+    if (!canDrawDirectly)
+        context->drawImageBuffer(imageBuffer.get(), scrollbar->frameRect().location());
+
+    return true;
+}
+
+void ScrollbarThemeMac::paintGivenTickmarks(GraphicsContext* context, ScrollbarThemeClient* scrollbar, const IntRect& rect, const Vector<IntRect>& tickmarks)
+{
+    if (scrollbar->orientation() != VerticalScrollbar)
+        return;
+
+    if (rect.height() <= 0 || rect.width() <= 0)
+        return;  // nothing to draw on.
+
+    if (!tickmarks.size())
+        return;
+
+    GraphicsContextStateSaver stateSaver(*context);
+    context->setShouldAntialias(false);
+    context->setStrokeColor(Color(0xCC, 0xAA, 0x00, 0xFF));
+    context->setFillColor(Color(0xFF, 0xDD, 0x00, 0xFF));
+
+    for (Vector<IntRect>::const_iterator i = tickmarks.begin(); i != tickmarks.end(); ++i) {
+        // Calculate how far down (in %) the tick-mark should appear.
+        const float percent = static_cast<float>(i->y()) / scrollbar->totalSize();
+        if (percent < 0.0 || percent > 1.0)
+            continue;
+
+        // Calculate how far down (in pixels) the tick-mark should appear.
+        const int yPos = rect.y() + (rect.height() * percent);
+
+        // Paint.
+        FloatRect tickRect(rect.x(), yPos, rect.width(), 2);
+        context->fillRect(tickRect);
+        context->strokeRect(tickRect, 1);
+    }
+}
+
+void ScrollbarThemeMac::paintOverhangAreas(ScrollView* view, GraphicsContext* context, const IntRect& horizontalOverhangRect, const IntRect& verticalOverhangRect, const IntRect& dirtyRect)
+{
+    // The extent of each shadow in pixels.
+    const int kShadowSize = 4;
+    // Offset of negative one pixel to make the gradient blend with the toolbar's bottom border.
+    const int kToolbarShadowOffset = -1;
+    const struct {
+        float stop;
+        Color color;
+    } kShadowColors[] = {
+        { 0.000, Color(0, 0, 0, 255) },
+        { 0.125, Color(0, 0, 0, 57) },
+        { 0.375, Color(0, 0, 0, 41) },
+        { 0.625, Color(0, 0, 0, 18) },
+        { 0.875, Color(0, 0, 0, 6) },
+        { 1.000, Color(0, 0, 0, 0) }
+    };
+    const unsigned kNumShadowColors = sizeof(kShadowColors)/sizeof(kShadowColors[0]);
+
+    const bool hasHorizontalOverhang = !horizontalOverhangRect.isEmpty();
+    const bool hasVerticalOverhang = !verticalOverhangRect.isEmpty();
+    // Prefer non-additive shadows, but degrade to additive shadows if there is vertical overhang.
+    const bool useAdditiveShadows = hasVerticalOverhang;
+
+    GraphicsContextStateSaver stateSaver(*context);
+
+    context->setFillPattern(m_overhangPattern);
+    if (hasHorizontalOverhang)
+        context->fillRect(intersection(horizontalOverhangRect, dirtyRect));
+    if (hasVerticalOverhang)
+        context->fillRect(intersection(verticalOverhangRect, dirtyRect));
+
+    IntSize scrollOffset = view->scrollOffset();
+    FloatPoint shadowCornerOrigin;
+    FloatPoint shadowCornerOffset;
+
+    // Draw the shadow for the horizontal overhang.
+    if (hasHorizontalOverhang) {
+        int toolbarShadowHeight = kShadowSize;
+        RefPtr<Gradient> gradient;
+        IntRect shadowRect = horizontalOverhangRect;
+        shadowRect.setHeight(kShadowSize);
+        if (scrollOffset.height() < 0) {
+            if (useAdditiveShadows) {
+                toolbarShadowHeight = std::min(horizontalOverhangRect.height(), kShadowSize);
+            } else if (horizontalOverhangRect.height() < 2 * kShadowSize + kToolbarShadowOffset) {
+                // Split the overhang area between the web content shadow and toolbar shadow if it's too small.
+                shadowRect.setHeight((horizontalOverhangRect.height() + 1) / 2);
+                toolbarShadowHeight = horizontalOverhangRect.height() - shadowRect.height() - kToolbarShadowOffset;
+            }
+            shadowRect.setY(horizontalOverhangRect.maxY() - shadowRect.height());
+            gradient = Gradient::create(FloatPoint(0, shadowRect.maxY()), FloatPoint(0, shadowRect.maxY() - kShadowSize));
+            shadowCornerOrigin.setY(shadowRect.maxY());
+            shadowCornerOffset.setY(-kShadowSize);
+        } else {
+            gradient = Gradient::create(FloatPoint(0, shadowRect.y()), FloatPoint(0, shadowRect.maxY()));
+            shadowCornerOrigin.setY(shadowRect.y());
+        }
+        if (hasVerticalOverhang) {
+            shadowRect.setWidth(shadowRect.width() - verticalOverhangRect.width());
+            if (scrollOffset.width() < 0) {
+                shadowRect.setX(shadowRect.x() + verticalOverhangRect.width());
+                shadowCornerOrigin.setX(shadowRect.x());
+                shadowCornerOffset.setX(-kShadowSize);
+            } else {
+                shadowCornerOrigin.setX(shadowRect.maxX());
+            }
+        }
+        for (unsigned i = 0; i < kNumShadowColors; i++)
+            gradient->addColorStop(kShadowColors[i].stop, kShadowColors[i].color);
+        context->setFillGradient(gradient);
+        context->fillRect(intersection(shadowRect, dirtyRect));
+
+        // Draw a drop-shadow from the toolbar.
+        if (scrollOffset.height() < 0) {
+            shadowRect.setY(kToolbarShadowOffset);
+            shadowRect.setHeight(toolbarShadowHeight);
+            gradient = Gradient::create(FloatPoint(0, shadowRect.y()), FloatPoint(0, shadowRect.y() + kShadowSize));
+            for (unsigned i = 0; i < kNumShadowColors; i++)
+                gradient->addColorStop(kShadowColors[i].stop, kShadowColors[i].color);
+            context->setFillGradient(gradient);
+            context->fillRect(intersection(shadowRect, dirtyRect));
+        }
+    }
+
+    // Draw the shadow for the vertical overhang.
+    if (hasVerticalOverhang) {
+        RefPtr<Gradient> gradient;
+        IntRect shadowRect = verticalOverhangRect;
+        shadowRect.setWidth(kShadowSize);
+        if (scrollOffset.width() < 0) {
+            shadowRect.setX(verticalOverhangRect.maxX() - shadowRect.width());
+            gradient = Gradient::create(FloatPoint(shadowRect.maxX(), 0), FloatPoint(shadowRect.x(), 0));
+        } else {
+            gradient = Gradient::create(FloatPoint(shadowRect.x(), 0), FloatPoint(shadowRect.maxX(), 0));
+        }
+        for (unsigned i = 0; i < kNumShadowColors; i++)
+            gradient->addColorStop(kShadowColors[i].stop, kShadowColors[i].color);
+        context->setFillGradient(gradient);
+        context->fillRect(intersection(shadowRect, dirtyRect));
+
+        // Draw a drop-shadow from the toolbar.
+        shadowRect = verticalOverhangRect;
+        shadowRect.setY(kToolbarShadowOffset);
+        shadowRect.setHeight(kShadowSize);
+        gradient = Gradient::create(FloatPoint(0, shadowRect.y()), FloatPoint(0, shadowRect.maxY()));
+        for (unsigned i = 0; i < kNumShadowColors; i++)
+            gradient->addColorStop(kShadowColors[i].stop, kShadowColors[i].color);
+        context->setFillGradient(gradient);
+        context->fillRect(intersection(shadowRect, dirtyRect));
+    }
+
+    // If both rectangles present, draw a radial gradient for the corner.
+    if (hasHorizontalOverhang && hasVerticalOverhang) {
+        RefPtr<Gradient> gradient = Gradient::create(shadowCornerOrigin, 0, shadowCornerOrigin, kShadowSize);
+        for (unsigned i = 0; i < kNumShadowColors; i++)
+            gradient->addColorStop(kShadowColors[i].stop, kShadowColors[i].color);
+        context->setFillGradient(gradient);
+        context->fillRect(FloatRect(shadowCornerOrigin.x() + shadowCornerOffset.x(), shadowCornerOrigin.y() + shadowCornerOffset.y(), kShadowSize, kShadowSize));
+    }
+}
+
+void ScrollbarThemeMac::paintTickmarks(GraphicsContext* context, ScrollbarThemeClient* scrollbar, const IntRect& rect)
+{
+    // Note: This is only used for css-styled scrollbars on mac.
+    if (scrollbar->orientation() != VerticalScrollbar)
+        return;
+
+    if (rect.height() <= 0 || rect.width() <= 0)
+        return;
+
+    Vector<IntRect> tickmarks;
+    scrollbar->getTickmarks(tickmarks);
+    if (!tickmarks.size())
+        return;
+
+    // Inset a bit.
+    IntRect tickmarkTrackRect = rect;
+    tickmarkTrackRect.setX(tickmarkTrackRect.x() + 1);
+    tickmarkTrackRect.setWidth(tickmarkTrackRect.width() - 2);
+    paintGivenTickmarks(context, scrollbar, tickmarkTrackRect, tickmarks);
+}
+
 ScrollbarThemeMac::ScrollbarThemeMac()
 {
     static bool initialized;
@@ -206,6 +595,10 @@
         [WebScrollbarPrefsObserver registerAsObserver];
         preferencesChanged();
     }
+
+    // Load the linen pattern image used for overhang drawing.
+    RefPtr<Image> patternImage = Image::loadPlatformResource("overhangPattern");
+    m_overhangPattern = Pattern::create(patternImage, true, true);
 }
 
 ScrollbarThemeMac::~ScrollbarThemeMac()
diff --git a/Source/core/platform/mac/ThemeMac.h b/Source/core/platform/mac/ThemeMac.h
index b83bee9..dd342a0 100644
--- a/Source/core/platform/mac/ThemeMac.h
+++ b/Source/core/platform/mac/ThemeMac.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ThemeMac_h
@@ -38,11 +38,11 @@
 public:
     ThemeMac() { }
     virtual ~ThemeMac() { }
-    
+
     virtual int baselinePositionAdjustment(ControlPart) const;
 
     virtual FontDescription controlFont(ControlPart, const Font&, float zoomFactor) const;
-    
+
     virtual LengthSize controlSize(ControlPart, const Font&, const LengthSize&, float zoomFactor) const;
     virtual LengthSize minimumControlSize(ControlPart, const Font&, float zoomFactor) const;
 
diff --git a/Source/core/platform/mac/WebFontCache.h b/Source/core/platform/mac/WebFontCache.h
index 380f271..822c1b5 100644
--- a/Source/core/platform/mac/WebFontCache.h
+++ b/Source/core/platform/mac/WebFontCache.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #import <AppKit/NSFontManager.h>
diff --git a/Source/core/platform/mock/PlatformSpeechSynthesizerMock.cpp b/Source/core/platform/mock/PlatformSpeechSynthesizerMock.cpp
index c02fdd3..2c4928a 100644
--- a/Source/core/platform/mock/PlatformSpeechSynthesizerMock.cpp
+++ b/Source/core/platform/mock/PlatformSpeechSynthesizerMock.cpp
@@ -35,13 +35,13 @@
     synthesizer->initializeVoiceList();
     return synthesizer.release();
 }
-    
+
 PlatformSpeechSynthesizerMock::PlatformSpeechSynthesizerMock(PlatformSpeechSynthesizerClient* client)
     : PlatformSpeechSynthesizer(client)
     , m_speakingFinishedTimer(this, &PlatformSpeechSynthesizerMock::speakingFinished)
 {
 }
-    
+
 PlatformSpeechSynthesizerMock::~PlatformSpeechSynthesizerMock()
 {
     m_speakingFinishedTimer.stop();
@@ -53,7 +53,7 @@
     client()->didFinishSpeaking(m_utterance);
     m_utterance = 0;
 }
-    
+
 void PlatformSpeechSynthesizerMock::initializeVoiceList()
 {
     m_voiceList.clear();
@@ -67,20 +67,20 @@
     ASSERT(!m_utterance);
     m_utterance = utterance;
     client()->didStartSpeaking(m_utterance);
-    
+
     // Fire a fake word and then sentence boundary event.
     client()->boundaryEventOccurred(m_utterance, SpeechWordBoundary, 0);
     client()->boundaryEventOccurred(m_utterance, SpeechSentenceBoundary, m_utterance->text().length());
-    
+
     // Give the fake speech job some time so that pause and other functions have time to be called.
     m_speakingFinishedTimer.startOneShot(.1);
 }
-    
+
 void PlatformSpeechSynthesizerMock::cancel()
 {
     if (!m_utterance)
         return;
-    
+
     m_speakingFinishedTimer.stop();
     client()->speakingErrorOccurred(m_utterance);
     m_utterance = 0;
@@ -96,5 +96,5 @@
     client()->didResumeSpeaking(m_utterance);
 }
 
-    
+
 } // namespace WebCore
diff --git a/Source/core/platform/mock/PlatformSpeechSynthesizerMock.h b/Source/core/platform/mock/PlatformSpeechSynthesizerMock.h
index 0711653..7dada05 100644
--- a/Source/core/platform/mock/PlatformSpeechSynthesizerMock.h
+++ b/Source/core/platform/mock/PlatformSpeechSynthesizerMock.h
@@ -31,26 +31,26 @@
 #include "wtf/PassOwnPtr.h"
 
 namespace WebCore {
-    
+
 class PlatformSpeechSynthesizerMock : public PlatformSpeechSynthesizer {
 public:
     static PassOwnPtr<PlatformSpeechSynthesizerMock> create(PlatformSpeechSynthesizerClient*);
-    
+
     virtual ~PlatformSpeechSynthesizerMock();
     virtual void speak(PassRefPtr<PlatformSpeechSynthesisUtterance>);
     virtual void pause();
     virtual void resume();
     virtual void cancel();
-    
+
 private:
     explicit PlatformSpeechSynthesizerMock(PlatformSpeechSynthesizerClient*);
     virtual void initializeVoiceList();
     void speakingFinished(Timer<PlatformSpeechSynthesizerMock>*);
-    
+
     Timer<PlatformSpeechSynthesizerMock> m_speakingFinishedTimer;
     RefPtr<PlatformSpeechSynthesisUtterance> m_utterance;
 };
-    
+
 } // namespace WebCore
 
 #endif // PlatformSpeechSynthesizer_h
diff --git a/Source/core/platform/mock/ScrollbarThemeMock.cpp b/Source/core/platform/mock/ScrollbarThemeMock.cpp
index df9811a..ef05118 100644
--- a/Source/core/platform/mock/ScrollbarThemeMock.cpp
+++ b/Source/core/platform/mock/ScrollbarThemeMock.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/mock/ScrollbarThemeMock.h b/Source/core/platform/mock/ScrollbarThemeMock.h
index 3142047..02284ee 100644
--- a/Source/core/platform/mock/ScrollbarThemeMock.h
+++ b/Source/core/platform/mock/ScrollbarThemeMock.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ScrollbarThemeMock_h
@@ -43,10 +43,10 @@
     virtual IntRect backButtonRect(ScrollbarThemeClient*, ScrollbarPart, bool /*painting*/ = false) { return IntRect(); }
     virtual IntRect forwardButtonRect(ScrollbarThemeClient*, ScrollbarPart, bool /*painting*/ = false) { return IntRect(); }
     virtual IntRect trackRect(ScrollbarThemeClient*, bool painting = false);
-    
+
     virtual void paintTrackBackground(GraphicsContext*, ScrollbarThemeClient*, const IntRect&);
     virtual void paintThumb(GraphicsContext*, ScrollbarThemeClient*, const IntRect&);
-    
+
 private:
     virtual bool isMockTheme() const { return true; }
 };
diff --git a/Source/core/platform/network/FormDataBuilder.cpp b/Source/core/platform/network/FormDataBuilder.cpp
index 002865d..3dbcd3a 100644
--- a/Source/core/platform/network/FormDataBuilder.cpp
+++ b/Source/core/platform/network/FormDataBuilder.cpp
@@ -162,7 +162,7 @@
     // FIXME: This loses data irreversibly if the filename includes characters you can't encode
     // in the website's character set.
     append(buffer, "; filename=\"");
-    appendQuotedString(buffer, encoding.encode(filename, WTF::QuestionMarksForUnencodables));
+    appendQuotedString(buffer, encoding.normalizeAndEncode(filename, WTF::QuestionMarksForUnencodables));
     append(buffer, '"');
 }
 
diff --git a/Source/core/platform/network/HTTPHeaderMap.cpp b/Source/core/platform/network/HTTPHeaderMap.cpp
index 83750ff..3ca4299 100644
--- a/Source/core/platform/network/HTTPHeaderMap.cpp
+++ b/Source/core/platform/network/HTTPHeaderMap.cpp
@@ -83,12 +83,12 @@
     {
         return CaseFoldingHash::hash(cString, strlen(cString));
     }
-    
+
     static bool equal(const AtomicString& key, const char* cString)
     {
         return equalIgnoringCase(key, cString);
     }
-    
+
     static void translate(AtomicString& location, const char* cString, unsigned /*hash*/)
     {
         location = AtomicString(cString);
diff --git a/Source/core/platform/network/HTTPHeaderMap.h b/Source/core/platform/network/HTTPHeaderMap.h
index 6abb6e3..cbf798d 100644
--- a/Source/core/platform/network/HTTPHeaderMap.h
+++ b/Source/core/platform/network/HTTPHeaderMap.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HTTPHeaderMap_h
@@ -49,7 +49,7 @@
         PassOwnPtr<CrossThreadHTTPHeaderMapData> copyData() const;
 
         void adopt(PassOwnPtr<CrossThreadHTTPHeaderMapData>);
-        
+
         AtomicString get(const AtomicString& name) const;
 
         AddResult add(const AtomicString& name, const AtomicString& value);
@@ -58,7 +58,7 @@
         bool contains(const char*) const;
         AtomicString get(const char*) const;
         AddResult add(const char* name, const AtomicString& value);
-        
+
     };
 
 } // namespace WebCore
diff --git a/Source/core/platform/network/HTTPParsers.cpp b/Source/core/platform/network/HTTPParsers.cpp
index 5a6c653..79e8e26 100644
--- a/Source/core/platform/network/HTTPParsers.cpp
+++ b/Source/core/platform/network/HTTPParsers.cpp
@@ -10,13 +10,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -88,7 +88,7 @@
     return skipWhiteSpace(str, pos, false) && str[pos++] == '=' && skipWhiteSpace(str, pos, false);
 }
 
-// True if a value present, incrementing pos to next space or semicolon, if any.  
+// True if a value present, incrementing pos to next space or semicolon, if any.
 // Note: might return pos == str.length().
 static inline bool skipValue(const String& str, unsigned& pos)
 {
@@ -166,20 +166,20 @@
     // We have a content-disposition of "attachment" or unknown.
     // RFC 2183, section 2.8 says that an unknown disposition
     // value should be treated as "attachment"
-    return ContentDispositionAttachment;  
+    return ContentDispositionAttachment;
 }
 
 bool parseHTTPRefresh(const String& refresh, bool fromHttpEquivMeta, double& delay, String& url)
 {
     unsigned len = refresh.length();
     unsigned pos = 0;
-    
+
     if (!skipWhiteSpace(refresh, pos, fromHttpEquivMeta))
         return false;
-    
+
     while (pos != len && refresh[pos] != ',' && refresh[pos] != ';')
         ++pos;
-    
+
     if (pos == len) { // no URL
         url = String();
         bool ok;
@@ -190,7 +190,7 @@
         delay = refresh.left(pos).stripWhiteSpace().toDouble(&ok);
         if (!ok)
             return false;
-        
+
         ++pos;
         skipWhiteSpace(refresh, pos, fromHttpEquivMeta);
         unsigned urlStartPos = pos;
@@ -214,7 +214,7 @@
                 if (refresh[urlEndPos] == quotationMark)
                     break;
             }
-            
+
             // https://bugs.webkit.org/show_bug.cgi?id=27868
             // Sometimes there is no closing quote for the end of the URL even though there was an opening quote.
             // If we looped over the entire alleged URL string back to the opening quote, just go ahead and use everything
@@ -253,7 +253,7 @@
 
         if (key.isEmpty() || key != "filename")
             continue;
-        
+
         String value = keyValuePairs[i].substring(valueStartPos + 1).stripWhiteSpace();
 
         // Remove quotes if there are any
@@ -315,26 +315,26 @@
 
     size_t pos = start;
     unsigned length = mediaType.length();
-    
+
     while (pos < length) {
         pos = mediaType.find("charset", pos, false);
         if (pos == notFound || pos == 0) {
             charsetLen = 0;
             return;
         }
-        
+
         // is what we found a beginning of a word?
         if (mediaType[pos-1] > ' ' && mediaType[pos-1] != ';') {
             pos += 7;
             continue;
         }
-        
+
         pos += 7;
 
         // skip whitespace
         while (pos != length && mediaType[pos] <= ' ')
             ++pos;
-    
+
         if (mediaType[pos++] != '=') // this "charset" substring wasn't a parameter name, but there may be others
             continue;
 
@@ -495,7 +495,7 @@
     rangeOffset = rangeEnd = rangeSuffixLength = -1;
 
     // The "bytes" unit identifier should be present.
-    static const char bytesStart[] = "bytes="; 
+    static const char bytesStart[] = "bytes=";
     if (!range.startsWith(bytesStart, false))
         return false;
     String byteRange = range.substring(sizeof(bytesStart) - 1);
diff --git a/Source/core/platform/network/HTTPParsers.h b/Source/core/platform/network/HTTPParsers.h
index 37ecd3e..c705f89 100644
--- a/Source/core/platform/network/HTTPParsers.h
+++ b/Source/core/platform/network/HTTPParsers.h
@@ -8,13 +8,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -66,9 +66,9 @@
 bool isValidHTTPToken(const String&);
 bool parseHTTPRefresh(const String& refresh, bool fromHttpEquivMeta, double& delay, String& url);
 double parseDate(const String&);
-String filenameFromHTTPContentDisposition(const String&); 
+String filenameFromHTTPContentDisposition(const String&);
 String extractMIMETypeFromMediaType(const String&);
-String extractCharsetFromMediaType(const String&); 
+String extractCharsetFromMediaType(const String&);
 void findCharsetInMediaType(const String& mediaType, unsigned int& charsetPos, unsigned int& charsetLen, unsigned int start = 0);
 ContentSecurityPolicy::ReflectedXSSDisposition parseXSSProtectionHeader(const String& header, String& failureReason, unsigned& failurePosition, String& reportURL);
 String extractReasonPhraseFromHTTPStatusLine(const String&);
diff --git a/Source/core/platform/network/NetworkStateNotifier.h b/Source/core/platform/network/NetworkStateNotifier.h
index f3e30ea..f5af308 100644
--- a/Source/core/platform/network/NetworkStateNotifier.h
+++ b/Source/core/platform/network/NetworkStateNotifier.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef NetworkStateNotifier_h
diff --git a/Source/core/platform/network/ProxyServer.cpp b/Source/core/platform/network/ProxyServer.cpp
index 47e7462..e9b589b 100644
--- a/Source/core/platform/network/ProxyServer.cpp
+++ b/Source/core/platform/network/ProxyServer.cpp
@@ -44,7 +44,7 @@
         builder.append("SOCKS");
         break;
     }
-    
+
     builder.append(' ');
 
     ASSERT(!proxyServer.hostName().isNull());
diff --git a/Source/core/platform/network/ProxyServer.h b/Source/core/platform/network/ProxyServer.h
index 26e64f4..d46a883 100644
--- a/Source/core/platform/network/ProxyServer.h
+++ b/Source/core/platform/network/ProxyServer.h
@@ -56,7 +56,7 @@
         , m_port(port)
     {
     }
-        
+
     Type type() const { return m_type; }
     const String& hostName() const { return m_hostName; }
     int port() const { return m_port; }
@@ -73,7 +73,7 @@
 // Converts the given vector of proxy servers to a PAC string, as described in
 // http://web.archive.org/web/20060424005037/wp.netscape.com/eng/mozilla/2.0/relnotes/demo/proxy-live.html
 String toString(const Vector<ProxyServer>&);
-    
+
 } // namespace WebCore
 
 #endif // ProxyServer_h
diff --git a/Source/core/platform/network/ResourceLoadInfo.h b/Source/core/platform/network/ResourceLoadInfo.h
index adcc2d8..0e9926c 100644
--- a/Source/core/platform/network/ResourceLoadInfo.h
+++ b/Source/core/platform/network/ResourceLoadInfo.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 
diff --git a/Source/core/platform/network/ResourceLoadTiming.h b/Source/core/platform/network/ResourceLoadTiming.h
index c09e81e..c6debdd 100644
--- a/Source/core/platform/network/ResourceLoadTiming.h
+++ b/Source/core/platform/network/ResourceLoadTiming.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ResourceLoadTiming_h
diff --git a/Source/core/platform/sql/SQLiteDatabase.cpp b/Source/core/platform/sql/SQLiteDatabase.cpp
index b519cdb..aa41021 100644
--- a/Source/core/platform/sql/SQLiteDatabase.cpp
+++ b/Source/core/platform/sql/SQLiteDatabase.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -139,9 +139,9 @@
     return m_interrupted;
 }
 
-void SQLiteDatabase::setFullsync(bool fsync) 
+void SQLiteDatabase::setFullsync(bool fsync)
 {
-    if (fsync) 
+    if (fsync)
         executeCommand(ASCIILiteral("PRAGMA fullfsync = 1;"));
     else
         executeCommand(ASCIILiteral("PRAGMA fullfsync = 0;"));
@@ -166,12 +166,12 @@
 {
     if (size < 0)
         size = 0;
-    
+
     int currentPageSize = pageSize();
 
     ASSERT(currentPageSize || !m_db);
     int64_t newMaxPageCount = currentPageSize ? size / currentPageSize : 0;
-    
+
     MutexLocker locker(m_authorizerLock);
     enableAuthorizer(false);
 
@@ -190,15 +190,15 @@
 
 int SQLiteDatabase::pageSize()
 {
-    // Since the page size of a database is locked in at creation and therefore cannot be dynamic, 
+    // Since the page size of a database is locked in at creation and therefore cannot be dynamic,
     // we can cache the value for future use
     if (m_pageSize == -1) {
         MutexLocker locker(m_authorizerLock);
         enableAuthorizer(false);
-        
+
         SQLiteStatement statement(*this, ASCIILiteral("PRAGMA page_size"));
         m_pageSize = statement.getColumnInt(0);
-        
+
         enableAuthorizer(true);
     }
 
@@ -287,7 +287,7 @@
         LOG(SQLDatabase, "Unable to retrieve list of tables from database");
         return;
     }
-    
+
     for (Vector<String>::iterator table = tables.begin(); table != tables.end(); ++table ) {
         if (*table == "sqlite_sequence")
             continue;
@@ -422,7 +422,7 @@
             return auth->allowAlterTable(parameter1, parameter2);
         case SQLITE_REINDEX:
             return auth->allowReindex(parameter1);
-#if SQLITE_VERSION_NUMBER >= 3003013 
+#if SQLITE_VERSION_NUMBER >= 3003013
         case SQLITE_ANALYZE:
             return auth->allowAnalyze(parameter1);
         case SQLITE_CREATE_VTABLE:
@@ -449,7 +449,7 @@
     MutexLocker locker(m_authorizerLock);
 
     m_authorizer = auth;
-    
+
     enableAuthorizer(true);
 }
 
diff --git a/Source/core/platform/sql/SQLiteDatabase.h b/Source/core/platform/sql/SQLiteDatabase.h
index 3ea8bd2..cd43d32 100644
--- a/Source/core/platform/sql/SQLiteDatabase.h
+++ b/Source/core/platform/sql/SQLiteDatabase.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SQLiteDatabase_h
@@ -69,29 +69,29 @@
 
     bool executeCommand(const String&);
     bool returnsAtLeastOneResult(const String&);
-    
+
     bool tableExists(const String&);
     void clearAllTables();
     int runVacuumCommand();
     int runIncrementalVacuumCommand();
-    
+
     bool transactionInProgress() const { return m_transactionInProgress; }
-    
+
     int64_t lastInsertRowID();
     int lastChanges();
 
     void setBusyTimeout(int ms);
     void setBusyHandler(int(*)(void*, int));
-    
+
     void setFullsync(bool);
-    
+
     // Gets/sets the maximum size in bytes
     // Depending on per-database attributes, the size will only be settable in units that are the page size of the database, which is established at creation
     // These chunks will never be anything other than 512, 1024, 2048, 4096, 8192, 16384, or 32768 bytes in size.
     // setMaximumSize() will round the size down to the next smallest chunk if the passed size doesn't align.
     int64_t maximumSize();
     void setMaximumSize(int64_t);
-    
+
     // Gets the number of unused bytes in the database file.
     int64_t freeSpaceSize();
     int64_t totalSize();
@@ -102,15 +102,15 @@
     // OFF - Calls return immediately after the data has been passed to disk
     enum SynchronousPragma { SyncOff = 0, SyncNormal = 1, SyncFull = 2 };
     void setSynchronous(SynchronousPragma);
-    
+
     int lastError();
     const char* lastErrorMsg();
-    
+
     sqlite3* sqlite3Handle() const {
         ASSERT(m_sharable || currentThread() == m_openingThread || !m_db);
         return m_db;
     }
-    
+
     void setAuthorizer(PassRefPtr<DatabaseAuthorizer>);
 
     Mutex& databaseMutex() { return m_lockingMutex; }
@@ -140,15 +140,15 @@
     static int authorizerFunction(void*, int, const char*, const char*, const char*, const char*);
 
     void enableAuthorizer(bool enable);
-    
+
     int pageSize();
-    
+
     sqlite3* m_db;
     int m_pageSize;
-    
+
     bool m_transactionInProgress;
     bool m_sharable;
-    
+
     Mutex m_authorizerLock;
     RefPtr<DatabaseAuthorizer> m_authorizer;
 
diff --git a/Source/core/platform/sql/SQLiteStatement.h b/Source/core/platform/sql/SQLiteStatement.h
index a53b5e0..e8b5c1e 100644
--- a/Source/core/platform/sql/SQLiteStatement.h
+++ b/Source/core/platform/sql/SQLiteStatement.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SQLiteStatement_h
@@ -39,7 +39,7 @@
 public:
     SQLiteStatement(SQLiteDatabase&, const String&);
     ~SQLiteStatement();
-    
+
     int prepare();
     int bindBlob(int index, const void* blob, int size);
     int bindBlob(int index, const String&);
@@ -54,15 +54,15 @@
     int step();
     int finalize();
     int reset();
-    
+
     int prepareAndStep() { if (int error = prepare()) return error; return step(); }
-    
+
     // prepares, steps, and finalizes the query.
     // returns true if all 3 steps succeed with step() returning SQLITE_DONE
-    // returns false otherwise  
+    // returns false otherwise
     bool executeCommand();
-    
-    // prepares, steps, and finalizes.  
+
+    // prepares, steps, and finalizes.
     // returns true is step() returns SQLITE_ROW
     // returns false otherwise
     bool returnsAtLeastOneResult();
@@ -72,7 +72,7 @@
     // Returns -1 on last-step failing.  Otherwise, returns number of rows
     // returned in the last step()
     int columnCount();
-    
+
     bool isColumnNull(int col);
     bool isColumnDeclaredAsBlob(int col);
     String getColumnName(int col);
@@ -91,9 +91,9 @@
     bool returnDoubleResults(int col, Vector<double>&);
 
     SQLiteDatabase* database() { return &m_database; }
-    
+
     const String& query() const { return m_query; }
-    
+
 private:
     SQLiteDatabase& m_database;
     String m_query;
diff --git a/Source/core/platform/sql/SQLiteTransaction.h b/Source/core/platform/sql/SQLiteTransaction.h
index 80f9ae4..9a9bf71 100644
--- a/Source/core/platform/sql/SQLiteTransaction.h
+++ b/Source/core/platform/sql/SQLiteTransaction.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SQLiteTransaction_h
@@ -38,12 +38,12 @@
 public:
     SQLiteTransaction(SQLiteDatabase& db, bool readOnly = false);
     ~SQLiteTransaction();
-    
+
     void begin();
     void commit();
     void rollback();
     void stop();
-    
+
     bool inProgress() const { return m_inProgress; }
     bool wasRolledBackBySqlite() const;
 private:
diff --git a/Source/core/platform/text/BidiContext.cpp b/Source/core/platform/text/BidiContext.cpp
index 2f1031a..fa12626 100644
--- a/Source/core/platform/text/BidiContext.cpp
+++ b/Source/core/platform/text/BidiContext.cpp
@@ -89,7 +89,7 @@
             contexts.append(iter);
     }
     ASSERT(contexts.size());
- 
+
     RefPtr<BidiContext> topContext = copyContextAndRebaselineLevel(contexts.last(), 0);
     for (int i = contexts.size() - 1; i > 0; --i)
         topContext = copyContextAndRebaselineLevel(contexts[i - 1], topContext.get());
diff --git a/Source/core/platform/text/BidiResolver.h b/Source/core/platform/text/BidiResolver.h
index 17432cc..b42879b 100644
--- a/Source/core/platform/text/BidiResolver.h
+++ b/Source/core/platform/text/BidiResolver.h
@@ -36,14 +36,14 @@
     {
         reset();
     }
-    
+
     void reset()
     {
         numMidpoints = 0;
         currentMidpoint = 0;
         betweenMidpoints = false;
     }
-    
+
     // The goal is to reuse the line state across multiple
     // lines so we just keep an array around for midpoints and never clear it across multiple
     // lines.  We track the number of items and position using the two other variables.
@@ -316,8 +316,8 @@
         && m_status.last != BoundaryNeutral
         && m_status.last != RightToLeftEmbedding
         && m_status.last != LeftToRightEmbedding
-        && m_status.last != RightToLeftOverride 
-        && m_status.last != LeftToRightOverride 
+        && m_status.last != RightToLeftOverride
+        && m_status.last != LeftToRightOverride
         && m_status.last != PopDirectionalFormat);
     if (m_direction == OtherNeutral)
         m_direction = m_status.lastStrong == LeftToRight ? LeftToRight : RightToLeft;
@@ -651,7 +651,7 @@
                     } else if (m_status.lastStrong != LeftToRight) {
                         //last stuff takes embedding dir
                         if (context()->dir() == RightToLeft) {
-                            m_eor = m_last; 
+                            m_eor = m_last;
                             m_direction = RightToLeft;
                         }
                         appendRun();
@@ -863,7 +863,7 @@
             }
             m_current = end;
             m_status = stateAtEnd.m_status;
-            m_sor = stateAtEnd.m_sor; 
+            m_sor = stateAtEnd.m_sor;
             m_eor = stateAtEnd.m_eor;
             m_last = stateAtEnd.m_last;
             m_reachedEndOfLine = stateAtEnd.m_reachedEndOfLine;
@@ -887,7 +887,7 @@
             if (committed && pastEnd) {
                 m_current = end;
                 m_status = stateAtEnd.m_status;
-                m_sor = stateAtEnd.m_sor; 
+                m_sor = stateAtEnd.m_sor;
                 m_eor = stateAtEnd.m_eor;
                 m_last = stateAtEnd.m_last;
                 m_reachedEndOfLine = stateAtEnd.m_reachedEndOfLine;
diff --git a/Source/core/platform/text/DateTimeFormat.cpp b/Source/core/platform/text/DateTimeFormat.cpp
index 9ea7afc..5cbb644 100644
--- a/Source/core/platform/text/DateTimeFormat.cpp
+++ b/Source/core/platform/text/DateTimeFormat.cpp
@@ -254,7 +254,7 @@
         buffer.append(literal);
         return;
     }
-    
+
     if (literal.find('\'') == notFound) {
         buffer.append("'");
         buffer.append(literal);
diff --git a/Source/core/platform/text/LineBreakIteratorPoolICU.h b/Source/core/platform/text/LineBreakIteratorPoolICU.h
index de7e3a2..b7a0f0b 100644
--- a/Source/core/platform/text/LineBreakIteratorPoolICU.h
+++ b/Source/core/platform/text/LineBreakIteratorPoolICU.h
@@ -69,7 +69,7 @@
                 openStatus = U_ZERO_ERROR;
                 iterator = ubrk_open(UBRK_LINE, currentTextBreakLocaleID(), 0, 0, &openStatus);
             }
-                
+
             if (U_FAILURE(openStatus)) {
                 LOG_ERROR("ubrk_open failed with status %d", openStatus);
                 return 0;
diff --git a/Source/core/platform/text/LocaleICU.cpp b/Source/core/platform/text/LocaleICU.cpp
index a0f05dd..e94fed9 100644
--- a/Source/core/platform/text/LocaleICU.cpp
+++ b/Source/core/platform/text/LocaleICU.cpp
@@ -36,6 +36,7 @@
 #include <limits>
 #include "wtf/DateMath.h"
 #include "wtf/PassOwnPtr.h"
+#include "wtf/text/StringBuffer.h"
 #include "wtf/text/StringBuilder.h"
 
 using namespace icu;
@@ -83,9 +84,9 @@
     ASSERT(U_SUCCESS(status) || status == U_BUFFER_OVERFLOW_ERROR);
     if (U_FAILURE(status) && status != U_BUFFER_OVERFLOW_ERROR)
         return String();
-    Vector<UChar> buffer(bufferLength);
+    StringBuffer<UChar> buffer(bufferLength);
     status = U_ZERO_ERROR;
-    unum_getSymbol(m_numberFormat, symbol, buffer.data(), bufferLength, &status);
+    unum_getSymbol(m_numberFormat, symbol, buffer.characters(), bufferLength, &status);
     if (U_FAILURE(status))
         return String();
     return String::adopt(buffer);
@@ -98,9 +99,9 @@
     ASSERT(U_SUCCESS(status) || status == U_BUFFER_OVERFLOW_ERROR);
     if (U_FAILURE(status) && status != U_BUFFER_OVERFLOW_ERROR)
         return String();
-    Vector<UChar> buffer(bufferLength);
+    StringBuffer<UChar> buffer(bufferLength);
     status = U_ZERO_ERROR;
-    unum_getTextAttribute(m_numberFormat, tag, buffer.data(), bufferLength, &status);
+    unum_getTextAttribute(m_numberFormat, tag, buffer.characters(), bufferLength, &status);
     ASSERT(U_SUCCESS(status));
     if (U_FAILURE(status))
         return String();
@@ -159,9 +160,9 @@
     int32_t length = udat_toPattern(dateFormat, TRUE, 0, 0, &status);
     if (status != U_BUFFER_OVERFLOW_ERROR || !length)
         return emptyString();
-    Vector<UChar> buffer(length);
+    StringBuffer<UChar> buffer(length);
     status = U_ZERO_ERROR;
-    udat_toPattern(dateFormat, TRUE, buffer.data(), length, &status);
+    udat_toPattern(dateFormat, TRUE, buffer.characters(), length, &status);
     if (U_FAILURE(status))
         return emptyString();
     return String::adopt(buffer);
@@ -181,9 +182,9 @@
         int32_t length = udat_getSymbols(dateFormat, type, startIndex + i, 0, 0, &status);
         if (status != U_BUFFER_OVERFLOW_ERROR)
             return PassOwnPtr<Vector<String> >();
-        Vector<UChar> buffer(length);
+        StringBuffer<UChar> buffer(length);
         status = U_ZERO_ERROR;
-        udat_getSymbols(dateFormat, type, startIndex + i, buffer.data(), length, &status);
+        udat_getSymbols(dateFormat, type, startIndex + i, buffer.characters(), length, &status);
         if (U_FAILURE(status))
             return PassOwnPtr<Vector<String> >();
         labels->append(String::adopt(buffer));
@@ -327,9 +328,9 @@
     skeleton.appendTo(skeletonCharacters);
     int32_t length = udatpg_getBestPattern(patternGenerator, skeletonCharacters.data(), skeletonCharacters.size(), 0, 0, &status);
     if (status == U_BUFFER_OVERFLOW_ERROR && length) {
-        Vector<UChar> buffer(length);
+        StringBuffer<UChar> buffer(length);
         status = U_ZERO_ERROR;
-        udatpg_getBestPattern(patternGenerator, skeletonCharacters.data(), skeletonCharacters.size(), buffer.data(), length, &status);
+        udatpg_getBestPattern(patternGenerator, skeletonCharacters.data(), skeletonCharacters.size(), buffer.characters(), length, &status);
         if (U_SUCCESS(status))
             format = String::adopt(buffer);
     }
diff --git a/Source/core/platform/text/PlatformLocale.cpp b/Source/core/platform/text/PlatformLocale.cpp
index 65dadcc..c959ac9 100644
--- a/Source/core/platform/text/PlatformLocale.cpp
+++ b/Source/core/platform/text/PlatformLocale.cpp
@@ -346,7 +346,7 @@
     case DateComponents::Month:
         builder.build(formatType == FormatTypeShort ? shortMonthFormat() : monthFormat());
         break;
-    case DateComponents::Week:    
+    case DateComponents::Week:
         builder.build(weekFormatInLDML());
         break;
     case DateComponents::DateTime:
diff --git a/Source/core/platform/text/PlatformLocale.h b/Source/core/platform/text/PlatformLocale.h
index c02a646..0c7ede4 100644
--- a/Source/core/platform/text/PlatformLocale.h
+++ b/Source/core/platform/text/PlatformLocale.h
@@ -128,7 +128,7 @@
     // Serializes the specified date into a formatted date string to
     // display to the user. If an implementation doesn't support
     // localized dates the function should return an empty string.
-    // FormatType can be used to specify if you want the short format. 
+    // FormatType can be used to specify if you want the short format.
     String formatDateTime(const DateComponents&, FormatType = FormatTypeUnspecified);
 
     virtual ~Locale();
diff --git a/Source/core/platform/text/RegularExpression.cpp b/Source/core/platform/text/RegularExpression.cpp
index dcff018..50bd48f 100644
--- a/Source/core/platform/text/RegularExpression.cpp
+++ b/Source/core/platform/text/RegularExpression.cpp
@@ -23,7 +23,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/text/RegularExpression.h b/Source/core/platform/text/RegularExpression.h
index 8116af1..e12988c 100644
--- a/Source/core/platform/text/RegularExpression.h
+++ b/Source/core/platform/text/RegularExpression.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RegularExpression_h
diff --git a/Source/core/platform/text/SegmentedString.h b/Source/core/platform/text/SegmentedString.h
index 946ff24..43647f0 100644
--- a/Source/core/platform/text/SegmentedString.h
+++ b/Source/core/platform/text/SegmentedString.h
@@ -57,9 +57,9 @@
     }
 
     void clear() { m_length = 0; m_data.string16Ptr = 0; m_is8Bit = false;}
-    
+
     bool is8Bit() { return m_is8Bit; }
-    
+
     bool excludeLineNumbers() const { return !m_doNotExcludeLineNumbers; }
     bool doNotExcludeLineNumbers() const { return m_doNotExcludeLineNumbers; }
 
@@ -113,7 +113,7 @@
             return getCurrentChar8();
         return getCurrentChar16();
     }
-    
+
     ALWAYS_INLINE UChar incrementAndGetCurrentChar()
     {
         ASSERT(m_length);
@@ -305,7 +305,7 @@
 
     String toString() const;
 
-    UChar currentChar() const { return m_currentChar; }    
+    UChar currentChar() const { return m_currentChar; }
 
     // The method is moderately slow, comparing to currentLine method.
     OrdinalNumber currentColumn() const;
@@ -332,7 +332,7 @@
     void advanceAndUpdateLineNumberSlowCase();
     void advanceEmpty();
     void advanceSubstring();
-    
+
     void updateSlowCaseFunctionPointers();
 
     void decrementAndCheckLength()
@@ -384,7 +384,7 @@
         }
         return lookAheadSlowCase(string, caseSensitive);
     }
-    
+
     LookAheadResult lookAheadSlowCase(const String& string, bool caseSensitive)
     {
         unsigned count = string.length();
diff --git a/Source/core/platform/text/TextBoundaries.cpp b/Source/core/platform/text/TextBoundaries.cpp
index 197e4f5..df638b6 100644
--- a/Source/core/platform/text/TextBoundaries.cpp
+++ b/Source/core/platform/text/TextBoundaries.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/text/TextBoundaries.h b/Source/core/platform/text/TextBoundaries.h
index c9e8d91..81613e5 100644
--- a/Source/core/platform/text/TextBoundaries.h
+++ b/Source/core/platform/text/TextBoundaries.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextBoundaries_h
diff --git a/Source/core/platform/text/TextBreakIterator.cpp b/Source/core/platform/text/TextBreakIterator.cpp
index c39466f..9af8c5c 100644
--- a/Source/core/platform/text/TextBreakIterator.cpp
+++ b/Source/core/platform/text/TextBreakIterator.cpp
@@ -27,7 +27,7 @@
 unsigned numGraphemeClusters(const String& string)
 {
     unsigned stringLength = string.length();
-    
+
     if (!stringLength)
         return 0;
 
diff --git a/Source/core/platform/text/TextChecking.h b/Source/core/platform/text/TextChecking.h
index 5b3bff9..a3d3f12 100644
--- a/Source/core/platform/text/TextChecking.h
+++ b/Source/core/platform/text/TextChecking.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2011 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/platform/text/TextDirection.h b/Source/core/platform/text/TextDirection.h
index 9a074c8..b8a52f7 100644
--- a/Source/core/platform/text/TextDirection.h
+++ b/Source/core/platform/text/TextDirection.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextDirection_h
diff --git a/Source/core/platform/text/TextEncodingDetector.h b/Source/core/platform/text/TextEncodingDetector.h
index 728da9e..b030040 100644
--- a/Source/core/platform/text/TextEncodingDetector.h
+++ b/Source/core/platform/text/TextEncodingDetector.h
@@ -38,7 +38,7 @@
 namespace WebCore {
 
 // Given a sequence of bytes in |data| of length |len| and an optional
-// hintEncodingName, detect the most likely character encoding. 
+// hintEncodingName, detect the most likely character encoding.
 // The way hintEncodingName is used is up to an implementation.
 // Currently, the only caller sets it to the parent frame encoding.
 bool detectTextEncoding(const char* data, size_t len,
diff --git a/Source/core/platform/text/TextEncodingDetectorICU.cpp b/Source/core/platform/text/TextEncodingDetectorICU.cpp
index 1f2e632..d0409d6 100644
--- a/Source/core/platform/text/TextEncodingDetectorICU.cpp
+++ b/Source/core/platform/text/TextEncodingDetectorICU.cpp
@@ -42,22 +42,22 @@
                         WTF::TextEncoding* detectedEncoding)
 {
     *detectedEncoding = WTF::TextEncoding();
-    int matchesCount = 0; 
+    int matchesCount = 0;
     UErrorCode status = U_ZERO_ERROR;
     UCharsetDetector* detector = ucsdet_open(&status);
     if (U_FAILURE(status))
         return false;
     ucsdet_enableInputFilter(detector, true);
-    ucsdet_setText(detector, data, static_cast<int32_t>(len), &status); 
+    ucsdet_setText(detector, data, static_cast<int32_t>(len), &status);
     if (U_FAILURE(status))
         return false;
 
     // FIXME: A few things we can do other than improving
-    // the ICU detector itself. 
+    // the ICU detector itself.
     // 1. Use ucsdet_detectAll and pick the most likely one given
     // "the context" (parent-encoding, referrer encoding, etc).
     // 2. 'Emulate' Firefox/IE's non-Universal detectors (e.g.
-    // Chinese, Japanese, Russian, Korean and Hebrew) by picking the 
+    // Chinese, Japanese, Russian, Korean and Hebrew) by picking the
     // encoding with a highest confidence among the detector-specific
     // limited set of candidate encodings.
     // Below is a partial implementation of the first part of what's outlined
@@ -73,12 +73,12 @@
         WTF::TextEncoding hintEncoding(hintEncodingName);
         // 10 is the minimum confidence value consistent with the codepoint
         // allocation in a given encoding. The size of a chunk passed to
-        // us varies even for the same html file (apparently depending on 
-        // the network load). When we're given a rather short chunk, we 
+        // us varies even for the same html file (apparently depending on
+        // the network load). When we're given a rather short chunk, we
         // don't have a sufficiently reliable signal other than the fact that
         // the chunk is consistent with a set of encodings. So, instead of
         // setting an arbitrary threshold, we have to scan all the encodings
-        // consistent with the data.  
+        // consistent with the data.
         const int32_t kThresold = 10;
         for (int i = 0; i < matchesCount; ++i) {
             int32_t confidence = ucsdet_getConfidence(matches[i], &status);
@@ -99,7 +99,7 @@
             }
         }
     }
-    // If no match is found so far, just pick the top match. 
+    // If no match is found so far, just pick the top match.
     // This can happen, say, when a parent frame in EUC-JP refers to
     // a child frame in Shift_JIS and both frames do NOT specify the encoding
     // making us resort to auto-detection (when it IS turned on).
@@ -109,7 +109,7 @@
         *detectedEncoding = WTF::TextEncoding(encoding);
         ucsdet_close(detector);
         return true;
-    }    
+    }
     ucsdet_close(detector);
     return false;
 }
diff --git a/Source/core/platform/text/TextStream.cpp b/Source/core/platform/text/TextStream.cpp
index 5d4816e..7a48eab 100644
--- a/Source/core/platform/text/TextStream.cpp
+++ b/Source/core/platform/text/TextStream.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/platform/text/TextStream.h b/Source/core/platform/text/TextStream.h
index 6a0f85a..fab4d9d 100644
--- a/Source/core/platform/text/TextStream.h
+++ b/Source/core/platform/text/TextStream.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextStream_h
diff --git a/Source/core/platform/text/UnicodeBidi.h b/Source/core/platform/text/UnicodeBidi.h
index 14c88bc..0785279 100644
--- a/Source/core/platform/text/UnicodeBidi.h
+++ b/Source/core/platform/text/UnicodeBidi.h
@@ -35,7 +35,7 @@
     Isolate,
     Plaintext,
     IsolateOverride,
-}; 
+};
 
 inline bool isIsolated(const EUnicodeBidi& unicodeBidi)
 {
diff --git a/Source/core/platform/text/UnicodeRange.cpp b/Source/core/platform/text/UnicodeRange.cpp
index cefadde..b9897f2 100644
--- a/Source/core/platform/text/UnicodeRange.cpp
+++ b/Source/core/platform/text/UnicodeRange.cpp
@@ -37,10 +37,10 @@
 
 namespace WebCore {
 
-// This table depends on unicode range definitions. 
+// This table depends on unicode range definitions.
 // Each item's index must correspond to a unicode range value
 // eg. x-cyrillic = LangGroupTable[cRangeCyrillic]
-static const char* gUnicodeRangeToLangGroupTable[] = 
+static const char* gUnicodeRangeToLangGroupTable[] =
 {
   "x-cyrillic",
   "el",
@@ -68,8 +68,8 @@
 
 /**********************************************************************
  * Unicode subranges as defined in unicode 3.0
- * x-western, x-central-euro, tr, x-baltic  -> latin 
- *  0000 - 036f 
+ * x-western, x-central-euro, tr, x-baltic  -> latin
+ *  0000 - 036f
  *  1e00 - 1eff
  *  2000 - 206f  (general punctuation)
  *  20a0 - 20cf  (currency symbols)
@@ -101,7 +101,7 @@
  * CJK
  *  3100 - 312f (bopomofo)
  *  31a0 - 31bf (bopomofo extended)
- *  3000 - 303f (CJK Symbols and Punctuation) 
+ *  3000 - 303f (CJK Symbols and Punctuation)
  *  2e80 - 2eff (CJK radicals supplement)
  *  2f00 - 2fdf (Kangxi Radicals)
  *  2ff0 - 2fff (Ideographic Description Characters)
@@ -115,8 +115,8 @@
  *  ff00 - ffef (halfwidth and fullwidth forms)
  *
  * Armenian
- *  0530 - 058f 
- * Sriac 
+ *  0530 - 058f
+ * Sriac
  *  0700 - 074f
  * Thaana
  *  0780 - 07bf
@@ -156,7 +156,7 @@
  *  1400 - 167f
  * Ogham
  *  1680 - 169f
- * Runic 
+ * Runic
  *  16a0 - 16ff
  * Khmer
  *  1780 - 17ff
@@ -178,7 +178,7 @@
  *  2440 - 2450
  * Misc - Enclose Alphanumerics
  *  2460 - 24ff
- * Misc - Box Drawing 
+ * Misc - Box Drawing
  *  2500 - 257f
  * Misc - Block Elements
  *  2580 - 259f
@@ -207,8 +207,8 @@
 static const unsigned cNumSubTables = 9;
 static const unsigned cSubTableSize = 16;
 
-static const unsigned char gUnicodeSubrangeTable[cNumSubTables][cSubTableSize] = 
-{ 
+static const unsigned char gUnicodeSubrangeTable[cNumSubTables][cSubTableSize] =
+{
   { // table for X---
     cRangeTableBase+1,  //u0xxx
     cRangeTableBase+2,  //u1xxx
@@ -318,23 +318,23 @@
     cRangeSurrogate,         //udfxx
   },
   { // table for fx--
-    cRangePrivate,           //uf0xx 
-    cRangePrivate,           //uf1xx 
-    cRangePrivate,           //uf2xx 
-    cRangePrivate,           //uf3xx 
-    cRangePrivate,           //uf4xx 
-    cRangePrivate,           //uf5xx 
-    cRangePrivate,           //uf6xx 
-    cRangePrivate,           //uf7xx 
-    cRangePrivate,           //uf8xx 
-    cRangeSetCJK,            //uf9xx 
-    cRangeSetCJK,            //ufaxx 
+    cRangePrivate,           //uf0xx
+    cRangePrivate,           //uf1xx
+    cRangePrivate,           //uf2xx
+    cRangePrivate,           //uf3xx
+    cRangePrivate,           //uf4xx
+    cRangePrivate,           //uf5xx
+    cRangePrivate,           //uf6xx
+    cRangePrivate,           //uf7xx
+    cRangePrivate,           //uf8xx
+    cRangeSetCJK,            //uf9xx
+    cRangeSetCJK,            //ufaxx
     cRangeArabic,            //ufbxx, includes alphabic presentation form
     cRangeArabic,            //ufcxx
     cRangeArabic,            //ufdxx
-    cRangeArabic,            //ufexx, includes Combining half marks, 
-                             //                CJK compatibility forms, 
-                             //                CJK compatibility forms, 
+    cRangeArabic,            //ufexx, includes Combining half marks,
+                             //                CJK compatibility forms,
+                             //                CJK compatibility forms,
                              //                small form variants
     cRangeTableBase+8,       //uffxx, halfwidth and fullwidth forms, includes Specials
   },
@@ -376,15 +376,15 @@
   },
 };
 
-// Most scripts between U+0700 and U+16FF are assigned a chunk of 128 (0x80) 
+// Most scripts between U+0700 and U+16FF are assigned a chunk of 128 (0x80)
 // code points so that the number of entries in the tertiary range
 // table for that range is obtained by dividing (0x1700 - 0x0700) by 128.
-// Exceptions: Ethiopic, Tibetan, Hangul Jamo and Canadian aboriginal 
+// Exceptions: Ethiopic, Tibetan, Hangul Jamo and Canadian aboriginal
 // syllabaries take multiple chunks and Ogham and Runic share a single chunk.
 static const unsigned cTertiaryTableSize = ((0x1700 - 0x0700) / 0x80);
 
 static const unsigned char gUnicodeTertiaryRangeTable[cTertiaryTableSize] =
-{ //table for 0x0700 - 0x1600 
+{ //table for 0x0700 - 0x1600
     cRangeSyriac,            //u070x
     cRangeThaana,            //u078x
     cRangeUnassigned,        //u080x  place holder(resolved in the 2ndary tab.)
@@ -399,7 +399,7 @@
     cRangeKannada,           //u0c8x
     cRangeMalayalam,         //u0d0x
     cRangeSinhala,           //u0d8x
-    cRangeThai,              //u0e0x  
+    cRangeThai,              //u0e0x
     cRangeLao,               //u0e8x
     cRangeTibetan,           //u0f0x  place holder(resolved in the 2ndary tab.)
     cRangeTibetan,           //u0f8x  place holder(resolved in the 2ndary tab.)
@@ -409,21 +409,21 @@
     cRangeKorean,            //u118x  place holder(resolved in the 2ndary tab.)
     cRangeEthiopic,          //u120x  place holder(resolved in the 2ndary tab.)
     cRangeEthiopic,          //u128x  place holder(resolved in the 2ndary tab.)
-    cRangeEthiopic,          //u130x  
+    cRangeEthiopic,          //u130x
     cRangeCherokee,          //u138x
     cRangeCanadian,          //u140x  place holder(resolved in the 2ndary tab.)
     cRangeCanadian,          //u148x  place holder(resolved in the 2ndary tab.)
     cRangeCanadian,          //u150x  place holder(resolved in the 2ndary tab.)
     cRangeCanadian,          //u158x  place holder(resolved in the 2ndary tab.)
-    cRangeCanadian,          //u160x  
+    cRangeCanadian,          //u160x
     cRangeOghamRunic,        //u168x  this contains two scripts, Ogham & Runic
 };
 
-// A two level index is almost enough for locating a range, with the 
+// A two level index is almost enough for locating a range, with the
 // exception of u03xx and u05xx. Since we don't really care about range for
-// combining diacritical marks in our font application, they are 
-// not discriminated further.  Future adoption of this method for other use 
-// should be aware of this limitation. The implementation can be extended if 
+// combining diacritical marks in our font application, they are
+// not discriminated further.  Future adoption of this method for other use
+// should be aware of this limitation. The implementation can be extended if
 // there is such a need.
 // For Indic, Southeast Asian scripts and some other scripts between
 // U+0700 and U+16FF, it's extended to the third level.
@@ -436,9 +436,9 @@
 
     //search the first table
     range = gUnicodeSubrangeTable[0][ch >> 12];
-  
+
     if (range < cRangeTableBase)
-        // we try to get a specific range 
+        // we try to get a specific range
         return range;
 
     // otherwise, we have one more table to look at
@@ -454,7 +454,7 @@
 
 const char* langGroupFromUnicodeRange(unsigned char unicodeRange)
 {
-    if (cRangeSpecificItemNum > unicodeRange)  
+    if (cRangeSpecificItemNum > unicodeRange)
         return gUnicodeRangeToLangGroupTable[unicodeRange];
     return 0;
 }
diff --git a/Source/core/platform/text/UnicodeRange.h b/Source/core/platform/text/UnicodeRange.h
index fe0afbf..4d06e83 100644
--- a/Source/core/platform/text/UnicodeRange.h
+++ b/Source/core/platform/text/UnicodeRange.h
@@ -40,7 +40,7 @@
 namespace WebCore {
 
 // The following constants define unicode subranges
-// values below cRangeNum must be continuous so that we can map to 
+// values below cRangeNum must be continuous so that we can map to
 // a lang group directly.
 // All ranges we care about should fit within 32 bits.
 
@@ -106,7 +106,7 @@
 const unsigned char   cRangeSpecials             = 57;
 
 const unsigned char   cRangeTableBase   = 128;    //values over 127 are reserved for internal use only
-const unsigned char   cRangeTertiaryTable  = 145; // leave room for 16 subtable 
+const unsigned char   cRangeTertiaryTable  = 145; // leave room for 16 subtable
                                             // indices (cRangeTableBase + 1 ..
                                             // cRangeTableBase + 16)
 
diff --git a/Source/core/plugins/PluginData.cpp b/Source/core/plugins/PluginData.cpp
index 9795f76..d941dca 100644
--- a/Source/core/plugins/PluginData.cpp
+++ b/Source/core/plugins/PluginData.cpp
@@ -89,7 +89,7 @@
 {
     for (unsigned i = 0; i < m_mimes.size(); ++i) {
         const MimeClassInfo& info = m_mimes[i];
-    
+
         if (info.type == mimeType)
             return &m_plugins[m_mimePluginIndices[i]];
     }
diff --git a/Source/core/plugins/PluginData.h b/Source/core/plugins/PluginData.h
index 96317ca..d60c127 100644
--- a/Source/core/plugins/PluginData.h
+++ b/Source/core/plugins/PluginData.h
@@ -54,7 +54,7 @@
     const Vector<PluginInfo>& plugins() const { return m_plugins; }
     const Vector<MimeClassInfo>& mimes() const { return m_mimes; }
     const Vector<size_t>& mimePluginIndices() const { return m_mimePluginIndices; }
-    
+
     bool supportsMimeType(const String& mimeType) const;
     String pluginNameForMimeType(const String& mimeType) const;
     String pluginFileForMimeType(const String& mimeType) const;
diff --git a/Source/core/rendering/AutoTableLayout.cpp b/Source/core/rendering/AutoTableLayout.cpp
index fe43249..fbccbaa 100644
--- a/Source/core/rendering/AutoTableLayout.cpp
+++ b/Source/core/rendering/AutoTableLayout.cpp
@@ -61,7 +61,7 @@
             for (unsigned i = 0; i < numRows; i++) {
                 RenderTableSection::CellStruct current = section->cellAt(i, effCol);
                 RenderTableCell* cell = current.primaryCell();
-                
+
                 if (current.inColSpan || !cell)
                     continue;
 
@@ -81,9 +81,9 @@
                         maxContributor = cell;
                     }
 
-                    // All browsers implement a size limit on the cell's max width. 
+                    // All browsers implement a size limit on the cell's max width.
                     // Our limit is based on KHTML's representation that used 16 bits widths.
-                    // FIXME: Other browsers have a lower limit for the cell's max width. 
+                    // FIXME: Other browsers have a lower limit for the cell's max width.
                     const int cCellMaxWidth = 32760;
                     Length cellLogicalWidth = cell->styleOrColLogicalWidth();
                     if (cellLogicalWidth.value() > cCellMaxWidth)
@@ -97,7 +97,7 @@
                             int logicalWidth = cell->adjustBorderBoxLogicalWidthForBoxSizing(cellLogicalWidth.value());
                             if (columnLayout.logicalWidth.isFixed()) {
                                 // Nav/IE weirdness
-                                if ((logicalWidth > columnLayout.logicalWidth.value()) 
+                                if ((logicalWidth > columnLayout.logicalWidth.value())
                                     || ((columnLayout.logicalWidth.value() == logicalWidth) && (maxContributor == cell))) {
                                     columnLayout.logicalWidth.setValue(Fixed, logicalWidth);
                                     fixedContributor = cell;
@@ -396,7 +396,7 @@
             } else {
                 int remainingMaxLogicalWidth = spanMaxLogicalWidth;
                 int remainingMinLogicalWidth = spanMinLogicalWidth;
-                
+
                 // Give min to variable first, to fixed second, and to others third.
                 for (unsigned pos = effCol; remainingMaxLogicalWidth >= 0 && pos < lastCol; ++pos) {
                     if (m_layoutStruct[pos].logicalWidth.isFixed() && haveAuto && fixedWidth <= cellMinLogicalWidth) {
@@ -556,7 +556,7 @@
             }
         }
     }
-    
+
     // then allocate width to fixed cols
     if (available > 0) {
         for (size_t i = 0; i < nEffCols; ++i) {
@@ -642,7 +642,7 @@
                 if (logicalWidth.isAuto())
                     logicalWidthBeyondMin += m_layoutStruct[i].computedLogicalWidth - m_layoutStruct[i].effectiveMinLogicalWidth;
             }
-            
+
             for (unsigned i = nEffCols; i && logicalWidthBeyondMin > 0; ) {
                 --i;
                 Length& logicalWidth = m_layoutStruct[i].effectiveLogicalWidth;
@@ -666,7 +666,7 @@
                 if (logicalWidth.isFixed())
                     logicalWidthBeyondMin += m_layoutStruct[i].computedLogicalWidth - m_layoutStruct[i].effectiveMinLogicalWidth;
             }
-            
+
             for (unsigned i = nEffCols; i && logicalWidthBeyondMin > 0; ) {
                 --i;
                 Length& logicalWidth = m_layoutStruct[i].effectiveLogicalWidth;
@@ -690,7 +690,7 @@
                 if (logicalWidth.isPercent())
                     logicalWidthBeyondMin += m_layoutStruct[i].computedLogicalWidth - m_layoutStruct[i].effectiveMinLogicalWidth;
             }
-            
+
             for (unsigned i = nEffCols; i && logicalWidthBeyondMin > 0; ) {
                 --i;
                 Length& logicalWidth = m_layoutStruct[i].effectiveLogicalWidth;
diff --git a/Source/core/rendering/AutoTableLayout.h b/Source/core/rendering/AutoTableLayout.h
index c87efbe..4975a96 100644
--- a/Source/core/rendering/AutoTableLayout.h
+++ b/Source/core/rendering/AutoTableLayout.h
@@ -24,7 +24,7 @@
 #include "core/platform/LayoutUnit.h"
 #include "core/platform/Length.h"
 #include "core/rendering/TableLayout.h"
-#include <wtf/Vector.h>
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/BidiRun.cpp b/Source/core/rendering/BidiRun.cpp
index b75c5bc..8e56a0b 100644
--- a/Source/core/rendering/BidiRun.cpp
+++ b/Source/core/rendering/BidiRun.cpp
@@ -24,8 +24,8 @@
 #include "config.h"
 #include "core/rendering/BidiRun.h"
 #include "core/rendering/RenderArena.h"
-#include <wtf/RefCountedLeakCounter.h>
-#include <wtf/StdLibExtras.h>
+#include "wtf/RefCountedLeakCounter.h"
+#include "wtf/StdLibExtras.h"
 
 using namespace WTF;
 
diff --git a/Source/core/rendering/BidiRun.h b/Source/core/rendering/BidiRun.h
index c4c266f..74f3fad 100644
--- a/Source/core/rendering/BidiRun.h
+++ b/Source/core/rendering/BidiRun.h
@@ -26,7 +26,7 @@
 
 #include "core/platform/text/BidiResolver.h"
 #include "core/rendering/RenderText.h"
-#include <wtf/StdLibExtras.h>
+#include "wtf/StdLibExtras.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/ClipPathOperation.h b/Source/core/rendering/ClipPathOperation.h
index 7b43c82..fcbf07b 100644
--- a/Source/core/rendering/ClipPathOperation.h
+++ b/Source/core/rendering/ClipPathOperation.h
@@ -32,10 +32,10 @@
 
 #include "core/platform/graphics/Path.h"
 #include "core/rendering/style/BasicShapes.h"
-#include <wtf/OwnPtr.h>
-#include <wtf/PassOwnPtr.h>
-#include <wtf/RefCounted.h>
-#include <wtf/text/WTFString.h>
+#include "wtf/OwnPtr.h"
+#include "wtf/PassOwnPtr.h"
+#include "wtf/RefCounted.h"
+#include "wtf/text/WTFString.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/ColumnInfo.h b/Source/core/rendering/ColumnInfo.h
index 6d0d0a6..bb30a16 100644
--- a/Source/core/rendering/ColumnInfo.h
+++ b/Source/core/rendering/ColumnInfo.h
@@ -20,14 +20,14 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ColumnInfo_h
 #define ColumnInfo_h
 
 #include "core/platform/LayoutUnit.h"
-#include <wtf/Vector.h>
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
@@ -51,7 +51,7 @@
 
     LayoutUnit desiredColumnWidth() const { return m_desiredColumnWidth; }
     void setDesiredColumnWidth(LayoutUnit width) { m_desiredColumnWidth = width; }
-    
+
     unsigned desiredColumnCount() const { return m_desiredColumnCount; }
     void setDesiredColumnCount(unsigned count) { m_desiredColumnCount = count; }
 
@@ -69,7 +69,7 @@
     // Set our count and height.  This is enough info for a RenderBlock to compute page rects
     // dynamically.
     void setColumnCountAndHeight(int count, LayoutUnit height)
-    { 
+    {
         m_columnCount = count;
         m_columnHeight = height;
     }
@@ -82,13 +82,13 @@
     LayoutUnit forcedBreakOffset() const { return m_forcedBreakOffset; }
     LayoutUnit maximumDistanceBetweenForcedBreaks() const { return m_maximumDistanceBetweenForcedBreaks; }
     void clearForcedBreaks()
-    { 
+    {
         m_forcedBreaks = 0;
         m_maximumDistanceBetweenForcedBreaks = 0;
         m_forcedBreakOffset = 0;
     }
     void addForcedBreak(LayoutUnit offsetFromFirstPage)
-    { 
+    {
         ASSERT(!m_columnHeight);
         LayoutUnit distanceFromLastBreak = offsetFromFirstPage - m_forcedBreakOffset;
         if (!distanceFromLastBreak)
diff --git a/Source/core/rendering/CounterNode.cpp b/Source/core/rendering/CounterNode.cpp
index 4f3f3a1..86419c0 100644
--- a/Source/core/rendering/CounterNode.cpp
+++ b/Source/core/rendering/CounterNode.cpp
@@ -289,7 +289,7 @@
             m_lastChild = last;
 
         first->m_previousSibling = newChild;
-    
+
         // The case when the original next sibling of the inserted node becomes a child of
         // one of the former children of the inserted node is not handled as it is believed
         // to be impossible since:
@@ -331,7 +331,7 @@
     oldChild->m_previousSibling = 0;
     oldChild->m_parent = 0;
 
-    if (previous) 
+    if (previous)
         previous->m_nextSibling = next;
     else {
         ASSERT(m_firstChild == oldChild);
diff --git a/Source/core/rendering/CounterNode.h b/Source/core/rendering/CounterNode.h
index 7d6def8..c467036 100644
--- a/Source/core/rendering/CounterNode.h
+++ b/Source/core/rendering/CounterNode.h
@@ -22,9 +22,9 @@
 #ifndef CounterNode_h
 #define CounterNode_h
 
-#include <wtf/Forward.h>
-#include <wtf/Noncopyable.h>
-#include <wtf/RefCounted.h>
+#include "wtf/Forward.h"
+#include "wtf/Noncopyable.h"
+#include "wtf/RefCounted.h"
 
 // This implements a counter tree that is used for finding parents in counters() lookup,
 // and for propagating count changes when nodes are added or removed.
diff --git a/Source/core/rendering/FilterEffectRenderer.cpp b/Source/core/rendering/FilterEffectRenderer.cpp
index 30797e4..85d6c07 100644
--- a/Source/core/rendering/FilterEffectRenderer.cpp
+++ b/Source/core/rendering/FilterEffectRenderer.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -244,7 +244,7 @@
             float amount = narrowPrecisionToFloat(componentTransferOperation->amount());
             transferFunction.slope = amount;
             transferFunction.intercept = -0.5 * amount + 0.5;
-            
+
             ComponentTransferFunction nullFunction;
             effect = FEComponentTransfer::create(this, transferFunction, transferFunction, transferFunction, nullFunction);
             break;
@@ -384,7 +384,7 @@
     filter->setAbsoluteFilterRegion(AffineTransform().scale(zoom).mapRect(filterSourceRect));
     filter->setFilterRegion(absoluteTransform.inverse().mapRect(filterSourceRect));
     filter->lastEffect()->determineFilterPrimitiveSubregion();
-    
+
     bool hasUpdatedBackingStore = filter->updateBackingStoreRect(filterSourceRect);
     if (filter->hasFilterThatMovesPixels()) {
         if (hasUpdatedBackingStore)
@@ -396,11 +396,11 @@
     }
     return true;
 }
-   
+
 GraphicsContext* FilterEffectRendererHelper::beginFilterEffect(GraphicsContext* oldContext)
 {
     ASSERT(m_renderLayer);
-    
+
     FilterEffectRenderer* filter = m_renderLayer->filterRenderer();
     filter->allocateBackingStoreIfNeeded();
     // Paint into the context that represents the SourceGraphic of the filter.
@@ -410,9 +410,9 @@
         m_haveFilterEffect = false;
         return oldContext;
     }
-    
+
     m_savedGraphicsContext = oldContext;
-    
+
     // Translate the context so that the contents of the layer is captuterd in the offscreen memory buffer.
     sourceGraphicsContext->save();
     // FIXME: can we just use sourceImageRect for everything, and get rid of
@@ -421,7 +421,7 @@
     sourceGraphicsContext->translate(-offset.x(), -offset.y());
     sourceGraphicsContext->clearRect(m_repaintRect);
     sourceGraphicsContext->clip(m_repaintRect);
-    
+
     return sourceGraphicsContext;
 }
 
diff --git a/Source/core/rendering/FilterEffectRenderer.h b/Source/core/rendering/FilterEffectRenderer.h
index 9fd408d..5352713 100644
--- a/Source/core/rendering/FilterEffectRenderer.h
+++ b/Source/core/rendering/FilterEffectRenderer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FilterEffectRenderer_h
@@ -36,10 +36,9 @@
 #include "core/platform/graphics/filters/FilterOperations.h"
 #include "core/platform/graphics/filters/SourceGraphic.h"
 #include "core/svg/graphics/filters/SVGFilterBuilder.h"
-
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
-#include <wtf/RefPtr.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
@@ -58,7 +57,7 @@
         , m_haveFilterEffect(haveFilterEffect)
     {
     }
-    
+
     bool haveFilterEffect() const { return m_haveFilterEffect; }
     bool hasStartedFilterEffect() const { return m_savedGraphicsContext; }
 
@@ -85,7 +84,7 @@
     }
 
     void setSourceImageRect(const FloatRect& sourceImageRect)
-    { 
+    {
         m_sourceDrawingRegion = sourceImageRect;
         m_graphicsBufferAttached = false;
     }
@@ -99,7 +98,7 @@
     void allocateBackingStoreIfNeeded();
     void clearIntermediateResults();
     void apply();
-    
+
     IntRect outputRect() const { return lastEffect()->hasResult() ? lastEffect()->absolutePaintRect() : IntRect(); }
 
     bool hasFilterThatMovesPixels() const { return m_hasFilterThatMovesPixels; }
@@ -114,12 +113,12 @@
 
     FilterEffectRenderer();
     virtual ~FilterEffectRenderer();
-    
+
     FloatRect m_sourceDrawingRegion;
-    
+
     RefPtr<SourceGraphic> m_sourceGraphic;
     RefPtr<FilterEffect> m_lastEffect;
-    
+
     IntRectExtent m_outsets;
 
     bool m_graphicsBufferAttached;
diff --git a/Source/core/rendering/FixedTableLayout.cpp b/Source/core/rendering/FixedTableLayout.cpp
index a8258da..74061f7 100644
--- a/Source/core/rendering/FixedTableLayout.cpp
+++ b/Source/core/rendering/FixedTableLayout.cpp
@@ -196,8 +196,8 @@
                 </td></tr></table>
             </td></tr></table>
         </td></tr></table>
-    */ 
-    // In this example, the two inner tables should be as large as the outer table. 
+    */
+    // In this example, the two inner tables should be as large as the outer table.
     // We can achieve this effect by making the maxwidth of fixed tables with percentage
     // widths be infinite.
     if (m_table->style()->logicalWidth().isPercent() && maxWidth < tableMaxWidth)
@@ -307,7 +307,7 @@
         if (nEffCols > 0)
             calcWidth[nEffCols - 1] += remainingWidth;
     }
-    
+
     int pos = 0;
     for (unsigned i = 0; i < nEffCols; i++) {
         m_table->setColumnPosition(i, pos);
diff --git a/Source/core/rendering/FixedTableLayout.h b/Source/core/rendering/FixedTableLayout.h
index 886d098..7de0e48 100644
--- a/Source/core/rendering/FixedTableLayout.h
+++ b/Source/core/rendering/FixedTableLayout.h
@@ -23,7 +23,7 @@
 
 #include "core/platform/Length.h"
 #include "core/rendering/TableLayout.h"
-#include <wtf/Vector.h>
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/FlowThreadController.cpp b/Source/core/rendering/FlowThreadController.cpp
index 7ba712b..c061075 100644
--- a/Source/core/rendering/FlowThreadController.cpp
+++ b/Source/core/rendering/FlowThreadController.cpp
@@ -34,7 +34,7 @@
 #include "core/dom/NamedFlowCollection.h"
 #include "core/rendering/RenderFlowThread.h"
 #include "core/rendering/RenderNamedFlowThread.h"
-#include <wtf/text/AtomicString.h>
+#include "wtf/text/AtomicString.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/FlowThreadController.h b/Source/core/rendering/FlowThreadController.h
index 0f014cd..b7deda8 100644
--- a/Source/core/rendering/FlowThreadController.h
+++ b/Source/core/rendering/FlowThreadController.h
@@ -31,8 +31,8 @@
 #define FlowThreadController_h
 
 #include "core/rendering/RenderView.h"
-#include <wtf/ListHashSet.h>
-#include <wtf/OwnPtr.h>
+#include "wtf/ListHashSet.h"
+#include "wtf/OwnPtr.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/GapRects.h b/Source/core/rendering/GapRects.h
index 515d4a6..48f7fec 100644
--- a/Source/core/rendering/GapRects.h
+++ b/Source/core/rendering/GapRects.h
@@ -31,7 +31,7 @@
         const LayoutRect& left() const { return m_left; }
         const LayoutRect& center() const { return m_center; }
         const LayoutRect& right() const { return m_right; }
-        
+
         void uniteLeft(const LayoutRect& r) { m_left.unite(r); }
         void uniteCenter(const LayoutRect& r) { m_center.unite(r); }
         void uniteRight(const LayoutRect& r) { m_right.unite(r); }
diff --git a/Source/core/rendering/HitTestLocation.h b/Source/core/rendering/HitTestLocation.h
index 1e64663..bf03f0d 100644
--- a/Source/core/rendering/HitTestLocation.h
+++ b/Source/core/rendering/HitTestLocation.h
@@ -28,10 +28,10 @@
 #include "core/platform/graphics/RoundedRect.h"
 #include "core/platform/text/TextDirection.h"
 #include "core/rendering/HitTestRequest.h"
-#include <wtf/Forward.h>
-#include <wtf/ListHashSet.h>
-#include <wtf/OwnPtr.h>
-#include <wtf/RefPtr.h>
+#include "wtf/Forward.h"
+#include "wtf/ListHashSet.h"
+#include "wtf/OwnPtr.h"
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/HitTestResult.cpp b/Source/core/rendering/HitTestResult.cpp
index ae5cf68..5fd0969 100644
--- a/Source/core/rendering/HitTestResult.cpp
+++ b/Source/core/rendering/HitTestResult.cpp
@@ -145,7 +145,7 @@
         n = n->parentOrShadowHostNode();
     m_innerNode = n;
 }
-    
+
 void HitTestResult::setInnerNonSharedNode(Node* n)
 {
     if (n && n->isPseudoElement())
@@ -153,9 +153,9 @@
     m_innerNonSharedNode = n;
 }
 
-void HitTestResult::setURLElement(Element* n) 
-{ 
-    m_innerURLElement = n; 
+void HitTestResult::setURLElement(Element* n)
+{
+    m_innerURLElement = n;
 }
 
 void HitTestResult::setScrollbar(Scrollbar* s)
@@ -203,7 +203,7 @@
     // currently supply strings, but maybe someday markers associated with misspelled words will also.
     if (!m_innerNonSharedNode)
         return String();
-    
+
     DocumentMarker* marker = m_innerNonSharedNode->document()->markers()->markerContainingPoint(m_hitTestLocation.point(), DocumentMarker::Grammar);
     if (!marker)
         return String();
@@ -242,12 +242,12 @@
 {
     if (!m_innerNonSharedNode)
         return String();
-    
+
     if (m_innerNonSharedNode->hasTagName(imgTag)) {
         HTMLImageElement* image = toHTMLImageElement(m_innerNonSharedNode.get());
         return displayString(image->getAttribute(altAttr), m_innerNonSharedNode.get());
     }
-    
+
     if (m_innerNonSharedNode->hasTagName(inputTag)) {
         HTMLInputElement* input = toHTMLInputElement(m_innerNonSharedNode.get());
         return displayString(input->alt(), m_innerNonSharedNode.get());
@@ -260,7 +260,7 @@
 {
     if (!m_innerNonSharedNode)
         return 0;
-    
+
     RenderObject* renderer = m_innerNonSharedNode->renderer();
     if (renderer && renderer->isImage()) {
         RenderImage* image = static_cast<WebCore::RenderImage*>(renderer);
@@ -290,7 +290,7 @@
     if (m_innerNonSharedNode->hasTagName(embedTag)
         || m_innerNonSharedNode->hasTagName(imgTag)
         || m_innerNonSharedNode->hasTagName(inputTag)
-        || m_innerNonSharedNode->hasTagName(objectTag)    
+        || m_innerNonSharedNode->hasTagName(objectTag)
         || m_innerNonSharedNode->hasTagName(SVGNames::imageTag)
        ) {
         Element* element = toElement(m_innerNonSharedNode.get());
@@ -366,7 +366,7 @@
 {
     if (!m_innerURLElement)
         return String();
-    
+
     return displayString(m_innerURLElement->title(), m_innerURLElement.get());
 }
 
@@ -379,8 +379,8 @@
 
 // FIXME: This function needs a better name and may belong in a different class. It's not
 // really isContentEditable(); it's more like needsEditingContextMenu(). In many ways, this
-// function would make more sense in the ContextMenu class, except that WebElementDictionary 
-// hooks into it. Anyway, we should architect this better. 
+// function would make more sense in the ContextMenu class, except that WebElementDictionary
+// hooks into it. Anyway, we should architect this better.
 bool HitTestResult::isContentEditable() const
 {
     if (!m_innerNonSharedNode)
diff --git a/Source/core/rendering/HitTestResult.h b/Source/core/rendering/HitTestResult.h
index 63347ca..c22efab 100644
--- a/Source/core/rendering/HitTestResult.h
+++ b/Source/core/rendering/HitTestResult.h
@@ -28,10 +28,10 @@
 #include "core/platform/text/TextDirection.h"
 #include "core/rendering/HitTestLocation.h"
 #include "core/rendering/HitTestRequest.h"
-#include <wtf/Forward.h>
-#include <wtf/ListHashSet.h>
-#include <wtf/OwnPtr.h>
-#include <wtf/RefPtr.h>
+#include "wtf/Forward.h"
+#include "wtf/ListHashSet.h"
+#include "wtf/OwnPtr.h"
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/HitTestingTransformState.cpp b/Source/core/rendering/HitTestingTransformState.cpp
index 7a31128..c7c94a6 100644
--- a/Source/core/rendering/HitTestingTransformState.cpp
+++ b/Source/core/rendering/HitTestingTransformState.cpp
@@ -20,20 +20,20 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
 #include "core/rendering/HitTestingTransformState.h"
 
 #include "core/platform/graphics/LayoutRect.h"
-#include <wtf/PassOwnPtr.h>
+#include "wtf/PassOwnPtr.h"
 
 namespace WebCore {
 
 void HitTestingTransformState::translate(int x, int y, TransformAccumulation accumulate)
 {
-    m_accumulatedTransform.translate(x, y);    
+    m_accumulatedTransform.translate(x, y);
     if (accumulate == FlattenTransform)
         flattenWithTransform(m_accumulatedTransform);
 
diff --git a/Source/core/rendering/HitTestingTransformState.h b/Source/core/rendering/HitTestingTransformState.h
index 6cb7ec5..bd81312 100644
--- a/Source/core/rendering/HitTestingTransformState.h
+++ b/Source/core/rendering/HitTestingTransformState.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef HitTestingTransformState_h
@@ -31,8 +31,8 @@
 #include "core/platform/graphics/IntSize.h"
 #include "core/platform/graphics/transforms/AffineTransform.h"
 #include "core/platform/graphics/transforms/TransformationMatrix.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
@@ -76,7 +76,7 @@
         , m_accumulatingTransform(false)
     {
     }
-    
+
     HitTestingTransformState(const HitTestingTransformState& other)
         : RefCounted<HitTestingTransformState>()
         , m_lastPlanarPoint(other.m_lastPlanarPoint)
@@ -86,7 +86,7 @@
         , m_accumulatingTransform(other.m_accumulatingTransform)
     {
     }
-    
+
     void flattenWithTransform(const TransformationMatrix&);
 };
 
diff --git a/Source/core/rendering/ImageQualityController.h b/Source/core/rendering/ImageQualityController.h
index 83e69df..c6487f1 100644
--- a/Source/core/rendering/ImageQualityController.h
+++ b/Source/core/rendering/ImageQualityController.h
@@ -37,7 +37,7 @@
 #include "core/platform/graphics/IntSize.h"
 #include "core/platform/graphics/LayoutSize.h"
 #include "core/rendering/RenderObject.h"
-#include <wtf/HashMap.h>
+#include "wtf/HashMap.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/InlineBox.cpp b/Source/core/rendering/InlineBox.cpp
index 73d7305..a1bc0b9 100644
--- a/Source/core/rendering/InlineBox.cpp
+++ b/Source/core/rendering/InlineBox.cpp
@@ -63,7 +63,7 @@
 #endif
 
 void InlineBox::remove()
-{ 
+{
     if (parent())
         parent()->removeChild(this);
 }
@@ -141,7 +141,7 @@
 {
     if (hasVirtualLogicalHeight())
         return virtualLogicalHeight();
-    
+
     if (renderer()->isText())
         return m_bitfields.isText() ? renderer()->style(isFirstLineStyle())->fontMetrics().height() : 0;
     if (renderer()->isBox() && parent())
@@ -166,14 +166,14 @@
     return boxModelObject()->lineHeight(m_bitfields.firstLine(), isHorizontal() ? HorizontalLine : VerticalLine, PositionOnContainingLine);
 }
 
-int InlineBox::caretMinOffset() const 
-{ 
-    return m_renderer->caretMinOffset(); 
+int InlineBox::caretMinOffset() const
+{
+    return m_renderer->caretMinOffset();
 }
 
-int InlineBox::caretMaxOffset() const 
-{ 
-    return m_renderer->caretMaxOffset(); 
+int InlineBox::caretMaxOffset() const
+{
+    return m_renderer->caretMaxOffset();
 }
 
 void InlineBox::dirtyLineBoxes()
@@ -208,8 +208,8 @@
 {
     m_topLeft.move(dx, dy);
 
-    if (m_renderer->isReplaced()) 
-        toRenderBox(m_renderer)->move(dx, dy); 
+    if (m_renderer->isReplaced())
+        toRenderBox(m_renderer)->move(dx, dy);
 }
 
 void InlineBox::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffset, LayoutUnit /* lineTop */, LayoutUnit /*lineBottom*/)
@@ -220,7 +220,7 @@
     LayoutPoint childPoint = paintOffset;
     if (parent()->renderer()->style()->isFlippedBlocksWritingMode()) // Faster than calling containingBlock().
         childPoint = renderer()->containingBlock()->flipForWritingModeForChild(toRenderBox(renderer()), childPoint);
-    
+
     // Paint all phases of replaced elements atomically, as though the replaced element established its
     // own stacking context.  (See Appendix E.2, section 6.4 on inline block/table elements in the CSS2.1
     // specification.)
@@ -248,22 +248,22 @@
     LayoutPoint childPoint = accumulatedOffset;
     if (parent()->renderer()->style()->isFlippedBlocksWritingMode()) // Faster than calling containingBlock().
         childPoint = renderer()->containingBlock()->flipForWritingModeForChild(toRenderBox(renderer()), childPoint);
-    
+
     return renderer()->hitTest(request, result, locationInContainer, childPoint);
 }
 
 const RootInlineBox* InlineBox::root() const
-{ 
+{
     if (m_parent)
-        return m_parent->root(); 
+        return m_parent->root();
     ASSERT(isRootInlineBox());
     return static_cast<const RootInlineBox*>(this);
 }
 
 RootInlineBox* InlineBox::root()
-{ 
+{
     if (m_parent)
-        return m_parent->root(); 
+        return m_parent->root();
     ASSERT(isRootInlineBox());
     return static_cast<RootInlineBox*>(this);
 }
@@ -292,7 +292,7 @@
         leaf = parent()->nextLeafChild();
     return leaf;
 }
-    
+
 InlineBox* InlineBox::prevLeafChild() const
 {
     InlineBox* leaf = 0;
@@ -329,7 +329,7 @@
     // Non-replaced elements can always accommodate an ellipsis.
     if (!m_renderer || !m_renderer->isReplaced())
         return true;
-    
+
     IntRect boxRect(left(), 0, m_logicalWidth, 10);
     IntRect ellipsisRect(ltr ? blockEdge - ellipsisWidth : blockEdge, 0, ellipsisWidth, 10);
     return !(boxRect.intersects(ellipsisRect));
@@ -343,7 +343,7 @@
 }
 
 void InlineBox::clearKnownToHaveNoOverflow()
-{ 
+{
     m_bitfields.setKnownToHaveNoOverflow(false);
     if (parent() && parent()->knownToHaveNoOverflow())
         parent()->clearKnownToHaveNoOverflow();
diff --git a/Source/core/rendering/InlineBox.h b/Source/core/rendering/InlineBox.h
index 0f9d0f7..b94346c 100644
--- a/Source/core/rendering/InlineBox.h
+++ b/Source/core/rendering/InlineBox.h
@@ -119,7 +119,7 @@
 
     bool isText() const { return m_bitfields.isText(); }
     void setIsText(bool isText) { m_bitfields.setIsText(isText); }
- 
+
     virtual bool isInlineFlowBox() const { return false; }
     virtual bool isInlineTextBox() const { return false; }
     virtual bool isRootInlineBox() const { return false; }
@@ -149,7 +149,7 @@
     virtual void setConstructed() { m_bitfields.setConstructed(true); }
 
     void setExtracted(bool extracted = true) { m_bitfields.setExtracted(extracted); }
-    
+
     void setFirstLineStyleBit(bool firstLine) { m_bitfields.setFirstLine(firstLine); }
     bool isFirstLineStyle() const { return m_bitfields.firstLine(); }
 
@@ -170,7 +170,7 @@
     bool nextOnLineExists() const;
 
     virtual bool isLeaf() const { return true; }
-    
+
     InlineBox* nextLeafChild() const;
     InlineBox* prevLeafChild() const;
 
@@ -264,7 +264,7 @@
     virtual void markDirty(bool dirty = true) { m_bitfields.setDirty(dirty); }
 
     virtual void dirtyLineBoxes();
-    
+
     virtual RenderObject::SelectionState selectionState();
 
     virtual bool canAccommodateEllipsis(bool ltr, int blockEdge, int ellipsisWidth) const;
@@ -278,12 +278,12 @@
     int expansion() const { return m_bitfields.expansion(); }
 
     bool visibleToHitTestRequest(const HitTestRequest& request) const { return renderer()->visibleToHitTestRequest(request); }
-    
+
     EVerticalAlign verticalAlign() const { return renderer()->style(m_bitfields.firstLine())->verticalAlign(); }
 
     // Use with caution! The type is not checked!
     RenderBoxModelObject* boxModelObject() const
-    { 
+    {
         if (!m_renderer->isText())
             return toRenderBoxModelObject(m_renderer);
         return 0;
@@ -332,7 +332,7 @@
             , m_isHorizontal(isHorizontal)
             , m_endsWithBreak(false)
             , m_hasSelectedChildrenOrCanHaveLeadingExpansion(false)
-            , m_knownToHaveNoOverflow(true)  
+            , m_knownToHaveNoOverflow(true)
             , m_hasEllipsisBoxOrHyphen(false)
             , m_dirOverride(false)
             , m_isText(false)
@@ -377,14 +377,14 @@
 
     private:
         mutable unsigned m_nextOnLineExists : 1;
-        
+
     public:
         bool nextOnLineExists() const { return m_nextOnLineExists; }
         void setNextOnLineExists(bool nextOnLineExists) const { m_nextOnLineExists = nextOnLineExists; }
 
     private:
         signed m_expansion : 12; // for justified text
-        
+
     public:
         signed expansion() const { return m_expansion; }
         void setExpansion(signed expansion) { m_expansion = expansion; }
@@ -405,12 +405,12 @@
 
     // For InlineTextBox
     bool hasHyphen() const { return m_bitfields.hasEllipsisBoxOrHyphen(); }
-    void setHasHyphen(bool hasHyphen) { m_bitfields.setHasEllipsisBoxOrHyphen(hasHyphen); }    
+    void setHasHyphen(bool hasHyphen) { m_bitfields.setHasEllipsisBoxOrHyphen(hasHyphen); }
     bool canHaveLeadingExpansion() const { return m_bitfields.hasSelectedChildrenOrCanHaveLeadingExpansion(); }
     void setCanHaveLeadingExpansion(bool canHaveLeadingExpansion) { m_bitfields.setHasSelectedChildrenOrCanHaveLeadingExpansion(canHaveLeadingExpansion); }
     signed expansion() { return m_bitfields.expansion(); }
     void setExpansion(signed expansion) { m_bitfields.setExpansion(expansion); }
-    
+
     // For InlineFlowBox and InlineTextBox
     bool extracted() const { return m_bitfields.extracted(); }
 
diff --git a/Source/core/rendering/InlineFlowBox.cpp b/Source/core/rendering/InlineFlowBox.cpp
index cb1134e..8fc9a48 100644
--- a/Source/core/rendering/InlineFlowBox.cpp
+++ b/Source/core/rendering/InlineFlowBox.cpp
@@ -75,10 +75,10 @@
     // Begin by snapping the x and y coordinates to the nearest pixel.
     int snappedX = lroundf(x());
     int snappedY = lroundf(y());
-    
+
     int snappedMaxX = lroundf(x() + width());
     int snappedMaxY = lroundf(y() + height());
-    
+
     return IntRect(snappedX, snappedY, snappedMaxX - snappedX, snappedMaxY - snappedY);
 }
 
@@ -90,7 +90,7 @@
     }
 }
 
-void InlineFlowBox::addToLine(InlineBox* child) 
+void InlineFlowBox::addToLine(InlineBox* child)
 {
     ASSERT(!child->parent());
     ASSERT(!child->nextOnLine());
@@ -167,7 +167,7 @@
                    || (child->renderer()->isListMarker() && !toRenderListMarker(child->renderer())->isInside())
                    || child->renderer()->style(isFirstLineStyle())->hasBorderImageOutsets()))
             child->clearKnownToHaveNoOverflow();
-        
+
         if (knownToHaveNoOverflow() && child->isInlineFlowBox() && !toInlineFlowBox(child)->knownToHaveNoOverflow())
             clearKnownToHaveNoOverflow();
     }
@@ -192,7 +192,7 @@
         child->nextOnLine()->setPrevOnLine(child->prevOnLine());
     if (child->prevOnLine())
         child->prevOnLine()->setNextOnLine(child->nextOnLine());
-    
+
     child->setParent(0);
 
     checkConsistency();
@@ -269,7 +269,7 @@
 {
     if (!child)
         return false;
-    
+
     if (child == ancestor)
         return true;
 
@@ -280,7 +280,7 @@
             return false;
         if (parent == ancestor)
             return true;
-            
+
         curr = parent;
         parent = curr->parent();
     }
@@ -416,7 +416,7 @@
                 // Just get all the physical margin and overflow values by hand based off |isVertical|.
                 LayoutUnit logicalLeftMargin = isHorizontal() ? curr->boxModelObject()->marginLeft() : curr->boxModelObject()->marginTop();
                 LayoutUnit logicalRightMargin = isHorizontal() ? curr->boxModelObject()->marginRight() : curr->boxModelObject()->marginBottom();
-                
+
                 logicalLeft += logicalLeftMargin;
                 curr->setLogicalLeft(logicalLeft);
                 if (knownToHaveNoOverflow())
@@ -437,7 +437,7 @@
 {
     if (isHorizontal())
         return false;
-    
+
     if (renderer()->style(isFirstLineStyle())->fontDescription().nonCJKGlyphOrientation() == NonCJKGlyphOrientationUpright
         || renderer()->style(isFirstLineStyle())->font().primaryFont()->hasVerticalGlyphs())
         return true;
@@ -445,14 +445,14 @@
     for (InlineBox* curr = firstChild(); curr; curr = curr->nextOnLine()) {
         if (curr->renderer()->isOutOfFlowPositioned())
             continue; // Positioned placeholders don't affect calculations.
-        
+
         if (curr->isInlineFlowBox()) {
             if (toInlineFlowBox(curr)->requiresIdeographicBaseline(textBoxDataMap))
                 return true;
         } else {
             if (curr->renderer()->style(isFirstLineStyle())->font().primaryFont()->hasVerticalGlyphs())
                 return true;
-            
+
             const Vector<const SimpleFontData*>* usedFonts = 0;
             if (curr->isInlineTextBox()) {
                 GlyphOverflowAndFallbackFontsMap::const_iterator it = textBoxDataMap.find(toInlineTextBox(curr));
@@ -467,7 +467,7 @@
             }
         }
     }
-    
+
     return false;
 }
 
@@ -521,7 +521,7 @@
     bool affectsAscent = false;
     bool affectsDescent = false;
     bool checkChildren = !descendantsHaveSameLineHeightAndBaseline();
-    
+
     if (isRootInlineBox()) {
         // Examine our root box.
         int ascent = 0;
@@ -545,17 +545,17 @@
     for (InlineBox* curr = firstChild(); curr; curr = curr->nextOnLine()) {
         if (curr->renderer()->isOutOfFlowPositioned())
             continue; // Positioned placeholders don't affect calculations.
-        
+
         InlineFlowBox* inlineFlowBox = curr->isInlineFlowBox() ? toInlineFlowBox(curr) : 0;
-        
+
         bool affectsAscent = false;
         bool affectsDescent = false;
-        
+
         // The verticalPositionForBox function returns the distance between the child box's baseline
         // and the root box's baseline.  The value is negative if the child box's baseline is above the
         // root box's baseline, and it is positive if the child box's baseline is below the root box's baseline.
         curr->setLogicalTop(rootBox->verticalPositionForBox(curr, verticalPositionCache));
-        
+
         int ascent = 0;
         int descent = 0;
         rootBox->ascentAndDescentForBox(curr, textBoxDataMap, ascent, descent, affectsAscent, affectsDescent);
@@ -635,18 +635,18 @@
             LayoutUnit posAdjust = maxAscent - curr->baselinePosition(baselineType);
             curr->setLogicalTop(curr->logicalTop() + top + posAdjust);
         }
-        
+
         LayoutUnit newLogicalTop = curr->logicalTop();
         LayoutUnit newLogicalTopIncludingMargins = newLogicalTop;
         LayoutUnit boxHeight = curr->logicalHeight();
         LayoutUnit boxHeightIncludingMargins = boxHeight;
-            
+
         if (curr->isText() || curr->isInlineFlowBox()) {
             const FontMetrics& fontMetrics = curr->renderer()->style(isFirstLineStyle())->fontMetrics();
             newLogicalTop += curr->baselinePosition(baselineType) - fontMetrics.ascent(baselineType);
             if (curr->isInlineFlowBox()) {
                 RenderBoxModelObject* boxObject = toRenderBoxModelObject(curr->renderer());
-                newLogicalTop -= boxObject->style(isFirstLineStyle())->isHorizontalWritingMode() ? boxObject->borderTop() + boxObject->paddingTop() : 
+                newLogicalTop -= boxObject->style(isFirstLineStyle())->isHorizontalWritingMode() ? boxObject->borderTop() + boxObject->paddingTop() :
                                  boxObject->borderRight() + boxObject->paddingRight();
             }
             newLogicalTopIncludingMargins = newLogicalTop;
@@ -722,7 +722,7 @@
             lineBottom = max<LayoutUnit>(lineBottom, pixelSnappedLogicalBottom());
             lineBottomIncludingMargins = max(lineBottom, lineBottomIncludingMargins);
         }
-        
+
         if (renderer()->style()->isFlippedLinesWritingMode())
             flipLinesInBlockDirection(lineTopIncludingMargins, lineBottomIncludingMargins);
     }
@@ -751,11 +751,11 @@
 {
     // Flip the box on the line such that the top is now relative to the lineBottom instead of the lineTop.
     setLogicalTop(lineBottom - (logicalTop() - lineTop) - logicalHeight());
-    
+
     for (InlineBox* curr = firstChild(); curr; curr = curr->nextOnLine()) {
         if (curr->renderer()->isOutOfFlowPositioned())
             continue; // Positioned placeholders aren't affected here.
-        
+
         if (curr->isInlineFlowBox())
             toInlineFlowBox(curr)->flipLinesInBlockDirection(lineTop, lineBottom);
         else
@@ -776,22 +776,22 @@
     LayoutUnit boxShadowLogicalTop;
     LayoutUnit boxShadowLogicalBottom;
     style->getBoxShadowBlockDirectionExtent(boxShadowLogicalTop, boxShadowLogicalBottom);
-    
+
     // Similar to how glyph overflow works, if our lines are flipped, then it's actually the opposite shadow that applies, since
     // the line is "upside down" in terms of block coordinates.
     LayoutUnit shadowLogicalTop = style->isFlippedLinesWritingMode() ? -boxShadowLogicalBottom : boxShadowLogicalTop;
     LayoutUnit shadowLogicalBottom = style->isFlippedLinesWritingMode() ? -boxShadowLogicalTop : boxShadowLogicalBottom;
-    
+
     LayoutUnit logicalTopVisualOverflow = min(pixelSnappedLogicalTop() + shadowLogicalTop, logicalVisualOverflow.y());
     LayoutUnit logicalBottomVisualOverflow = max(pixelSnappedLogicalBottom() + shadowLogicalBottom, logicalVisualOverflow.maxY());
-    
+
     LayoutUnit boxShadowLogicalLeft;
     LayoutUnit boxShadowLogicalRight;
     style->getBoxShadowInlineDirectionExtent(boxShadowLogicalLeft, boxShadowLogicalRight);
 
     LayoutUnit logicalLeftVisualOverflow = min(pixelSnappedLogicalLeft() + boxShadowLogicalLeft, logicalVisualOverflow.x());
     LayoutUnit logicalRightVisualOverflow = max(pixelSnappedLogicalRight() + boxShadowLogicalRight, logicalVisualOverflow.maxX());
-    
+
     logicalVisualOverflow = LayoutRect(logicalLeftVisualOverflow, logicalTopVisualOverflow,
                                        logicalRightVisualOverflow - logicalLeftVisualOverflow, logicalBottomVisualOverflow - logicalTopVisualOverflow);
 }
@@ -801,7 +801,7 @@
     // border-image-outset on root line boxes is applying to the block and not to the lines.
     if (!parent())
         return;
-    
+
     RenderStyle* style = renderer()->style(isFirstLineStyle());
     if (!style->hasBorderImageOutsets())
         return;
@@ -826,7 +826,7 @@
 
     LayoutUnit logicalLeftVisualOverflow = min(pixelSnappedLogicalLeft() - outsetLogicalLeft, logicalVisualOverflow.x());
     LayoutUnit logicalRightVisualOverflow = max(pixelSnappedLogicalRight() + outsetLogicalRight, logicalVisualOverflow.maxX());
-    
+
     logicalVisualOverflow = LayoutRect(logicalLeftVisualOverflow, logicalTopVisualOverflow,
                                        logicalRightVisualOverflow - logicalLeftVisualOverflow, logicalBottomVisualOverflow - logicalTopVisualOverflow);
 }
@@ -837,7 +837,7 @@
         return;
 
     RenderStyle* style = textBox->renderer()->style(isFirstLineStyle());
-    
+
     GlyphOverflowAndFallbackFontsMap::iterator it = textBoxDataMap.find(textBox);
     GlyphOverflow* glyphOverflow = it == textBoxDataMap.end() ? 0 : &it->value.second;
     bool isFlippedLine = style->isFlippedLinesWritingMode();
@@ -869,14 +869,14 @@
     LayoutUnit textShadowLogicalTop;
     LayoutUnit textShadowLogicalBottom;
     style->getTextShadowBlockDirectionExtent(textShadowLogicalTop, textShadowLogicalBottom);
-    
+
     LayoutUnit childOverflowLogicalTop = min<LayoutUnit>(textShadowLogicalTop + topGlyphOverflow, topGlyphOverflow);
     LayoutUnit childOverflowLogicalBottom = max<LayoutUnit>(textShadowLogicalBottom + bottomGlyphOverflow, bottomGlyphOverflow);
-   
+
     LayoutUnit textShadowLogicalLeft;
     LayoutUnit textShadowLogicalRight;
     style->getTextShadowInlineDirectionExtent(textShadowLogicalLeft, textShadowLogicalRight);
-   
+
     LayoutUnit childOverflowLogicalLeft = min<LayoutUnit>(textShadowLogicalLeft + leftGlyphOverflow, leftGlyphOverflow);
     LayoutUnit childOverflowLogicalRight = max<LayoutUnit>(textShadowLogicalRight + rightGlyphOverflow, rightGlyphOverflow);
 
@@ -884,17 +884,17 @@
     LayoutUnit logicalBottomVisualOverflow = max(textBox->pixelSnappedLogicalBottom() + childOverflowLogicalBottom, logicalVisualOverflow.maxY());
     LayoutUnit logicalLeftVisualOverflow = min(textBox->pixelSnappedLogicalLeft() + childOverflowLogicalLeft, logicalVisualOverflow.x());
     LayoutUnit logicalRightVisualOverflow = max(textBox->pixelSnappedLogicalRight() + childOverflowLogicalRight, logicalVisualOverflow.maxX());
-    
+
     logicalVisualOverflow = LayoutRect(logicalLeftVisualOverflow, logicalTopVisualOverflow,
                                        logicalRightVisualOverflow - logicalLeftVisualOverflow, logicalBottomVisualOverflow - logicalTopVisualOverflow);
-                                    
+
     textBox->setLogicalOverflowRect(logicalVisualOverflow);
 }
 
 inline void InlineFlowBox::addReplacedChildOverflow(const InlineBox* inlineBox, LayoutRect& logicalLayoutOverflow, LayoutRect& logicalVisualOverflow)
 {
     RenderBox* box = toRenderBox(inlineBox->renderer());
-    
+
     // Visual overflow only propagates if the box doesn't have a self-painting layer.  This rectangle does not include
     // transforms or relative positioning (since those objects always have self-painting layers), but it does need to be adjusted
     // for writing-mode differences.
@@ -923,14 +923,14 @@
     // transforms, relative positioning, etc.
     LayoutRect logicalLayoutOverflow(enclosingLayoutRect(logicalFrameRectIncludingLineHeight(lineTop, lineBottom)));
     LayoutRect logicalVisualOverflow(logicalLayoutOverflow);
-  
+
     addBoxShadowVisualOverflow(logicalVisualOverflow);
     addBorderOutsetVisualOverflow(logicalVisualOverflow);
 
     for (InlineBox* curr = firstChild(); curr; curr = curr->nextOnLine()) {
         if (curr->renderer()->isOutOfFlowPositioned())
             continue; // Positioned placeholders don't affect calculations.
-        
+
         if (curr->renderer()->isText()) {
             InlineTextBox* text = toInlineTextBox(curr);
             RenderText* rt = toRenderText(text->renderer());
@@ -950,7 +950,7 @@
         } else
             addReplacedChildOverflow(curr, logicalLayoutOverflow, logicalVisualOverflow);
     }
-    
+
     setOverflowFromLogicalRects(logicalLayoutOverflow, logicalVisualOverflow, lineTop, lineBottom);
 }
 
@@ -962,7 +962,7 @@
 
     if (!m_overflow)
         m_overflow = adoptPtr(new RenderOverflow(frameBox, frameBox));
-    
+
     m_overflow->setLayoutOverflow(rect);
 }
 
@@ -971,10 +971,10 @@
     LayoutRect frameBox = enclosingLayoutRect(frameRectIncludingLineHeight(lineTop, lineBottom));
     if (frameBox.contains(rect) || rect.isEmpty())
         return;
-        
+
     if (!m_overflow)
         m_overflow = adoptPtr(new RenderOverflow(frameBox, frameBox));
-    
+
     m_overflow->setVisualOverflow(rect);
 }
 
@@ -982,7 +982,7 @@
 {
     LayoutRect layoutOverflow(isHorizontal() ? logicalLayoutOverflow : logicalLayoutOverflow.transposedRect());
     setLayoutOverflow(layoutOverflow, lineTop, lineBottom);
-    
+
     LayoutRect visualOverflow(isHorizontal() ? logicalVisualOverflow : logicalVisualOverflow.transposedRect());
     setVisualOverflow(visualOverflow, lineTop, lineBottom);
 }
@@ -1070,7 +1070,7 @@
     overflowRect.inflate(renderer()->maximalOutlineSize(paintInfo.phase));
     flipForWritingMode(overflowRect);
     overflowRect.moveBy(paintOffset);
-    
+
     if (!paintInfo.rect.intersects(pixelSnappedIntRect(overflowRect)))
         return;
 
@@ -1083,7 +1083,7 @@
 
                 RenderBlock* cb = 0;
                 bool containingBlockPaintsContinuationOutline = inlineFlow->continuation() || inlineFlow->isInlineElementContinuation();
-                if (containingBlockPaintsContinuationOutline) {           
+                if (containingBlockPaintsContinuationOutline) {
                     // FIXME: See https://bugs.webkit.org/show_bug.cgi?id=54690. We currently don't reconnect inline continuations
                     // after a child removal. As a result, those merged inlines do not get seperated and hence not get enclosed by
                     // anonymous blocks. In this case, it is better to bail out and paint it ourself.
@@ -1124,7 +1124,7 @@
     PaintInfo childInfo(paintInfo);
     childInfo.phase = paintPhase;
     childInfo.updatePaintingRootForChildren(renderer());
-    
+
     // Paint our children.
     if (paintPhase != PaintPhaseSelfOutline) {
         for (InlineBox* curr = firstChild(); curr; curr = curr->nextOnLine()) {
@@ -1261,14 +1261,14 @@
     LayoutRect frameRect = roundedFrameRect();
 
     constrainToLineTopAndBottomIfNeeded(frameRect);
-    
+
     // Move x/y to our coordinates.
     LayoutRect localRect(frameRect);
     flipForWritingMode(localRect);
     LayoutPoint adjustedPaintoffset = paintOffset + localRect.location();
-    
+
     GraphicsContext* context = paintInfo.context;
-    
+
     // You can use p::first-line to specify a background. If so, the root line boxes for
     // a line may actually have to paint a background.
     RenderStyle* styleToUse = renderer()->style(isFirstLineStyle());
@@ -1333,7 +1333,7 @@
     LayoutRect frameRect = roundedFrameRect();
 
     constrainToLineTopAndBottomIfNeeded(frameRect);
-    
+
     // Move x/y to our coordinates.
     LayoutRect localRect(frameRect);
     flipForWritingMode(localRect);
@@ -1350,7 +1350,7 @@
     if (!compositedMask || flattenCompositingLayers) {
         if ((maskBoxImage && renderer()->style()->maskLayers()->hasImage()) || renderer()->style()->maskLayers()->next())
             pushTransparencyLayer = true;
-        
+
         compositeOp = CompositeDestinationIn;
         if (pushTransparencyLayer) {
             paintInfo.context->setCompositeOperation(CompositeDestinationIn);
@@ -1361,7 +1361,7 @@
 
     LayoutRect paintRect = LayoutRect(adjustedPaintOffset, frameRect.size());
     paintFillLayers(paintInfo, Color(), renderer()->style()->maskLayers(), paintRect, compositeOp);
-    
+
     bool hasBoxImage = maskBoxImage && maskBoxImage->canRender(renderer(), renderer()->style()->effectiveZoom());
     if (!hasBoxImage || !maskBoxImage->isLoaded()) {
         if (pushTransparencyLayer)
@@ -1392,7 +1392,7 @@
         paintInfo.context->clip(clipRect);
         boxModelObject()->paintNinePieceImage(paintInfo.context, LayoutRect(stripX, stripY, stripWidth, stripHeight), renderer()->style(), maskNinePieceImage, compositeOp);
     }
-    
+
     if (pushTransparencyLayer)
         paintInfo.context->endTransparencyLayer();
 }
@@ -1469,16 +1469,16 @@
     for (InlineBox* curr = firstChild(); curr; curr = curr->nextOnLine()) {
         if (curr->renderer()->isOutOfFlowPositioned())
             continue; // Positioned placeholders don't affect calculations.
-        
+
         if (curr->isInlineFlowBox())
             result = max(result, toInlineFlowBox(curr)->computeOverAnnotationAdjustment(allowedPosition));
-        
+
         if (curr->renderer()->isReplaced() && curr->renderer()->isRubyRun() && curr->renderer()->style()->rubyPosition() == RubyPositionBefore) {
             RenderRubyRun* rubyRun = toRenderRubyRun(curr->renderer());
             RenderRubyText* rubyText = rubyRun->rubyText();
             if (!rubyText)
                 continue;
-            
+
             if (!rubyRun->style()->isFlippedLinesWritingMode()) {
                 LayoutUnit topOfFirstRubyTextLine = rubyText->logicalTop() + (rubyText->firstRootBox() ? rubyText->firstRootBox()->lineTop() : LayoutUnit());
                 if (topOfFirstRubyTextLine >= 0)
@@ -1606,7 +1606,7 @@
                 (*customReverseImplementation)(userData, first, last);
             } else
                 std::reverse(first, last);
-        }                
+        }
         ++minLevel;
     }
 }
diff --git a/Source/core/rendering/InlineFlowBox.h b/Source/core/rendering/InlineFlowBox.h
index a858edc..8128326 100644
--- a/Source/core/rendering/InlineFlowBox.h
+++ b/Source/core/rendering/InlineFlowBox.h
@@ -67,7 +67,7 @@
 
 #ifndef NDEBUG
     virtual ~InlineFlowBox();
-    
+
     virtual void showLineTreeAndMark(const InlineBox* = 0, const char* = 0, const InlineBox* = 0, const char* = 0, const RenderObject* = 0, int = 0) const;
     virtual const char* boxName() const;
 #endif
@@ -81,7 +81,7 @@
     InlineBox* lastChild() const { checkConsistency(); return m_lastChild; }
 
     virtual bool isLeaf() const OVERRIDE FINAL { return false; }
-    
+
     InlineBox* firstLeafChild() const;
     InlineBox* lastLeafChild() const;
 
@@ -108,7 +108,7 @@
     virtual void clearTruncation() OVERRIDE;
 
     IntRect roundedFrameRect() const;
-    
+
     void paintBoxDecorations(PaintInfo&, const LayoutPoint&);
     void paintMask(PaintInfo&, const LayoutPoint&);
     void paintFillLayers(const PaintInfo&, const Color&, const FillLayer*, const LayoutRect&, CompositeOperator = CompositeSourceOver);
@@ -196,7 +196,7 @@
     LayoutUnit computeUnderAnnotationAdjustment(LayoutUnit allowedPosition) const;
 
     void computeOverflow(LayoutUnit lineTop, LayoutUnit lineBottom, GlyphOverflowAndFallbackFontsMap&);
-    
+
     void removeChild(InlineBox* child);
 
     virtual RenderObject::SelectionState selectionState();
@@ -208,7 +208,7 @@
     bool hasTextDescendants() const { return m_hasTextDescendants; }
     void setHasTextChildren() { m_hasTextChildren = true; setHasTextDescendants(); }
     void setHasTextDescendants() { m_hasTextDescendants = true; }
-    
+
     void checkConsistency() const;
     void setHasBadChildList();
 
@@ -216,7 +216,7 @@
     // For horizontal-tb and vertical-lr they will match physical directions, but for horizontal-bt and vertical-rl, the top/bottom and left/right
     // respectively are flipped when compared to their physical counterparts.  For example minX is on the left in vertical-lr, but it is on the right in vertical-rl.
     LayoutRect layoutOverflowRect(LayoutUnit lineTop, LayoutUnit lineBottom) const
-    { 
+    {
         return m_overflow ? m_overflow->layoutOverflowRect() : enclosingLayoutRect(frameRectIncludingLineHeight(lineTop, lineBottom));
     }
     LayoutUnit logicalLeftLayoutOverflow() const
@@ -250,7 +250,7 @@
     }
 
     LayoutRect visualOverflowRect(LayoutUnit lineTop, LayoutUnit lineBottom) const
-    { 
+    {
         return m_overflow ? m_overflow->visualOverflowRect() : enclosingLayoutRect(frameRectIncludingLineHeight(lineTop, lineBottom));
     }
     LayoutUnit logicalLeftVisualOverflow() const { return m_overflow ? (isHorizontal() ? m_overflow->visualOverflowRect().x() : m_overflow->visualOverflowRect().y()) : static_cast<LayoutUnit>(logicalLeft()); }
@@ -285,15 +285,15 @@
             return FloatRect(m_topLeft.x(), lineTop, width(), lineBottom - lineTop);
         return FloatRect(lineTop, m_topLeft.y(), lineBottom - lineTop, height());
     }
-    
+
     FloatRect logicalFrameRectIncludingLineHeight(LayoutUnit lineTop, LayoutUnit lineBottom) const
     {
         return FloatRect(logicalLeft(), lineTop, logicalWidth(), lineBottom - lineTop);
     }
-    
+
     bool descendantsHaveSameLineHeightAndBaseline() const { return m_descendantsHaveSameLineHeightAndBaseline; }
     void clearDescendantsHaveSameLineHeightAndBaseline()
-    { 
+    {
         m_descendantsHaveSameLineHeightAndBaseline = false;
         if (parent() && parent()->descendantsHaveSameLineHeightAndBaseline())
             parent()->clearDescendantsHaveSameLineHeightAndBaseline();
@@ -313,7 +313,7 @@
 
     InlineBox* m_firstChild;
     InlineBox* m_lastChild;
-    
+
     InlineFlowBox* m_prevLineBox; // The previous box that also uses our RenderObject
     InlineFlowBox* m_nextLineBox; // The next box that also uses our RenderObject
 
diff --git a/Source/core/rendering/InlineIterator.h b/Source/core/rendering/InlineIterator.h
index 17e2193..6750b85 100644
--- a/Source/core/rendering/InlineIterator.h
+++ b/Source/core/rendering/InlineIterator.h
@@ -26,7 +26,7 @@
 #include "core/rendering/BidiRun.h"
 #include "core/rendering/RenderBlock.h"
 #include "core/rendering/RenderText.h"
-#include <wtf/StdLibExtras.h>
+#include "wtf/StdLibExtras.h"
 
 namespace WebCore {
 
@@ -78,7 +78,7 @@
         return m_obj && m_obj->preservesNewline() && m_obj->isText() && toRenderText(m_obj)->textLength()
             && !toRenderText(m_obj)->isWordBreak() && toRenderText(m_obj)->characterAt(m_pos) == '\n';
     }
-    
+
     inline bool atParagraphSeparator()
     {
         return (m_obj && m_obj->isBR()) || atTextParagraphSeparator();
@@ -287,7 +287,7 @@
             // Never skip empty inlines.
             if (resolver)
                 resolver->commitExplicitEmbedding();
-            return o; 
+            return o;
         }
     }
 
diff --git a/Source/core/rendering/InlineTextBox.cpp b/Source/core/rendering/InlineTextBox.cpp
index 64045a8..3a22c0f 100644
--- a/Source/core/rendering/InlineTextBox.cpp
+++ b/Source/core/rendering/InlineTextBox.cpp
@@ -200,7 +200,7 @@
 {
     int sPos = max(startPos - m_start, 0);
     int ePos = min(endPos - m_start, (int)m_len);
-    
+
     if (sPos > ePos)
         return LayoutRect();
 
@@ -256,7 +256,7 @@
 {
     if (!extracted())
         return;
-    
+
     toRenderText(renderer())->attachTextBox(this);
 }
 
@@ -269,7 +269,7 @@
 
     // For LTR this is the left edge of the box, for RTL, the right edge in parent coordinates.
     float ellipsisX = flowIsLTR ? visibleRightEdge - ellipsisWidth : visibleLeftEdge + ellipsisWidth;
-    
+
     // Criteria for full truncation:
     // LTR: the left edge of the ellipsis is to the left of our text run.
     // RTL: the right edge of the ellipsis is to the right of our text run.
@@ -328,24 +328,24 @@
     return -1;
 }
 
-Color correctedTextColor(Color textColor, Color backgroundColor) 
+Color correctedTextColor(Color textColor, Color backgroundColor)
 {
     // Adjust the text color if it is too close to the background color,
     // by darkening or lightening it to move it further away.
-    
+
     int d = differenceSquared(textColor, backgroundColor);
-    // semi-arbitrarily chose 65025 (255^2) value here after a few tests; 
+    // semi-arbitrarily chose 65025 (255^2) value here after a few tests;
     if (d > 65025) {
         return textColor;
     }
-    
+
     int distanceFromWhite = differenceSquared(textColor, Color::white);
     int distanceFromBlack = differenceSquared(textColor, Color::black);
 
     if (distanceFromWhite < distanceFromBlack) {
         return textColor.dark();
     }
-    
+
     return textColor.light();
 }
 
@@ -492,17 +492,17 @@
     LayoutUnit logicalRightSide = logicalRightVisualOverflow();
     LayoutUnit logicalStart = logicalLeftSide + (isHorizontal() ? paintOffset.x() : paintOffset.y());
     LayoutUnit logicalExtent = logicalRightSide - logicalLeftSide;
-    
+
     LayoutUnit paintEnd = isHorizontal() ? paintInfo.rect.maxX() : paintInfo.rect.maxY();
     LayoutUnit paintStart = isHorizontal() ? paintInfo.rect.x() : paintInfo.rect.y();
-    
+
     LayoutPoint adjustedPaintOffset = roundedIntPoint(paintOffset);
-    
+
     if (logicalStart >= paintEnd || logicalStart + logicalExtent <= paintStart)
         return;
 
     bool isPrinting = textRenderer()->document()->printing();
-    
+
     // Determine whether or not we're selected.
     bool haveSelection = !isPrinting && paintInfo.phase != PaintPhaseTextClip && selectionState() != RenderObject::SelectionNone;
     if (!haveSelection && paintInfo.phase == PaintPhaseSelection)
@@ -531,7 +531,7 @@
 
     RenderObject* rendererToUse = renderer();
     RenderStyle* styleToUse = rendererToUse->style(isFirstLineStyle());
-    
+
     adjustedPaintOffset.move(0, styleToUse->isHorizontalWritingMode() ? 0 : -logicalHeight());
 
     FloatPoint boxOrigin = locationIncludingFlipping();
@@ -563,7 +563,7 @@
         emphasisMarkColor = Color::black;
     } else {
         textFillColor = rendererToUse->resolveColor(styleToUse, CSSPropertyWebkitTextFillColor);
-        
+
         bool forceBackgroundToWhite = false;
         if (isPrinting) {
             if (styleToUse->printColorAdjust() == PrintColorAdjustEconomy)
@@ -577,13 +577,13 @@
             textFillColor = correctedTextColor(textFillColor, Color::white);
 
         textStrokeColor = rendererToUse->resolveColor(styleToUse, CSSPropertyWebkitTextStrokeColor);
-        
+
         // Make the text stroke color legible against a white background
         if (forceBackgroundToWhite)
             textStrokeColor = correctedTextColor(textStrokeColor, Color::white);
 
         emphasisMarkColor = rendererToUse->resolveColor(styleToUse, CSSPropertyWebkitTextEmphasisColor);
-        
+
         // Make the text stroke color legible against a white background
         if (forceBackgroundToWhite)
             emphasisMarkColor = correctedTextColor(emphasisMarkColor, Color::white);
@@ -788,10 +788,10 @@
 
                 if (underline.endOffset <= start())
                     // underline is completely before this run.  This might be an underline that sits
-                    // before the first run we draw, or underlines that were within runs we skipped 
+                    // before the first run we draw, or underlines that were within runs we skipped
                     // due to truncation.
                     continue;
-                
+
                 if (underline.startOffset <= end()) {
                     // underline intersects this run.  Paint it.
                     paintCompositionUnderline(context, boxOrigin, underline);
@@ -804,7 +804,7 @@
             }
         }
     }
-    
+
     if (shouldRotate)
         context->concatCTM(rotation(boxRect, Counterclockwise));
 }
@@ -1098,13 +1098,13 @@
         if (!isLeftToRightDirection())
             localOrigin.move(m_logicalWidth - width, 0);
     }
-    
+
     // Get the text decoration colors.
     Color underline, overline, linethrough;
     renderer()->getTextDecorationColors(deco, underline, overline, linethrough, true);
     if (isFirstLineStyle())
         renderer()->getTextDecorationColors(deco, underline, overline, linethrough, true, true);
-    
+
     // Use a special function for underlines to get the positioning exactly right.
     bool isPrinting = textRenderer()->document()->printing();
     context->setStrokeThickness(textDecorationThickness);
@@ -1241,7 +1241,7 @@
     if (!markerSpansWholeBox || grammar) {
         int startPosition = max<int>(marker->startOffset() - m_start, 0);
         int endPosition = min<int>(marker->endOffset() - m_start, m_len);
-        
+
         if (m_truncation != cNoTruncation)
             endPosition = min<int>(endPosition, m_truncation);
 
@@ -1255,7 +1255,7 @@
         IntRect markerRect = enclosingIntRect(font.selectionRectForText(run, startPoint, selHeight, startPosition, endPosition));
         start = markerRect.x() - startPoint.x();
         width = markerRect.width();
-        
+
         // Store rendered rects for bad grammar markers, so we can hit-test against it elsewhere in order to
         // display a toolTip. We don't do this for misspelling markers.
         if (grammar) {
@@ -1264,7 +1264,7 @@
             toRenderedDocumentMarker(marker)->setRenderedRect(markerRect);
         }
     }
-    
+
     // IMPORTANT: The misspelling underline is not considered when calculating the text bounds, so we have to
     // make sure to fit within those bounds.  This means the top pixel(s) of the underline will overlap the
     // bottom pixel(s) of the glyphs in smaller font sizes.  The alternatives are to increase the line spacing (bad!!)
@@ -1325,7 +1325,7 @@
     // Note end() points at the last char, not one past it like endOffset and ranges do.
     for ( ; markerIt != markers.end(); markerIt++) {
         DocumentMarker* marker = *markerIt;
-        
+
         // Paint either the background markers or the foreground markers, but not both
         switch (marker->type()) {
             case DocumentMarker::Grammar:
@@ -1345,11 +1345,11 @@
             // marker is completely before this run.  This might be a marker that sits before the
             // first run we draw, or markers that were within runs we skipped due to truncation.
             continue;
-        
+
         if (marker->startOffset() > end())
             // marker is completely after this run, bail.  A later run will paint it.
             break;
-        
+
         // marker intersects this run.  Paint it.
         switch (marker->type()) {
             case DocumentMarker::Spelling:
@@ -1372,7 +1372,7 @@
 {
     if (m_truncation == cFullTruncation)
         return;
-    
+
     float start = 0; // start of line to draw, relative to tx
     float width = m_logicalWidth; // how much line to draw
     bool useWholeWidth = true;
diff --git a/Source/core/rendering/InlineTextBox.h b/Source/core/rendering/InlineTextBox.h
index cdfa3b0..2647d65 100644
--- a/Source/core/rendering/InlineTextBox.h
+++ b/Source/core/rendering/InlineTextBox.h
@@ -26,7 +26,7 @@
 #include "core/platform/graphics/TextRun.h"
 #include "core/rendering/InlineBox.h"
 #include "core/rendering/RenderText.h" // so textRenderer() can be inline
-#include <wtf/text/StringBuilder.h>
+#include "wtf/text/StringBuilder.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/LayoutState.cpp b/Source/core/rendering/LayoutState.cpp
index e89cd1b..fe30cda 100644
--- a/Source/core/rendering/LayoutState.cpp
+++ b/Source/core/rendering/LayoutState.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -94,13 +94,13 @@
         m_pageLogicalHeight = m_next->m_pageLogicalHeight;
         m_pageLogicalHeightChanged = m_next->m_pageLogicalHeightChanged;
         m_pageOffset = m_next->m_pageOffset;
-        
+
         // Disable pagination for objects we don't support. For now this includes overflow:scroll/auto, inline blocks and
         // writing mode roots.
         if (renderer->isUnsplittableForPagination())
             m_pageLogicalHeight = 0;
     }
-    
+
     // Propagate line grid information.
     propagateLineGridInfo(renderer);
 
@@ -119,7 +119,7 @@
     m_layoutDeltaXSaturated = m_next->m_layoutDeltaXSaturated;
     m_layoutDeltaYSaturated = m_next->m_layoutDeltaYSaturated;
 #endif
-    
+
     m_isPaginated = m_pageLogicalHeight || m_columnInfo || renderer->isRenderFlowThread();
 
     if (lineGrid() && renderer->hasColumns() && renderer->style()->hasInlineColumnAxis())
@@ -139,7 +139,7 @@
 #if !ASSERT_DISABLED
     , m_layoutDeltaXSaturated(false)
     , m_layoutDeltaYSaturated(false)
-#endif    
+#endif
     , m_columnInfo(0)
     , m_lineGrid(0)
     , m_next(0)
@@ -241,10 +241,10 @@
             }
         }
     }
-    
+
     // We didn't find an already-established grid with this identifier. Our render object establishes the grid.
     m_lineGrid = block;
-    m_lineGridOffset = m_layoutOffset; 
+    m_lineGridOffset = m_layoutOffset;
 }
 
 void LayoutState::computeLineGridPaginationOrigin(RenderBox* renderer)
@@ -259,7 +259,7 @@
     RootInlineBox* lineGridBox = lineGrid()->lineGridBox();
     if (!lineGridBox)
         return;
-    
+
     bool isHorizontalWritingMode = lineGrid()->isHorizontalWritingMode();
 
     LayoutUnit lineGridBlockOffset = isHorizontalWritingMode ? lineGridOffset().height() : lineGridOffset().width();
@@ -273,7 +273,7 @@
         return;
 
     LayoutUnit firstLineTopWithLeading = lineGridBlockOffset + lineGridBox->lineTopWithLeading();
-    
+
     if (isPaginated() && pageLogicalHeight()) {
         LayoutUnit pageLogicalTop = renderer->isHorizontalWritingMode() ? m_pageOffset.height() : m_pageOffset.width();
         if (pageLogicalTop > firstLineTopWithLeading) {
diff --git a/Source/core/rendering/LayoutState.h b/Source/core/rendering/LayoutState.h
index eac3822..058aa43 100644
--- a/Source/core/rendering/LayoutState.h
+++ b/Source/core/rendering/LayoutState.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef LayoutState_h
@@ -28,8 +28,8 @@
 
 #include "core/platform/graphics/LayoutRect.h"
 #include "core/rendering/ColumnInfo.h"
-#include <wtf/HashMap.h>
-#include <wtf/Noncopyable.h>
+#include "wtf/HashMap.h"
+#include "wtf/Noncopyable.h"
 
 namespace WebCore {
 
@@ -76,13 +76,13 @@
     void clearPaginationInformation();
     bool isPaginatingColumns() const { return m_columnInfo && m_columnInfo->paginationUnit() == ColumnInfo::Column; }
     bool isPaginated() const { return m_isPaginated; }
-    
+
     // The page logical offset is the object's offset from the top of the page in the page progression
     // direction (so an x-offset in vertical text and a y-offset for horizontal text).
     LayoutUnit pageLogicalOffset(RenderBox*, LayoutUnit childLogicalOffset) const;
 
     void addForcedColumnBreak(RenderBox*, LayoutUnit childLogicalOffset);
-    
+
     LayoutUnit pageLogicalHeight() const { return m_pageLogicalHeight; }
     bool pageLogicalHeightChanged() const { return m_pageLogicalHeightChanged; }
 
@@ -124,14 +124,14 @@
     // FIXME: Distinguish between the layout clip rect and the paint clip rect which may be larger,
     // e.g., because of composited scrolling.
     LayoutRect m_clipRect;
-    
+
     // x/y offset from container. Includes relative positioning and scroll offsets.
     LayoutSize m_paintOffset;
     // x/y offset from container. Does not include relative positioning or scroll offsets.
     LayoutSize m_layoutOffset;
     // Transient offset from the final position of the object
     // used to ensure that repaints happen in the correct place.
-    // This is a total delta accumulated from the root. 
+    // This is a total delta accumulated from the root.
     LayoutSize m_layoutDelta;
 
     // The current page height for the pagination model that encloses us.
diff --git a/Source/core/rendering/OverlapTestRequestClient.h b/Source/core/rendering/OverlapTestRequestClient.h
index 71400ab..1dbb821 100644
--- a/Source/core/rendering/OverlapTestRequestClient.h
+++ b/Source/core/rendering/OverlapTestRequestClient.h
@@ -20,14 +20,14 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef OverlapTestRequestClient_h
 #define OverlapTestRequestClient_h
 
 namespace WebCore {
-    
+
 class OverlapTestRequestClient {
 public:
     virtual ~OverlapTestRequestClient() { }
diff --git a/Source/core/rendering/PaintInfo.h b/Source/core/rendering/PaintInfo.h
index 6f4b6f0..28338ad 100644
--- a/Source/core/rendering/PaintInfo.h
+++ b/Source/core/rendering/PaintInfo.h
@@ -32,8 +32,8 @@
 #include "core/platform/graphics/LayoutRect.h"
 #include "core/platform/graphics/transforms/AffineTransform.h"
 #include "core/rendering/PaintPhase.h"
-#include <wtf/HashMap.h>
-#include <wtf/ListHashSet.h>
+#include "wtf/HashMap.h"
+#include "wtf/ListHashSet.h"
 
 namespace WebCore {
 
@@ -72,7 +72,7 @@
 
         // If we're the painting root, kids draw normally, and see root of 0.
         if (paintingRoot == renderer) {
-            paintingRoot = 0; 
+            paintingRoot = 0;
             return;
         }
     }
diff --git a/Source/core/rendering/PointerEventsHitRules.h b/Source/core/rendering/PointerEventsHitRules.h
index 73c0225..bc0e24c 100644
--- a/Source/core/rendering/PointerEventsHitRules.h
+++ b/Source/core/rendering/PointerEventsHitRules.h
@@ -39,7 +39,7 @@
     bool requireFill;
     bool requireStroke;
     bool canHitStroke;
-    bool canHitFill;  
+    bool canHitFill;
 };
 
 }
diff --git a/Source/core/rendering/RenderArena.cpp b/Source/core/rendering/RenderArena.cpp
index 2b6a05c..69a4f29 100644
--- a/Source/core/rendering/RenderArena.cpp
+++ b/Source/core/rendering/RenderArena.cpp
@@ -38,9 +38,11 @@
 
 #include <stdlib.h>
 #include <string.h>
+
 #include <limits>
-#include <wtf/Assertions.h>
-#include <wtf/CryptographicallyRandomNumber.h>
+
+#include "wtf/Assertions.h"
+#include "wtf/CryptographicallyRandomNumber.h"
 
 #define ROUNDUP(x, y) ((((x)+((y)-1))/(y))*(y))
 
diff --git a/Source/core/rendering/RenderBR.cpp b/Source/core/rendering/RenderBR.cpp
index affc34f..df38fd9 100644
--- a/Source/core/rendering/RenderBR.cpp
+++ b/Source/core/rendering/RenderBR.cpp
@@ -50,10 +50,10 @@
         if (s != style())
             return s->computedLineHeight(view());
     }
-    
+
     if (m_lineHeight == -1)
         m_lineHeight = style()->computedLineHeight(view());
-    
+
     return m_lineHeight;
 }
 
@@ -63,13 +63,13 @@
     m_lineHeight = -1;
 }
 
-int RenderBR::caretMinOffset() const 
-{ 
+int RenderBR::caretMinOffset() const
+{
     return 0;
 }
 
-int RenderBR::caretMaxOffset() const 
-{ 
+int RenderBR::caretMaxOffset() const
+{
     return 1;
 }
 
diff --git a/Source/core/rendering/RenderBR.h b/Source/core/rendering/RenderBR.h
index 5a805ab..c504a6e 100644
--- a/Source/core/rendering/RenderBR.h
+++ b/Source/core/rendering/RenderBR.h
@@ -37,7 +37,7 @@
     virtual ~RenderBR();
 
     virtual const char* renderName() const { return "RenderBR"; }
- 
+
     virtual LayoutRect selectionRectForRepaint(const RenderLayerModelObject* /*repaintContainer*/, bool /*clipToVisibleContent*/) OVERRIDE { return LayoutRect(); }
 
     virtual float width(unsigned /*from*/, unsigned /*len*/, const Font&, float /*xPos*/, HashSet<const SimpleFontData*>* = 0 /*fallbackFonts*/ , GlyphOverflow* = 0) const { return 0; }
@@ -62,13 +62,13 @@
 
 
 inline RenderBR* toRenderBR(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isBR());
     return static_cast<RenderBR*>(object);
 }
 
 inline const RenderBR* toRenderBR(const RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isBR());
     return static_cast<const RenderBR*>(object);
 }
diff --git a/Source/core/rendering/RenderBlock.cpp b/Source/core/rendering/RenderBlock.cpp
index ae65a06..b969ed8 100644
--- a/Source/core/rendering/RenderBlock.cpp
+++ b/Source/core/rendering/RenderBlock.cpp
@@ -62,8 +62,8 @@
 #include "core/rendering/shapes/ShapeInsideInfo.h"
 #include "core/rendering/shapes/ShapeOutsideInfo.h"
 #include "core/rendering/svg/SVGTextRunRenderingContext.h"
-#include <wtf/StdLibExtras.h>
-#include <wtf/TemporaryChange.h>
+#include "wtf/StdLibExtras.h"
+#include "wtf/TemporaryChange.h"
 
 using namespace std;
 using namespace WTF;
@@ -106,7 +106,7 @@
 static TrackedContainerMap* gPositionedContainerMap = 0;
 static TrackedContainerMap* gPercentHeightContainerMap = 0;
 static TrackedContainerMap* gFloatingObjectContainerMap = 0;
-    
+
 typedef WTF::HashMap<RenderBlock*, OwnPtr<ListHashSet<RenderInline*> > > ContinuationOutlineTableMap;
 
 typedef WTF::HashSet<RenderBlock*> DelayedUpdateScrollInfoSet;
@@ -181,7 +181,7 @@
     // with it.  We also don't collapse if we have any bottom border/padding.
     m_canCollapseMarginAfterWithChildren = m_canCollapseWithChildren && (afterBorderPadding == 0) &&
         (blockStyle->logicalHeight().isAuto() && !blockStyle->logicalHeight().value()) && blockStyle->marginAfterCollapse() != MSEPARATE;
-    
+
     m_quirkContainer = block->isTableCell() || block->isBody();
 
     m_discardMargin = m_canCollapseMarginBeforeWithChildren && block->mustDiscardMarginBefore();
@@ -279,6 +279,16 @@
     // Mark as being destroyed to avoid trouble with merges in removeChild().
     m_beingDestroyed = true;
 
+    if (!documentBeingDestroyed()) {
+        if (firstChild() && firstChild()->isRunIn()) {
+            // If we are moving inline children(run-in) from |this| to |parent|, then we need
+            // to clear our line box tree.
+            if (childrenInline())
+                deleteLineBoxTree();
+            moveRunInToOriginalPosition(firstChild());
+        }
+    }
+
     // Make sure to destroy anonymous children first while they are still connected to the rest of the tree, so that they will
     // properly dirty line boxes that they are removed from. Effects that do :before/:after only on hover could crash otherwise.
     children()->destroyLeftoverChildren();
@@ -291,7 +301,7 @@
         continuation->destroy();
         setContinuation(0);
     }
-    
+
     if (!documentBeingDestroyed()) {
         if (firstLineBox()) {
             // We can't wait for RenderBox::destroy to clear the selection,
@@ -331,7 +341,7 @@
     s_canPropagateFloatIntoSibling = oldStyle ? !isFloatingOrOutOfFlowPositioned() && !avoidsFloats() : false;
 
     setReplaced(newStyle->isDisplayInlineType());
-    
+
     if (oldStyle && parent() && diff == StyleDifferenceLayout && oldStyle->position() != newStyle->position()) {
         if (newStyle->position() == StaticPosition)
             // Clear our positioned objects list. Our absolutely positioned descendants will be
@@ -348,7 +358,7 @@
                 }
                 cb = cb->parent();
             }
-            
+
             if (cb->isRenderBlock())
                 toRenderBlock(cb)->removePositionedObjects(this, NewContainingBlock);
         }
@@ -377,7 +387,7 @@
 void RenderBlock::styleDidChange(StyleDifference diff, const RenderStyle* oldStyle)
 {
     RenderBox::styleDidChange(diff, oldStyle);
-    
+
     RenderStyle* newStyle = style();
 
     updateShapeInsideInfoAfterStyleChange(newStyle->resolvedShapeInside(), oldStyle ? oldStyle->resolvedShapeInside() : 0);
@@ -392,7 +402,7 @@
         }
     }
 
-    propagateStyleToAnonymousChildren(true);    
+    propagateStyleToAnonymousChildren(true);
     m_lineHeight = -1;
 
     // After our style changed, if we lose our ability to propagate floats into next sibling
@@ -420,11 +430,11 @@
                 }
             }
         }
-              
+
         parentBlock->markAllDescendantsWithFloatsForLayout();
         parentBlock->markSiblingsWithFloatsForLayout();
     }
-    
+
     // It's possible for our border/padding to change, but for the overall logical width of the block to
     // end up being the same. We keep track of this change so in layoutBlock, we can know to set relayoutChildren=true.
     m_hasBorderOrPaddingLogicalWidthChanged = oldStyle && diff == StyleDifferenceLayout && needsLayout() && borderOrPaddingLogicalWidthChanged(oldStyle, newStyle);
@@ -485,7 +495,7 @@
         flow->addChildIgnoringContinuation(newChild, beforeChild);
         return;
     }
-    
+
     // The goal here is to match up if we can, so that we can coalesce and create the
     // minimal # of continuations needed for the inline.
     if (childIsNormal == bcpIsNormal) {
@@ -503,7 +513,7 @@
 void RenderBlock::addChildToAnonymousColumnBlocks(RenderObject* newChild, RenderObject* beforeChild)
 {
     ASSERT(!continuation()); // We don't yet support column spans that aren't immediate children of the multi-column block.
-        
+
     // The goal is to locate a suitable box in which to place our child.
     RenderBlock* beforeChildParent = 0;
     if (beforeChild) {
@@ -550,11 +560,11 @@
         toRenderBlock(immediateChild->previousSibling())->addChildIgnoringAnonymousColumnBlocks(newChild, 0); // Treat like an append.
         return;
     }
-        
+
     // Split our anonymous blocks.
     RenderObject* newBeforeChild = splitAnonymousBoxesAroundChild(beforeChild);
 
-    
+
     // Create a new anonymous box of the appropriate type.
     RenderBlock* newBox = newChildHasColumnSpan ? createAnonymousColumnSpanBlock() : createAnonymousColumnsBlock();
     children()->insertChildNode(this, newBox, newBeforeChild);
@@ -575,14 +585,14 @@
         // multi-column for them to avoid this problem.
         if (curr->isTable() || curr->isRenderButton() || curr->isListItem())
             return 0;
-        
+
         RenderBlock* currBlock = toRenderBlock(curr);
         if (!currBlock->createsAnonymousWrapper())
             firstChildIgnoringAnonymousWrappers = currBlock;
 
         if (currBlock->style()->specifiesColumns() && (allowAnonymousColumnBlock || !currBlock->isAnonymousColumnsBlock()))
             return firstChildIgnoringAnonymousWrappers;
-            
+
         if (currBlock->isAnonymousColumnSpanBlock())
             return 0;
     }
@@ -630,7 +640,7 @@
     // Now take all of the children from beforeChild to the end and remove
     // them from |this| and place them in the clone.
     moveChildrenTo(cloneBlock, beforeChild, 0, true);
-    
+
     // Hook |clone| up as the continuation of the middle block.
     if (!cloneBlock->isAnonymousBlock())
         middleBlock->setContinuation(cloneBlock);
@@ -644,9 +654,9 @@
 
     while (curr && curr->isDescendantOf(fromBlock) && curr != fromBlock) {
         ASSERT_WITH_SECURITY_IMPLICATION(curr->isRenderBlock());
-        
+
         RenderBlock* blockCurr = toRenderBlock(curr);
-        
+
         // Create a new clone.
         RenderBlock* cloneChild = cloneBlock;
         cloneBlock = blockCurr->clone();
@@ -687,10 +697,10 @@
 {
     RenderBlock* pre = 0;
     RenderBlock* block = containingColumnsBlock();
-    
+
     // Delete our line boxes before we do the inline split into continuations.
     block->deleteLineBoxTree();
-    
+
     bool madeNewBeforeBlock = false;
     if (block->isAnonymousColumnsBlock()) {
         // We can reuse this block and make it the preBlock of the next continuation.
@@ -714,7 +724,7 @@
     block->children()->insertChildNode(block, newBlockBox, boxFirst);
     block->children()->insertChildNode(block, post, boxFirst);
     block->setChildrenInline(false);
-    
+
     if (madeNewBeforeBlock)
         block->moveChildrenTo(pre, boxFirst, 0, true);
 
@@ -743,7 +753,7 @@
     RenderBlock* post = 0;
     RenderBlock* block = this; // Eventually block will not just be |this|, but will also be a block nested inside |this|.  Assign to a variable
                                // so that we don't have to patch all of the rest of the code later on.
-    
+
     // Delete the block's line boxes before we do the split.
     block->deleteLineBoxTree();
 
@@ -767,7 +777,7 @@
     if (post)
         block->children()->insertChildNode(block, post, boxFirst);
     block->setChildrenInline(false);
-    
+
     // The pre/post blocks always have layers, so we know to always do a full insert/remove (so we pass true as the last argument).
     block->moveChildrenTo(pre, boxFirst, beforeChild, true);
     block->moveChildrenTo(post, beforeChild, 0, true);
@@ -881,7 +891,7 @@
             TemporaryChange<bool> columnFlowSplitEnabled(gColumnFlowSplitEnabled, false);
             // We are placing a column-span element inside a block.
             RenderBlock* newBox = createAnonymousColumnSpanBlock();
-        
+
             if (columnsBlockAncestor != this && !isRenderFlowThread()) {
                 // We are nested inside a multi-column element and are being split by the span. We have to break up
                 // our block into continuations.
@@ -940,7 +950,7 @@
     }
 
     RenderBox::addChild(newChild, beforeChild);
- 
+
     // Handle placement of run-ins.
     placeRunInIfNeeded(newChild);
 
@@ -980,21 +990,21 @@
     // |boundary| indicates a non-inclusive boundary point.  Regardless of whether |boundary|
     // is inline or not, we will not include it in a run with inlines before it.  It's as though we encountered
     // a non-inline.
-    
+
     // Start by skipping as many non-inlines as we can.
     RenderObject * curr = start;
     bool sawInline;
     do {
         while (curr && !(curr->isInline() || curr->isFloatingOrOutOfFlowPositioned()))
             curr = curr->nextSibling();
-        
+
         inlineRunStart = inlineRunEnd = curr;
-        
+
         if (!curr)
             return; // No more inline children to be found.
-        
+
         sawInline = curr->isInline();
-        
+
         curr = curr->nextSibling();
         while (curr && (curr->isInline() || curr->isFloatingOrOutOfFlowPositioned()) && (curr != boundary)) {
             inlineRunEnd = curr;
@@ -1041,7 +1051,7 @@
 }
 
 void RenderBlock::makeChildrenNonInline(RenderObject *insertionPoint)
-{    
+{
     // makeChildrenNonInline takes a block whose children are *all* inline and it
     // makes sure that inline children are coalesced under anonymous
     // blocks.  If |insertionPoint| is defined, then it represents the insertion point for
@@ -1093,10 +1103,10 @@
 {
     ASSERT(child->isAnonymousBlock());
     ASSERT(!child->childrenInline());
-    
+
     if (child->continuation() || (child->firstChild() && (child->isAnonymousColumnSpanBlock() || child->isAnonymousColumnsBlock())))
         return;
-    
+
     RenderObject* firstAnChild = child->m_children.firstChild();
     RenderObject* lastAnChild = child->m_children.lastChild();
     if (firstAnChild) {
@@ -1111,7 +1121,7 @@
             child->previousSibling()->setNextSibling(firstAnChild);
         if (child->nextSibling())
             child->nextSibling()->setPreviousSibling(lastAnChild);
-            
+
         if (child == m_children.firstChild())
             m_children.setFirstChild(firstAnChild);
         if (child == m_children.lastChild())
@@ -1174,7 +1184,7 @@
 
     RenderFlowThread* childFlowThread = child->flowThreadContainingBlock();
     CurrentRenderFlowThreadMaintainer flowThreadMaintainer(childFlowThread);
-    
+
     RenderBlock* anonBlock = toRenderBlock(parent->children()->removeChildNode(parent, child, child->hasLayer()));
     anonBlock->moveAllChildrenTo(parent, nextSibling, child->hasLayer());
     // Delete the now-empty block's lines and nuke it.
@@ -1247,11 +1257,11 @@
         prev->setNeedsLayoutAndPrefWidthsRecalc();
         RenderBlock* nextBlock = toRenderBlock(next);
         RenderBlock* prevBlock = toRenderBlock(prev);
-       
+
         if (prev->childrenInline() != next->childrenInline()) {
             RenderBlock* inlineChildrenBlock = prev->childrenInline() ? prevBlock : nextBlock;
             RenderBlock* blockChildrenBlock = prev->childrenInline() ? nextBlock : prevBlock;
-            
+
             // Place the inline children block inside of the block children block instead of deleting it.
             // In order to reuse it, we have to reset it to just be a generic anonymous block.  Make sure
             // to clear out inherited column properties by just making a new style, and to also clear the
@@ -1262,12 +1272,12 @@
             bool inlineChildrenBlockHasLayer = inlineChildrenBlock->hasLayer();
             inlineChildrenBlock->setStyle(newStyle);
             children()->removeChildNode(this, inlineChildrenBlock, inlineChildrenBlockHasLayer);
-            
+
             // Now just put the inlineChildrenBlock inside the blockChildrenBlock.
             blockChildrenBlock->children()->insertChildNode(blockChildrenBlock, inlineChildrenBlock, prev == inlineChildrenBlock ? blockChildrenBlock->firstChild() : 0,
                                                             inlineChildrenBlockHasLayer || blockChildrenBlock->hasLayer());
             next->setNeedsLayoutAndPrefWidthsRecalc();
-            
+
             // inlineChildrenBlock got reparented to blockChildrenBlock, so it is no longer a child
             // of "this". we null out prev or next so that is not used later in the function.
             if (inlineChildrenBlock == prevBlock)
@@ -1278,7 +1288,7 @@
             // Take all the children out of the |next| block and put them in
             // the |prev| block.
             nextBlock->moveAllChildrenIncludingFloatsTo(prevBlock, nextBlock->hasLayer() || prevBlock->hasLayer());
-            
+
             // Delete the now-empty block's lines and nuke it.
             nextBlock->deleteLineBoxTree();
             nextBlock->destroy();
@@ -1370,7 +1380,7 @@
         // line boxes, then we can't be self-collapsing, since we have content.
         if (childrenInline())
             return !firstLineBox();
-        
+
         // Whether or not we collapse is dependent on whether all our normal flow children
         // are also self-collapsing.
         for (RenderBox* child = firstChildBox(); child; child = child->nextSiblingBox()) {
@@ -1443,7 +1453,7 @@
     // Table cells call layoutBlock directly, so don't add any logic here.  Put code into
     // layoutBlock().
     layoutBlock(false);
-    
+
     // It's safe to check for control clip here, since controls can never be table cells.
     // If we have a lightweight clip, there can never be any overflow from children.
     if (hasControlClip() && m_overflow)
@@ -1498,7 +1508,7 @@
 
     setLogicalHeight(oldHeight);
     setLogicalTop(oldTop);
-    
+
     return shapeInfoRequiresRelayout(this);
 }
 
@@ -1560,7 +1570,7 @@
             colInfo->setColumnHeight(pageLogicalHeight);
             pageLogicalHeightChanged = true;
         }
-        
+
         if (!hasSpecifiedPageLogicalHeight && !pageLogicalHeight)
             colInfo->clearForcedBreaks();
 
@@ -1621,7 +1631,7 @@
     bool isCell = isTableCell();
     if (!isCell) {
         initMaxMarginValues();
-        
+
         setHasMarginBeforeQuirk(styleToUse->hasMarginBeforeQuirk());
         setHasMarginAfterQuirk(styleToUse->hasMarginAfterQuirk());
         setPaginationStrut(0);
@@ -1641,7 +1651,7 @@
     LayoutUnit toAdd = borderAfter() + paddingAfter() + scrollbarLogicalHeight();
     if (lowestFloatLogicalBottom() > (logicalHeight() - toAdd) && expandsToEncloseOverhangingFloats())
         setLogicalHeight(lowestFloatLogicalBottom() + toAdd);
-    
+
     if (relayoutForPagination(hasSpecifiedPageLogicalHeight, pageLogicalHeight, statePusher))
         return;
 
@@ -1679,7 +1689,7 @@
 
     // Add overflow from children (unless we're multi-column, since in that case all our child overflow is clipped anyway).
     computeOverflow(oldClientAfterEdge);
-    
+
     statePusher.pop();
 
     fitBorderToLinesIfNeeded();
@@ -1708,7 +1718,7 @@
             repaintLogicalLeft = min(repaintLogicalLeft, logicalLeftLayoutOverflow());
             repaintLogicalRight = max(repaintLogicalRight, logicalRightLayoutOverflow());
         }
-        
+
         LayoutRect repaintRect;
         if (isHorizontalWritingMode())
             repaintRect = LayoutRect(repaintLogicalLeft, repaintLogicalTop, repaintLogicalRight - repaintLogicalLeft, repaintLogicalBottom - repaintLogicalTop);
@@ -1719,7 +1729,7 @@
         adjustRectForColumns(repaintRect);
 
         repaintRect.inflate(maximalOutlineSize(PaintPhaseOutline));
-        
+
         if (hasOverflowClip()) {
             // Adjust repaint rect for scroll offset
             repaintRect.move(-scrolledContentOffset());
@@ -1774,7 +1784,7 @@
         // When we have overflow clip, propagate the original spillout since it will include collapsed bottom margins
         // and bottom padding.  Set the axis we don't care about to be 1, since we want this overflow to always
         // be considered reachable.
-        LayoutRect clientRect(clientBoxRect());
+        LayoutRect clientRect(noOverflowRect());
         LayoutRect rectToApply;
         if (isHorizontalWritingMode())
             rectToApply = LayoutRect(clientRect.x(), clientRect.y(), 1, max<LayoutUnit>(0, oldClientAfterEdge - clientRect.y()));
@@ -1784,11 +1794,11 @@
         if (hasRenderOverflow())
             m_overflow->setLayoutClientAfterEdge(oldClientAfterEdge);
     }
-        
+
     // Allow our overflow to catch cases where the caret in an empty editable element with negative text indent needs to get painted.
     LayoutUnit textIndent = textIndentOffset();
     if (textIndent < 0) {
-        LayoutRect clientRect(clientBoxRect());
+        LayoutRect clientRect(noOverflowRect());
         LayoutRect rectToApply = LayoutRect(clientRect.x() + min<LayoutUnit>(0, textIndent), clientRect.y(), clientRect.width() - min<LayoutUnit>(0, textIndent), clientRect.height());
         addVisualOverflow(rectToApply);
     }
@@ -1836,7 +1846,7 @@
     TrackedRendererListHashSet::iterator end = positionedDescendants->end();
     for (TrackedRendererListHashSet::iterator it = positionedDescendants->begin(); it != end; ++it) {
         positionedObject = *it;
-        
+
         // Fixed positioned elements don't contribute to layout overflow, since they don't scroll with the content.
         if (positionedObject->style()->position() != FixedPosition) {
             LayoutUnit x = positionedObject->x();
@@ -1867,7 +1877,7 @@
 {
     bool isHorizontal = isHorizontalWritingMode();
     bool hasStaticBlockPosition = child->style()->hasStaticBlockPosition(isHorizontal);
-    
+
     LayoutUnit logicalTop = logicalHeight();
     updateStaticInlinePositionForChild(child, logicalTop);
 
@@ -1878,7 +1888,7 @@
         LayoutUnit collapsedBeforeNeg = marginInfo.negativeMargin();
         logicalTop += collapsedBeforePos - collapsedBeforeNeg;
     }
-    
+
     RenderLayer* childLayer = child->layer();
     if (childLayer->staticBlockPosition() != logicalTop) {
         childLayer->setStaticBlockPosition(logicalTop);
@@ -1981,6 +1991,9 @@
     if (!curr || !curr->isRenderBlock() || !curr->childrenInline())
         return;
 
+    if (toRenderBlock(curr)->beingDestroyed())
+        return;
+
     // Per CSS3, "A run-in cannot run in to a block that already starts with a
     // run-in or that itself is a run-in".
     if (curr->isRunIn() || (curr->firstChild() && curr->firstChild()->isRunIn()))
@@ -2070,7 +2083,7 @@
         posTop = max(posTop, childMargins.positiveMarginAfter());
         negTop = max(negTop, childMargins.negativeMarginAfter());
     }
-    
+
     // See if the top margin is quirky. We only care if this child has
     // margins that will collapse with us.
     bool topQuirk = hasMarginBeforeQuirk(child);
@@ -2104,7 +2117,7 @@
             setMustDiscardMarginBefore();
     }
 
-    // Once we find a child with discardMarginBefore all the margins collapsing with us must also discard. 
+    // Once we find a child with discardMarginBefore all the margins collapsing with us must also discard.
     if (childDiscardMarginBefore) {
         marginInfo.setDiscardMargin(true);
         marginInfo.clearMargin();
@@ -2125,9 +2138,9 @@
             LayoutUnit collapsedBeforePos = max(marginInfo.positiveMargin(), childMargins.positiveMarginBefore());
             LayoutUnit collapsedBeforeNeg = max(marginInfo.negativeMargin(), childMargins.negativeMarginBefore());
             marginInfo.setMargin(collapsedBeforePos, collapsedBeforeNeg);
-            
+
             // Now collapse the child's margins together, which means examining our
-            // bottom margin values as well. 
+            // bottom margin values as well.
             marginInfo.setPositiveMarginIfLarger(childMargins.positiveMarginAfter());
             marginInfo.setNegativeMarginIfLarger(childMargins.negativeMarginAfter());
 
@@ -2157,7 +2170,7 @@
         }
 
         marginInfo.setDiscardMargin(childDiscardMarginAfter);
-        
+
         if (!marginInfo.discardMargin()) {
             marginInfo.setPositiveMargin(childMargins.positiveMarginAfter());
             marginInfo.setNegativeMargin(childMargins.negativeMarginAfter());
@@ -2167,7 +2180,7 @@
         if (marginInfo.margin())
             marginInfo.setHasMarginAfterQuirk(hasMarginAfterQuirk(child));
     }
-    
+
     // If margins would pull us past the top of the next page, then we need to pull back and pretend like the margins
     // collapsed into the page edge.
     LayoutState* layoutState = view()->layoutState();
@@ -2186,7 +2199,7 @@
     RenderObject* prev = child->previousSibling();
     if (prev && prev->isBlockFlow() && !prev->isFloatingOrOutOfFlowPositioned()) {
         RenderBlock* block = toRenderBlock(prev);
-        if (block->containsFloats() && !block->avoidsFloats() && (block->logicalTop() + block->lowestFloatLogicalBottom()) > logicalTop) 
+        if (block->containsFloats() && !block->avoidsFloats() && (block->logicalTop() + block->lowestFloatLogicalBottom()) > logicalTop)
             addOverhangingFloats(block, false);
     }
     setLogicalHeight(oldLogicalHeight);
@@ -2216,7 +2229,7 @@
         marginInfo.setDiscardMargin(childDiscardMargin);
 
         // CSS2.1 states:
-        // "If the top and bottom margins of an element with clearance are adjoining, its margins collapse with 
+        // "If the top and bottom margins of an element with clearance are adjoining, its margins collapse with
         // the adjoining margins of following siblings but that resulting margin does not collapse with the bottom margin of the parent block."
         // So the parent's bottom margin cannot collapse through this block or any subsequent self-collapsing blocks. Check subsequent siblings
         // for a block with height - if none is found then don't allow the margins to collapse with the parent.
@@ -2237,7 +2250,7 @@
     } else
         // Increase our height by the amount we had to clear.
         setLogicalHeight(logicalHeight() + heightIncrease);
-    
+
     if (marginInfo.canCollapseWithMarginBefore()) {
         // We can no longer collapse with the top of the block since a clear
         // occurred.  The empty blocks collapse into the cleared block.
@@ -2283,7 +2296,7 @@
 
     if (!child->isRenderBlock())
         return;
-    
+
     RenderBlock* childBlock = toRenderBlock(child);
     if (childBlock->childrenInline() || childBlock->isWritingModeRoot())
         return;
@@ -2297,7 +2310,7 @@
         if (!grandchildBox->isFloatingOrOutOfFlowPositioned())
             break;
     }
-    
+
     // Give up if there is clearance on the box, since it probably won't collapse into us.
     if (!grandchildBox || grandchildBox->style()->clear() != CNONE)
         return;
@@ -2350,16 +2363,16 @@
         logicalTopEstimate = min(logicalTopEstimate, nextPageLogicalTop(logicalHeight()));
 
     logicalTopEstimate += getClearDelta(child, logicalTopEstimate);
-    
+
     estimateWithoutPagination = logicalTopEstimate;
 
     if (layoutState->isPaginated()) {
         // If the object has a page or column break value of "before", then we should shift to the top of the next page.
         logicalTopEstimate = applyBeforeBreak(child, logicalTopEstimate);
-    
+
         // For replaced elements and scrolled elements, we want to shift them to the next page if they don't fit on the current one.
         logicalTopEstimate = adjustForUnsplittableChild(child, logicalTopEstimate);
-        
+
         if (!child->selfNeedsLayout() && child->isRenderBlock())
             logicalTopEstimate += toRenderBlock(child)->paginationStrut();
     }
@@ -2402,7 +2415,7 @@
     // Add in our start margin.
     LayoutUnit childMarginStart = marginStartForChild(child);
     LayoutUnit newPosition = startPosition + childMarginStart;
-        
+
     // Some objects (e.g., tables, horizontal rules, overflow:auto blocks) avoid floats.  They need
     // to shift over as necessary to dodge any floats that might get in the way.
     if (child->avoidsFloats() && containsFloats() && !flowThreadContainingBlock())
@@ -2444,7 +2457,7 @@
     if (!marginInfo.discardMargin() && (!marginInfo.canCollapseWithMarginAfter() && !marginInfo.canCollapseWithMarginBefore()
         && (!document()->inQuirksMode() || !marginInfo.quirkContainer() || !marginInfo.hasMarginAfterQuirk())))
         setLogicalHeight(logicalHeight() + marginInfo.margin());
-        
+
     // Now add in our bottom border/padding.
     setLogicalHeight(logicalHeight() + afterSide);
 
@@ -2518,7 +2531,7 @@
     LayoutUnit afterEdge = borderAfter() + paddingAfter() + scrollbarLogicalHeight();
 
     setLogicalHeight(beforeEdge);
-    
+
     // Lay out our hypothetical grid line as though it occurs at the top of the block.
     if (view()->layoutState()->lineGrid() == this)
         layoutLineGridBox();
@@ -2559,7 +2572,7 @@
         // Lay out the child.
         layoutBlockChild(child, marginInfo, previousFloatLogicalBottom, maxFloatLogicalBottom);
     }
-    
+
     // Now do the handling of the bottom of the block, adding in our bottom border/padding and
     // determining the correct collapsed bottom margin information.
     handleAfterSideOfBlock(beforeEdge, afterEdge, marginInfo);
@@ -2631,7 +2644,7 @@
 
     // Now check for clear.
     LayoutUnit logicalTopAfterClear = clearFloatsIfNeeded(child, marginInfo, oldPosMarginBefore, oldNegMarginBefore, logicalTopBeforeClear);
-    
+
     bool paginated = view()->layoutState()->isPaginated();
     if (paginated)
         logicalTopAfterClear = adjustBlockChildForPagination(logicalTopAfterClear, estimateWithoutPagination, child,
@@ -2650,7 +2663,7 @@
             // So go ahead and mark the item as dirty.
             child->setChildNeedsLayout(true, MarkOnlyThis);
         }
-        
+
         if (childRenderBlock) {
             if (!child->avoidsFloats() && childRenderBlock->containsFloats())
                 childRenderBlock->markAllDescendantsWithFloatsForLayout();
@@ -2662,7 +2675,7 @@
         child->layoutIfNeeded();
     }
 
-    // We are no longer at the top of the block if we encounter a non-empty child.  
+    // We are no longer at the top of the block if we encounter a non-empty child.
     // This has to be done after checking for clear, so that margins can be reset if a clear occurred.
     if (marginInfo.atBeforeSideOfBlock() && !child->isSelfCollapsingBlock())
         marginInfo.setAtBeforeSideOfBlock(false);
@@ -2724,7 +2737,7 @@
         }
 
         // FIXME: Glyph overflow will get lost in this case, but not really a big deal.
-        GlyphOverflowAndFallbackFontsMap textBoxDataMap;                  
+        GlyphOverflowAndFallbackFontsMap textBoxDataMap;
         for (ListHashSet<RootInlineBox*>::const_iterator it = lineBoxes.begin(); it != lineBoxes.end(); ++it) {
             RootInlineBox* box = *it;
             box->computeOverflow(box->lineTop(), box->lineBottom(), textBoxDataMap);
@@ -2743,7 +2756,7 @@
         return false;
 
     LayoutStateMaintainer statePusher(view(), this, locationOffset(), hasColumns() || hasTransform() || hasReflection() || style()->isFlippedBlocksWritingMode());
-    
+
     if (needsPositionedMovementLayout() && !tryLayoutDoingPositionedMovementOnly())
         return false;
 
@@ -2753,7 +2766,7 @@
 
     // Lay out our positioned objects if our positioned child bit is set.
     // Also, if an absolute position element inside a relative positioned container moves, and the absolute element has a fixed position
-    // child, neither the fixed element nor its container learn of the movement since posChildNeedsLayout() is only marked as far as the 
+    // child, neither the fixed element nor its container learn of the movement since posChildNeedsLayout() is only marked as far as the
     // relative positioned container. So if we can have fixed pos objects in our positioned objects list check if any of them
     // are statically positioned and thus need to move with their absolute ancestors.
     bool canContainFixedPosObjects = canContainFixedPositionObjects();
@@ -2771,7 +2784,7 @@
     computeOverflow(oldClientAfterEdge, true);
 
     statePusher.pop();
-    
+
     updateLayerTransform();
 
     updateScrollInfoAfterLayout();
@@ -2815,7 +2828,7 @@
     TrackedRendererListHashSet* positionedDescendants = positionedObjects();
     if (!positionedDescendants)
         return;
-        
+
     if (hasColumns())
         view()->layoutState()->clearPaginationInformation(); // Positioned objects are not part of the column flow, so they don't paginate with the columns.
 
@@ -2825,7 +2838,7 @@
         r = *it;
 
         // A fixed position element with an absolute positioned ancestor has no way of knowing if the latter has changed position. So
-        // if this is a fixed position element, mark it for layout if it has an abspos ancestor and needs to move with that ancestor, i.e. 
+        // if this is a fixed position element, mark it for layout if it has an abspos ancestor and needs to move with that ancestor, i.e.
         // it has static position.
         markFixedPositionObjectForLayoutIfNeeded(r);
         if (fixedPositionObjectsOnly) {
@@ -2839,23 +2852,23 @@
         // positioned explicitly) this should not incur a performance penalty.
         if (relayoutChildren || (r->style()->hasStaticBlockPosition(isHorizontalWritingMode()) && r->parent() != this))
             r->setChildNeedsLayout(true, MarkOnlyThis);
-            
+
         // If relayoutChildren is set and the child has percentage padding or an embedded content box, we also need to invalidate the childs pref widths.
         if (relayoutChildren && r->needsPreferredWidthsRecalculation())
             r->setPreferredLogicalWidthsDirty(true, MarkOnlyThis);
-        
+
         if (!r->needsLayout())
             r->markForPaginationRelayoutIfNeeded();
-        
+
         // We don't have to do a full layout.  We just have to update our position. Try that first. If we have shrink-to-fit width
         // and we hit the available width constraint, the layoutIfNeeded() will catch it and do a full layout.
         if (r->needsPositionedMovementLayoutOnly() && r->tryLayoutDoingPositionedMovementOnly())
             r->setNeedsLayout(false);
-            
+
         // If we are paginated or in a line grid, go ahead and compute a vertical position for our object now.
         // If it's wrong we'll lay out again.
         LayoutUnit oldLogicalTop = 0;
-        bool needsBlockDirectionLocationSetBeforeLayout = r->needsLayout() && view()->layoutState()->needsBlockDirectionLocationSetBeforeLayout(); 
+        bool needsBlockDirectionLocationSetBeforeLayout = r->needsLayout() && view()->layoutState()->needsBlockDirectionLocationSetBeforeLayout();
         if (needsBlockDirectionLocationSetBeforeLayout) {
             if (isHorizontalWritingMode() == r->isHorizontalWritingMode())
                 r->updateLogicalHeight();
@@ -2863,7 +2876,7 @@
                 r->updateLogicalWidth();
             oldLogicalTop = logicalTopForChild(r);
         }
-        
+
         r->layoutIfNeeded();
 
         // Lay out again if our estimate was wrong.
@@ -2872,7 +2885,7 @@
             r->layoutIfNeeded();
         }
     }
-    
+
     if (hasColumns())
         view()->layoutState()->m_columnInfo = columnInfo(); // FIXME: Kind of gross. We just put this back into the layout state so that pop() will work.
 }
@@ -2923,13 +2936,13 @@
         }
     }
 }
- 
+
 void RenderBlock::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
 {
     ANNOTATE_GRAPHICS_CONTEXT(paintInfo, this);
 
     LayoutPoint adjustedPaintOffset = paintOffset + location();
-    
+
     PaintPhase phase = paintInfo.phase;
 
     // Check if we need to do anything at all.
@@ -2994,7 +3007,7 @@
                 ruleLogicalLeft -= (inlineDirectionSize + colGap / 2);
                 currLogicalLeftOffset -= (inlineDirectionSize + colGap);
             }
-           
+
             // Now paint the column rule.
             if (i < colCount - 1) {
                 LayoutUnit ruleLeft = isHorizontalWritingMode() ? paintOffset.x() + ruleLogicalLeft - ruleThickness / 2 + ruleAdd : paintOffset.x() + borderLeft() + paddingLeft();
@@ -3004,7 +3017,7 @@
                 IntRect pixelSnappedRuleRect = pixelSnappedIntRectFromEdges(ruleLeft, ruleTop, ruleRight, ruleBottom);
                 drawLineForBoxSide(paintInfo.context, pixelSnappedRuleRect.x(), pixelSnappedRuleRect.y(), pixelSnappedRuleRect.maxX(), pixelSnappedRuleRect.maxY(), boxSide, ruleColor, ruleStyle, 0, 0, antialias);
             }
-            
+
             ruleLogicalLeft = currLogicalLeftOffset;
         }
     } else {
@@ -3069,11 +3082,11 @@
         colRect.moveBy(paintOffset);
         PaintInfo info(paintInfo);
         info.rect.intersect(pixelSnappedIntRect(colRect));
-        
+
         if (!info.rect.isEmpty()) {
             GraphicsContextStateSaver stateSaver(*context);
             LayoutRect clipRect(colRect);
-            
+
             if (i < colCount - 1) {
                 if (isHorizontalWritingMode())
                     clipRect.expand(colGap / 2, 0);
@@ -3229,7 +3242,7 @@
 
             // Do not add continuations for outline painting by our containing block if we are a relative positioned
             // anonymous block (i.e. have our own layer), paint them straightaway instead. This is because a block depends on renderers in its continuation table being
-            // in the same layer. 
+            // in the same layer.
             if (!inlineEnclosedInSelfPaintingLayer && !hasLayer())
                 cb->addContinuationWithOutline(inlineRenderer);
             else if (!inlineRenderer->firstLineBox() || (!inlineEnclosedInSelfPaintingLayer && hasLayer()))
@@ -3241,7 +3254,7 @@
     // 7. paint caret.
     // If the caret's node's render object's containing block is this block, and the paint action is PaintPhaseForeground,
     // then paint the caret.
-    if (paintPhase == PaintPhaseForeground) {        
+    if (paintPhase == PaintPhaseForeground) {
         paintCaret(paintInfo, paintOffset, CursorCaret);
         paintCaret(paintInfo, paintOffset, DragCaret);
     }
@@ -3251,7 +3264,7 @@
 {
     if (!style()->isFlippedBlocksWritingMode())
         return point;
-    
+
     // This is similar to RenderBox::flipForWritingModeForChild. We have to subtract out our left/top offsets twice, since
     // it's going to get added back in. We hide this complication here so that the calling code looks normal for the unflipped
     // case.
@@ -3291,7 +3304,7 @@
 }
 
 RenderInline* RenderBlock::inlineElementContinuation() const
-{ 
+{
     RenderBoxModelObject* continuation = this->continuation();
     return continuation && continuation->isInline() ? toRenderInline(continuation) : 0;
 }
@@ -3306,7 +3319,7 @@
         return nextContinuation->blockElementContinuation();
     return nextContinuation;
 }
-    
+
 static ContinuationOutlineTableMap* continuationOutlineTable()
 {
     DEFINE_STATIC_LOCAL(ContinuationOutlineTableMap, table, ());
@@ -3318,14 +3331,14 @@
     // We can't make this work if the inline is in a layer.  We'll just rely on the broken
     // way of painting.
     ASSERT(!flow->layer() && !flow->isInlineElementContinuation());
-    
+
     ContinuationOutlineTableMap* table = continuationOutlineTable();
     ListHashSet<RenderInline*>* continuations = table->get(this);
     if (!continuations) {
         continuations = new ListHashSet<RenderInline*>;
         table->set(this, adoptPtr(continuations));
     }
-    
+
     continuations->add(flow);
 }
 
@@ -3334,7 +3347,7 @@
     ContinuationOutlineTableMap* table = continuationOutlineTable();
     if (table->isEmpty())
         return false;
-        
+
     ListHashSet<RenderInline*>* continuations = table->get(this);
     if (!continuations)
         return false;
@@ -3347,7 +3360,7 @@
     ContinuationOutlineTableMap* table = continuationOutlineTable();
     if (table->isEmpty())
         return;
-        
+
     OwnPtr<ListHashSet<RenderInline*> > continuations = table->take(this);
     if (!continuations)
         return;
@@ -3361,7 +3374,7 @@
         RenderBlock* block = flow->containingBlock();
         for ( ; block && block != this; block = block->containingBlock())
             accumulatedPaintOffset.moveBy(block->location());
-        ASSERT(block);   
+        ASSERT(block);
         flow->paintOutline(info, accumulatedPaintOffset);
     }
 }
@@ -3376,24 +3389,24 @@
     if (isPseudoElement())
         return false;
     ASSERT(node() || isAnonymous());
-        
+
     // FIXME: Eventually tables should have to learn how to fill gaps between cells, at least in simple non-spanning cases.
     if (isTable())
         return false;
-        
+
     if (isBody() || isRoot() || hasOverflowClip()
         || isPositioned() || isFloating()
         || isTableCell() || isInlineBlockOrInlineTable()
         || hasTransform() || hasReflection() || hasMask() || isWritingModeRoot()
         || isRenderFlowThread())
         return true;
-    
+
     if (view() && view()->selectionStart()) {
         Node* startElement = view()->selectionStart()->node();
         if (startElement && startElement->rootEditableElement() == node())
             return true;
     }
-    
+
     return false;
 }
 
@@ -3414,7 +3427,7 @@
     LayoutUnit lastTop = 0;
     LayoutUnit lastLeft = logicalLeftSelectionOffset(this, lastTop);
     LayoutUnit lastRight = logicalRightSelectionOffset(this, lastTop);
-    
+
     return selectionGaps(this, offsetFromRepaintContainer, IntSize(), lastTop, lastLeft, lastRight);
 }
 
@@ -3447,7 +3460,7 @@
 {
     if (!positionedObjects)
         return;
-    
+
     TrackedRendererListHashSet::const_iterator end = positionedObjects->end();
     for (TrackedRendererListHashSet::const_iterator it = positionedObjects->begin(); it != end; ++it) {
         RenderBox* r = *it;
@@ -3527,7 +3540,7 @@
 
     // Go ahead and fill the vertical gap all the way to the bottom of our block if the selection extends past our block.
     if (rootBlock == this && (selectionState() != SelectionBoth && selectionState() != SelectionEnd))
-        result.uniteCenter(blockSelectionGap(rootBlock, rootBlockPhysicalPosition, offsetFromRootBlock, lastLogicalTop, lastLogicalLeft, lastLogicalRight, 
+        result.uniteCenter(blockSelectionGap(rootBlock, rootBlockPhysicalPosition, offsetFromRootBlock, lastLogicalTop, lastLogicalLeft, lastLogicalRight,
                                              logicalHeight(), paintInfo));
     return result;
 }
@@ -3561,9 +3574,9 @@
 
         if (!containsStart && !lastSelectedLine &&
             selectionState() != SelectionStart && selectionState() != SelectionBoth)
-            result.uniteCenter(blockSelectionGap(rootBlock, rootBlockPhysicalPosition, offsetFromRootBlock, lastLogicalTop, lastLogicalLeft, lastLogicalRight, 
+            result.uniteCenter(blockSelectionGap(rootBlock, rootBlockPhysicalPosition, offsetFromRootBlock, lastLogicalTop, lastLogicalLeft, lastLogicalRight,
                                                  selTop, paintInfo));
-        
+
         LayoutRect logicalRect(curr->logicalLeft(), selTop, curr->logicalWidth(), selTop + selHeight);
         logicalRect.move(isHorizontalWritingMode() ? offsetFromRootBlock : offsetFromRootBlock.transposedSize());
         LayoutRect physicalRect = rootBlock->logicalRectToPhysicalRect(rootBlockPhysicalPosition, logicalRect);
@@ -3618,7 +3631,7 @@
             // We need to fill the vertical gap above this object.
             if (childState == SelectionEnd || childState == SelectionInside)
                 // Fill the gap above the object.
-                result.uniteCenter(blockSelectionGap(rootBlock, rootBlockPhysicalPosition, offsetFromRootBlock, lastLogicalTop, lastLogicalLeft, lastLogicalRight, 
+                result.uniteCenter(blockSelectionGap(rootBlock, rootBlockPhysicalPosition, offsetFromRootBlock, lastLogicalTop, lastLogicalLeft, lastLogicalRight,
                                                      curr->logicalTop(), paintInfo));
 
             // Only fill side gaps for objects that paint their own selection if we know for sure the selection is going to extend all the way *past*
@@ -3643,7 +3656,7 @@
             lastLogicalRight = logicalRightSelectionOffset(rootBlock, curr->logicalBottom());
         } else if (childState != SelectionNone)
             // We must be a block that has some selected object inside it.  Go ahead and recur.
-            result.unite(toRenderBlock(curr)->selectionGaps(rootBlock, rootBlockPhysicalPosition, LayoutSize(offsetFromRootBlock.width() + curr->x(), offsetFromRootBlock.height() + curr->y()), 
+            result.unite(toRenderBlock(curr)->selectionGaps(rootBlock, rootBlockPhysicalPosition, LayoutSize(offsetFromRootBlock.width() + curr->x(), offsetFromRootBlock.height() + curr->y()),
                                                             lastLogicalTop, lastLogicalLeft, lastLogicalRight, paintInfo));
     }
     return result;
@@ -3787,7 +3800,7 @@
         descendantsMap = new TrackedDescendantsMap;
         containerMap = new TrackedContainerMap;
     }
-    
+
     TrackedRendererListHashSet* descendantSet = descendantsMap->get(this);
     if (!descendantSet) {
         descendantSet = new TrackedRendererListHashSet;
@@ -3799,7 +3812,7 @@
         ASSERT(containerMap->get(descendant)->contains(this));
         return;
     }
-    
+
     HashSet<RenderBlock*>* containerSet = containerMap->get(descendant);
     if (!containerSet) {
         containerSet = new HashSet<RenderBlock*>;
@@ -3813,11 +3826,11 @@
 {
     if (!descendantsMap)
         return;
-    
+
     OwnPtr<HashSet<RenderBlock*> > containerSet = containerMap->take(descendant);
     if (!containerSet)
         return;
-    
+
     HashSet<RenderBlock*>::iterator end = containerSet->end();
     for (HashSet<RenderBlock*>::iterator it = containerSet->begin(); it != end; ++it) {
         RenderBlock* container = *it;
@@ -3852,7 +3865,7 @@
 
     if (o->isRenderFlowThread())
         return;
-    
+
     insertIntoTrackedRendererMaps(o, gPositionedDescendantsMap, gPositionedContainerMap);
 }
 
@@ -3866,11 +3879,11 @@
     TrackedRendererListHashSet* positionedDescendants = positionedObjects();
     if (!positionedDescendants)
         return;
-    
+
     RenderBox* r;
-    
+
     TrackedRendererListHashSet::iterator end = positionedDescendants->end();
-    
+
     Vector<RenderBox*, 16> deadObjects;
 
     for (TrackedRendererListHashSet::iterator it = positionedDescendants->begin(); it != end; ++it) {
@@ -3878,7 +3891,7 @@
         if (!o || r->isDescendantOf(o)) {
             if (containingBlockState == NewContainingBlock)
                 r->setChildNeedsLayout(true, MarkOnlyThis);
-            
+
             // It is parent blocks job to add positioned child to positioned objects list of its containing block
             // Parent layout needs to be invalidated to ensure this happens.
             RenderObject* p = r->parent();
@@ -3886,11 +3899,11 @@
                 p = p->parent();
             if (p)
                 p->setChildNeedsLayout(true);
-            
+
             deadObjects.append(r);
         }
     }
-    
+
     for (unsigned i = 0; i < deadObjects.size(); i++)
         removePositionedObject(deadObjects.at(i));
 }
@@ -3981,13 +3994,13 @@
     // Create the special object entry & append it to the list
 
     FloatingObject* newObj = new FloatingObject(o->style()->floating());
-    
+
     // Our location is irrelevant if we're unsplittable or no pagination is in effect.
     // Just go ahead and lay out the float.
     bool isChildRenderBlock = o->isRenderBlock();
     if (isChildRenderBlock && !o->needsLayout() && view()->layoutState()->pageLogicalHeightChanged())
         o->setChildNeedsLayout(true, MarkOnlyThis);
-            
+
     bool needsBlockDirectionLocationSetBeforeLayout = isChildRenderBlock && view()->layoutState()->needsBlockDirectionLocationSetBeforeLayout();
     if (!needsBlockDirectionLocationSetBeforeLayout || isWritingModeRoot()) // We are unsplittable if we're a block flow root.
         o->layoutIfNeeded();
@@ -4006,7 +4019,7 @@
     newObj->m_renderer = o;
 
     insertIntoFloatingObjectMaps(newObj);
-    
+
     return newObj;
 }
 
@@ -4053,7 +4066,7 @@
 {
     if (!containsFloats())
         return;
-    
+
     const FloatingObjectSet& floatingObjectSet = floatingObjects()->set();
     FloatingObject* curr = floatingObjectSet.last();
     while (curr != lastFloat && (!curr->isPlaced() || logicalTopForFloat(curr) >= logicalOffset)) {
@@ -4123,7 +4136,7 @@
                                                                   // |floatLogicalWidth| was capped to the available line width.
                                                                   // See fast/block/float/clamped-right-float.html.
     }
-    
+
     return LayoutPoint(floatLogicalLeft, logicalTopOffset);
 }
 
@@ -4158,7 +4171,7 @@
     }
 
     LayoutUnit logicalTop = logicalHeight();
-    
+
     // The float cannot start above the top position of the last positioned float.
     if (lastPlacedFloatingObject)
         logicalTop = max(logicalTopForFloat(lastPlacedFloatingObject), logicalTop);
@@ -4193,14 +4206,14 @@
         bool isPaginated = layoutState->isPaginated();
         if (isPaginated && !childBox->needsLayout())
             childBox->markForPaginationRelayoutIfNeeded();
-        
+
         childBox->layoutIfNeeded();
 
         if (isPaginated) {
             // If we are unsplittable and don't fit, then we need to move down.
             // We include our margins as part of the unsplittable area.
             LayoutUnit newLogicalTop = adjustForUnsplittableChild(childBox, floatLogicalLocation.y(), true);
-            
+
             // See if we have a pagination strut that is making us move down further.
             // Note that an unsplittable child can't also have a pagination strut, so this is
             // exclusive with the case above.
@@ -4209,7 +4222,7 @@
                 newLogicalTop += childBlock->paginationStrut();
                 childBlock->setPaginationStrut(0);
             }
-            
+
             if (newLogicalTop != floatLogicalLocation.y()) {
                 floatingObject->m_paginationStrut = newLogicalTop - floatLogicalLocation.y();
 
@@ -4218,7 +4231,7 @@
 
                 setLogicalLeftForChild(childBox, floatLogicalLocation.x() + childLogicalLeftMargin);
                 setLogicalTopForChild(childBox, floatLogicalLocation.y() + marginBeforeForChild(childBox));
-        
+
                 if (childBlock)
                     childBlock->setChildNeedsLayout(true, MarkOnlyThis);
                 childBox->layoutIfNeeded();
@@ -4309,7 +4322,7 @@
     for (RenderObject* curr = parent->firstChild(); curr; curr = curr->nextInPreOrder(parent)) {
         if (!curr->isBox())
             continue;
- 
+
         RenderBox* box = toRenderBox(curr);
         if (!hasPercentHeightDescendant(box))
             continue;
@@ -4348,7 +4361,7 @@
     // All the objects returned from the tree should be already placed.
     ASSERT(r->isPlaced() && rangesIntersect(m_renderer->pixelSnappedLogicalTopForFloat(r), m_renderer->pixelSnappedLogicalBottomForFloat(r), m_lowValue, m_highValue));
 
-    if (FloatTypeValue == FloatingObject::FloatLeft 
+    if (FloatTypeValue == FloatingObject::FloatLeft
         && m_renderer->logicalRightForFloat(r) > m_offset) {
         m_offset = m_renderer->logicalRightForFloat(r);
         if (m_heightRemaining)
@@ -4409,7 +4422,7 @@
         const FloatingObject* lastFloat = adapter.lastFloat();
         if (offsetMode == ShapeOutsideFloatShapeOffset && lastFloat) {
             if (ShapeOutsideInfo* shapeOutside = lastFloat->renderer()->shapeOutsideInfo()) {
-                shapeOutside->computeSegmentsForLine(logicalTop - logicalTopForFloat(lastFloat), logicalHeight);
+                shapeOutside->computeSegmentsForContainingBlockLine(logicalTop, logicalTopForFloat(lastFloat), logicalHeight);
                 left += shapeOutside->rightSegmentMarginBoxDelta();
             }
         }
@@ -4427,7 +4440,7 @@
 
     if (style()->lineAlign() == LineAlignNone)
         return left;
-    
+
     // Push in our left offset so that it is aligned with the character grid.
     LayoutState* layoutState = view()->layoutState();
     if (!layoutState)
@@ -4444,7 +4457,7 @@
 
     LayoutUnit lineGridOffset = lineGrid->isHorizontalWritingMode() ? layoutState->lineGridOffset().width(): layoutState->lineGridOffset().height();
     LayoutUnit layoutOffset = lineGrid->isHorizontalWritingMode() ? layoutState->layoutOffset().width() : layoutState->layoutOffset().height();
-    
+
     // Push in to the nearest character width.
     // FIXME: This is wrong for RTL (https://bugs.webkit.org/show_bug.cgi?id=79945).
     // FIXME: This doesn't work with columns or regions (https://bugs.webkit.org/show_bug.cgi?id=79942).
@@ -4471,7 +4484,7 @@
         const FloatingObject* lastFloat = adapter.lastFloat();
         if (offsetMode == ShapeOutsideFloatShapeOffset && lastFloat) {
             if (ShapeOutsideInfo* shapeOutside = lastFloat->renderer()->shapeOutsideInfo()) {
-                shapeOutside->computeSegmentsForLine(logicalTop - logicalTopForFloat(lastFloat), logicalHeight);
+                shapeOutside->computeSegmentsForContainingBlockLine(logicalTop, logicalTopForFloat(lastFloat), logicalHeight);
                 rightFloatOffset += shapeOutside->leftSegmentMarginBoxDelta();
             }
         }
@@ -4480,17 +4493,17 @@
     }
     return right;
 }
-    
+
 LayoutUnit RenderBlock::adjustLogicalRightOffsetForLine(LayoutUnit offsetFromFloats, bool applyTextIndent) const
 {
     LayoutUnit right = offsetFromFloats;
 
     if (applyTextIndent && !style()->isLeftToRightDirection())
         right -= textIndentOffset();
-    
+
     if (style()->lineAlign() == LineAlignNone)
         return right;
-    
+
     // Push in our right offset so that it is aligned with the character grid.
     LayoutState* layoutState = view()->layoutState();
     if (!layoutState)
@@ -4507,7 +4520,7 @@
 
     LayoutUnit lineGridOffset = lineGrid->isHorizontalWritingMode() ? layoutState->lineGridOffset().width(): layoutState->lineGridOffset().height();
     LayoutUnit layoutOffset = lineGrid->isHorizontalWritingMode() ? layoutState->layoutOffset().width() : layoutState->layoutOffset().height();
-    
+
     // Push in to the nearest character width.
     // FIXME: This is wrong for RTL (https://bugs.webkit.org/show_bug.cgi?id=79945).
     // FIXME: This doesn't work with columns or regions (https://bugs.webkit.org/show_bug.cgi?id=79942).
@@ -4615,7 +4628,7 @@
         }
     }
 
-    // We should not process floats if the parent node is not a RenderBlock. Otherwise, we will add 
+    // We should not process floats if the parent node is not a RenderBlock. Otherwise, we will add
     // floats in an invalid context. This will cause a crash arising from a bad cast on the parent.
     // See <rdar://problem/8049753>, where float property is applied on a text node in a SVG.
     if (!parent() || !parent()->isRenderBlock())
@@ -4637,7 +4650,7 @@
     LayoutUnit logicalTopOffset = logicalTop();
     if (parentHasFloats)
         addIntrudingFloats(parentBlock, parentBlock->logicalLeftOffsetForContent(), logicalTopOffset);
-    
+
     LayoutUnit logicalLeftOffset = 0;
     if (prev)
         logicalTopOffset -= toRenderBox(prev)->logicalTop();
@@ -4646,7 +4659,7 @@
         logicalLeftOffset += parentBlock->logicalLeftOffsetForContent();
     }
 
-    // Add overhanging floats from the previous RenderBlock, but only if it has a float that intrudes into our space.    
+    // Add overhanging floats from the previous RenderBlock, but only if it has a float that intrudes into our space.
     RenderBlock* block = toRenderBlock(prev);
     if (block->floatingObjects() && block->lowestFloatLogicalBottom() > logicalTopOffset)
         addIntrudingFloats(block, logicalLeftOffset, logicalTopOffset);
@@ -4772,7 +4785,7 @@
                 // it should paint.
                 r->setShouldPaint(true);
             }
-            
+
             // Since the float doesn't overhang, it didn't get put into our list.  We need to go ahead and add its overflow in to the
             // child now.
             if (r->isDescendant())
@@ -4828,10 +4841,10 @@
                     else
                         floatingObj->setY(floatingObj->y() + prev->marginTop());
                 }
-               
+
                 floatingObj->setShouldPaint(false); // We are not in the direct inheritance chain for this float. We will never paint it.
                 floatingObj->m_renderer = r->m_renderer;
-                
+
                 // We create the floating object list lazily.
                 if (!floats)
                     createFloatingObjects();
@@ -4887,7 +4900,7 @@
 
     MarkingBehavior markParents = inLayout ? MarkOnlyThis : MarkContainingBlockChain;
     setChildNeedsLayout(true, markParents);
- 
+
     if (floatToRemove)
         removeFloatingObject(floatToRemove);
 
@@ -4932,7 +4945,7 @@
     // There is no need to compute clearance if we have no floats.
     if (!containsFloats())
         return 0;
-    
+
     // At least one float is present.  We need to perform the clearance computation.
     bool clearSet = child->style()->clear() != CNONE;
     LayoutUnit logicalBottom = 0;
@@ -4979,7 +4992,7 @@
             child->setLogicalWidth(childOldLogicalWidth);
             child->setMarginLeft(childOldMarginLeft);
             child->setMarginRight(childOldMarginRight);
-            
+
             if (childLogicalWidthAtNewLogicalTopOffset <= availableLogicalWidthAtNewLogicalTopOffset) {
                 // Even though we may not be moving, if the logical width did shrink because of the presence of new floats, then
                 // we need to force a relayout as though we shifted. This happens because of the dynamic addition of overhanging floats
@@ -5397,7 +5410,7 @@
             return createVisiblePosition(caretMinOffset(), DOWNSTREAM);
         if (pointLogicalTop >= logicalHeight() || (pointLogicalTop >= 0 && pointLogicalLeft >= logicalWidth()))
             return createVisiblePosition(caretMaxOffset(), DOWNSTREAM);
-    } 
+    }
 
     LayoutPoint pointInContents = point;
     offsetForContents(pointInContents);
@@ -5462,7 +5475,7 @@
 }
 
 void RenderBlock::calcColumnWidth()
-{   
+{
     if (document()->regionBasedColumnsEnabled())
         return;
 
@@ -5470,13 +5483,13 @@
     // FIXME: Can overflow on fast/block/float/float-not-removed-from-next-sibling4.html, see https://bugs.webkit.org/show_bug.cgi?id=68744
     unsigned desiredColumnCount = 1;
     LayoutUnit desiredColumnWidth = contentLogicalWidth();
-    
+
     // For now, we don't support multi-column layouts when printing, since we have to do a lot of work for proper pagination.
     if (document()->paginated() || (style()->hasAutoColumnCount() && style()->hasAutoColumnWidth()) || !style()->hasInlineColumnAxis()) {
         setDesiredColumnCountAndWidth(desiredColumnCount, desiredColumnWidth);
         return;
     }
-        
+
     LayoutUnit availWidth = desiredColumnWidth;
     LayoutUnit colGap = columnGap();
     LayoutUnit colWidth = max<LayoutUnit>(1, LayoutUnit(style()->columnWidth()));
@@ -5577,7 +5590,7 @@
 {
     if (!hasColumns())
         return 0;
-    return gColumnInfoMap->get(this);    
+    return gColumnInfoMap->get(this);
 }
 
 unsigned RenderBlock::columnCount(ColumnInfo* colInfo) const
@@ -5645,14 +5658,14 @@
             // Now that we know the intrinsic height of the columns, we have to rebalance them.
             columnHeight = max<LayoutUnit>(colInfo->minimumColumnHeight(), ceilf((float)layoutOverflowLogicalBottom / desiredColumnCount));
         }
-        
+
         if (columnHeight && columnHeight != pageLogicalHeight) {
             statePusher.pop();
             setEverHadLayout(true);
             layoutBlock(false, columnHeight);
             return true;
         }
-    } 
+    }
 
     if (pageLogicalHeight)
         colInfo->setColumnCountAndHeight(ceilf((float)layoutOverflowLogicalBottom / pageLogicalHeight), pageLogicalHeight);
@@ -5662,7 +5675,7 @@
         m_overflow.clear();
     } else
         m_overflow = savedOverflow.release();
-    
+
     return false;
 }
 
@@ -5671,7 +5684,7 @@
     // Just bail if we have no columns.
     if (!hasColumns())
         return;
-    
+
     ColumnInfo* colInfo = columnInfo();
     if (!columnCount(colInfo))
         return;
@@ -5758,9 +5771,9 @@
     // Just bail if we have no columns.
     if (!hasColumns())
         return;
-    
+
     ColumnInfo* colInfo = columnInfo();
-    
+
     // Determine which columns we intersect.
     unsigned colCount = columnCount(colInfo);
     if (!colCount)
@@ -5830,11 +5843,11 @@
     ASSERT(hasColumns());
     if (!hasColumns() || !style()->isFlippedBlocksWritingMode())
         return;
-    
+
     ColumnInfo* colInfo = columnInfo();
     LayoutUnit columnLogicalHeight = colInfo->columnHeight();
     LayoutUnit expandedLogicalHeight = borderBefore() + paddingBefore() + columnCount(colInfo) * columnLogicalHeight + borderAfter() + paddingAfter() + scrollbarLogicalHeight();
-    
+
     if (isHorizontalWritingMode())
         rect.setY(expandedLogicalHeight - rect.maxY());
     else
@@ -5858,7 +5871,7 @@
         LayoutRect sliceRect = LayoutRect(logicalLeft, borderBefore() + paddingBefore() + i * colLogicalHeight, colLogicalWidth, colLogicalHeight);
         if (!isHorizontalWritingMode())
             sliceRect = sliceRect.transposedRect();
-        
+
         LayoutUnit logicalOffset = i * colLogicalHeight;
 
         // Now we're in the same coordinate space as the point.  See if it is inside the rectangle.
@@ -5919,22 +5932,22 @@
     // FIXME: The isFixed() calls here should probably be checking for isSpecified since you
     // should be able to use percentage, calc or viewport relative values for width.
     RenderStyle* styleToUse = style();
-    if (!isTableCell() && styleToUse->logicalWidth().isFixed() && styleToUse->logicalWidth().value() >= 0 
+    if (!isTableCell() && styleToUse->logicalWidth().isFixed() && styleToUse->logicalWidth().value() >= 0
         && !(isDeprecatedFlexItem() && !styleToUse->logicalWidth().intValue()))
         m_minPreferredLogicalWidth = m_maxPreferredLogicalWidth = adjustContentBoxLogicalWidthForBoxSizing(styleToUse->logicalWidth().value());
     else
         computeIntrinsicLogicalWidths(m_minPreferredLogicalWidth, m_maxPreferredLogicalWidth);
-    
+
     if (styleToUse->logicalMinWidth().isFixed() && styleToUse->logicalMinWidth().value() > 0) {
         m_maxPreferredLogicalWidth = max(m_maxPreferredLogicalWidth, adjustContentBoxLogicalWidthForBoxSizing(styleToUse->logicalMinWidth().value()));
         m_minPreferredLogicalWidth = max(m_minPreferredLogicalWidth, adjustContentBoxLogicalWidthForBoxSizing(styleToUse->logicalMinWidth().value()));
     }
-    
+
     if (styleToUse->logicalMaxWidth().isFixed()) {
         m_maxPreferredLogicalWidth = min(m_maxPreferredLogicalWidth, adjustContentBoxLogicalWidthForBoxSizing(styleToUse->logicalMaxWidth().value()));
         m_minPreferredLogicalWidth = min(m_minPreferredLogicalWidth, adjustContentBoxLogicalWidthForBoxSizing(styleToUse->logicalMaxWidth().value()));
     }
-    
+
     // Table layout uses integers, ceil the preferred widths to ensure that they can contain the contents.
     if (isTableCell()) {
         m_minPreferredLogicalWidth = m_minPreferredLogicalWidth.ceil();
@@ -6002,7 +6015,7 @@
 
         if (!result->isOutOfFlowPositioned() && (result->isText() || result->isFloating() || result->isReplaced() || result->isRenderInline()))
              break;
-        
+
         current = result;
         result = 0;
     }
@@ -6077,8 +6090,8 @@
     RenderObject* trailingSpaceChild = 0;
 
     // Firefox and Opera will allow a table cell to grow to fit an image inside it under
-    // very specific cirucumstances (in order to match common WinIE renderings). 
-    // Not supporting the quirk has caused us to mis-render some real sites. (See Bugzilla 10517.) 
+    // very specific cirucumstances (in order to match common WinIE renderings).
+    // Not supporting the quirk has caused us to mis-render some real sites. (See Bugzilla 10517.)
     bool allowImagesToBreak = !document()->inQuirksMode() || !isTableCell() || !styleToUse->logicalWidth().isIntrinsicOrAuto();
 
     bool autoWrap, oldAutoWrap;
@@ -6096,7 +6109,7 @@
     bool isPrevChildInlineFlow = false;
     bool shouldBreakLineAfterText = false;
     while (RenderObject* child = childIterator.next()) {
-        autoWrap = child->isReplaced() ? child->parent()->style()->autoWrap() : 
+        autoWrap = child->isReplaced() ? child->parent()->style()->autoWrap() :
             child->style()->autoWrap();
 
         if (!child->isBR()) {
@@ -6150,7 +6163,7 @@
 
                     inlineMin += childMin;
                     inlineMax += childMax;
-                    
+
                     child->setPreferredLogicalWidthsDirty(false);
                 } else {
                     // Inline replaced elts add in their margins to their min/max values.
@@ -6268,7 +6281,7 @@
                     }
                     continue;
                 }
-                
+
                 if (stripFrontSpaces)
                     trailingSpaceChild = child;
                 else
@@ -6280,7 +6293,7 @@
                     ti = textIndent.ceilToFloat();
                     childMin += ti;
                     firstLineMinWidth += ti;
-                    
+
                     // It the text indent negative and larger than the child minimum, we re-use the remainder
                     // in future minimum calculations, but using the negative value again on the maximum
                     // will lead to under-counting the max pref width.
@@ -6289,13 +6302,13 @@
                         firstLineMaxWidth += ti;
                         addedTextIndent = true;
                     }
-                    
+
                     if (childMin < 0) {
                         textIndent = childMin;
                         hasRemainingNegativeTextIndent = true;
                     }
                 }
-                
+
                 // If we have no breakable characters at all,
                 // then this is the easy case. We add ourselves to the current
                 // min and max and continue.
@@ -6416,7 +6429,7 @@
 
         LayoutUnit w = childMinPreferredLogicalWidth + margin;
         minLogicalWidth = max(w, minLogicalWidth);
-        
+
         // IE ignores tables for calculation of nowrap. Makes some sense.
         if (nowrap && !child->isTable())
             maxLogicalWidth = max(w, maxLogicalWidth);
@@ -6440,7 +6453,7 @@
                 maxLogicalWidth = max(floatLeftWidth + floatRightWidth, maxLogicalWidth);
             floatLeftWidth = floatRightWidth = 0;
         }
-        
+
         if (child->isFloating()) {
             if (childStyle->floating() == LeftFloat)
                 floatLeftWidth += w;
@@ -6448,7 +6461,7 @@
                 floatRightWidth += w;
         } else
             maxLogicalWidth = max(w, maxLogicalWidth);
-        
+
         child = child->nextSibling();
     }
 
@@ -6463,13 +6476,13 @@
 {
     if (!node())
         return false;
-    
+
     if (node()->isRootEditableElement())
         return true;
-    
+
     if (node()->isShadowRoot() && toShadowRoot(node())->host()->hasTagName(inputTag))
         return true;
-    
+
     return false;
 }
 
@@ -6487,7 +6500,7 @@
         if (s != style())
             return s->computedLineHeight(view());
     }
-    
+
     if (m_lineHeight == -1)
         m_lineHeight = style()->computedLineHeight(view());
 
@@ -6507,7 +6520,7 @@
         // FIXME: Need to patch form controls to deal with vertical lines.
         if (style()->hasAppearance() && !theme()->isControlContainer(style()->appearance()))
             return theme()->baselinePosition(this);
-            
+
         // CSS2.1 states that the baseline of an inline block is the baseline of the last line box in
         // the normal flow.  We make an exception for marquees, since their baselines are meaningless
         // (the content inside them moves).  This matches WinIE as well, which just bottom-aligns them.
@@ -6516,13 +6529,13 @@
         // of our content box.
         bool ignoreBaseline = (layer() && (isMarquee() || (direction == HorizontalLine ? (layer()->verticalScrollbar() || layer()->scrollYOffset())
             : (layer()->horizontalScrollbar() || layer()->scrollXOffset() != 0)))) || (isWritingModeRoot() && !isRubyRun());
-        
+
         int baselinePos = ignoreBaseline ? -1 : inlineBlockBaseline(direction);
-        
+
         LayoutUnit bottomOfContent = direction == HorizontalLine ? borderTop() + paddingTop() + contentHeight() : borderRight() + paddingRight() + contentWidth();
         if (baselinePos != -1 && baselinePos <= bottomOfContent)
             return direction == HorizontalLine ? marginTop() + baselinePos : marginRight() + baselinePos;
-            
+
         return RenderBox::baselinePosition(baselineType, firstLine, direction, linePositionMode);
     }
 
@@ -6620,11 +6633,11 @@
             break;
         ASSERT_WITH_SECURITY_IMPLICATION(parentBlock->isRenderBlock());
         firstLineBlock = toRenderBlock(parentBlock);
-    } 
-    
+    }
+
     if (!hasPseudo)
         return 0;
-    
+
     return firstLineBlock;
 }
 
@@ -6673,11 +6686,11 @@
             return firstLetterBlock;
 
         RenderObject* parentBlock = firstLetterBlock->parent();
-        if (firstLetterBlock->isReplaced() || !parentBlock || parentBlock->firstChild() != firstLetterBlock || 
+        if (firstLetterBlock->isReplaced() || !parentBlock || parentBlock->firstChild() != firstLetterBlock ||
             !parentBlock->isBlockFlow() || (parentBlock->isFlexibleBox() && !parentBlock->isRenderButton()))
             return 0;
         firstLetterBlock = parentBlock;
-    } 
+    }
 
     return 0;
 }
@@ -6762,22 +6775,22 @@
 
         // Account for first letter.
         length++;
-        
+
         // Keep looking for whitespace and allowed punctuation, but avoid
         // accumulating just whitespace into the :first-letter.
         for (unsigned scanLength = length; scanLength < oldText->length(); ++scanLength) {
-            UChar c = (*oldText)[scanLength]; 
-            
+            UChar c = (*oldText)[scanLength];
+
             if (!shouldSkipForFirstLetter(c))
                 break;
 
             if (isPunctuationForFirstLetter(c))
                 length = scanLength + 1;
          }
-         
+
         // Construct a text fragment for the text after the first letter.
         // This text fragment might be empty.
-        RenderTextFragment* remainingText = 
+        RenderTextFragment* remainingText =
             new (renderArena()) RenderTextFragment(textObj->node() ? textObj->node() : textObj->document(), oldText.get(), length, oldText->length() - length);
         remainingText->setStyle(textObj->style());
         if (remainingText->node())
@@ -6787,9 +6800,9 @@
         firstLetterContainer->removeChild(textObj);
         remainingText->setFirstLetter(firstLetter);
         toRenderBoxModelObject(firstLetter)->setFirstLetterRemainingText(remainingText);
-        
+
         // construct text fragment for the first letter
-        RenderTextFragment* letter = 
+        RenderTextFragment* letter =
             new (renderArena()) RenderTextFragment(remainingText->node() ? remainingText->node() : remainingText->document(), oldText.get(), 0, length);
         letter->setStyle(pseudoStyle);
         firstLetter->addChild(letter);
@@ -6887,7 +6900,7 @@
                 return normalFlowChildWithoutLines->y() + normalFlowChildWithoutLines->height();
         }
     }
-    
+
     return -1;
 }
 
@@ -6975,7 +6988,7 @@
                 }
             }
         }
-        
+
         if (FloatingObjects* floats = floatingObjects()) {
             const FloatingObjectSet& floatingObjectSet = floats->set();
             FloatingObjectSetIterator end = floatingObjectSet.end();
@@ -7003,17 +7016,17 @@
     LayoutUnit right = LayoutUnit::min();
     LayoutUnit oldWidth = contentWidth();
     adjustForBorderFit(0, left, right);
-    
+
     // Clamp to our existing edges. We can never grow. We only shrink.
     LayoutUnit leftEdge = borderLeft() + paddingLeft();
     LayoutUnit rightEdge = leftEdge + oldWidth;
     left = min(rightEdge, max(leftEdge, left));
     right = max(leftEdge, min(rightEdge, right));
-    
+
     LayoutUnit newContentWidth = right - left;
     if (newContentWidth == oldWidth)
         return;
-    
+
     setOverrideLogicalContentWidth(newContentWidth);
     layoutBlock(false);
     clearOverrideLogicalContentWidth();
@@ -7063,7 +7076,7 @@
         ASSERT(value);
         return;
     }
-    
+
     if (!m_rareData && !value)
         return;
 
@@ -7301,12 +7314,12 @@
     // inline boxes above and below us (thus getting merged with them to form a single irregular
     // shape).
     if (inlineElementContinuation()) {
-        // FIXME: This check really isn't accurate. 
+        // FIXME: This check really isn't accurate.
         bool nextInlineHasLineBox = inlineElementContinuation()->firstLineBox();
         // FIXME: This is wrong. The principal renderer may not be the continuation preceding this block.
         // FIXME: This is wrong for block-flows that are horizontal.
         // https://bugs.webkit.org/show_bug.cgi?id=46781
-        bool prevInlineHasLineBox = toRenderInline(inlineElementContinuation()->node()->renderer())->firstLineBox(); 
+        bool prevInlineHasLineBox = toRenderInline(inlineElementContinuation()->node()->renderer())->firstLineBox();
         float topMargin = prevInlineHasLineBox ? collapsedMarginBefore() : LayoutUnit();
         float bottomMargin = nextInlineHasLineBox ? collapsedMarginAfter() : LayoutUnit();
         LayoutRect rect(additionalOffset.x(), additionalOffset.y() - topMargin, width(), height() + topMargin + bottomMargin);
@@ -7329,7 +7342,7 @@
                 RenderBox* box = toRenderBox(curr);
                 FloatPoint pos;
                 // FIXME: This doesn't work correctly with transforms.
-                if (box->layer()) 
+                if (box->layer())
                     pos = curr->localToContainerPoint(FloatPoint(), paintContainer);
                 else
                     pos = FloatPoint(additionalOffset.x() + box->x(), additionalOffset.y() + box->y());
@@ -7391,7 +7404,7 @@
     LayoutUnit pageLogicalHeight = pageLogicalHeightForOffset(logicalOffset);
     if (!pageLogicalHeight)
         return logicalOffset;
-    
+
     // The logicalOffset is in our coordinate space.  We can add in our pushed offset.
     LayoutUnit remainingLogicalHeight = pageRemainingLogicalHeightForOffset(logicalOffset);
     if (pageBoundaryRule == ExcludePageBoundary)
@@ -7497,7 +7510,7 @@
 {
     RenderView* renderView = view();
     offset += offsetFromLogicalTopOfFirstPage();
-    
+
     RenderFlowThread* flowThread = flowThreadContainingBlock();
     if (!flowThread) {
         LayoutUnit pageLogicalHeight = renderView->layoutState()->m_pageLogicalHeight;
@@ -7509,7 +7522,7 @@
         }
         return remainingHeight;
     }
-    
+
     return flowThread->pageRemainingLogicalHeightForOffset(offset, pageBoundaryRule);
 }
 
@@ -7667,7 +7680,7 @@
             // So go ahead and mark the item as dirty.
             child->setChildNeedsLayout(true, MarkOnlyThis);
         }
-        
+
         if (childRenderBlock) {
             if (!child->avoidsFloats() && childRenderBlock->containsFloats())
                 childRenderBlock->markAllDescendantsWithFloatsForLayout();
@@ -7702,7 +7715,7 @@
     // For replaced elements and scrolled elements, we want to shift them to the next page if they don't fit on the current one.
     LayoutUnit logicalTopBeforeUnsplittableAdjustment = result;
     LayoutUnit logicalTopAfterUnsplittableAdjustment = adjustForUnsplittableChild(child, result);
-    
+
     LayoutUnit paginationStrut = 0;
     LayoutUnit unsplittableAdjustmentDelta = logicalTopAfterUnsplittableAdjustment - logicalTopBeforeUnsplittableAdjustment;
     if (unsplittableAdjustmentDelta)
@@ -7726,7 +7739,7 @@
 
     // Similar to how we apply clearance. Go ahead and boost height() to be the place where we're going to position the child.
     setLogicalHeight(logicalHeight() + (result - oldTop));
-    
+
     // Return the final adjusted logical top.
     return result;
 }
@@ -7823,7 +7836,7 @@
 {
     if (!flowThread || !flowThread->hasValidRegionInfo())
         return false;
-    
+
     return flowThread->logicalWidthChangedInRegions(this, offsetFromLogicalTopOfFirstPage());
 }
 
@@ -7842,12 +7855,12 @@
     RenderRegion* startRegion;
     RenderRegion* endRegion;
     flowThread->getRegionRangeForBox(this, startRegion, endRegion);
-    
+
     if (startRegion && region->logicalTopForFlowThreadContent() < startRegion->logicalTopForFlowThreadContent())
         return startRegion;
     if (endRegion && region->logicalTopForFlowThreadContent() > endRegion->logicalTopForFlowThreadContent())
         return endRegion;
-    
+
     return region;
 }
 
@@ -7857,14 +7870,14 @@
     // collapsed margin.
     if (!child->isWritingModeRoot())
         return child->collapsedMarginBefore();
-    
+
     // The child has a different directionality.  If the child is parallel, then it's just
     // flipped relative to us.  We can use the collapsed margin for the opposite edge.
     if (child->isHorizontalWritingMode() == isHorizontalWritingMode())
         return child->collapsedMarginAfter();
-    
+
     // The child is perpendicular to us, which means its margins don't collapse but are on the
-    // "logical left/right" sides of the child box.  We can just return the raw margin in this case.  
+    // "logical left/right" sides of the child box.  We can just return the raw margin in this case.
     return marginBeforeForChild(child);
 }
 
@@ -7874,14 +7887,14 @@
     // collapsed margin.
     if (!child->isWritingModeRoot())
         return child->collapsedMarginAfter();
-    
+
     // The child has a different directionality.  If the child is parallel, then it's just
     // flipped relative to us.  We can use the collapsed margin for the opposite edge.
     if (child->isHorizontalWritingMode() == isHorizontalWritingMode())
         return child->collapsedMarginBefore();
-    
+
     // The child is perpendicular to us, which means its margins don't collapse but are on the
-    // "logical left/right" side of the child box.  We can just return the raw margin in this case.  
+    // "logical left/right" side of the child box.  We can just return the raw margin in this case.
     return marginAfterForChild(child);
 }
 
@@ -7891,12 +7904,12 @@
     // margin quirk.
     if (!child->isWritingModeRoot())
         return child->isRenderBlock() ? toRenderBlock(child)->hasMarginBeforeQuirk() : child->style()->hasMarginBeforeQuirk();
-    
+
     // The child has a different directionality. If the child is parallel, then it's just
     // flipped relative to us. We can use the opposite edge.
     if (child->isHorizontalWritingMode() == isHorizontalWritingMode())
         return child->isRenderBlock() ? toRenderBlock(child)->hasMarginAfterQuirk() : child->style()->hasMarginAfterQuirk();
-    
+
     // The child is perpendicular to us and box sides are never quirky in html.css, and we don't really care about
     // whether or not authors specified quirky ems, since they're an implementation detail.
     return false;
@@ -7908,12 +7921,12 @@
     // margin quirk.
     if (!child->isWritingModeRoot())
         return child->isRenderBlock() ? toRenderBlock(child)->hasMarginAfterQuirk() : child->style()->hasMarginAfterQuirk();
-    
+
     // The child has a different directionality. If the child is parallel, then it's just
     // flipped relative to us. We can use the opposite edge.
     if (child->isHorizontalWritingMode() == isHorizontalWritingMode())
         return child->isRenderBlock() ? toRenderBlock(child)->hasMarginBeforeQuirk() : child->style()->hasMarginBeforeQuirk();
-    
+
     // The child is perpendicular to us and box sides are never quirky in html.css, and we don't really care about
     // whether or not authors specified quirky ems, since they're an implementation detail.
     return false;
@@ -7930,7 +7943,7 @@
     LayoutUnit afterMargin = 0;
 
     RenderBlock* childRenderBlock = child->isRenderBlock() ? toRenderBlock(child) : 0;
-    
+
     // If the child has the same directionality as we do, then we can just return its
     // margins in the same direction.
     if (!child->isWritingModeRoot()) {
@@ -7983,7 +7996,7 @@
 {
     if (isBody())
         return "RenderBody"; // FIXME: Temporary hack until we know that the regression tests pass.
-    
+
     if (isFloating())
         return "RenderBlock (floating)";
     if (isOutOfFlowPositioned())
@@ -8036,10 +8049,10 @@
 }
 
 inline void RenderBlock::FloatingObjects::increaseObjectsCount(FloatingObject::Type type)
-{    
+{
     if (type == FloatingObject::FloatLeft)
         m_leftObjectsCount++;
-    else 
+    else
         m_rightObjectsCount++;
 }
 
@@ -8067,7 +8080,7 @@
         m_placedFloatsTree.add(intervalForFloatingObject(floatingObject));
 
 #ifndef NDEBUG
-    floatingObject->setIsInPlacedTree(true);      
+    floatingObject->setIsInPlacedTree(true);
 #endif
 }
 
@@ -8079,7 +8092,7 @@
         bool removed = m_placedFloatsTree.remove(intervalForFloatingObject(floatingObject));
         ASSERT_UNUSED(removed, removed);
     }
-    
+
     floatingObject->setIsPlaced(false);
 #ifndef NDEBUG
     floatingObject->setIsInPlacedTree(false);
diff --git a/Source/core/rendering/RenderBlock.h b/Source/core/rendering/RenderBlock.h
index c9d5442..8952c9e 100644
--- a/Source/core/rendering/RenderBlock.h
+++ b/Source/core/rendering/RenderBlock.h
@@ -33,8 +33,8 @@
 #include "core/rendering/RootInlineBox.h"
 #include "core/rendering/shapes/ShapeInsideInfo.h"
 #include "core/rendering/style/ShapeValue.h"
-#include <wtf/ListHashSet.h>
-#include <wtf/OwnPtr.h>
+#include "wtf/ListHashSet.h"
+#include "wtf/OwnPtr.h"
 
 namespace WebCore {
 
@@ -228,7 +228,7 @@
     LayoutUnit textIndentOffset() const;
 
     virtual VisiblePosition positionForPoint(const LayoutPoint&);
-    
+
     // Block flows subclass availableWidth to handle multi column layout (shrinking the width available to children when laying out.)
     virtual LayoutUnit availableLogicalWidth() const OVERRIDE FINAL;
 
@@ -282,7 +282,7 @@
     {
         return obj->isFloating() || (obj->isOutOfFlowPositioned() && !obj->style()->isOriginalDisplayInlineType() && !obj->container()->isRenderInline());
     }
-    
+
     static void appendRunsForObject(BidiRunList<BidiRun>&, int start, int end, RenderObject*, InlineBidiResolver&);
 
     static TextRun constructTextRun(RenderObject* context, const Font& font, const String& string, RenderStyle* style,
@@ -307,7 +307,7 @@
     int columnGap() const;
 
     void updateColumnInfoFromStyle(RenderStyle*);
-    
+
     // These two functions take the ColumnInfo* to avoid repeated lookups of the info in the global HashMap.
     unsigned columnCount(ColumnInfo*) const;
     LayoutRect columnRectAt(ColumnInfo*, unsigned) const;
@@ -366,17 +366,17 @@
             , m_positiveMarginAfter(afterPos)
             , m_negativeMarginAfter(afterNeg)
         { }
-        
+
         LayoutUnit positiveMarginBefore() const { return m_positiveMarginBefore; }
         LayoutUnit negativeMarginBefore() const { return m_negativeMarginBefore; }
         LayoutUnit positiveMarginAfter() const { return m_positiveMarginAfter; }
         LayoutUnit negativeMarginAfter() const { return m_negativeMarginAfter; }
-        
+
         void setPositiveMarginBefore(LayoutUnit pos) { m_positiveMarginBefore = pos; }
         void setNegativeMarginBefore(LayoutUnit neg) { m_negativeMarginBefore = neg; }
         void setPositiveMarginAfter(LayoutUnit pos) { m_positiveMarginAfter = pos; }
         void setNegativeMarginAfter(LayoutUnit neg) { m_negativeMarginAfter = neg; }
-    
+
     private:
         LayoutUnit m_positiveMarginBefore;
         LayoutUnit m_negativeMarginBefore;
@@ -390,7 +390,7 @@
     LayoutUnit logicalLeftOffsetForContent(RenderRegion*, LayoutUnit offsetFromLogicalTopOfFirstPage) const;
     LayoutUnit logicalRightOffsetForContent(RenderRegion*, LayoutUnit offsetFromLogicalTopOfFirstPage) const;
     LayoutUnit availableLogicalWidthForContent(RenderRegion* region, LayoutUnit offsetFromLogicalTopOfFirstPage) const
-    { 
+    {
         return max<LayoutUnit>(0, logicalRightOffsetForContent(region, offsetFromLogicalTopOfFirstPage) -
             logicalLeftOffsetForContent(region, offsetFromLogicalTopOfFirstPage)); }
     LayoutUnit startOffsetForContent(RenderRegion* region, LayoutUnit offsetFromLogicalTopOfFirstPage) const
@@ -427,7 +427,7 @@
     LayoutUnit logicalRightOffsetForContent() const { return logicalLeftOffsetForContent() + availableLogicalWidth(); }
     LayoutUnit startOffsetForContent() const { return style()->isLeftToRightDirection() ? logicalLeftOffsetForContent() : logicalWidth() - logicalRightOffsetForContent(); }
     LayoutUnit endOffsetForContent() const { return !style()->isLeftToRightDirection() ? logicalLeftOffsetForContent() : logicalWidth() - logicalRightOffsetForContent(); }
-    
+
     void setStaticInlinePositionForChild(RenderBox*, LayoutUnit blockOffset, LayoutUnit inlinePosition);
     void updateStaticInlinePositionForChild(RenderBox*, LayoutUnit logicalTop);
 
@@ -467,7 +467,7 @@
     LayoutUnit maxNegativeMarginBefore() const { return m_rareData ? m_rareData->m_margins.negativeMarginBefore() : RenderBlockRareData::negativeMarginBeforeDefault(this); }
     LayoutUnit maxPositiveMarginAfter() const { return m_rareData ? m_rareData->m_margins.positiveMarginAfter() : RenderBlockRareData::positiveMarginAfterDefault(this); }
     LayoutUnit maxNegativeMarginAfter() const { return m_rareData ? m_rareData->m_margins.negativeMarginAfter() : RenderBlockRareData::negativeMarginAfterDefault(this); }
-    
+
     void setMaxMarginBeforeValues(LayoutUnit pos, LayoutUnit neg);
     void setMaxMarginAfterValues(LayoutUnit pos, LayoutUnit neg);
 
@@ -550,7 +550,7 @@
     virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle);
 
     virtual bool hasLineIfEmpty() const;
-    
+
     bool simplifiedLayout();
     virtual void simplifiedNormalFlowLayout();
 
@@ -620,7 +620,7 @@
     void addChildToAnonymousColumnBlocks(RenderObject* newChild, RenderObject* beforeChild);
 
     void addChildIgnoringAnonymousColumnBlocks(RenderObject* newChild, RenderObject* beforeChild = 0);
-    
+
     virtual bool isSelfCollapsingBlock() const OVERRIDE FINAL;
 
     virtual LayoutUnit collapsedMarginBefore() const OVERRIDE FINAL { return maxPositiveMarginBefore() - maxNegativeMarginBefore(); }
@@ -679,7 +679,7 @@
             if (type == LeftFloat)
                 m_type = FloatLeft;
             else if (type == RightFloat)
-                m_type = FloatRight;  
+                m_type = FloatRight;
         }
 
         FloatingObject(Type type, const LayoutRect& frameRect)
@@ -711,7 +711,7 @@
 
         Type type() const { return static_cast<Type>(m_type); }
         RenderBox* renderer() const { return m_renderer; }
-        
+
         bool isPlaced() const { return m_isPlaced; }
         void setIsPlaced(bool placed = true) { m_isPlaced = placed; }
 
@@ -804,7 +804,7 @@
         else
             return child->x() + marginBeforeForChild(child->renderer());
     }
-        
+
     LayoutUnit yPositionForFloatIncludingMargin(const FloatingObject* child) const
     {
         if (isHorizontalWritingMode())
@@ -842,11 +842,11 @@
         EClear clear() { return m_clear; }
     private:
         void reset();
-        
+
         InlineIterator nextSegmentBreak(InlineBidiResolver&, LineInfo&, RenderTextInfo&, FloatingObject* lastFloatFromPreviousLine, unsigned consecutiveHyphenatedLines, WordMeasurements&);
         void skipTrailingWhitespace(InlineIterator&, const LineInfo&);
         void skipLeadingWhitespace(InlineBidiResolver&, LineInfo&, FloatingObject* lastFloatFromPreviousLine, LineWidth&);
-        
+
         RenderBlock* m_block;
         bool m_hyphenated;
         EClear m_clear;
@@ -858,7 +858,7 @@
     void determineEndPosition(LineLayoutState&, RootInlineBox* startBox, InlineIterator& cleanLineStart, BidiStatus& cleanLineBidiStatus);
     bool matchedEndLine(LineLayoutState&, const InlineBidiResolver&, const InlineIterator& endLineStart, const BidiStatus& endLineStatus);
     bool checkPaginationAndFloatsAtEndLine(LineLayoutState&);
-    
+
     RootInlineBox* constructLine(BidiRunList<BidiRun>&, const LineInfo&);
     InlineFlowBox* createLineBoxes(RenderObject*, const LineInfo&, InlineBox* childBox, bool startsNewSegment);
 
@@ -888,7 +888,7 @@
     FloatingObject* insertFloatingObject(RenderBox*);
     void removeFloatingObject(RenderBox*);
     void removeFloatingObjectsBelow(FloatingObject*, int logicalOffset);
-    
+
     // Called from lineWidth, to position the floats added in the last line.
     // Returns true if and only if it has positioned any floats.
     bool positionNewFloats();
@@ -904,9 +904,9 @@
     void addIntrudingFloats(RenderBlock* prev, LayoutUnit xoffset, LayoutUnit yoffset);
     LayoutUnit addOverhangingFloats(RenderBlock* child, bool makeChildPaintOtherFloats);
 
-    LayoutUnit lowestFloatLogicalBottom(FloatingObject::Type = FloatingObject::FloatLeftRight) const; 
+    LayoutUnit lowestFloatLogicalBottom(FloatingObject::Type = FloatingObject::FloatLeftRight) const;
     LayoutUnit nextFloatLogicalBottomBelow(LayoutUnit) const;
-    
+
     bool hitTestColumns(const HitTestRequest&, HitTestResult&, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
     bool hitTestContents(const HitTestRequest&, HitTestResult&, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction);
     bool hitTestFloats(const HitTestRequest&, HitTestResult&, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset);
@@ -923,7 +923,7 @@
 
     virtual LayoutRect rectWithOutlineForRepaint(const RenderLayerModelObject* repaintContainer, LayoutUnit outlineWidth) const OVERRIDE FINAL;
     virtual RenderStyle* outlineStyleForRepaint() const OVERRIDE FINAL;
-    
+
     virtual RenderObject* hoverAncestor() const OVERRIDE FINAL;
     virtual void updateDragState(bool dragOn) OVERRIDE FINAL;
     virtual void childBecameNonInline(RenderObject* child) OVERRIDE FINAL;
@@ -956,7 +956,7 @@
     virtual LayoutRect localCaretRect(InlineBox*, int caretOffset, LayoutUnit* extraWidthToEndOfLine = 0) OVERRIDE FINAL;
 
     void adjustPointToColumnContents(LayoutPoint&) const;
-    
+
     void fitBorderToLinesIfNeeded(); // Shrink the box in which the border paints if border-fit is set.
     void adjustForBorderFit(LayoutUnit x, LayoutUnit& left, LayoutUnit& right) const; // Helper function for borderFitAdjust
 
@@ -992,9 +992,9 @@
         // also have a custom style property for Safari RSS to deal with TypePad blog articles.
         bool m_quirkContainer : 1;
 
-        // This flag tracks whether we are still looking at child margins that can all collapse together at the beginning of a block.  
+        // This flag tracks whether we are still looking at child margins that can all collapse together at the beginning of a block.
         // They may or may not collapse with the top margin of the block (|m_canCollapseTopWithChildren| tells us that), but they will
-        // always be collapsing with one another.  This variable can remain set to true through multiple iterations 
+        // always be collapsing with one another.  This variable can remain set to true through multiple iterations
         // as long as we keep encountering self-collapsing blocks.
         bool m_atBeforeSideOfBlock : 1;
 
@@ -1089,7 +1089,7 @@
 
     // Pagination routines.
     virtual bool relayoutForPagination(bool hasSpecifiedPageLogicalHeight, LayoutUnit pageLogicalHeight, LayoutStateMaintainer&);
-    
+
     // Returns the logicalOffset at the top of the next page. If the offset passed in is already at the top of the current page,
     // then nextPageLogicalTop with ExcludePageBoundary will still move to the top of the next page. nextPageLogicalTop with
     // IncludePageBoundary set will not.
@@ -1108,7 +1108,7 @@
     LayoutUnit pageLogicalTopForOffset(LayoutUnit offset) const;
     LayoutUnit pageLogicalHeightForOffset(LayoutUnit offset) const;
     LayoutUnit pageRemainingLogicalHeightForOffset(LayoutUnit offset, PageBoundaryRule = IncludePageBoundary) const;
-    
+
 protected:
     bool pushToNextPageWithMinimumLogicalHeight(LayoutUnit& adjustment, LayoutUnit logicalOffset, LayoutUnit minimumLogicalHeight) const;
 
@@ -1160,12 +1160,12 @@
     typedef PODInterval<int, FloatingObject*> FloatingObjectInterval;
     typedef PODIntervalTree<int, FloatingObject*> FloatingObjectTree;
     typedef PODFreeListArena<PODRedBlackTree<FloatingObjectInterval>::Node> IntervalArena;
-    
+
     template <FloatingObject::Type FloatTypeValue>
     class FloatIntervalSearchAdapter {
     public:
         typedef FloatingObjectInterval IntervalType;
-        
+
         FloatIntervalSearchAdapter(const RenderBlock* renderer, int lowValue, int highValue, LayoutUnit& offset, LayoutUnit* heightRemaining)
             : m_renderer(renderer)
             , m_lowValue(lowValue)
@@ -1175,7 +1175,7 @@
             , m_last(0)
         {
         }
-        
+
         inline int lowValue() const { return m_lowValue; }
         inline int highValue() const { return m_highValue; }
         void collectIfNeeded(const IntervalType&) const;
@@ -1222,7 +1222,7 @@
         const FloatingObjectTree& placedFloatsTree()
         {
             computePlacedFloatsTreeIfNeeded();
-            return m_placedFloatsTree; 
+            return m_placedFloatsTree;
         }
     private:
         FloatingObjects(const RenderBlock*, bool horizontalWritingMode);
@@ -1250,7 +1250,7 @@
     struct RenderBlockRareData {
         WTF_MAKE_NONCOPYABLE(RenderBlockRareData); WTF_MAKE_FAST_ALLOCATED;
     public:
-        RenderBlockRareData(const RenderBlock* block) 
+        RenderBlockRareData(const RenderBlock* block)
             : m_margins(positiveMarginBeforeDefault(block), negativeMarginBeforeDefault(block), positiveMarginAfterDefault(block), negativeMarginAfterDefault(block))
             , m_paginationStrut(0)
             , m_pageLogicalOffset(0)
@@ -1259,15 +1259,15 @@
             , m_shouldBreakAtLineToAvoidWidow(false)
             , m_discardMarginBefore(false)
             , m_discardMarginAfter(false)
-        { 
+        {
         }
 
         static LayoutUnit positiveMarginBeforeDefault(const RenderBlock* block)
-        { 
+        {
             return std::max<LayoutUnit>(block->marginBefore(), 0);
         }
         static LayoutUnit negativeMarginBeforeDefault(const RenderBlock* block)
-        { 
+        {
             return std::max<LayoutUnit>(-block->marginBefore(), 0);
         }
         static LayoutUnit positiveMarginAfterDefault(const RenderBlock* block)
@@ -1278,11 +1278,11 @@
         {
             return std::max<LayoutUnit>(-block->marginAfter(), 0);
         }
-        
+
         MarginValues m_margins;
         LayoutUnit m_paginationStrut;
         LayoutUnit m_pageLogicalOffset;
-        
+
         RootInlineBox* m_lineGridBox;
 
         RootInlineBox* m_lineBreakToAvoidWidow;
@@ -1323,13 +1323,13 @@
 };
 
 inline RenderBlock* toRenderBlock(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isRenderBlock());
     return static_cast<RenderBlock*>(object);
 }
 
 inline const RenderBlock* toRenderBlock(const RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isRenderBlock());
     return static_cast<const RenderBlock*>(object);
 }
diff --git a/Source/core/rendering/RenderBlockLineLayout.cpp b/Source/core/rendering/RenderBlockLineLayout.cpp
index 22231b7..6662e74 100644
--- a/Source/core/rendering/RenderBlockLineLayout.cpp
+++ b/Source/core/rendering/RenderBlockLineLayout.cpp
@@ -41,10 +41,10 @@
 #include "core/rendering/shapes/ShapeInsideInfo.h"
 #include "core/rendering/svg/RenderSVGInlineText.h"
 #include "core/rendering/svg/SVGRootInlineBox.h"
-#include <wtf/RefCountedLeakCounter.h>
-#include <wtf/StdLibExtras.h>
-#include <wtf/unicode/CharacterNames.h>
-#include <wtf/Vector.h>
+#include "wtf/RefCountedLeakCounter.h"
+#include "wtf/StdLibExtras.h"
+#include "wtf/Vector.h"
+#include "wtf/unicode/CharacterNames.h"
 
 using namespace std;
 using namespace WTF;
@@ -176,8 +176,7 @@
         if (previousFloat != newFloat && previousFloat->type() == newFloat->type()) {
             previousShapeOutsideInfo = previousFloat->renderer()->shapeOutsideInfo();
             if (previousShapeOutsideInfo) {
-                LayoutUnit lineTopInShapeCoordinates = m_block->logicalHeight() - m_block->logicalTopForFloat(previousFloat);
-                previousShapeOutsideInfo->computeSegmentsForLine(lineTopInShapeCoordinates, logicalHeightForLine(m_block, m_isFirstLine));
+                previousShapeOutsideInfo->computeSegmentsForContainingBlockLine(m_block->logicalHeight(), m_block->logicalTopForFloat(previousFloat), logicalHeightForLine(m_block, m_isFirstLine));
             }
             break;
         }
@@ -185,7 +184,7 @@
 
     ShapeOutsideInfo* shapeOutsideInfo = newFloat->renderer()->shapeOutsideInfo();
     if (shapeOutsideInfo)
-        shapeOutsideInfo->computeSegmentsForLine(m_block->logicalHeight() - m_block->logicalTopForFloat(newFloat), logicalHeightForLine(m_block, m_isFirstLine));
+        shapeOutsideInfo->computeSegmentsForContainingBlockLine(m_block->logicalHeight(), m_block->logicalTopForFloat(newFloat), logicalHeightForLine(m_block, m_isFirstLine));
 
     if (newFloat->type() == RenderBlock::FloatingObject::FloatLeft) {
         float newLeft = m_block->logicalRightForFloat(newFloat);
@@ -778,7 +777,7 @@
         , endOffset(0)
     {
     }
-    
+
     RenderText* renderer;
     float width;
     int startOffset;
@@ -791,7 +790,7 @@
 {
     HashSet<const SimpleFontData*> fallbackFonts;
     GlyphOverflow glyphOverflow;
-    
+
     const Font& font = renderer->style(lineInfo.isFirstLine())->font();
     // Always compute glyph overflow if the block's line-box-contain value is "glyphs".
     if (lineBox->fitsToGlyphs()) {
@@ -804,9 +803,9 @@
         int boxAscent = font.fontMetrics().ascent() - baselineShift;
         int boxDescent = font.fontMetrics().descent() + baselineShift;
         if (boxAscent > rootDescent ||  boxDescent > rootAscent)
-            glyphOverflow.computeBounds = true; 
+            glyphOverflow.computeBounds = true;
     }
-    
+
     LayoutUnit hyphenWidth = 0;
     if (toInlineTextBox(run->m_box)->hasHyphen()) {
         const Font& font = renderer->style(lineInfo.isFirstLine())->font();
@@ -823,10 +822,10 @@
 #else
     bool canUseSimpleFontCodePath = renderer->canUseSimpleFontCodePath();
 #endif
-    
+
     // Since we don't cache glyph overflows, we need to re-measure the run if
     // the style is linebox-contain: glyph.
-    
+
     if (!lineBox->fitsToGlyphs() && canUseSimpleFontCodePath) {
         int lastEndOffset = run->m_start;
         for (size_t i = 0, size = wordMeasurements.size(); i < size && lastEndOffset < run->m_stop; ++i) {
@@ -888,12 +887,12 @@
             break;
         if (!r->m_box || r == trailingSpaceRun)
             continue;
-        
+
         if (r->m_object->isText()) {
             unsigned opportunitiesInRun = expansionOpportunities[i++];
-            
+
             ASSERT(opportunitiesInRun <= expansionOpportunityCount);
-            
+
             // Only justify text if whitespace is collapsed.
             if (r->m_object->style()->collapseWhiteSpace()) {
                 InlineTextBox* textBox = toInlineTextBox(r->m_box);
@@ -1033,7 +1032,7 @@
     lineBox->placeBoxesInInlineDirection(lineLogicalLeft, needsWordSpacing, textBoxDataMap);
 }
 
-BidiRun* RenderBlock::computeInlineDirectionPositionsForSegment(RootInlineBox* lineBox, const LineInfo& lineInfo, ETextAlign textAlign, float& logicalLeft, 
+BidiRun* RenderBlock::computeInlineDirectionPositionsForSegment(RootInlineBox* lineBox, const LineInfo& lineInfo, ETextAlign textAlign, float& logicalLeft,
     float& availableLogicalWidth, BidiRun* firstRun, BidiRun* trailingSpaceRun, GlyphOverflowAndFallbackFontsMap& textBoxDataMap, VerticalPositionCache& verticalPositionCache,
     WordMeasurements& wordMeasurements)
 {
@@ -1413,18 +1412,18 @@
     bool usesRepaintBounds() const { return m_usesRepaintBounds; }
 
     void setRepaintRange(LayoutUnit logicalHeight)
-    { 
+    {
         m_usesRepaintBounds = true;
-        m_repaintLogicalTop = m_repaintLogicalBottom = logicalHeight; 
+        m_repaintLogicalTop = m_repaintLogicalBottom = logicalHeight;
     }
-    
+
     void updateRepaintRangeFromBox(RootInlineBox* box, LayoutUnit paginationDelta = 0)
     {
         m_usesRepaintBounds = true;
         m_repaintLogicalTop = min(m_repaintLogicalTop, box->logicalTopVisualOverflow() + min<LayoutUnit>(paginationDelta, 0));
         m_repaintLogicalBottom = max(m_repaintLogicalBottom, box->logicalBottomVisualOverflow() + max<LayoutUnit>(paginationDelta, 0));
     }
-    
+
     bool endLineMatched() const { return m_endLineMatched; }
     void setEndLineMatched(bool endLineMatched) { m_endLineMatched = endLineMatched; }
 
@@ -1444,10 +1443,10 @@
     void setLastFloat(RenderBlock::FloatingObject* lastFloat) { m_lastFloat = lastFloat; }
 
     Vector<RenderBlock::FloatWithRect>& floats() { return m_floats; }
-    
+
     unsigned floatIndex() const { return m_floatIndex; }
     void setFloatIndex(unsigned floatIndex) { m_floatIndex = floatIndex; }
-    
+
     RenderFlowThread* flowThread() const { return m_flowThread; }
     void setFlowThread(RenderFlowThread* thread) { m_flowThread = thread; }
 
@@ -1460,7 +1459,7 @@
     LayoutUnit m_endLineLogicalTop;
     bool m_endLineMatched;
     bool m_checkForFloatsFromLastLine;
-    
+
     bool m_isFullLayout;
 
     // FIXME: Should this be a range object instead of two ints?
@@ -1468,7 +1467,7 @@
     LayoutUnit& m_repaintLogicalBottom;
 
     bool m_usesRepaintBounds;
-    
+
     RenderFlowThread* m_flowThread;
 };
 
@@ -1862,7 +1861,7 @@
             deleteLineRange(layoutState, renderArena(), layoutState.endLine());
         }
     }
-    
+
     if (floatingObjects() && (layoutState.checkForFloatsFromLastLine() || positionNewFloats()) && lastRootBox()) {
         // In case we have a float on the last line, it might not be positioned up to now.
         // This has to be done before adding in the bottom border/padding, or the float will
@@ -1919,7 +1918,7 @@
 void RenderBlock::layoutInlineChildren(bool relayoutChildren, LayoutUnit& repaintLogicalTop, LayoutUnit& repaintLogicalBottom)
 {
     setLogicalHeight(borderBefore() + paddingBefore());
-    
+
     // Lay out our hypothetical grid line as though it occurs at the top of the block.
     if (view()->layoutState() && view()->layoutState()->lineGrid() == this)
         layoutLineGridBox();
@@ -2232,11 +2231,11 @@
                 return false;
         }
     }
-    
+
     FloatingObjects* floats = floatingObjects();
     if (!lineDelta || !floats)
         return true;
-    
+
     // See if any floats end in the range along which we want to shift the lines vertically.
     LayoutUnit logicalTop = min(logicalHeight(), layoutState.endLineLogicalTop());
 
@@ -2275,7 +2274,7 @@
             // We have a match.
             if (line->lineBreakBidiStatus() != resolver.status())
                 return false; // ...but the bidi state doesn't match.
-            
+
             bool matched = false;
             RootInlineBox* result = line->nextRootBox();
             layoutState.setEndLine(result);
@@ -2307,7 +2306,7 @@
 static bool requiresLineBoxForContent(RenderInline* flow, const LineInfo& lineInfo)
 {
     RenderObject* parent = flow->parent();
-    if (flow->document()->inNoQuirksMode() 
+    if (flow->document()->inNoQuirksMode()
         && (flow->style(lineInfo.isFirstLine())->lineHeight() != parent->style(lineInfo.isFirstLine())->lineHeight()
         || flow->style()->verticalAlign() != parent->style()->verticalAlign()
         || !parent->style()->font().fontMetrics().hasIdenticalAscentDescentAndLineGap(flow->style()->font().fontMetrics())))
@@ -2730,7 +2729,7 @@
                 trailingObjects.clear();
                 lineInfo.setPreviousLineBrokeCleanly(true);
 
-                // A <br> with clearance always needs a linebox in case the lines below it get dirtied later and 
+                // A <br> with clearance always needs a linebox in case the lines below it get dirtied later and
                 // need to check for floats to clear - so if we're ignoring spaces, stop ignoring them and add a
                 // run for this object.
                 if (ignoringSpaces && currentStyle->clear() != CNONE)
@@ -2964,11 +2963,11 @@
 
                     wordMeasurements.grow(wordMeasurements.size() + 1);
                     WordMeasurement& wordMeasurement = wordMeasurements.last();
-                    
+
                     wordMeasurement.renderer = t;
                     wordMeasurement.endOffset = current.m_pos;
                     wordMeasurement.startOffset = lastSpace;
-                    
+
                     float additionalTmpW;
                     if (wordTrailingSpaceWidth && c == ' ')
                         additionalTmpW = textWidth(t, lastSpace, current.m_pos + 1 - lastSpace, f, width.currentWidth(), isFixedPitch, collapseWhiteSpace, &wordMeasurement.fallbackFonts, textLayout) - wordTrailingSpaceWidth;
@@ -3420,7 +3419,7 @@
         setLineGridBox(0);
         return;
     }
-    
+
     setLineGridBox(0);
 
     RootInlineBox* lineGridBox = new (renderArena()) RootInlineBox(this);
@@ -3429,9 +3428,9 @@
     GlyphOverflowAndFallbackFontsMap textBoxDataMap;
     VerticalPositionCache verticalPositionCache;
     lineGridBox->alignBoxesInBlockDirection(logicalHeight(), textBoxDataMap, verticalPositionCache);
-    
+
     setLineGridBox(lineGridBox);
-    
+
     // FIXME: If any of the characteristics of the box change compared to the old one, then we need to do a deep dirtying
     // (similar to what happens when the page height changes). Ideally, though, we only do this if someone is actually snapping
     // to this grid.
diff --git a/Source/core/rendering/RenderBox.cpp b/Source/core/rendering/RenderBox.cpp
index 12360ed..e596013 100644
--- a/Source/core/rendering/RenderBox.cpp
+++ b/Source/core/rendering/RenderBox.cpp
@@ -108,7 +108,7 @@
 {
     if (!region)
         return borderBoxRect();
-    
+
     // Compute the logical width and placement in this region.
     RenderBoxRegionInfo* boxInfo = renderBoxRegionInfo(region, offsetFromTopOfFirstPage, cacheFlag);
     if (!boxInfo)
@@ -117,7 +117,7 @@
     // We have cached insets.
     LayoutUnit logicalWidth = boxInfo->logicalWidth();
     LayoutUnit logicalLeft = boxInfo->logicalLeft();
-        
+
     // Now apply the parent inset since it is cumulative whenever anything in the containing block chain shifts.
     // FIXME: Doesn't work right with perpendicular writing modes.
     const RenderBlock* currentBox = containingBlock();
@@ -133,7 +133,7 @@
         region = currentBox->clampToStartAndEndRegions(region);
         currentBoxInfo = currentBox->renderBoxRegionInfo(region, offsetFromTopOfFirstPage);
     }
-    
+
     if (cacheFlag == DoNotCacheRenderBoxRegionInfo)
         delete boxInfo;
 
@@ -207,11 +207,11 @@
         if (diff >= StyleDifferenceRepaint && node() &&
             (isHTMLHtmlElement(node()) || node()->hasTagName(bodyTag))) {
             view()->repaint();
-            
+
             if (oldStyle->hasEntirelyFixedBackground() != newStyle->hasEntirelyFixedBackground())
                 view()->compositor()->rootFixedBackgroundsChanged();
         }
-        
+
         // When a layout hint happens and an object's position style changes, we have to do a layout
         // to dirty the render tree using the old position value now.
         if (diff == StyleDifferenceLayout && parent() && oldStyle->position() != newStyle->position()) {
@@ -711,12 +711,12 @@
 bool RenderBox::logicalScroll(ScrollLogicalDirection direction, ScrollGranularity granularity, float multiplier, Node** stopNode)
 {
     bool scrolled = false;
-    
+
     RenderLayer* l = layer();
     if (l) {
         if (l->scroll(logicalToPhysical(direction, isHorizontalWritingMode(), style()->isFlippedBlocksWritingMode()), granularity, multiplier))
             scrolled = true;
-        
+
         if (scrolled) {
             if (stopNode)
                 *stopNode = node();
@@ -737,7 +737,7 @@
 {
     return canBeProgramaticallyScrolled() && (scrollHeight() != clientHeight() || scrollWidth() != clientWidth());
 }
-    
+
 bool RenderBox::canBeProgramaticallyScrolled() const
 {
     return (hasOverflowClip() && (scrollsOverflow() || (node() && node()->rendererIsEditable()))) || (node() && node()->isDocumentNode());
@@ -869,7 +869,7 @@
 #endif
         const_cast<RenderBox*>(this)->computePreferredLogicalWidths();
     }
-        
+
     return m_minPreferredLogicalWidth;
 }
 
@@ -881,7 +881,7 @@
 #endif
         const_cast<RenderBox*>(this)->computePreferredLogicalWidths();
     }
-        
+
     return m_maxPreferredLogicalWidth;
 }
 
@@ -1062,7 +1062,7 @@
         return;
 
     RenderObject* rootBackgroundRenderer = rendererForRootBackground();
-    
+
     const FillLayer* bgLayer = rootBackgroundRenderer->style()->backgroundLayers();
     Color bgColor = rootBackgroundRenderer->resolveColor(CSSPropertyBackgroundColor);
 
@@ -1082,7 +1082,7 @@
     AffineTransform ctm = context->getCTM();
     FloatSize contextScaling(static_cast<float>(ctm.xScale()), static_cast<float>(ctm.yScale()));
 
-    // Because RoundedRect uses IntRect internally the inset applied by the 
+    // Because RoundedRect uses IntRect internally the inset applied by the
     // BackgroundBleedShrinkBackground strategy cannot be less than one integer
     // layout coordinate, even with subpixel layout enabled. To take that into
     // account, we clamp the contextScaling to 1.0 for the following test so
@@ -1091,9 +1091,9 @@
     // coordinates.
     // This precaution will become obsolete if RoundedRect is ever promoted to
     // a sub-pixel representation.
-    if (contextScaling.width() > 1) 
+    if (contextScaling.width() > 1)
         contextScaling.setWidth(1);
-    if (contextScaling.height() > 1) 
+    if (contextScaling.height() > 1)
         contextScaling.setHeight(1);
 
     if (borderObscuresBackgroundEdge(contextScaling))
@@ -1330,7 +1330,7 @@
     CompositeOperator compositeOp = CompositeSourceOver;
 
     bool allMaskImagesLoaded = true;
-    
+
     if (!compositedMask || flattenCompositingLayers) {
         pushTransparencyLayer = true;
         StyleImage* maskBoxImage = style()->maskBoxImage().image();
@@ -1352,7 +1352,7 @@
         paintFillLayers(paintInfo, Color(), style()->maskLayers(), paintRect, BackgroundBleedNone, compositeOp);
         paintNinePieceImage(paintInfo.context, paintRect, style(), style()->maskBoxImage(), compositeOp);
     }
-    
+
     if (pushTransparencyLayer)
         paintInfo.context->endTransparencyLayer();
 }
@@ -1362,12 +1362,12 @@
     const NinePieceImage& maskBoxImage = style()->maskBoxImage();
     if (maskBoxImage.image()) {
         LayoutRect borderImageRect = borderBoxRect();
-        
+
         // Apply outsets to the border box.
         borderImageRect.expand(style()->maskBoxImageOutsets());
         return borderImageRect;
     }
-    
+
     LayoutRect result;
     LayoutRect borderBox = borderBoxRect();
     for (const FillLayer* maskLayer = style()->maskLayers(); maskLayer; maskLayer = maskLayer->next()) {
@@ -1389,7 +1389,7 @@
     while (curLayer) {
         layers.append(curLayer);
         // Stop traversal when an opaque layer is encountered.
-        // FIXME : It would be possible for the following occlusion culling test to be more aggressive 
+        // FIXME : It would be possible for the following occlusion culling test to be more aggressive
         // on layers with no repeat by testing whether the image covers the layout rect.
         // Testing that here would imply duplicating a lot of calculations that are currently done in
         // RenderBoxModelObject::paintFillLayerExtended. A more efficient solution might be to move
@@ -1503,13 +1503,13 @@
 {
     if (paintInfo.phase == PaintPhaseBlockBackground || paintInfo.phase == PaintPhaseSelfOutline || paintInfo.phase == PaintPhaseMask)
         return false;
-        
+
     bool isControlClip = hasControlClip();
     bool isOverflowClip = hasOverflowClip() && !layer()->isSelfPaintingLayer();
-    
+
     if (!isControlClip && !isOverflowClip)
         return false;
-    
+
     if (paintInfo.phase == PaintPhaseOutline)
         paintInfo.phase = PaintPhaseChildOutlines;
     else if (paintInfo.phase == PaintPhaseChildBlockBackground) {
@@ -1587,7 +1587,7 @@
 }
 
 LayoutUnit RenderBox::shrinkLogicalWidthToAvoidFloats(LayoutUnit childMarginStart, LayoutUnit childMarginEnd, const RenderBlock* cb, RenderRegion* region, LayoutUnit offsetFromLogicalTopOfFirstPage) const
-{    
+{
     RenderRegion* containingBlockRegion = 0;
     LayoutUnit logicalTopPosition = logicalTop();
     LayoutUnit adjustedPageOffsetForContainingBlock = offsetFromLogicalTopOfFirstPage - logicalTop();
@@ -1613,7 +1613,7 @@
         else
             result += startOffset - startContentSide;
     }
-    
+
     if (childMarginEnd > 0) {
         LayoutUnit endContentSide = cb->endOffsetForContent(containingBlockRegion, adjustedPageOffsetForContainingBlock);
         LayoutUnit endContentSideWithMargin = endContentSide + childMarginEnd;
@@ -1730,9 +1730,9 @@
 
     if (wasFixed)
         *wasFixed = mode & IsFixed;
-    
+
     LayoutSize containerOffset = offsetFromContainer(o, roundedLayoutPoint(transformState.mappedPoint()));
-    
+
     bool preserve3D = mode & UseTransforms && (o->style()->preserves3D() || style()->preserves3D());
     if (mode & UseTransforms && shouldUseTransformFromContainer(o)) {
         TransformationMatrix t;
@@ -1779,7 +1779,7 @@
     // 337 regions tests to fail.
     ASSERT(o == container() || o->isRenderRegion());
 
-    LayoutSize offset;    
+    LayoutSize offset;
     if (isInFlowPositioned())
         offset += offsetForInFlowPosition();
 
@@ -1883,7 +1883,7 @@
         // repaint containers. https://bugs.webkit.org/show_bug.cgi?id=23308
         r.move(v->layoutDelta());
     }
-    
+
     if (style()) {
         // We have to use maximalOutlineSize() because a child might have an outline
         // that projects outside of our overflowRect.
@@ -1892,7 +1892,7 @@
             r.inflate(v->maximalOutlineSize());
         }
     }
-    
+
     computeRectForRepaint(repaintContainer, r);
     return r;
 }
@@ -1969,7 +1969,7 @@
         // flag on the RenderObject has been cleared, so use the one on the style().
         topLeft += layer()->offsetForInFlowPosition();
     }
-    
+
     if (position != AbsolutePosition && position != FixedPosition && o->hasColumns() && o->isBlockFlow()) {
         LayoutRect repaintRect(topLeft, rect.size());
         toRenderBlock(o)->adjustRectForColumns(repaintRect);
@@ -2096,7 +2096,7 @@
     RenderBlock* cb = containingBlock();
     LayoutUnit containerLogicalWidth = max<LayoutUnit>(0, containingBlockLogicalWidthForContentInRegion(region, offsetFromLogicalTopOfFirstPage));
     bool hasPerpendicularContainingBlock = cb->isHorizontalWritingMode() != isHorizontalWritingMode();
-    
+
     if (isInline() && !isInlineBlockOrInlineTable()) {
         // just calculate margins
         RenderView* renderView = view();
@@ -2132,7 +2132,7 @@
             hasInvertedDirection ? computedValues.m_margins.m_end : computedValues.m_margins.m_start,
             hasInvertedDirection ? computedValues.m_margins.m_start : computedValues.m_margins.m_end);
     }
-    
+
     if (!hasPerpendicularContainingBlock && containerLogicalWidth && containerLogicalWidth != (computedValues.m_extent + computedValues.m_margins.m_start + computedValues.m_margins.m_end)
         && !isFloating() && !isInline() && !cb->isFlexibleBoxIncludingDeprecated() && !cb->isRenderGrid()) {
         LayoutUnit newMargin = containerLogicalWidth - computedValues.m_extent - cb->marginStartForChild(this);
@@ -2213,7 +2213,7 @@
     LayoutUnit logicalWidthResult = fillAvailableMeasure(availableLogicalWidth, marginStart, marginEnd);
 
     if (shrinkToAvoidFloats() && cb->containsFloats())
-        logicalWidthResult = min(logicalWidthResult, shrinkLogicalWidthToAvoidFloats(marginStart, marginEnd, cb, region, offsetFromLogicalTopOfFirstPage));        
+        logicalWidthResult = min(logicalWidthResult, shrinkLogicalWidthToAvoidFloats(marginStart, marginEnd, cb, region, offsetFromLogicalTopOfFirstPage));
 
     if (widthType == MainOrPreferredSize && sizesLogicalWidthToFitContent(widthType))
         return max(minPreferredLogicalWidth(), min(maxPreferredLogicalWidth(), logicalWidthResult));
@@ -2333,15 +2333,15 @@
         marginStart = centeredMarginBoxStart + marginStartWidth;
         marginEnd = containerWidth - childWidth - marginStart + marginEndWidth;
         return;
-    } 
-    
+    }
+
     // Case Two: The object is being pushed to the start of the containing block's available logical width.
     if (marginEndLength.isAuto() && childWidth < containerWidth) {
         marginStart = valueForLength(marginStartLength, containerWidth, renderView);
         marginEnd = containerWidth - childWidth - marginStart;
         return;
-    } 
-    
+    }
+
     // Case Three: The object is being pushed to the end of the containing block's available logical width.
     bool pushToEndFromTextAlign = !marginEndLength.isAuto() && ((!containingBlockStyle->isLeftToRightDirection() && containingBlockStyle->textAlign() == WEBKIT_LEFT)
         || (containingBlockStyle->isLeftToRightDirection() && containingBlockStyle->textAlign() == WEBKIT_RIGHT));
@@ -2349,8 +2349,8 @@
         marginEnd = valueForLength(marginEndLength, containerWidth, renderView);
         marginStart = containerWidth - childWidth - marginEnd;
         return;
-    } 
-    
+    }
+
     // Case Four: Either no auto margins, or our width is >= the container width (css2.1, 10.3.3).  In that case
     // auto margins will just turn into 0.
     marginStart = minimumValueForLength(marginStartLength, containerWidth, renderView);
@@ -2386,7 +2386,7 @@
         offsetFromLogicalTopOfFirstPage - logicalTop());
     LayoutUnit containingBlockLogicalWidth = cb->logicalWidth();
     LayoutUnit containingBlockLogicalWidthInRegion = containingBlockInfo ? containingBlockInfo->logicalWidth() : containingBlockLogicalWidth;
-    
+
     LayoutUnit marginStartInRegion = computedValues.m_margins.m_start;
     LayoutUnit startMarginDelta = marginStartInRegion - marginStart();
     LayoutUnit logicalWidthInRegion = computedValues.m_extent;
@@ -2398,7 +2398,7 @@
     LayoutUnit logicalRightDelta = isOutOfFlowPositioned() ? logicalRightInRegion - oldLogicalRight : startMarginDelta;
 
     LayoutUnit logicalLeftOffset = 0;
-    
+
     if (!isOutOfFlowPositioned() && avoidsFloats() && cb->containsFloats()) {
         LayoutUnit startPositionDelta = cb->computeStartPositionDeltaForChildAvoidingFloats(this, marginStartInRegion, region, offsetFromLogicalTopOfFirstPage);
         if (cb->style()->isLeftToRightDirection())
@@ -2411,7 +2411,7 @@
         logicalLeftOffset += logicalLeftDelta;
     else
         logicalLeftOffset -= (widthDelta + logicalRightDelta);
-    
+
     LayoutUnit logicalRightOffset = logicalWidth() - (logicalLeftOffset + logicalWidthInRegion);
     bool isShifted = (containingBlockInfo && containingBlockInfo->isShifted())
             || (style()->isLeftToRightDirection() && logicalLeftOffset)
@@ -2477,7 +2477,7 @@
     else {
         RenderBlock* cb = containingBlock();
         bool hasPerpendicularContainingBlock = cb->isHorizontalWritingMode() != isHorizontalWritingMode();
-    
+
         if (!hasPerpendicularContainingBlock) {
             bool shouldFlipBeforeAfter = cb->style()->writingMode() != style()->writingMode();
             computeBlockDirectionMargins(cb,
@@ -2540,7 +2540,7 @@
         }
 
         computedValues.m_extent = heightResult;
-        
+
         if (hasPerpendicularContainingBlock) {
             bool shouldFlipBeforeAfter = shouldFlipBeforeAfterMargins(cb->style(), style());
             computeInlineDirectionMargins(cb, containingBlockLogicalWidthForContent(), heightResult,
@@ -2551,8 +2551,8 @@
 
     // WinIE quirk: The <html> block always fills the entire canvas in quirks mode.  The <body> always fills the
     // <html> block in quirks mode.  Only apply this quirk if the block is normal flow and no height
-    // is specified. When we're printing, we also need this quirk if the body or root has a percentage 
-    // height since we don't set a height in RenderView when we're printing. So without this quirk, the 
+    // is specified. When we're printing, we also need this quirk if the body or root has a percentage
+    // height since we don't set a height in RenderView when we're printing. So without this quirk, the
     // height has nothing to be a percentage of, and it ends up being 0. That is bad.
     bool paginatedContentNeedsBaseHeight = document()->printing() && h.isPercent()
         && (isRoot() || (isBody() && document()->documentElement()->renderer()->style()->logicalHeight().isPercent())) && !isInline();
@@ -2638,7 +2638,7 @@
 LayoutUnit RenderBox::computePercentageLogicalHeight(const Length& height) const
 {
     LayoutUnit availableHeight = -1;
-    
+
     bool skippedAutoHeightContainingBlock = false;
     RenderBlock* cb = containingBlock();
     const RenderBox* containingBlockChild = this;
@@ -2821,7 +2821,7 @@
                 LayoutUnit newHeight = block->adjustContentBoxLogicalHeightForBoxSizing(newContentHeight);
                 return adjustContentBoxLogicalHeightForBoxSizing(valueForLength(logicalHeight, newHeight));
             }
-            
+
             // FIXME: availableLogicalHeight() is wrong if the replaced element's block-flow is perpendicular to the
             // containing block's block-flow.
             // https://bugs.webkit.org/show_bug.cgi?id=46496
@@ -3024,7 +3024,7 @@
             return toRenderFlowThread(containingBlock)->contentLogicalHeightOfFirstRegion();
         return result;
     }
-        
+
     ASSERT(containingBlock->isRenderInline() && containingBlock->isInFlowPositioned());
 
     const RenderInline* flow = toRenderInline(containingBlock);
@@ -3122,7 +3122,7 @@
     // We don't use containingBlock(), since we may be positioned by an enclosing
     // relative positioned inline.
     const RenderBoxModelObject* containerBlock = toRenderBoxModelObject(container());
-    
+
     const LayoutUnit containerLogicalWidth = containingBlockLogicalWidthForPositioned(containerBlock, region, offsetFromLogicalTopOfFirstPage);
 
     // Use the container block's direction except when calculating the static distance
@@ -3165,7 +3165,7 @@
     // see FIXME 1
     // Calculate the static distance if needed.
     computeInlineStaticDistance(logicalLeftLength, logicalRightLength, this, containerBlock, containerLogicalWidth, region);
-    
+
     // Calculate constraint equation values for 'width' case.
     computePositionedLogicalWidthUsing(style()->logicalWidth(), containerBlock, containerDirection,
                                        containerLogicalWidth, bordersPlusPadding,
@@ -3207,7 +3207,7 @@
     }
 
     computedValues.m_extent += bordersPlusPadding;
-    
+
     // Adjust logicalLeft if we need to for the flipped version of our writing mode in regions.
     // FIXME: Add support for other types of objects as containerBlock, not only RenderBlock.
     RenderFlowThread* flowThread = flowThreadContainingBlock();
@@ -3426,7 +3426,7 @@
 {
     if (!logicalTop.isAuto() || !logicalBottom.isAuto())
         return;
-    
+
     // FIXME: The static distance computation has not been patched for mixed writing modes.
     LayoutUnit staticLogicalTop = child->layer()->staticBlockPosition() - containerBlock->borderBefore();
     for (RenderObject* curr = child->parent(); curr && curr != containerBlock; curr = curr->container()) {
@@ -3526,7 +3526,7 @@
 
     // Set final height value.
     computedValues.m_extent += bordersPlusPadding;
-    
+
     // Adjust logicalTop if we need to for perpendicular writing modes in regions.
     // FIXME: Add support for other types of objects as containerBlock, not only RenderBlock.
     RenderFlowThread* flowThread = flowThreadContainingBlock();
@@ -4061,7 +4061,7 @@
     if (isTable() && nonPseudoNode()) {
         LayoutUnit right = contentWidth() + borderAndPaddingWidth();
         LayoutUnit bottom = contentHeight() + borderAndPaddingHeight();
-        
+
         if (point.x() < 0 || point.x() > right || point.y() < 0 || point.y() > bottom) {
             if (point.x() <= right / 2)
                 return createVisiblePosition(firstPositionInOrBeforeNode(nonPseudoNode()));
@@ -4080,17 +4080,17 @@
         if ((!renderObject->firstChild() && !renderObject->isInline() && !renderObject->isBlockFlow() )
             || renderObject->style()->visibility() != VISIBLE)
             continue;
-        
+
         if (!renderObject->isBox())
             continue;
-        
+
         RenderBox* renderer = toRenderBox(renderObject);
 
         LayoutUnit top = renderer->borderTop() + renderer->paddingTop() + (isTableRow() ? LayoutUnit() : renderer->y());
         LayoutUnit bottom = top + renderer->contentHeight();
         LayoutUnit left = renderer->borderLeft() + renderer->paddingLeft() + (isTableRow() ? LayoutUnit() : renderer->x());
         LayoutUnit right = left + renderer->contentWidth();
-        
+
         if (point.x() <= right && point.x() >= left && point.y() <= top && point.y() >= bottom) {
             if (renderer->isTableRow())
                 return renderer->positionForPoint(point + adjustedPoint - renderer->locationOffset());
@@ -4129,10 +4129,10 @@
             minDist = dist;
         }
     }
-    
+
     if (closestRenderer)
         return closestRenderer->positionForPoint(adjustedPoint - closestRenderer->locationOffset());
-    
+
     return createVisiblePosition(firstPositionInOrBeforeNode(nonPseudoNode()));
 }
 
@@ -4141,7 +4141,7 @@
     // Floating objects don't shrink.  Objects that don't avoid floats don't shrink.  Marquees don't shrink.
     if ((isInline() && !isMarquee()) || !avoidsFloats() || isFloating())
         return false;
-    
+
     // Only auto width objects can possibly shrink to avoid floats.
     return style()->width().isAuto();
 }
@@ -4158,13 +4158,13 @@
 
     bool isFlipped = style()->isFlippedBlocksWritingMode();
     bool isHorizontal = isHorizontalWritingMode();
-    
+
     LayoutRect borderBox = borderBoxRect();
     LayoutUnit overflowMinX = borderBox.x();
     LayoutUnit overflowMaxX = borderBox.maxX();
     LayoutUnit overflowMinY = borderBox.y();
     LayoutUnit overflowMaxY = borderBox.maxY();
-    
+
     // Compute box-shadow overflow first.
     if (style()->boxShadow()) {
         LayoutUnit shadowLeft;
@@ -4183,7 +4183,7 @@
     // Now compute border-image-outset overflow.
     if (style()->hasBorderImageOutsets()) {
         LayoutBoxExtent borderOutsets = style()->borderImageOutsets();
-        
+
         // In flipped blocks writing modes, the physical sides are inverted. For example in vertical-rl, the right
         // border is at the lower x coordinate value.
         overflowMinX = min(overflowMinX, borderBox.x() - ((!isFlipped || isHorizontal) ? borderOutsets.left() : borderOutsets.right()));
@@ -4208,7 +4208,7 @@
     LayoutRect childLayoutOverflowRect = child->layoutOverflowRectForPropagation(style());
     childLayoutOverflowRect.move(delta);
     addLayoutOverflow(childLayoutOverflowRect);
-            
+
     // Add in visual overflow from the child.  Even if the child clips its overflow, it may still
     // have visual overflow of its own set from box shadows or reflections.  It is unnecessary to propagate this
     // overflow if we are clipping our own overflow.
@@ -4221,14 +4221,14 @@
 
 void RenderBox::addLayoutOverflow(const LayoutRect& rect)
 {
-    LayoutRect clientBox = clientBoxRect();
+    LayoutRect clientBox = noOverflowRect();
     if (clientBox.contains(rect) || rect.isEmpty())
         return;
-    
+
     // For overflow clip objects, we don't want to propagate overflow into unreachable areas.
     LayoutRect overflowRect(rect);
     if (hasOverflowClip() || isRenderView()) {
-        // Overflow is in the block's coordinate space and thus is flipped for horizontal-bt and vertical-rl 
+        // Overflow is in the block's coordinate space and thus is flipped for horizontal-bt and vertical-rl
         // writing modes.  At this stage that is actually a simplification, since we can treat horizontal-tb/bt as the same
         // and vertical-lr/rl as the same.
         bool hasTopOverflow = !style()->isLeftToRightDirection() && !isHorizontalWritingMode();
@@ -4256,7 +4256,7 @@
             overflowRect.shiftXEdgeTo(max(overflowRect.x(), clientBox.x()));
         else
             overflowRect.shiftMaxXEdgeTo(min(overflowRect.maxX(), clientBox.maxX()));
-        
+
         // Now re-test with the adjusted rectangle and see if it has become unreachable or fully
         // contained.
         if (clientBox.contains(overflowRect) || overflowRect.isEmpty())
@@ -4265,7 +4265,7 @@
 
     if (!m_overflow)
         m_overflow = adoptPtr(new RenderOverflow(clientBox, borderBoxRect()));
-    
+
     m_overflow->addLayoutOverflow(overflowRect);
 }
 
@@ -4274,10 +4274,10 @@
     LayoutRect borderBox = borderBoxRect();
     if (borderBox.contains(rect) || rect.isEmpty())
         return;
-        
+
     if (!m_overflow)
-        m_overflow = adoptPtr(new RenderOverflow(clientBoxRect(), borderBox));
-    
+        m_overflow = adoptPtr(new RenderOverflow(noOverflowRect(), borderBox));
+
     m_overflow->addVisualOverflow(rect);
 }
 
@@ -4285,13 +4285,14 @@
 {
     if (!m_overflow)
         return;
-    
-    if (visualOverflowRect() == borderBoxRect()) {
+
+    LayoutRect noOverflowRect = this->noOverflowRect();
+    if (visualOverflowRect() == noOverflowRect) {
         m_overflow.clear();
         return;
     }
-    
-    m_overflow->setLayoutOverflow(borderBoxRect());
+
+    m_overflow->setLayoutOverflow(noOverflowRect);
 }
 
 inline static bool percentageLogicalHeightIsResolvable(const RenderBox* box)
@@ -4349,7 +4350,7 @@
     bool isHorizontal = isHorizontalWritingMode();
     if ((isHorizontal && !scrollsOverflowY()) || (!isHorizontal && !scrollsOverflowX()))
         return false;
-    
+
     // We do have overflow. We'll still be willing to paginate as long as the block
     // has auto logical height, auto or undefined max-logical-height and a zero or auto min-logical-height.
     // Note this is just a heuristic, and it's still possible to have overflow under these
@@ -4407,12 +4408,12 @@
 
 LayoutRect RenderBox::visualOverflowRectForPropagation(RenderStyle* parentStyle) const
 {
-    // If the writing modes of the child and parent match, then we don't have to 
+    // If the writing modes of the child and parent match, then we don't have to
     // do anything fancy. Just return the result.
     LayoutRect rect = visualOverflowRect();
     if (parentStyle->writingMode() == style()->writingMode())
         return rect;
-    
+
     // We are putting ourselves into our parent's coordinate space.  If there is a flipped block mismatch
     // in a particular axis, then we have to flip the rect along that axis.
     if (style()->writingMode() == RightToLeftWritingMode || parentStyle->writingMode() == RightToLeftWritingMode)
@@ -4444,22 +4445,22 @@
         // this rectangle into physical coordinates, apply relative positioning and transforms
         // to it, and then convert it back.
         flipForWritingMode(rect);
-        
+
         if (hasTransform)
             rect = layer()->currentTransform().mapRect(rect);
 
         if (isInFlowPositioned())
             rect.move(offsetForInFlowPosition());
-        
+
         // Now we need to flip back.
         flipForWritingMode(rect);
     }
-    
-    // If the writing modes of the child and parent match, then we don't have to 
+
+    // If the writing modes of the child and parent match, then we don't have to
     // do anything fancy. Just return the result.
     if (parentStyle->writingMode() == style()->writingMode())
         return rect;
-    
+
     // We are putting ourselves into our parent's coordinate space.  If there is a flipped block mismatch
     // in a particular axis, then we have to flip the rect along that axis.
     if (style()->writingMode() == RightToLeftWritingMode || parentStyle->writingMode() == RightToLeftWritingMode)
@@ -4470,6 +4471,34 @@
     return rect;
 }
 
+LayoutRect RenderBox::noOverflowRect() const
+{
+    // Because of the special coodinate system used for overflow rectangles and many other
+    // rectangles (not quite logical, not quite physical), we need to flip the block progression
+    // coordinate in vertical-rl and horizontal-bt writing modes. In other words, the rectangle
+    // returned is physical, except for the block direction progression coordinate (y in horizontal
+    // writing modes, x in vertical writing modes), which is always "logical top". Apart from the
+    // flipping, this method does the same as clientBoxRect().
+
+    LayoutUnit left = borderLeft();
+    LayoutUnit top = borderTop();
+    LayoutUnit right = borderRight();
+    LayoutUnit bottom = borderBottom();
+    LayoutRect rect(left, top, width() - left - right, height() - top - bottom);
+    flipForWritingMode(rect);
+    // Subtract space occupied by scrollbars. Order is important here: first flip, then subtract
+    // scrollbars. This may seem backwards and weird, since one would think that a horizontal
+    // scrollbar at the physical bottom in horizontal-bt ought to be at the logical top (physical
+    // bottom), between the logical top (physical bottom) border and the logical top (physical
+    // bottom) padding. But this is how the rest of the code expects us to behave. This is highly
+    // related to https://bugs.webkit.org/show_bug.cgi?id=76129
+    // FIXME: when the above mentioned bug is fixed, it should hopefully be possible to call
+    // clientBoxRect() or paddingBoxRect() in this method, rather than fiddling with the edges on
+    // our own.
+    rect.contract(verticalScrollbarWidth(), horizontalScrollbarHeight());
+    return rect;
+}
+
 LayoutRect RenderBox::overflowRectForPaintRejection() const
 {
     LayoutRect overflowRect = visualOverflowRect();
@@ -4495,7 +4524,7 @@
 {
     if (!style()->isFlippedBlocksWritingMode())
         return point;
-    
+
     // The child is going to add in its x() and y(), so we have to make sure it ends up in
     // the right place.
     if (isHorizontalWritingMode())
@@ -4573,7 +4602,7 @@
     RenderBlock* containerBlock = containingBlock();
     if (!containerBlock || containerBlock == this)
         return locationOffset();
-    
+
     LayoutRect rect(frameRect());
     containerBlock->flipForWritingMode(rect); // FIXME: This is wrong if we are an absolutely positioned object enclosed by a relative-positioned inline.
     return LayoutSize(rect.x(), rect.y());
diff --git a/Source/core/rendering/RenderBox.h b/Source/core/rendering/RenderBox.h
index ad38279..105f91f 100644
--- a/Source/core/rendering/RenderBox.h
+++ b/Source/core/rendering/RenderBox.h
@@ -136,7 +136,7 @@
     IntSize pixelSnappedSize() const { return m_frameRect.pixelSnappedSize(); }
 
     void setLocation(const LayoutPoint& location) { m_frameRect.setLocation(location); }
-    
+
     void setSize(const LayoutSize& size) { m_frameRect.setSize(size); }
     void move(LayoutUnit dx, LayoutUnit dy) { m_frameRect.move(dx, dy); }
 
@@ -173,26 +173,27 @@
     // For horizontal-tb and vertical-lr they will match physical directions, but for horizontal-bt and vertical-rl, the top/bottom and left/right
     // respectively are flipped when compared to their physical counterparts.  For example minX is on the left in vertical-lr,
     // but it is on the right in vertical-rl.
-    LayoutRect layoutOverflowRect() const { return m_overflow ? m_overflow->layoutOverflowRect() : clientBoxRect(); }
+    LayoutRect noOverflowRect() const;
+    LayoutRect layoutOverflowRect() const { return m_overflow ? m_overflow->layoutOverflowRect() : noOverflowRect(); }
     IntRect pixelSnappedLayoutOverflowRect() const { return pixelSnappedIntRect(layoutOverflowRect()); }
     LayoutSize maxLayoutOverflow() const { return LayoutSize(layoutOverflowRect().maxX(), layoutOverflowRect().maxY()); }
     LayoutUnit logicalLeftLayoutOverflow() const { return style()->isHorizontalWritingMode() ? layoutOverflowRect().x() : layoutOverflowRect().y(); }
     LayoutUnit logicalRightLayoutOverflow() const { return style()->isHorizontalWritingMode() ? layoutOverflowRect().maxX() : layoutOverflowRect().maxY(); }
-    
+
     virtual LayoutRect visualOverflowRect() const { return m_overflow ? m_overflow->visualOverflowRect() : borderBoxRect(); }
     LayoutUnit logicalLeftVisualOverflow() const { return style()->isHorizontalWritingMode() ? visualOverflowRect().x() : visualOverflowRect().y(); }
     LayoutUnit logicalRightVisualOverflow() const { return style()->isHorizontalWritingMode() ? visualOverflowRect().maxX() : visualOverflowRect().maxY(); }
 
     LayoutRect overflowRectForPaintRejection() const;
-    
+
     void addLayoutOverflow(const LayoutRect&);
     void addVisualOverflow(const LayoutRect&);
-    
+
     void addVisualEffectOverflow();
     void addOverflowFromChild(RenderBox* child) { addOverflowFromChild(child, child->locationOffset()); }
     void addOverflowFromChild(RenderBox* child, const LayoutSize& delta);
     void clearLayoutOverflow();
-    
+
     void updateLayerTransform();
 
     LayoutUnit contentWidth() const { return clientWidth() - paddingLeft() - paddingRight(); }
@@ -248,7 +249,7 @@
 
     LayoutUnit marginLogicalLeft() const { return m_marginBox.logicalLeft(style()->writingMode()); }
     LayoutUnit marginLogicalRight() const { return m_marginBox.logicalRight(style()->writingMode()); }
-    
+
     virtual LayoutUnit marginBefore(const RenderStyle* overrideStyle = 0) const OVERRIDE FINAL { return m_marginBox.before((overrideStyle ? overrideStyle : style())->writingMode()); }
     virtual LayoutUnit marginAfter(const RenderStyle* overrideStyle = 0) const OVERRIDE FINAL { return m_marginBox.after((overrideStyle ? overrideStyle : style())->writingMode()); }
     virtual LayoutUnit marginStart(const RenderStyle* overrideStyle = 0) const OVERRIDE FINAL
@@ -287,7 +288,7 @@
 
     virtual void absoluteRects(Vector<IntRect>&, const LayoutPoint& accumulatedOffset) const;
     virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const;
-    
+
     LayoutRect reflectionBox() const;
     int reflectionOffset() const;
     // Given a rect in the object's coordinate space, returns the corresponding rect in the reflection.
@@ -324,7 +325,7 @@
     void clearOverrideContainingBlockContentLogicalHeight();
 
     virtual LayoutSize offsetFromContainer(RenderObject*, const LayoutPoint&, bool* offsetDependsOnPoint = 0) const;
-    
+
     LayoutUnit adjustBorderBoxLogicalWidthForBoxSizing(LayoutUnit width) const;
     LayoutUnit adjustBorderBoxLogicalHeightForBoxSizing(LayoutUnit height) const;
     LayoutUnit adjustContentBoxLogicalWidthForBoxSizing(LayoutUnit width) const;
@@ -365,7 +366,7 @@
     enum RenderBoxRegionInfoFlags { CacheRenderBoxRegionInfo, DoNotCacheRenderBoxRegionInfo };
     LayoutRect borderBoxRectInRegion(RenderRegion*, LayoutUnit offsetFromLogicalTopOfFirstPage = 0, RenderBoxRegionInfoFlags = CacheRenderBoxRegionInfo) const;
     void clearRenderBoxRegionInfo();
-    
+
     void positionLineBox(InlineBox*);
 
     virtual InlineBox* createInlineBox();
@@ -431,7 +432,7 @@
     virtual LayoutUnit availableLogicalWidth() const { return contentLogicalWidth(); }
     virtual LayoutUnit availableLogicalHeight(AvailableLogicalHeightType) const;
     LayoutUnit availableLogicalHeightUsing(const Length&, AvailableLogicalHeightType) const;
-    
+
     // There are a few cases where we need to refer specifically to the available physical width and available physical height.
     // Relative positioning is one of those cases, since left/top offsets are physical.
     LayoutUnit availableWidth() const { return style()->isHorizontalWritingMode() ? availableLogicalWidth() : availableLogicalHeight(IncludeMarginBorderPadding); }
@@ -459,7 +460,7 @@
     bool scrollsOverflowX() const { return hasOverflowClip() && (style()->overflowX() == OSCROLL || hasAutoHorizontalScrollbar()); }
     bool scrollsOverflowY() const { return hasOverflowClip() && (style()->overflowY() == OSCROLL || hasAutoVerticalScrollbar()); }
     bool usesCompositedScrolling() const;
-    
+
     bool hasUnsplittableScrollingOverflow() const;
     bool isUnsplittableForPagination() const;
 
@@ -495,9 +496,9 @@
     virtual VisiblePosition positionForPoint(const LayoutPoint&);
 
     void removeFloatingOrPositionedChildFromBlockLists();
-    
+
     RenderLayer* enclosingFloatPaintingLayer() const;
-    
+
     virtual int firstLineBoxBaseline() const { return -1; }
     virtual int inlineBlockBaseline(LineDirectionMode) const { return -1; } // Returns -1 if we should skip this box when computing the baseline of an inline-block.
 
@@ -510,7 +511,7 @@
 
     bool isDeprecatedFlexItem() const { return !isInline() && !isFloatingOrOutOfFlowPositioned() && parent() && parent()->isDeprecatedFlexibleBox(); }
     bool isFlexItemIncludingDeprecated() const { return !isInline() && !isFloatingOrOutOfFlowPositioned() && parent() && parent()->isFlexibleBoxIncludingDeprecated(); }
-    
+
     virtual LayoutUnit lineHeight(bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const;
     virtual int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const OVERRIDE;
 
@@ -593,7 +594,7 @@
     virtual bool computeBackgroundIsKnownToBeObscured() OVERRIDE;
 
     void paintBackground(const PaintInfo&, const LayoutRect&, BackgroundBleedAvoidance = BackgroundBleedNone);
-    
+
     void paintFillLayer(const PaintInfo&, const Color&, const FillLayer*, const LayoutRect&, BackgroundBleedAvoidance, CompositeOperator, RenderObject* backgroundObject);
     void paintFillLayers(const PaintInfo&, const Color&, const FillLayer*, const LayoutRect&, BackgroundBleedAvoidance = BackgroundBleedNone, CompositeOperator = CompositeSourceOver, RenderObject* backgroundObject = 0);
 
@@ -606,7 +607,7 @@
 
     LayoutUnit computeIntrinsicLogicalWidthUsing(Length logicalWidthLength, LayoutUnit availableLogicalWidth, LayoutUnit borderAndPadding) const;
     LayoutUnit computeIntrinsicLogicalContentHeightUsing(Length logicalHeightLength, LayoutUnit intrinsicContentHeight, LayoutUnit borderAndPadding) const;
-    
+
     virtual bool shouldComputeSizeAsReplaced() const { return isReplaced() && !isInlineBlockOrInlineTable(); }
 
     virtual void mapLocalToContainer(const RenderLayerModelObject* repaintContainer, TransformState&, MapCoordinatesFlags = ApplyContainerFlip, bool* wasFixed = 0) const OVERRIDE;
@@ -629,7 +630,7 @@
     bool repaintLayerRectsForImage(WrappedImagePtr image, const FillLayer* layers, bool drawingBackground);
 
     bool skipContainingBlockForPercentHeightCalculation(const RenderBox* containingBlock) const;
-   
+
     LayoutUnit containingBlockLogicalWidthForPositioned(const RenderBoxModelObject* containingBlock, RenderRegion* = 0,
         LayoutUnit offsetFromLogicalTopOfFirstPage = 0, bool checkForPerpendicularWritingMode = true) const;
     LayoutUnit containingBlockLogicalHeightForPositioned(const RenderBoxModelObject* containingBlock, bool checkForPerpendicularWritingMode = true) const;
@@ -670,7 +671,7 @@
 
     // The preferred logical width of the element if it were to break its lines at every possible opportunity.
     LayoutUnit m_minPreferredLogicalWidth;
-    
+
     // The preferred logical width of the element if it never breaks any lines at all.
     LayoutUnit m_maxPreferredLogicalWidth;
 
@@ -691,13 +692,13 @@
 };
 
 inline RenderBox* toRenderBox(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isBox());
     return static_cast<RenderBox*>(object);
 }
 
 inline const RenderBox* toRenderBox(const RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isBox());
     return static_cast<const RenderBox*>(object);
 }
@@ -711,7 +712,7 @@
 }
 
 inline RenderBox* RenderBox::nextSiblingBox() const
-{ 
+{
     return toRenderBox(nextSibling());
 }
 
diff --git a/Source/core/rendering/RenderBoxModelObject.cpp b/Source/core/rendering/RenderBoxModelObject.cpp
index e7b605f..d2be443 100644
--- a/Source/core/rendering/RenderBoxModelObject.cpp
+++ b/Source/core/rendering/RenderBoxModelObject.cpp
@@ -44,7 +44,7 @@
 #include "core/rendering/RenderNamedFlowThread.h"
 #include "core/rendering/RenderRegion.h"
 #include "core/rendering/RenderView.h"
-#include <wtf/CurrentTime.h>
+#include "wtf/CurrentTime.h"
 
 using namespace std;
 
@@ -219,7 +219,7 @@
 
     // Anonymous block boxes are ignored when resolving percentage values that would refer to it:
     // the closest non-anonymous ancestor box is used instead.
-    RenderBlock* cb = containingBlock(); 
+    RenderBlock* cb = containingBlock();
     while (cb->isAnonymous())
         cb = cb->containingBlock();
 
@@ -229,7 +229,7 @@
     // don't care if the cell specified a height or not.
     if (cb->isTableCell())
         return false;
-    
+
     if (!cb->style()->logicalHeight().isAuto() || (!cb->style()->logicalTop().isAuto() && !cb->style()->logicalBottom().isAuto()))
         return false;
 
@@ -285,9 +285,9 @@
 
     LayoutPoint referencePoint = startPoint;
     referencePoint.move(parent()->offsetForColumns(referencePoint));
-    
+
     // If the offsetParent of the element is null, or is the HTML body element,
-    // return the distance between the canvas origin and the left border edge 
+    // return the distance between the canvas origin and the left border edge
     // of the element and stop this algorithm.
     Element* element = offsetParent();
     if (!element)
@@ -383,10 +383,10 @@
 LayoutSize RenderBoxModelObject::stickyPositionOffset() const
 {
     LayoutRect viewportRect = view()->frameView()->viewportConstrainedVisibleContentRect();
-    
+
     StickyPositionViewportConstraints constraints;
     computeStickyPositionConstraints(constraints, viewportRect);
-    
+
     // The sticky offset is physical, so we can just return the delta computed in absolute coords (though it may be wrong with transforms).
     return LayoutSize(constraints.computeStickyOffset(viewportRect));
 }
@@ -466,7 +466,7 @@
             RoundedRect::Radii bottomCornerRadii;
             bottomCornerRadii.setBottomRight(clipRect.radii().bottomRight());
             context->clipRoundedRect(RoundedRect(bottomCorner, bottomCornerRadii));
-        } 
+        }
 
         if (!clipRect.radii().topRight().isEmpty() || !clipRect.radii().bottomLeft().isEmpty()) {
             IntRect topCorner(rect.x(), clipRect.rect().y(), clipRect.rect().maxX() - rect.x(), rect.maxY() - clipRect.rect().y());
@@ -538,7 +538,7 @@
     Color bgColor = color;
     StyleImage* bgImage = bgLayer->image();
     bool shouldPaintBackgroundImage = bgImage && bgImage->canRender(this, style()->effectiveZoom());
-    
+
     bool forceBackgroundToWhite = false;
     if (document()->printing()) {
         if (style()->printColorAdjust() == PrintColorAdjustEconomy)
@@ -607,7 +607,7 @@
 
         clipRoundedInnerRect(context, rect, border);
     }
-    
+
     int bLeft = includeLeftEdge ? borderLeft() : 0;
     int bRight = includeRightEdge ? borderRight() : 0;
     LayoutUnit pLeft = includeLeftEdge ? paddingLeft() : LayoutUnit();
@@ -619,14 +619,14 @@
         // Clip to the overflow area.
         RenderBox* thisBox = toRenderBox(this);
         context->clip(thisBox->overflowClipRect(rect.location(), paintInfo.renderRegion));
-        
+
         // Adjust the paint rect to reflect a scrolled content box with borders at the ends.
         IntSize offset = thisBox->scrolledContentOffset();
         scrolledPaintRect.move(-offset);
         scrolledPaintRect.setWidth(bLeft + layer()->scrollWidth() + bRight);
         scrolledPaintRect.setHeight(borderTop() + layer()->scrollHeight() + borderBottom());
     }
-    
+
     GraphicsContextStateSaver backgroundClipStateSaver(*context, false);
     IntRect maskRect;
 
@@ -833,8 +833,8 @@
     image->computeIntrinsicDimensions(this, intrinsicWidth, intrinsicHeight, intrinsicRatio);
 
     // Intrinsic dimensions expressed as percentages must be resolved relative to the dimensions of the rectangle
-    // that establishes the coordinate system for the 'background-position' property. 
-    
+    // that establishes the coordinate system for the 'background-position' property.
+
     // FIXME: Remove unnecessary rounding when layout is off ints: webkit.org/b/63656
     if (intrinsicWidth.isPercent() && intrinsicHeight.isPercent() && intrinsicRatio.isEmpty()) {
         // Resolve width/height percentages against positioningAreaSize, only if no intrinsic ratio is provided.
@@ -895,7 +895,7 @@
                 tileSize.setWidth(layerWidth.value());
             else if (layerWidth.isPercent() || layerWidth.isViewportPercentage())
                 tileSize.setWidth(valueForLength(layerWidth, positioningAreaSize.width(), renderView));
-            
+
             if (layerHeight.isFixed())
                 tileSize.setHeight(layerHeight.value());
             else if (layerHeight.isPercent() || layerHeight.isViewportPercentage())
@@ -915,7 +915,7 @@
                 // If both width and height are auto, use the image's intrinsic size.
                 tileSize = imageIntrinsicSize;
             }
-            
+
             tileSize.clampNegativeToZero();
             return flooredIntSize(tileSize);
         }
@@ -1044,7 +1044,7 @@
             viewportRect.setLocation(IntPoint());
         else if (FrameView* frameView = view()->frameView())
             viewportRect.setLocation(IntPoint(frameView->scrollOffsetForFixedPosition()));
-        
+
         geometry.setDestRect(pixelSnappedIntRect(viewportRect));
         positioningAreaSize = geometry.destRect().size();
     }
@@ -1270,7 +1270,7 @@
         if (style == DOUBLE && edgeWidth < 3)
             style = SOLID;
     }
-    
+
     BorderEdge()
         : width(0)
         , style(BHIDDEN)
@@ -1278,7 +1278,7 @@
         , isPresent(false)
     {
     }
-    
+
     bool hasVisibleColorAndStyle() const { return style > BHIDDEN && !isTransparent; }
     bool shouldRender() const { return isPresent && width && hasVisibleColorAndStyle(); }
     bool presentButInvisible() const { return usedWidth() && !hasVisibleColorAndStyle(); }
@@ -1307,7 +1307,7 @@
     }
 
     int usedWidth() const { return isPresent ? width : 0; }
-    
+
     void getDoubleBorderStripeWidths(int& outerWidth, int& innerWidth) const
     {
         int fullWidth = usedWidth();
@@ -1321,7 +1321,7 @@
         if (fullWidth % 3 == 1)
             innerWidth += 1;
     }
-    
+
     int width;
     Color color;
     EBorderStyle style;
@@ -1468,7 +1468,7 @@
 
         if (!edgesShareColor(edges[side], edges[adjacentSide]) && edges[adjacentSide].color.hasAlpha())
             return false;
-        
+
         if (!borderStyleFillsBorderArea(edges[adjacentSide].style))
             return false;
 
@@ -1509,7 +1509,7 @@
 
     if (borderStylesRequireMitre(side, adjacentSide, edges[side].style, edges[adjacentSide].style))
         return true;
-    
+
     return false;
 }
 
@@ -1524,7 +1524,7 @@
 
     bool mitreAdjacentSide1 = joinRequiresMitre(side, adjacentSide1, edges, !antialias);
     bool mitreAdjacentSide2 = joinRequiresMitre(side, adjacentSide2, edges, !antialias);
-    
+
     bool adjacentSide1StylesMatch = colorsMatchAtCorner(side, adjacentSide1, edges);
     bool adjacentSide2StylesMatch = colorsMatchAtCorner(side, adjacentSide2, edges);
 
@@ -1544,7 +1544,7 @@
         bool clipAdjacentSide1 = colorNeedsAntiAliasAtCorner(side, adjacentSide1, edges) && mitreAdjacentSide1;
         bool clipAdjacentSide2 = colorNeedsAntiAliasAtCorner(side, adjacentSide2, edges) && mitreAdjacentSide2;
         bool shouldClip = clipForStyle || clipAdjacentSide1 || clipAdjacentSide2;
-        
+
         GraphicsContextStateSaver clipStateSaver(*graphicsContext, shouldClip);
         if (shouldClip) {
             bool aliasAdjacentSide1 = clipAdjacentSide1 || (clipForStyle && mitreAdjacentSide1);
@@ -1554,7 +1554,7 @@
             mitreAdjacentSide1 = false;
             mitreAdjacentSide2 = false;
         }
-        
+
         drawLineForBoxSide(graphicsContext, sideRect.x(), sideRect.y(), sideRect.maxX(), sideRect.maxY(), side, colorToPaint, edgeToRender.style,
                 mitreAdjacentSide1 ? adjacentEdge1.width : 0, mitreAdjacentSide2 ? adjacentEdge2.width : 0, antialias);
     }
@@ -1586,7 +1586,7 @@
     Path roundedPath;
     if (renderRadii)
         roundedPath.addRoundedRect(outerBorder);
-    
+
     // The inner border adjustment for bleed avoidance mode BackgroundBleedBackgroundOverBorder
     // is only applied to sideRect, which is okay since BackgroundBleedBackgroundOverBorder
     // is only to be used for solid borders and the shape of the border painted by drawBoxSideFromPath
@@ -1635,7 +1635,7 @@
     while (edgesToDraw) {
         // Find undrawn edges sharing a color.
         Color commonColor;
-        
+
         BorderEdgeFlags commonColorEdgeSet = 0;
         for (size_t i = 0; i < sizeof(paintOrder) / sizeof(paintOrder[0]); ++i) {
             BoxSide currSide = paintOrder[i];
@@ -1660,10 +1660,10 @@
         }
 
         paintBorderSides(graphicsContext, style, outerBorder, innerBorder, innerBorderAdjustment, edges, commonColorEdgeSet, bleedAvoidance, includeLogicalLeftEdge, includeLogicalRightEdge, antialias, &commonColor);
-            
+
         if (useTransparencyLayer)
             graphicsContext->endTransparencyLayer();
-        
+
         edgesToDraw &= ~commonColorEdgeSet;
     }
 }
@@ -1703,7 +1703,7 @@
             allEdgesShareColor = false;
             continue;
         }
-        
+
         if (!currEdge.width) {
             --numEdgesVisible;
             continue;
@@ -1716,7 +1716,7 @@
 
         if (currEdge.color.hasAlpha())
             haveAlphaColor = true;
-        
+
         if (currEdge.style != SOLID)
             haveAllSolidEdges = false;
 
@@ -1735,7 +1735,7 @@
         if (numEdgesVisible == 4 && (outerBorder.isRounded() || haveAlphaColor)
             && (haveAllSolidEdges || (!outerBorder.isRounded() && !innerBorder.isRounded()))) {
             Path path;
-            
+
             if (outerBorder.isRounded() && bleedAvoidance != BackgroundBleedUseTransparencyLayer)
                 path.addRoundedRect(outerBorder);
             else
@@ -1789,7 +1789,7 @@
             graphicsContext->setFillColor(edges[firstVisibleEdge].color);
             graphicsContext->fillPath(path);
             return;
-        } 
+        }
         // Avoid creating transparent layers
         if (haveAllSolidEdges && numEdgesVisible != 4 && !outerBorder.isRounded() && haveAlphaColor) {
             Path path;
@@ -1849,8 +1849,8 @@
     case DASHED: {
         graphicsContext->setStrokeColor(color);
 
-        // The stroke is doubled here because the provided path is the 
-        // outside edge of the border so half the stroke is clipped off. 
+        // The stroke is doubled here because the provided path is the
+        // outside edge of the border so half the stroke is clipped off.
         // The extra multiplier is so that the clipping mask can antialias
         // the edges to prevent jaggies.
         graphicsContext->setStrokeThickness(drawThickness * 2 * 1.1f);
@@ -1879,7 +1879,7 @@
             lineDash.append(gapLength);
             graphicsContext->setLineDash(lineDash, dashLength);
         }
-        
+
         // FIXME: stroking the border path causes issues with tight corners:
         // https://bugs.webkit.org/show_bug.cgi?id=58711
         // Also, to get the best appearance we should stroke a path between the two borders.
@@ -1910,7 +1910,7 @@
             RoundedRect innerClip = style->getRoundedInnerBorderFor(borderRect,
                 innerBorderTopWidth, innerBorderBottomWidth, innerBorderLeftWidth, innerBorderRightWidth,
                 includeLogicalLeftEdge, includeLogicalRightEdge);
-            
+
             graphicsContext->clipRoundedRect(innerClip);
             drawBoxSideFromPath(graphicsContext, borderRect, borderPath, edges, thickness, drawThickness, side, style, color, SOLID, bleedAvoidance, includeLogicalLeftEdge, includeLogicalRightEdge);
         }
@@ -1926,7 +1926,7 @@
                 ++outerBorderLeftWidth;
                 ++outerBorderRightWidth;
             }
-                
+
             RoundedRect outerClip = style->getRoundedInnerBorderFor(outerRect,
                 outerBorderTopWidth, outerBorderBottomWidth, outerBorderLeftWidth, outerBorderRightWidth,
                 includeLogicalLeftEdge, includeLogicalRightEdge);
@@ -1947,7 +1947,7 @@
             s1 = OUTSET;
             s2 = INSET;
         }
-        
+
         // Paint full border
         drawBoxSideFromPath(graphicsContext, borderRect, borderPath, edges, thickness, drawThickness, side, style, color, s1, bleedAvoidance, includeLogicalLeftEdge, includeLogicalRightEdge);
 
@@ -1999,12 +1999,12 @@
     //         0----------------3
     //       0  \              /  0
     //       |\  1----------- 2  /|
-    //       | 1                1 |   
+    //       | 1                1 |
     //       | |                | |
-    //       | |                | |  
-    //       | 2                2 |  
-    //       |/  1------------2  \| 
-    //       3  /              \  3   
+    //       | |                | |
+    //       | 2                2 |
+    //       |/  1------------2  \|
+    //       3  /              \  3
     //         0----------------3
     //
     switch (side) {
@@ -2400,12 +2400,12 @@
 static inline IntRect areaCastingShadowInHole(const IntRect& holeRect, int shadowBlur, int shadowSpread, const IntSize& shadowOffset)
 {
     IntRect bounds(holeRect);
-    
+
     bounds.inflate(shadowBlur);
 
     if (shadowSpread < 0)
         bounds.inflate(-shadowSpread);
-    
+
     IntRect offsetBounds = bounds;
     offsetBounds.move(-shadowOffset);
     return unionRect(bounds, offsetBounds);
@@ -2423,7 +2423,7 @@
 
     bool hasBorderRadius = s->hasBorderRadius();
     bool isHorizontal = s->isHorizontalWritingMode();
-    
+
     bool hasOpaqueBackground = s->visitedDependentColor(CSSPropertyBackgroundColor).isValid() && s->visitedDependentColor(CSSPropertyBackgroundColor).alpha() == 255;
     for (const ShadowData* shadow = s->boxShadow(); shadow; shadow = shadow->next()) {
         if (shadow->style() != shadowStyle)
@@ -2432,10 +2432,10 @@
         IntSize shadowOffset(shadow->x(), shadow->y());
         int shadowBlur = shadow->blur();
         int shadowSpread = shadow->spread();
-        
+
         if (shadowOffset.isZero() && !shadowBlur && !shadowSpread)
             continue;
-        
+
         const Color& shadowColor = resolveColor(shadow->color(), Color::stdShadowColor);
 
         if (shadow->style() == Normal) {
@@ -2748,7 +2748,7 @@
     if (fullRemoveInsert && isRenderBlock()) {
         RenderBlock* block = toRenderBlock(this);
         block->removePositionedObjects(0);
-        block->removeFloatingObjects(); 
+        block->removeFloatingObjects();
     }
 
     ASSERT(!beforeChild || toBoxModelObject == beforeChild->parent());
diff --git a/Source/core/rendering/RenderBoxModelObject.h b/Source/core/rendering/RenderBoxModelObject.h
index 21b6ab9..694d092 100644
--- a/Source/core/rendering/RenderBoxModelObject.h
+++ b/Source/core/rendering/RenderBoxModelObject.h
@@ -61,7 +61,7 @@
 public:
     RenderBoxModelObject(ContainerNode*);
     virtual ~RenderBoxModelObject();
-    
+
     LayoutSize relativePositionOffset() const;
     LayoutSize relativePositionLogicalOffset() const { return style()->isHorizontalWritingMode() ? relativePositionOffset() : relativePositionOffset().transposedSize(); }
 
@@ -133,7 +133,7 @@
 
     LayoutUnit paddingLogicalLeft() const { return style()->isHorizontalWritingMode() ? paddingLeft() : paddingTop(); }
     LayoutUnit paddingLogicalRight() const { return style()->isHorizontalWritingMode() ? paddingRight() : paddingBottom(); }
-    
+
     virtual LayoutUnit marginTop() const = 0;
     virtual LayoutUnit marginBottom() const = 0;
     virtual LayoutUnit marginLeft() const = 0;
@@ -199,7 +199,7 @@
         {
             m_destOrigin = destOrigin;
         }
-        
+
         IntRect destRect() const { return m_destRect; }
         void setDestRect(const IntRect& destRect)
         {
@@ -208,27 +208,27 @@
 
         // Returns the phase relative to the destination rectangle.
         IntPoint relativePhase() const;
-        
-        IntPoint phase() const { return m_phase; }   
+
+        IntPoint phase() const { return m_phase; }
         void setPhase(const IntPoint& phase)
         {
             m_phase = phase;
         }
 
-        IntSize tileSize() const { return m_tileSize; }    
+        IntSize tileSize() const { return m_tileSize; }
         void setTileSize(const IntSize& tileSize)
         {
             m_tileSize = tileSize;
         }
-        
+
         void setPhaseX(int x) { m_phase.setX(x); }
         void setPhaseY(int y) { m_phase.setY(y); }
-        
+
         void setNoRepeatX(int xOffset);
         void setNoRepeatY(int yOffset);
-        
+
         void useFixedAttachment(const IntPoint& attachmentPoint);
-        
+
         void clip(const IntRect&);
     private:
         IntRect m_destRect;
@@ -291,7 +291,7 @@
 private:
     LayoutUnit computedCSSPadding(Length) const;
     virtual bool isBoxModelObject() const OVERRIDE FINAL { return true; }
-    
+
     virtual LayoutRect frameRectForStickyPositioning() const = 0;
 
     IntSize calculateFillTileSize(const FillLayer*, const IntSize& scaledPositioningAreaSize) const;
@@ -301,7 +301,7 @@
 
     RoundedRect getBackgroundRoundedRect(const LayoutRect&, InlineFlowBox*, LayoutUnit inlineBoxWidth, LayoutUnit inlineBoxHeight,
         bool includeLogicalLeftEdge, bool includeLogicalRightEdge) const;
-    
+
     bool fixedBackgroundPaintsInLocalCoordinates() const;
 
     void clipBorderSidePolygon(GraphicsContext*, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
@@ -316,18 +316,18 @@
         const IntPoint& innerBorderAdjustment, const class BorderEdge[], BorderEdgeFlags, BackgroundBleedAvoidance,
         bool includeLogicalLeftEdge, bool includeLogicalRightEdge, bool antialias = false, const Color* overrideColor = 0);
     void drawBoxSideFromPath(GraphicsContext*, const LayoutRect&, const Path&, const class BorderEdge[],
-                            float thickness, float drawThickness, BoxSide, const RenderStyle*, 
+                            float thickness, float drawThickness, BoxSide, const RenderStyle*,
                             Color, EBorderStyle, BackgroundBleedAvoidance, bool includeLogicalLeftEdge, bool includeLogicalRightEdge);
 };
 
 inline RenderBoxModelObject* toRenderBoxModelObject(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isBoxModelObject());
     return static_cast<RenderBoxModelObject*>(object);
 }
 
 inline const RenderBoxModelObject* toRenderBoxModelObject(const RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isBoxModelObject());
     return static_cast<const RenderBoxModelObject*>(object);
 }
diff --git a/Source/core/rendering/RenderBoxRegionInfo.h b/Source/core/rendering/RenderBoxRegionInfo.h
index 402b53d..2abfa09 100644
--- a/Source/core/rendering/RenderBoxRegionInfo.h
+++ b/Source/core/rendering/RenderBoxRegionInfo.h
@@ -28,7 +28,7 @@
 #define RenderBoxRegionInfo_h
 
 #include "core/platform/LayoutUnit.h"
-#include <wtf/FastAllocBase.h>
+#include "wtf/FastAllocBase.h"
 
 namespace WebCore {
 
@@ -43,7 +43,7 @@
 
     LayoutUnit logicalLeft() const { return m_logicalLeft; }
     LayoutUnit logicalWidth() const { return m_logicalWidth; }
-    
+
     void shiftLogicalLeft(LayoutUnit delta) { m_logicalLeft += delta; m_isShifted = true; }
 
     bool isShifted() const { return m_isShifted; }
diff --git a/Source/core/rendering/RenderButton.cpp b/Source/core/rendering/RenderButton.cpp
index b596c54..9b84765 100644
--- a/Source/core/rendering/RenderButton.cpp
+++ b/Source/core/rendering/RenderButton.cpp
@@ -47,7 +47,7 @@
         setupInnerStyle(m_inner->style());
         RenderFlexibleBox::addChild(m_inner);
     }
-    
+
     m_inner->addChild(newChild, beforeChild);
 }
 
@@ -87,7 +87,7 @@
         setupInnerStyle(m_inner->style());
 }
 
-void RenderButton::setupInnerStyle(RenderStyle* innerStyle) 
+void RenderButton::setupInnerStyle(RenderStyle* innerStyle)
 {
     ASSERT(innerStyle->refCount() == 1);
     // RenderBlock::createAnonymousBlock creates a new RenderStyle, so this is
diff --git a/Source/core/rendering/RenderButton.h b/Source/core/rendering/RenderButton.h
index cca80bb..395743d 100644
--- a/Source/core/rendering/RenderButton.h
+++ b/Source/core/rendering/RenderButton.h
@@ -69,13 +69,13 @@
 };
 
 inline RenderButton* toRenderButton(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isRenderButton());
     return static_cast<RenderButton*>(object);
 }
 
 inline const RenderButton* toRenderButton(const RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isRenderButton());
     return static_cast<const RenderButton*>(object);
 }
diff --git a/Source/core/rendering/RenderCombineText.h b/Source/core/rendering/RenderCombineText.h
index 1850708..cddaab1 100644
--- a/Source/core/rendering/RenderCombineText.h
+++ b/Source/core/rendering/RenderCombineText.h
@@ -50,13 +50,13 @@
 };
 
 inline RenderCombineText* toRenderCombineText(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isCombineText());
     return static_cast<RenderCombineText*>(object);
 }
 
 inline const RenderCombineText* toRenderCombineText(const RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isCombineText());
     return static_cast<const RenderCombineText*>(object);
 }
diff --git a/Source/core/rendering/RenderCounter.cpp b/Source/core/rendering/RenderCounter.cpp
index b1c13db..5da28ef 100644
--- a/Source/core/rendering/RenderCounter.cpp
+++ b/Source/core/rendering/RenderCounter.cpp
@@ -32,7 +32,7 @@
 #include "core/rendering/RenderListMarker.h"
 #include "core/rendering/RenderView.h"
 #include "core/rendering/style/RenderStyle.h"
-#include <wtf/StdLibExtras.h>
+#include "wtf/StdLibExtras.h"
 
 #ifndef NDEBUG
 #include <stdio.h>
@@ -163,7 +163,7 @@
     return false;
 }
 
-// - Finds the insertion point for the counter described by counterOwner, isReset and 
+// - Finds the insertion point for the counter described by counterOwner, isReset and
 // identifier in the CounterNode tree for identifier and sets parent and
 // previousSibling accordingly.
 // - The function returns true if the counter whose insertion point is searched is NOT
@@ -174,7 +174,7 @@
 // children or subsequent siblings of the renderer that owns the root of the tree
 // form the rest of of the nodes of the tree.
 // - The root of the tree is always a reset type reference.
-// - A subtree rooted at any reset node in the tree is equivalent to all counter 
+// - A subtree rooted at any reset node in the tree is equivalent to all counter
 // references that are in the scope of the counter or nested counter defined by that
 // reset node.
 // - Non-reset CounterNodes cannot have descendants.
@@ -231,9 +231,9 @@
                         previousSibling = previousSiblingProtector.get();
                         return true;
                     }
-                } else { 
+                } else {
                     // We are at the potential end of the search, but we had no previous sibling candidate
-                    // In this case we follow pretty much the same logic as above but no ASSERTs about 
+                    // In this case we follow pretty much the same logic as above but no ASSERTs about
                     // previousSibling, and when we are a sibling of the end counter we must set previousSibling
                     // to currentCounter.
                     if (currentCounter->actsAsReset()) {
@@ -265,7 +265,7 @@
             if (currentCounter) {
                 // We found a suitable counter.
                 if (previousSiblingProtector) {
-                    // Since we had a suitable previous counter before, we should only consider this one as our 
+                    // Since we had a suitable previous counter before, we should only consider this one as our
                     // previousSibling if it is a reset counter and hence the current previousSibling is its child.
                     if (currentCounter->actsAsReset()) {
                         previousSiblingProtector = currentCounter;
@@ -281,7 +281,7 @@
             }
         }
         // This function is designed so that the same test is not done twice in an iteration, except for this one
-        // which may be done twice in some cases. Rearranging the decision points though, to accommodate this 
+        // which may be done twice in some cases. Rearranging the decision points though, to accommodate this
         // performance improvement would create more code duplication than is worthwhile in my oppinion and may further
         // impede the readability of this already complex algorithm.
         if (previousSiblingProtector)
@@ -488,7 +488,7 @@
     // a style change for the renderer involving removal of all counter
     // directives must occur, in which case, RenderCounter::destroyCounterNodes()
     // must be called.
-    // The destruction of the Renderer (possibly caused by the removal of its 
+    // The destruction of the Renderer (possibly caused by the removal of its
     // associated DOM node) is the other case that leads to the permanent
     // destruction of all counters attached to a Renderer. In this case
     // RenderCounter::destroyCounterNodes() must be and is now called, too.
@@ -534,7 +534,7 @@
         }
         RefPtr<CounterNode> newParent = 0;
         RefPtr<CounterNode> newPreviousSibling = 0;
-        
+
         findPlaceForCounter(renderer, it->key, node->hasResetType(), newParent, newPreviousSibling);
         if (node != counterMap->get(it->key))
             continue;
diff --git a/Source/core/rendering/RenderCounter.h b/Source/core/rendering/RenderCounter.h
index 654af70..ee7943f 100644
--- a/Source/core/rendering/RenderCounter.h
+++ b/Source/core/rendering/RenderCounter.h
@@ -49,7 +49,7 @@
     virtual const char* renderName() const;
     virtual bool isCounter() const;
     virtual PassRefPtr<StringImpl> originalText() const;
-    
+
     virtual void computePreferredLogicalWidths(float leadWidth) OVERRIDE;
 
     // Removes the reference to the CounterNode associated with this renderer.
diff --git a/Source/core/rendering/RenderDeprecatedFlexibleBox.cpp b/Source/core/rendering/RenderDeprecatedFlexibleBox.cpp
index ef55739..ded6ea3 100644
--- a/Source/core/rendering/RenderDeprecatedFlexibleBox.cpp
+++ b/Source/core/rendering/RenderDeprecatedFlexibleBox.cpp
@@ -30,8 +30,8 @@
 #include "core/rendering/LayoutRepainter.h"
 #include "core/rendering/RenderLayer.h"
 #include "core/rendering/RenderView.h"
-#include <wtf/StdLibExtras.h>
-#include <wtf/unicode/CharacterNames.h>
+#include "wtf/StdLibExtras.h"
+#include "wtf/unicode/CharacterNames.h"
 
 using namespace std;
 
@@ -454,7 +454,7 @@
                 }
                 continue;
             }
-            
+
             if (child->style()->visibility() == COLLAPSE) {
                 // visibility: collapsed children do not participate in our positioning.
                 // But we need to lay them down.
@@ -695,7 +695,7 @@
                 }
                 continue;
             }
-            
+
             if (child->style()->visibility() == COLLAPSE) {
                 // visibility: collapsed children do not participate in our positioning.
                 // But we need to lay them down.
diff --git a/Source/core/rendering/RenderEmbeddedObject.cpp b/Source/core/rendering/RenderEmbeddedObject.cpp
index d70f061..b3d6e27 100644
--- a/Source/core/rendering/RenderEmbeddedObject.cpp
+++ b/Source/core/rendering/RenderEmbeddedObject.cpp
@@ -44,7 +44,7 @@
 namespace WebCore {
 
 using namespace HTMLNames;
-    
+
 static const float replacementTextRoundedRectHeight = 18;
 static const float replacementTextRoundedRectLeftRightTextMargin = 6;
 static const float replacementTextRoundedRectOpacity = 0.20f;
@@ -56,7 +56,7 @@
     static const Color lightGray(205, 205, 205);
     return lightGray;
 }
-    
+
 RenderEmbeddedObject::RenderEmbeddedObject(Element* element)
     : RenderPart(element)
     , m_hasFallbackContent(false)
@@ -75,7 +75,7 @@
 {
     if (RenderPart::requiresLayer())
         return true;
-    
+
     return allowsAcceleratedCompositing();
 }
 
@@ -146,11 +146,11 @@
 
     if (paintInfo.phase == PaintPhaseSelection)
         return;
-    
+
     GraphicsContext* context = paintInfo.context;
     if (context->paintingDisabled())
         return;
-    
+
     FloatRect contentRect;
     Path path;
     FloatRect replacementTextRect;
@@ -159,7 +159,7 @@
     float textWidth;
     if (!getReplacementTextGeometry(paintOffset, contentRect, path, replacementTextRect, font, run, textWidth))
         return;
-    
+
     GraphicsContextStateSaver stateSaver(*context);
     context->clip(contentRect);
     context->setAlpha(replacementTextRoundedRectOpacity);
@@ -180,7 +180,7 @@
 {
     contentRect = contentBoxRect();
     contentRect.moveBy(roundedIntPoint(accumulatedOffset));
-    
+
     FontDescription fontDescription;
     RenderTheme::defaultTheme()->systemFont(CSSValueWebkitSmallControl, fontDescription);
     fontDescription.setWeight(FontWeightBold);
@@ -194,12 +194,12 @@
 
     run = TextRun(m_unavailablePluginReplacementText);
     textWidth = font.width(run);
-    
+
     replacementTextRect.setSize(FloatSize(textWidth + replacementTextRoundedRectLeftRightTextMargin * 2, replacementTextRoundedRectHeight));
     float x = (contentRect.size().width() / 2 - replacementTextRect.size().width() / 2) + contentRect.location().x();
     float y = (contentRect.size().height() / 2 - replacementTextRect.size().height() / 2) + contentRect.location().y();
     replacementTextRect.setLocation(FloatPoint(x, y));
-    
+
     path.addRoundedRect(replacementTextRect, FloatSize(replacementTextRoundedRectRadius, replacementTextRoundedRectRadius));
 
     return true;
@@ -240,23 +240,23 @@
 
     if (!childBox)
         return;
-    
+
     LayoutSize newSize = contentBoxRect().size();
     if (newSize == oldSize && !childBox->needsLayout())
         return;
-    
+
     // When calling layout() on a child node, a parent must either push a LayoutStateMaintainter, or
     // instantiate LayoutStateDisabler. Since using a LayoutStateMaintainer is slightly more efficient,
     // and this method will be called many times per second during playback, use a LayoutStateMaintainer:
     LayoutStateMaintainer statePusher(view(), this, locationOffset(), hasTransform() || hasReflection() || style()->isFlippedBlocksWritingMode());
-    
+
     childBox->setLocation(LayoutPoint(borderLeft(), borderTop()) + LayoutSize(paddingLeft(), paddingTop()));
     childBox->style()->setHeight(Length(newSize.height(), Fixed));
     childBox->style()->setWidth(Length(newSize.width(), Fixed));
     childBox->setNeedsLayout(true, MarkOnlyThis);
     childBox->layout();
     setChildNeedsLayout(false);
-    
+
     statePusher.pop();
 }
 
diff --git a/Source/core/rendering/RenderEmbeddedObject.h b/Source/core/rendering/RenderEmbeddedObject.h
index fb273f5..cc49411 100644
--- a/Source/core/rendering/RenderEmbeddedObject.h
+++ b/Source/core/rendering/RenderEmbeddedObject.h
@@ -79,7 +79,7 @@
     virtual bool canHaveChildren() const OVERRIDE FINAL;
     virtual RenderObjectChildList* virtualChildren() OVERRIDE FINAL { return children(); }
     virtual const RenderObjectChildList* virtualChildren() const OVERRIDE FINAL { return children(); }
-    
+
     bool m_hasFallbackContent; // FIXME: This belongs on HTMLObjectElement.
 
     bool m_showsUnavailablePluginIndicator;
diff --git a/Source/core/rendering/RenderFieldset.cpp b/Source/core/rendering/RenderFieldset.cpp
index 7c01b0e..291c686 100644
--- a/Source/core/rendering/RenderFieldset.cpp
+++ b/Source/core/rendering/RenderFieldset.cpp
@@ -128,7 +128,7 @@
     for (RenderObject* legend = firstChild(); legend; legend = legend->nextSibling()) {
         if (option == IgnoreFloatingOrOutOfFlow && legend->isFloatingOrOutOfFlowPositioned())
             continue;
-        
+
         if (legend->node() && (legend->node()->hasTagName(legendTag)))
             return toRenderBox(legend);
     }
@@ -165,7 +165,7 @@
 
     if (!style()->hasBorder())
         return;
-    
+
     // Create a clipping region around the legend and paint the border as normal
     GraphicsContext* graphicsContext = paintInfo.context;
     GraphicsContextStateSaver stateSaver(*graphicsContext);
diff --git a/Source/core/rendering/RenderFileUploadControl.cpp b/Source/core/rendering/RenderFileUploadControl.cpp
index b956709..7228e4b 100644
--- a/Source/core/rendering/RenderFileUploadControl.cpp
+++ b/Source/core/rendering/RenderFileUploadControl.cpp
@@ -96,7 +96,7 @@
 {
     if (style()->visibility() != VISIBLE)
         return;
-    
+
     // Push a clip.
     GraphicsContextStateSaver stateSaver(*paintInfo.context, false);
     if (paintInfo.phase == PaintPhaseForeground || paintInfo.phase == PaintPhaseChildBlockBackgrounds) {
@@ -223,7 +223,7 @@
 {
     if (HTMLInputElement* button = uploadButton())
         return button->value();
-    
+
     return String();
 }
 
@@ -233,5 +233,5 @@
     ASSERT(input->files());
     return theme()->fileListNameForWidth(input->files(), style()->font(), maxFilenameWidth(), input->multiple());
 }
-    
+
 } // namespace WebCore
diff --git a/Source/core/rendering/RenderFileUploadControl.h b/Source/core/rendering/RenderFileUploadControl.h
index eb19aa7..acfa504 100644
--- a/Source/core/rendering/RenderFileUploadControl.h
+++ b/Source/core/rendering/RenderFileUploadControl.h
@@ -40,7 +40,7 @@
 
     String buttonValue();
     String fileTextValue() const;
-    
+
 private:
     virtual const char* renderName() const { return "RenderFileUploadControl"; }
 
@@ -53,7 +53,7 @@
     virtual bool requiresForcedStyleRecalcPropagation() const { return true; }
 
     int maxFilenameWidth() const;
-    
+
     virtual VisiblePosition positionForPoint(const LayoutPoint&);
 
     HTMLInputElement* uploadButton() const;
diff --git a/Source/core/rendering/RenderFlexibleBox.cpp b/Source/core/rendering/RenderFlexibleBox.cpp
index b544fd1..b91e99d 100644
--- a/Source/core/rendering/RenderFlexibleBox.cpp
+++ b/Source/core/rendering/RenderFlexibleBox.cpp
@@ -35,7 +35,7 @@
 #include "core/rendering/LayoutRepainter.h"
 #include "core/rendering/RenderLayer.h"
 #include "core/rendering/RenderView.h"
-#include <wtf/MathExtras.h>
+#include "wtf/MathExtras.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/RenderFlowThread.cpp b/Source/core/rendering/RenderFlowThread.cpp
index 9abce2f..45d89f4 100644
--- a/Source/core/rendering/RenderFlowThread.cpp
+++ b/Source/core/rendering/RenderFlowThread.cpp
@@ -12,7 +12,7 @@
  *    copyright notice, this list of conditions and the following
  *    disclaimer in the documentation and/or other materials
  *    provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
@@ -75,7 +75,7 @@
     newStyle->setWidth(Length(100, Percent));
     newStyle->setHeight(Length(100, Percent));
     newStyle->font().update(0);
-    
+
     return newStyle.release();
 }
 
@@ -154,7 +154,7 @@
             LayoutUnit previousRegionLogicalWidth = 0;
             LayoutUnit previousRegionLogicalHeight = 0;
             bool firstRegionVisited = false;
-            
+
             for (RenderRegionList::iterator iter = m_regionList.begin(); iter != m_regionList.end(); ++iter) {
                 RenderRegion* region = *iter;
                 ASSERT(!region->needsLayout() || region->isRenderRegionSet());
@@ -304,7 +304,7 @@
 
         context->translate(adjustedPaintOffset.x(), adjustedPaintOffset.y());
         info.rect.moveBy(-adjustedPaintOffset);
-        
+
         layer()->paint(context, info.rect, 0, 0, region, RenderLayer::PaintLayerTemporaryClipRects);
 
         context->restore();
@@ -364,7 +364,7 @@
     // We can't use currentFlowThread as it is possible to have interleaved flow threads and the wrong one could be used.
     // Let each region figure out the proper enclosing flow thread.
     CurrentRenderFlowThreadDisabler disabler(view());
-    
+
     for (RenderRegionList::const_iterator iter = m_regionList.begin(); iter != m_regionList.end(); ++iter) {
         RenderRegion* region = *iter;
 
@@ -787,7 +787,7 @@
     if (!objectABBRect.width())
         objectABBRect.setWidth(1);
     if (!objectABBRect.height())
-        objectABBRect.setHeight(1); 
+        objectABBRect.setHeight(1);
     if (objectABBRect.intersects(region->absoluteBoundingBoxRect(true)))
         return true;
 
@@ -980,7 +980,7 @@
 void RenderFlowThread::collectLayerFragments(LayerFragments& layerFragments, const LayoutRect& layerBoundingBox, const LayoutRect& dirtyRect)
 {
     ASSERT(!m_regionsInvalidated);
-    
+
     for (RenderRegionList::const_iterator iter = m_regionList.begin(); iter != m_regionList.end(); ++iter) {
         RenderRegion* region = *iter;
         region->collectLayerFragments(layerFragments, layerBoundingBox, dirtyRect);
@@ -990,7 +990,7 @@
 LayoutRect RenderFlowThread::fragmentsBoundingBox(const LayoutRect& layerBoundingBox)
 {
     ASSERT(!m_regionsInvalidated);
-    
+
     LayoutRect result;
     for (RenderRegionList::const_iterator iter = m_regionList.begin(); iter != m_regionList.end(); ++iter) {
         RenderRegion* region = *iter;
@@ -1004,7 +1004,7 @@
             result.unite(fragmentRect);
         }
     }
-    
+
     return result;
 }
 
diff --git a/Source/core/rendering/RenderFlowThread.h b/Source/core/rendering/RenderFlowThread.h
index 4ed0c66..27ea3ac 100644
--- a/Source/core/rendering/RenderFlowThread.h
+++ b/Source/core/rendering/RenderFlowThread.h
@@ -12,7 +12,7 @@
  *    copyright notice, this list of conditions and the following
  *    disclaimer in the documentation and/or other materials
  *    provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
@@ -49,7 +49,7 @@
 
 // RenderFlowThread is used to collect all the render objects that participate in a
 // flow thread. It will also help in doing the layout. However, it will not render
-// directly to screen. Instead, RenderRegion objects will redirect their paint 
+// directly to screen. Instead, RenderRegion objects will redirect their paint
 // and nodeAtPoint methods to this object. Each RenderRegion will actually be a viewPort
 // of the RenderFlowThread.
 
@@ -57,17 +57,17 @@
 public:
     RenderFlowThread();
     virtual ~RenderFlowThread() { };
-    
+
     virtual bool isRenderFlowThread() const OVERRIDE FINAL { return true; }
 
     virtual void layout() OVERRIDE FINAL;
 
-    // Always create a RenderLayer for the RenderFlowThread so that we 
+    // Always create a RenderLayer for the RenderFlowThread so that we
     // can easily avoid drawing the children directly.
     virtual bool requiresLayer() const OVERRIDE FINAL { return true; }
 
     virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction) OVERRIDE;
-    
+
     void removeFlowChildInfo(RenderObject*);
 #ifndef NDEBUG
     bool hasChildInfo(RenderObject* child) const { return child && child->isBox() && m_regionRangeMap.contains(toRenderBox(child)); }
@@ -125,7 +125,7 @@
     LayoutUnit contentLogicalWidthOfFirstRegion() const;
     LayoutUnit contentLogicalHeightOfFirstRegion() const;
     LayoutUnit contentLogicalLeftOfFirstRegion() const;
-    
+
     RenderRegion* firstRegion() const;
     RenderRegion* lastRegion() const;
 
@@ -186,7 +186,7 @@
 
     void setDispatchRegionOversetChangeEvent(bool value) { m_dispatchRegionOversetChangeEvent = value; }
     bool shouldDispatchRegionOversetChangeEvent() const { return m_dispatchRegionOversetChangeEvent; }
-    
+
     // Override if the flow thread implementation supports dispatching events when the flow layout is updated (e.g. for named flows)
     virtual void dispatchRegionLayoutUpdateEvent() { m_dispatchRegionLayoutUpdateEvent = false; }
     virtual void dispatchRegionOversetChangeEvent() { m_dispatchRegionOversetChangeEvent = false; }
@@ -209,7 +209,7 @@
         {
             setRange(start, end);
         }
-        
+
         void setRange(RenderRegion* start, RenderRegion* end)
         {
             m_startRegion = start;
diff --git a/Source/core/rendering/RenderFrameSet.cpp b/Source/core/rendering/RenderFrameSet.cpp
index eeedd85..5849e14 100644
--- a/Source/core/rendering/RenderFrameSet.cpp
+++ b/Source/core/rendering/RenderFrameSet.cpp
@@ -120,7 +120,7 @@
 
     if (paintInfo.phase != PaintPhaseForeground)
         return;
-    
+
     RenderObject* child = firstChild();
     if (!child)
         return;
@@ -130,7 +130,7 @@
     size_t rows = m_rows.m_sizes.size();
     size_t cols = m_cols.m_sizes.size();
     LayoutUnit borderThickness = frameSet()->border();
-    
+
     LayoutUnit yPos = 0;
     for (size_t r = 0; r < rows; r++) {
         LayoutUnit xPos = 0;
@@ -158,7 +158,7 @@
     m_sizes.resize(size);
     m_deltas.resize(size);
     m_deltas.fill(0);
-    
+
     // To track edges for resizability and borders, we need to be (size + 1). This is because a parent frameset
     // may ask us for information about our left/top/right/bottom edges in order to make its own decisions about
     // what to do. We are capable of tainting that parent frameset's borders, so we have to cache this info.
@@ -197,7 +197,7 @@
             totalFixed += gridLayout[i];
             countFixed++;
         }
-        
+
         // Count the total percentage of all of the percentage columns/rows -> totalPercent
         // Count the number of columns/rows which are percentages -> countPercent
         if (grid[i].isPercentage()) {
@@ -211,13 +211,13 @@
         if (grid[i].isRelative()) {
             totalRelative += max<int>(grid[i].value(), 1);
             countRelative++;
-        }            
+        }
     }
 
     int remainingLen = availableLen;
 
     // Fixed columns/rows are our first priority. If there is not enough space to fit all fixed
-    // columns/rows we need to proportionally adjust their size. 
+    // columns/rows we need to proportionally adjust their size.
     if (totalFixed > remainingLen) {
         int remainingFixed = remainingLen;
 
@@ -230,8 +230,8 @@
     } else
         remainingLen -= totalFixed;
 
-    // Percentage columns/rows are our second priority. Divide the remaining space proportionally 
-    // over all percentage columns/rows. IMPORTANT: the size of each column/row is not relative 
+    // Percentage columns/rows are our second priority. Divide the remaining space proportionally
+    // over all percentage columns/rows. IMPORTANT: the size of each column/row is not relative
     // to 100%, but to the total percentage. For example, if there are three columns, each of 75%,
     // and the available space is 300px, each column will become 100px in width.
     if (totalPercent > remainingLen) {
@@ -259,8 +259,8 @@
                 lastRelative = i;
             }
         }
-        
-        // If we could not evenly distribute the available space of all of the relative  
+
+        // If we could not evenly distribute the available space of all of the relative
         // columns/rows, the remainder will be added to the last column/row.
         // For example: if we have a space of 100px and three columns (*,*,*), the remainder will
         // be 1px and will be added to the last column: 33px, 33px, 34px.
@@ -274,9 +274,9 @@
     // columns/rows
     if (remainingLen) {
         // Our first priority is to spread if over the percentage columns. The remaining
-        // space is spread evenly, for example: if we have a space of 100px, the columns 
-        // definition of 25%,25% used to result in two columns of 25px. After this the 
-        // columns will each be 50px in width. 
+        // space is spread evenly, for example: if we have a space of 100px, the columns
+        // definition of 25%,25% used to result in two columns of 25px. After this the
+        // columns will each be 50px in width.
         if (countPercent && totalPercent) {
             int remainingPercent = remainingLen;
             int changePercent = 0;
@@ -300,14 +300,14 @@
                     changeFixed = (remainingFixed * gridLayout[i]) / totalFixed;
                     gridLayout[i] += changeFixed;
                     remainingLen -= changeFixed;
-                } 
+                }
             }
         }
     }
-    
+
     // If we still have some left over space we probably ended up with a remainder of
-    // a division. We cannot spread it evenly anymore. If we have any percentage 
-    // columns/rows simply spread the remainder equally over all available percentage columns, 
+    // a division. We cannot spread it evenly anymore. If we have any percentage
+    // columns/rows simply spread the remainder equally over all available percentage columns,
     // regardless of their size.
     if (remainingLen && countPercent) {
         int remainingPercent = remainingLen;
@@ -326,7 +326,7 @@
         // columns/rows.
         int remainingFixed = remainingLen;
         int changeFixed = 0;
-        
+
         for (int i = 0; i < gridLen; ++i) {
             if (grid[i].isAbsolute()) {
                 changeFixed = remainingFixed / countFixed;
@@ -376,7 +376,7 @@
         m_cols.m_preventResize[c] = true;
     if (edgeInfo.preventResize(RightFrameEdge))
         m_cols.m_preventResize[c + 1] = true;
-    
+
     if (edgeInfo.allowBorder(TopFrameEdge))
         m_rows.m_allowBorder[r] = true;
     if (edgeInfo.allowBorder(BottomFrameEdge))
@@ -389,11 +389,11 @@
 
 void RenderFrameSet::computeEdgeInfo()
 {
-    m_rows.m_preventResize.fill(frameSet()->noResize());    
+    m_rows.m_preventResize.fill(frameSet()->noResize());
     m_rows.m_allowBorder.fill(false);
-    m_cols.m_preventResize.fill(frameSet()->noResize());    
+    m_cols.m_preventResize.fill(frameSet()->noResize());
     m_cols.m_allowBorder.fill(false);
-    
+
     RenderObject* child = firstChild();
     if (!child)
         return;
@@ -418,7 +418,7 @@
 FrameEdgeInfo RenderFrameSet::edgeInfo() const
 {
     FrameEdgeInfo result(frameSet()->noResize(), true);
-    
+
     int rows = frameSet()->totalRows();
     int cols = frameSet()->totalCols();
     if (rows && cols) {
@@ -431,7 +431,7 @@
         result.setPreventResize(BottomFrameEdge, m_rows.m_preventResize[rows]);
         result.setAllowBorder(BottomFrameEdge, m_rows.m_allowBorder[rows]);
     }
-    
+
     return result;
 }
 
diff --git a/Source/core/rendering/RenderFullScreen.cpp b/Source/core/rendering/RenderFullScreen.cpp
index 56150c9..dea4e45 100644
--- a/Source/core/rendering/RenderFullScreen.cpp
+++ b/Source/core/rendering/RenderFullScreen.cpp
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2010 Apple Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
@@ -9,7 +9,7 @@
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
  *     documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
@@ -31,9 +31,9 @@
 
 class RenderFullScreenPlaceholder FINAL : public RenderBlock {
 public:
-    RenderFullScreenPlaceholder(RenderFullScreen* owner) 
+    RenderFullScreenPlaceholder(RenderFullScreen* owner)
         : RenderBlock(0)
-        , m_owner(owner) 
+        , m_owner(owner)
     {
         setDocumentForAnonymous(owner->document());
     }
@@ -53,7 +53,7 @@
     : RenderFlexibleBox(0)
     , m_placeholder(0)
 {
-    setReplaced(false); 
+    setReplaced(false);
 }
 
 RenderFullScreen* RenderFullScreen::createAnonymous(Document* document)
@@ -97,15 +97,15 @@
     fullscreenStyle->setJustifyContent(JustifyCenter);
     fullscreenStyle->setAlignItems(AlignCenter);
     fullscreenStyle->setFlexDirection(FlowColumn);
-    
+
     fullscreenStyle->setPosition(FixedPosition);
     fullscreenStyle->setWidth(Length(100.0, Percent));
     fullscreenStyle->setHeight(Length(100.0, Percent));
     fullscreenStyle->setLeft(Length(0, WebCore::Fixed));
     fullscreenStyle->setTop(Length(0, WebCore::Fixed));
-    
+
     fullscreenStyle->setBackgroundColor(Color::black);
-    
+
     return fullscreenStyle.release();
 }
 
@@ -129,7 +129,7 @@
 
             parent->addChild(fullscreenRenderer, object);
             object->remove();
-            
+
             // Always just do a full layout to ensure that line boxes get deleted properly.
             // Because objects moved from |parent| to |fullscreenRenderer|, we want to
             // make new line boxes instead of leaving the old ones around.
diff --git a/Source/core/rendering/RenderFullScreen.h b/Source/core/rendering/RenderFullScreen.h
index 6918ef9..66fbde6 100644
--- a/Source/core/rendering/RenderFullScreen.h
+++ b/Source/core/rendering/RenderFullScreen.h
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2010 Apple Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
@@ -9,7 +9,7 @@
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
  *     documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
@@ -52,13 +52,13 @@
 protected:
     RenderBlock* m_placeholder;
 };
-    
+
 inline RenderFullScreen* toRenderFullScreen(RenderObject* object)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(object->isRenderFullScreen());
     return static_cast<RenderFullScreen*>(object);
 }
-    
+
 // This will catch anyone doing an unnecessary cast:
 void toRenderFullScreen(RenderFullScreen*);
 }
diff --git a/Source/core/rendering/RenderGeometryMap.cpp b/Source/core/rendering/RenderGeometryMap.cpp
index 920c8dc..1a23c42 100644
--- a/Source/core/rendering/RenderGeometryMap.cpp
+++ b/Source/core/rendering/RenderGeometryMap.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -29,7 +29,7 @@
 #include "core/platform/graphics/transforms/TransformState.h"
 #include "core/rendering/RenderLayer.h"
 #include "core/rendering/RenderView.h"
-#include <wtf/TemporaryChange.h>
+#include "wtf/TemporaryChange.h"
 
 namespace WebCore {
 
@@ -54,7 +54,7 @@
         transformState.flatten();
         return;
     }
-    
+
     bool inFixed = false;
 #if !ASSERT_DISABLED
     bool foundContainer = !container || (m_mapping.size() && m_mapping[0].m_renderer == container);
@@ -97,13 +97,13 @@
     }
 
     ASSERT(foundContainer);
-    transformState.flatten();    
+    transformState.flatten();
 }
 
 FloatPoint RenderGeometryMap::mapToContainer(const FloatPoint& p, const RenderLayerModelObject* container) const
 {
     FloatPoint result;
-    
+
     if (!hasFixedPositionStep() && !hasTransformStep() && !hasNonUniformStep() && (!container || (m_mapping.size() && container == m_mapping[0].m_renderer)))
         result = p + roundedIntSize(m_accumulatedOffset);
     else {
@@ -125,7 +125,7 @@
 FloatQuad RenderGeometryMap::mapToContainer(const FloatRect& rect, const RenderLayerModelObject* container) const
 {
     FloatRect result;
-    
+
     if (!hasFixedPositionStep() && !hasTransformStep() && !hasNonUniformStep() && (!container || (m_mapping.size() && container == m_mapping[0].m_renderer))) {
         result = rect;
         result.move(m_accumulatedOffset);
@@ -164,7 +164,7 @@
         const RenderStyle* style = current->style();
         if (style->position() == FixedPosition || style->isFlippedBlocksWritingMode())
             return false;
-        
+
         if (current->hasColumns() || current->hasTransform() || current->isRenderFlowThread() || current->isSVGRoot())
             return false;
 
@@ -188,7 +188,7 @@
     if (canConvertInLayerTree) {
         LayoutPoint layerOffset;
         layer->convertToLayerCoords(ancestorLayer, layerOffset);
-        
+
         // The RenderView must be pushed first.
         if (!m_mapping.size()) {
             ASSERT(ancestorLayer->renderer()->isRenderView());
@@ -222,7 +222,7 @@
     ASSERT(m_insertionPosition != notFound);
 
     m_mapping.insert(m_insertionPosition, RenderGeometryMapStep(renderer, accumulatingTransform, isNonUniform, isFixedPosition, hasTransform));
-    
+
     RenderGeometryMapStep& step = m_mapping[m_insertionPosition];
     if (!t.isIntegerTranslation())
         step.m_transform = adoptPtr(new TransformationMatrix(t));
@@ -238,12 +238,12 @@
     ASSERT(!m_insertionPosition); // The view should always be the first step.
 
     m_mapping.insert(m_insertionPosition, RenderGeometryMapStep(view, false, false, false, t));
-    
+
     RenderGeometryMapStep& step = m_mapping[m_insertionPosition];
     step.m_offset = scrollOffset;
     if (t)
         step.m_transform = adoptPtr(new TransformationMatrix(*t));
-    
+
     stepInserted(step);
 }
 
@@ -274,7 +274,7 @@
 
     if (step.m_transform)
         ++m_transformedStepsCount;
-    
+
     if (step.m_isFixedPosition)
         ++m_fixedStepsCount;
 }
diff --git a/Source/core/rendering/RenderGeometryMap.h b/Source/core/rendering/RenderGeometryMap.h
index 887b5c2..318cd16 100644
--- a/Source/core/rendering/RenderGeometryMap.h
+++ b/Source/core/rendering/RenderGeometryMap.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderGeometryMap_h
@@ -32,7 +32,7 @@
 #include "core/platform/graphics/LayoutSize.h"
 #include "core/platform/graphics/transforms/TransformationMatrix.h"
 #include "core/rendering/RenderObject.h"
-#include <wtf/OwnPtr.h>
+#include "wtf/OwnPtr.h"
 
 namespace WebCore {
 
@@ -94,13 +94,13 @@
     // If the container is the RenderView, the scroll offset is applied, but not the scale.
     FloatPoint mapToContainer(const FloatPoint&, const RenderLayerModelObject*) const;
     FloatQuad mapToContainer(const FloatRect&, const RenderLayerModelObject*) const;
-    
+
     // Called by code walking the renderer or layer trees.
     void pushMappingsToAncestor(const RenderLayer*, const RenderLayer* ancestorLayer);
     void popMappingsToAncestor(const RenderLayer*);
     void pushMappingsToAncestor(const RenderObject*, const RenderLayerModelObject* ancestorRenderer);
     void popMappingsToAncestor(const RenderLayerModelObject*);
-    
+
     // The following methods should only be called by renderers inside a call to pushMappingsToAncestor().
 
     // Push geometry info between this renderer and some ancestor. The ancestor must be its container() or some
@@ -116,7 +116,7 @@
 
     void stepInserted(const RenderGeometryMapStep&);
     void stepRemoved(const RenderGeometryMapStep&);
-    
+
     bool hasNonUniformStep() const { return m_nonUniformStepsCount; }
     bool hasTransformStep() const { return m_transformedStepsCount; }
     bool hasFixedPositionStep() const { return m_fixedStepsCount; }
diff --git a/Source/core/rendering/RenderHTMLCanvas.cpp b/Source/core/rendering/RenderHTMLCanvas.cpp
index 5101e8f..d75685a 100644
--- a/Source/core/rendering/RenderHTMLCanvas.cpp
+++ b/Source/core/rendering/RenderHTMLCanvas.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -48,7 +48,7 @@
 {
     if (RenderReplaced::requiresLayer())
         return true;
-    
+
     HTMLCanvasElement* canvas = toHTMLCanvasElement(node());
     return canvas && canvas->renderingContext() && canvas->renderingContext()->isAccelerated();
 }
diff --git a/Source/core/rendering/RenderHTMLCanvas.h b/Source/core/rendering/RenderHTMLCanvas.h
index ffc1f22..100482a 100644
--- a/Source/core/rendering/RenderHTMLCanvas.h
+++ b/Source/core/rendering/RenderHTMLCanvas.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderHTMLCanvas_h
@@ -40,7 +40,7 @@
     virtual bool requiresLayer() const;
 
     void canvasSizeChanged();
-    
+
 private:
     virtual const char* renderName() const { return "RenderHTMLCanvas"; }
     virtual void paintReplaced(PaintInfo&, const LayoutPoint&);
diff --git a/Source/core/rendering/RenderIFrame.cpp b/Source/core/rendering/RenderIFrame.cpp
index 655f4aa..a4b649a 100644
--- a/Source/core/rendering/RenderIFrame.cpp
+++ b/Source/core/rendering/RenderIFrame.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -35,7 +35,7 @@
 namespace WebCore {
 
 using namespace HTMLNames;
-    
+
 RenderIFrame::RenderIFrame(Element* element)
     : RenderPart(element)
 {
diff --git a/Source/core/rendering/RenderIFrame.h b/Source/core/rendering/RenderIFrame.h
index 1d27d6c..b005572 100644
--- a/Source/core/rendering/RenderIFrame.h
+++ b/Source/core/rendering/RenderIFrame.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderIFrame_h
diff --git a/Source/core/rendering/RenderImage.cpp b/Source/core/rendering/RenderImage.cpp
index ef689ce..742ea55 100644
--- a/Source/core/rendering/RenderImage.cpp
+++ b/Source/core/rendering/RenderImage.cpp
@@ -40,11 +40,12 @@
 #include "core/platform/graphics/Font.h"
 #include "core/platform/graphics/FontCache.h"
 #include "core/platform/graphics/GraphicsContext.h"
+#include "core/platform/graphics/GraphicsContextStateSaver.h"
 #include "core/rendering/HitTestResult.h"
 #include "core/rendering/PaintInfo.h"
 #include "core/rendering/RenderView.h"
 #include "core/svg/graphics/SVGImage.h"
-#include <wtf/UnusedParam.h>
+#include "wtf/UnusedParam.h"
 
 using namespace std;
 
@@ -160,7 +161,7 @@
 
     if (newImage != m_imageResource->imagePtr() || !newImage)
         return;
-    
+
     if (!m_didIncrementVisuallyNonEmptyPixelCount) {
         // At a zoom level of 1 the image is guaranteed to have an integer size.
         view()->frameView()->incrementVisuallyNonEmptyPixelCount(flooredIntSize(m_imageResource->imageSize(1.0f)));
@@ -247,7 +248,7 @@
             repaintRect.intersect(contentBoxRect());
         } else
             repaintRect = contentBoxRect();
-        
+
         repaintRectangle(repaintRect);
 
         // Tell any potential compositing layers that the image needs updating.
@@ -259,7 +260,7 @@
 {
     if (!m_imageResource)
         return;
-    
+
     if (documentBeingDestroyed())
         return;
 
@@ -366,9 +367,9 @@
         LayoutPoint contentLocation = paintOffset;
         contentLocation.move(leftBorder + leftPad, topBorder + topPad);
         paintIntoRect(context, LayoutRect(contentLocation, contentSize));
-        
+
         if (cachedImage() && page && paintInfo.phase == PaintPhaseForeground) {
-            // For now, count images as unpainted if they are still progressively loading. We may want 
+            // For now, count images as unpainted if they are still progressively loading. We may want
             // to refine this in the future to account for the portion of the image that has painted.
             if (cachedImage()->isLoading())
                 page->addRelevantUnpaintedObject(this, LayoutRect(contentLocation, contentSize));
@@ -385,14 +386,14 @@
     if (paintInfo.phase == PaintPhaseOutline)
         paintAreaElementFocusRing(paintInfo);
 }
-    
+
 void RenderImage::paintAreaElementFocusRing(PaintInfo& paintInfo)
 {
     Document* document = this->document();
-    
+
     if (document->printing() || !document->frame()->selection()->isFocusedAndActive())
         return;
-    
+
     if (paintInfo.context->paintingDisabled() && !paintInfo.context->updatingControlTints())
         return;
 
@@ -418,6 +419,7 @@
 
     // FIXME: Clip path instead of context when Skia pathops is ready.
     // https://crbug.com/251206
+    GraphicsContextStateSaver savedContext(*paintInfo.context);
     paintInfo.context->clip(absoluteContentBox());
     paintInfo.context->drawFocusRing(path, outlineWidth,
         areaElementStyle->outlineOffset(),
diff --git a/Source/core/rendering/RenderImage.h b/Source/core/rendering/RenderImage.h
index 81c7cea..aaee5a3 100644
--- a/Source/core/rendering/RenderImage.h
+++ b/Source/core/rendering/RenderImage.h
@@ -1,7 +1,7 @@
 /*
  * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
  *           (C) 1999 Antti Koivisto (koivisto@kde.org)
- *           (C) 2006 Allan Sandfeld Jensen (kde@carewolf.com) 
+ *           (C) 2006 Allan Sandfeld Jensen (kde@carewolf.com)
  *           (C) 2006 Samuel Weinig (sam.weinig@gmail.com)
  * Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights reserved.
  *
diff --git a/Source/core/rendering/RenderImageResourceStyleImage.h b/Source/core/rendering/RenderImageResourceStyleImage.h
index 9593635..f77854d 100644
--- a/Source/core/rendering/RenderImageResourceStyleImage.h
+++ b/Source/core/rendering/RenderImageResourceStyleImage.h
@@ -28,7 +28,7 @@
 
 #include "core/rendering/RenderImageResource.h"
 #include "core/rendering/style/StyleImage.h"
-#include <wtf/RefPtr.h>
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/RenderInline.cpp b/Source/core/rendering/RenderInline.cpp
index a852eb0..ea48c87 100644
--- a/Source/core/rendering/RenderInline.cpp
+++ b/Source/core/rendering/RenderInline.cpp
@@ -88,7 +88,7 @@
         continuation->destroy();
         setContinuation(0);
     }
-    
+
     if (!documentBeingDestroyed()) {
         if (firstLineBox()) {
             // We can't wait for RenderBoxModelObject::destroy to clear the selection,
@@ -107,7 +107,7 @@
                 for (InlineFlowBox* box = firstLineBox(); box; box = box->nextLineBox())
                     box->remove();
             }
-        } else if (parent()) 
+        } else if (parent())
             parent()->dirtyLinesFromChangedChild(this);
     }
 
@@ -132,7 +132,7 @@
 
     // FIXME: Support transforms and reflections on inline flows someday.
     setHasTransform(false);
-    setHasReflection(false);    
+    setHasReflection(false);
 }
 
 static RenderObject* inFlowPositionedInlineAncestor(RenderObject* p)
@@ -151,7 +151,7 @@
         if (!toRenderBlock(block)->isAnonymousBlockContinuation() || block->style()->position() == newStyle->position())
             continue;
         // If we are no longer in-flow positioned but our descendant block(s) still have an in-flow positioned ancestor then
-        // their containing anonymous block should keep its in-flow positioning. 
+        // their containing anonymous block should keep its in-flow positioning.
         RenderInline* cont = toRenderBlock(block)->inlineElementContinuation();
         if (oldStyle->hasInFlowPosition() && inFlowPositionedInlineAncestor(cont))
             continue;
@@ -310,7 +310,7 @@
         // |newChild|.  We then make that block box a continuation of this inline.  We take all of
         // the children after |beforeChild| and put them in a clone of this object.
         RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyleWithDisplay(style(), BLOCK);
-        
+
         // If inside an inline affected by in-flow positioning the block needs to be affected by it too.
         // Giving the block a layer like this allows it to collect the x/y offsets from inline parents later.
         if (RenderObject* positionedAncestor = inFlowPositionedInlineAncestor(this))
@@ -375,13 +375,13 @@
     // Once we hit the containing block we're done.
     RenderBoxModelObject* curr = toRenderBoxModelObject(parent());
     RenderBoxModelObject* currChild = this;
-    
+
     // FIXME: Because splitting is O(n^2) as tags nest pathologically, we cap the depth at which we're willing to clone.
     // There will eventually be a better approach to this problem that will let us nest to a much
     // greater depth (see bugzilla bug 13430) but for now we have a limit.  This *will* result in
     // incorrect rendering, but the alternative is to hang forever.
     unsigned splitDepth = 1;
-    const unsigned cMaxSplitDepth = 200; 
+    const unsigned cMaxSplitDepth = 200;
     while (curr && curr != fromBlock) {
         ASSERT(curr->isRenderInline());
         if (splitDepth < cMaxSplitDepth) {
@@ -408,7 +408,7 @@
                 tmp->setNeedsLayoutAndPrefWidthsRecalc();
             }
         }
-        
+
         // Keep walking up the chain.
         currChild = curr;
         curr = toRenderBoxModelObject(curr->parent());
@@ -433,10 +433,10 @@
 {
     RenderBlock* pre = 0;
     RenderBlock* block = containingBlock();
-    
+
     // Delete our line boxes before we do the inline split into continuations.
     block->deleteLineBoxTree();
-    
+
     bool madeNewBeforeBlock = false;
     if (block->isAnonymousBlock() && (!block->parent() || !block->parent()->createsAnonymousWrapper())) {
         // We can reuse this block and make it the preBlock of the next continuation.
@@ -458,7 +458,7 @@
     block->children()->insertChildNode(block, newBlockBox, boxFirst);
     block->children()->insertChildNode(block, post, boxFirst);
     block->setChildrenInline(false);
-    
+
     if (madeNewBeforeBlock) {
         RenderObject* o = boxFirst;
         while (o) {
@@ -557,7 +557,7 @@
     for (RenderObject* curr = firstChild(); curr; curr = curr->nextSibling()) {
         if (curr->isFloatingOrOutOfFlowPositioned())
             continue;
-            
+
         // We want to get the margin box in the inline direction, and then use our font ascent/descent in the block
         // direction (aligned to the root box's baseline).
         if (curr->isBox()) {
@@ -818,7 +818,7 @@
     }
 
     // Translate the coords from the pre-anonymous block to the post-anonymous block.
-    LayoutPoint parentBlockPoint = cb->location() + point;  
+    LayoutPoint parentBlockPoint = cb->location() + point;
     RenderBoxModelObject* c = continuation();
     while (c) {
         RenderBox* contBlock = c->isInline() ? c->containingBlock() : toRenderBlock(c);
@@ -826,7 +826,7 @@
             return c->positionForPoint(parentBlockPoint - contBlock->locationOffset());
         c = toRenderBlock(c)->inlineElementContinuation();
     }
-    
+
     return RenderBoxModelObject::positionForPoint(point);
 }
 
@@ -856,7 +856,7 @@
     }
 
     IntRect result;
-    
+
     // See <rdar://problem/5289721>, for an unknown reason the linked list here is sometimes inconsistent, first is non-zero and last is zero.  We have been
     // unable to reproduce this at all (and consequently unable to figure ot why this is happening).  The assert will hopefully catch the problem in debug
     // builds and help us someday figure out why.  We also put in a redundant check of lastLineBox() to avoid the crash for now.
@@ -871,9 +871,9 @@
             if (curr == firstLineBox() || curr->logicalRight() > logicalRightSide)
                 logicalRightSide = curr->logicalRight();
         }
-        
+
         bool isHorizontal = style()->isHorizontalWritingMode();
-        
+
         float x = isHorizontal ? logicalLeftSide : firstLineBox()->x();
         float y = isHorizontal ? firstLineBox()->y() : logicalLeftSide;
         float width = isHorizontal ? logicalRightSide - logicalLeftSide : lastLineBox()->logicalBottom() - x;
@@ -889,7 +889,7 @@
     for (RenderObject* curr = firstChild(); curr; curr = curr->nextSibling()) {
         if (curr->isFloatingOrOutOfFlowPositioned())
             continue;
-            
+
         // We want to get the margin box in the inline direction, and then use our font ascent/descent in the block
         // direction (aligned to the root box's baseline).
         if (curr->isBox())
@@ -913,7 +913,7 @@
     for (RenderObject* curr = lastChild(); curr; curr = curr->previousSibling()) {
         if (curr->isFloatingOrOutOfFlowPositioned())
             continue;
-            
+
         // We want to get the margin box in the inline direction, and then use our font ascent/descent in the block
         // direction (aligned to the root box's baseline).
         if (curr->isBox())
@@ -942,7 +942,7 @@
     for (RenderObject* curr = firstChild(); curr; curr = curr->nextSibling()) {
         if (curr->isFloatingOrOutOfFlowPositioned())
             continue;
-            
+
         // For overflow we just have to propagate by hand and recompute it all.
         if (curr->isBox()) {
             RenderBox* currBox = toRenderBox(curr);
@@ -991,11 +991,11 @@
 
     RootInlineBox* firstRootBox = firstLineBox()->root();
     RootInlineBox* lastRootBox = lastLineBox()->root();
-    
+
     LayoutUnit logicalTop = firstLineBox()->logicalTopVisualOverflow(firstRootBox->lineTop());
     LayoutUnit logicalWidth = logicalRightSide - logicalLeftSide;
     LayoutUnit logicalHeight = lastLineBox()->logicalBottomVisualOverflow(lastRootBox->lineBottom()) - logicalTop;
-    
+
     LayoutRect rect(logicalLeftSide, logicalTop, logicalWidth, logicalHeight);
     if (!style()->isHorizontalWritingMode())
         rect = rect.transposedRect();
@@ -1105,7 +1105,7 @@
         // flag on the RenderObject has been cleared, so use the one on the style().
         topLeft += layer()->offsetForInFlowPosition();
     }
-    
+
     // FIXME: We ignore the lightweight clipping rect that controls use, since if |o| is in mid-layout,
     // its controlClipRect will be wrong. For overflow clip we use the values cached by the layer.
     rect.setLocation(topLeft);
@@ -1122,15 +1122,15 @@
         rect.move(-containerOffset);
         return;
     }
-    
+
     o->computeRectForRepaint(repaintContainer, rect, fixed);
 }
 
 LayoutSize RenderInline::offsetFromContainer(RenderObject* container, const LayoutPoint& point, bool* offsetDependsOnPoint) const
 {
     ASSERT(container == this->container());
-    
-    LayoutSize offset;    
+
+    LayoutSize offset;
     if (isInFlowPositioned())
         offset += offsetForInFlowPosition();
 
@@ -1228,7 +1228,7 @@
             // We're in the continuation of a split inline.  Adjust our local point to be in the coordinate space
             // of the principal renderer's containing block.  This will end up being the innerNonSharedNode.
             RenderBlock* firstBlock = n->renderer()->containingBlock();
-            
+
             // Get our containing block.
             RenderBox* block = containingBlock();
             localPoint.moveBy(block->location() - firstBlock->locationOffset());
@@ -1278,7 +1278,7 @@
     m_lineBoxes.deleteLineBoxTree(renderArena());
 }
 
-InlineFlowBox* RenderInline::createInlineFlowBox() 
+InlineFlowBox* RenderInline::createInlineFlowBox()
 {
     return new (renderArena()) InlineFlowBox(this);
 }
@@ -1353,7 +1353,7 @@
 {
     if (!parent())
         return;
-        
+
     // FIXME: We can do better.
     repaint();
 }
@@ -1367,7 +1367,7 @@
         if (!curr->isText() && !curr->isListMarker()) {
             FloatPoint pos(additionalOffset);
             // FIXME: This doesn't work correctly with transforms.
-            if (curr->hasLayer()) 
+            if (curr->hasLayer())
                 pos = curr->localToContainerPoint(FloatPoint(), paintContainer);
             else if (curr->isBox())
                 pos.move(toRenderBox(curr)->locationOffset());
@@ -1414,7 +1414,7 @@
 {
     if (!hasOutline())
         return;
-    
+
     RenderStyle* styleToUse = style();
     if (styleToUse->outlineStyleIsAuto() || hasOutlineAnnotation()) {
         if (theme()->shouldDrawDefaultFocusRing(this)) {
@@ -1473,7 +1473,7 @@
     IntRect pixelSnappedBox = pixelSnappedIntRect(box);
     IntRect pixelSnappedLastLine = pixelSnappedIntRect(paintOffset.x() + lastline.x(), 0, lastline.width(), 0);
     IntRect pixelSnappedNextLine = pixelSnappedIntRect(paintOffset.x() + nextline.x(), 0, nextline.width(), 0);
-    
+
     // left edge
     drawLineForBoxSide(graphicsContext,
         pixelSnappedBox.x() - outlineWidth,
@@ -1485,7 +1485,7 @@
         (lastline.isEmpty() || thisline.x() < lastline.x() || (lastline.maxX() - 1) <= thisline.x() ? outlineWidth : -outlineWidth),
         (nextline.isEmpty() || thisline.x() <= nextline.x() || (nextline.maxX() - 1) <= thisline.x() ? outlineWidth : -outlineWidth),
         antialias);
-    
+
     // right edge
     drawLineForBoxSide(graphicsContext,
         pixelSnappedBox.maxX(),
@@ -1508,7 +1508,7 @@
             outlineWidth,
             (!lastline.isEmpty() && paintOffset.x() + lastline.x() + 1 < pixelSnappedBox.maxX() + outlineWidth) ? -outlineWidth : outlineWidth,
             antialias);
-    
+
     if (lastline.maxX() < thisline.maxX())
         drawLineForBoxSide(graphicsContext,
             max(lastline.isEmpty() ? -1000000 : pixelSnappedLastLine.maxX(), pixelSnappedBox.x() - outlineWidth),
@@ -1541,7 +1541,7 @@
             outlineWidth,
             (!nextline.isEmpty() && paintOffset.x() + nextline.x() + 1 < pixelSnappedBox.maxX() + outlineWidth) ? -outlineWidth : outlineWidth,
             antialias);
-    
+
     if (nextline.maxX() < thisline.maxX())
         drawLineForBoxSide(graphicsContext,
             max(!nextline.isEmpty() ? pixelSnappedNextLine.maxX() : -1000000, pixelSnappedBox.x() - outlineWidth),
@@ -1584,7 +1584,7 @@
     FloatPoint absPos = container->localToAbsolute();
     region.bounds.setX(absPos.x() + region.bounds.x());
     region.bounds.setY(absPos.y() + region.bounds.y());
-    
+
     regions.append(region);
 }
 
diff --git a/Source/core/rendering/RenderInline.h b/Source/core/rendering/RenderInline.h
index 49ab4ca..dfa2889 100644
--- a/Source/core/rendering/RenderInline.h
+++ b/Source/core/rendering/RenderInline.h
@@ -78,7 +78,7 @@
     RenderInline* inlineElementContinuation() const;
 
     virtual void updateDragState(bool dragOn) OVERRIDE FINAL;
-    
+
     LayoutSize offsetForInFlowPositionedInline(const RenderBox* child) const;
 
     virtual void addFocusRingRects(Vector<IntRect>&, const LayoutPoint& additionalOffset, const RenderLayerModelObject* paintContainer = 0) OVERRIDE FINAL;
@@ -164,7 +164,7 @@
 
     virtual LayoutUnit lineHeight(bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const OVERRIDE FINAL;
     virtual int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const OVERRIDE FINAL;
-    
+
     virtual void childBecameNonInline(RenderObject* child) OVERRIDE FINAL;
 
     virtual void updateHitTestResult(HitTestResult&, const LayoutPoint&) OVERRIDE FINAL;
@@ -172,9 +172,9 @@
     virtual void imageChanged(WrappedImagePtr, const IntRect* = 0) OVERRIDE FINAL;
 
     virtual void addAnnotatedRegions(Vector<AnnotatedRegionValue>&) OVERRIDE FINAL;
-    
+
     virtual void updateFromStyle() OVERRIDE FINAL;
-    
+
     RenderInline* clone() const;
 
     void paintOutlineForLine(GraphicsContext*, const LayoutPoint&, const LayoutRect& prevLine, const LayoutRect& thisLine,
@@ -188,13 +188,13 @@
 };
 
 inline RenderInline* toRenderInline(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isRenderInline());
     return static_cast<RenderInline*>(object);
 }
 
 inline const RenderInline* toRenderInline(const RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isRenderInline());
     return static_cast<const RenderInline*>(object);
 }
diff --git a/Source/core/rendering/RenderLayer.cpp b/Source/core/rendering/RenderLayer.cpp
index a7133a9..fc7e403 100644
--- a/Source/core/rendering/RenderLayer.cpp
+++ b/Source/core/rendering/RenderLayer.cpp
@@ -103,9 +103,9 @@
 #include "core/rendering/RenderView.h"
 #include "core/rendering/svg/ReferenceFilterBuilder.h"
 #include "core/rendering/svg/RenderSVGResourceClipper.h"
-#include <wtf/StdLibExtras.h>
-#include <wtf/text/CString.h>
-#include <wtf/UnusedParam.h>
+#include "wtf/StdLibExtras.h"
+#include "wtf/UnusedParam.h"
+#include "wtf/text/CString.h"
 
 #define MIN_INTERSECT_FOR_REVEAL 32
 
@@ -262,7 +262,7 @@
     // FIXME: Eventually there will be more factors than isComposited() to decide whether or not to render the filter
     if (!renderer()->hasFilter())
         return false;
-        
+
     if (!isComposited())
         return true;
 
@@ -271,8 +271,8 @@
 
     return false;
 }
-    
-bool RenderLayer::requiresFullLayerImageForFilters() const 
+
+bool RenderLayer::requiresFullLayerImageForFilters() const
 {
     if (!paintsWithFilters())
         return false;
@@ -320,7 +320,7 @@
 
     // Clear our cached clip rect information.
     clearClipRects();
-    
+
     if (hasOverflowControls()) {
         LayoutPoint offsetFromRoot;
         if (geometryMap)
@@ -385,7 +385,7 @@
         updatePagination();
         flags |= UpdatePagination;
     }
-    
+
     if (renderer()->hasColumns())
         flags |= UpdatePagination;
 
@@ -736,7 +736,7 @@
         // ASSERT(m_repaintRect == renderer()->clippedOverflowRectForRepaint(renderer()->containerForRepaint()));
         // ASSERT(m_outlineBox == renderer()->outlineBoundsForRepaint(renderer()->containerForRepaint(), geometryMap));
     }
-    
+
     for (RenderLayer* child = firstChild(); child; child = child->nextSibling())
         child->updateLayerPositionsAfterScroll(geometryMap, flags);
 
@@ -793,11 +793,11 @@
             m_transform = adoptPtr(new TransformationMatrix);
         else
             m_transform.clear();
-        
+
         // Layers with transforms act as clip rects roots, so clear the cached clip rects here.
         clearClipRectsIncludingDescendants();
     }
-    
+
     if (hasTransform) {
         RenderBox* box = renderBox();
         ASSERT(box);
@@ -839,7 +839,7 @@
 {
     if (!m_transform)
         return TransformationMatrix();
-    
+
     if (paintBehavior & PaintBehaviorFlattenCompositingLayers) {
         TransformationMatrix matrix = *m_transform;
         makeMatrixRenderable(matrix, false /* flatten 3d */);
@@ -858,15 +858,15 @@
          containingBlock && containingBlock != view && containingBlock != ancestorColumnsRenderer;
          containingBlock = containingBlock->containingBlock())
         prevBlock = containingBlock;
-    
+
     // If the columns block wasn't in our containing block chain, then we aren't paginated by it.
     if (containingBlock != ancestorColumnsRenderer)
         return false;
-        
+
     // If the previous block is absolutely positioned, then we can't be paginated by the columns block.
     if (prevBlock->isOutOfFlowPositioned())
         return false;
-        
+
     // Otherwise we are paginated by the columns block.
     return true;
 }
@@ -955,13 +955,13 @@
 }
 
 void RenderLayer::setHasVisibleContent()
-{ 
+{
     if (m_hasVisibleContent && !m_visibleContentStatusDirty) {
         ASSERT(!parent() || parent()->hasVisibleDescendant());
         return;
     }
 
-    m_visibleContentStatusDirty = false; 
+    m_visibleContentStatusDirty = false;
     m_hasVisibleContent = true;
     computeRepaintRects(renderer()->containerForRepaint());
     if (!isNormalFlowOnly()) {
@@ -979,9 +979,9 @@
         parent()->setAncestorChainHasVisibleDescendant();
 }
 
-void RenderLayer::dirtyVisibleContentStatus() 
-{ 
-    m_visibleContentStatusDirty = true; 
+void RenderLayer::dirtyVisibleContentStatus()
+{
+    m_visibleContentStatusDirty = true;
     if (parent())
         parent()->dirtyAncestorChainVisibleDescendantStatus();
 }
@@ -1087,7 +1087,7 @@
     RenderLayer* curr = ancestorStackingContainer();
     if (curr)
         curr->m_3DTransformedDescendantStatusDirty = true;
-        
+
     // This propagates up through preserve-3d hierarchies to the enclosing flattening layer.
     // Note that preserves3D() creates stacking context, so we can just run up the stacking containers.
     while (curr && curr->preserves3D()) {
@@ -1116,10 +1116,10 @@
             for (unsigned i = 0; i < negativeZOrderList->size(); ++i)
                 m_has3DTransformedDescendant |= negativeZOrderList->at(i)->update3DTransformedDescendantStatus();
         }
-        
+
         m_3DTransformedDescendantStatusDirty = false;
     }
-    
+
     // If we live in a 3d hierarchy, then the layer at the root of that hierarchy needs
     // the m_has3DTransformedDescendant set.
     if (preserves3D())
@@ -1161,7 +1161,7 @@
             localPoint -= toRenderBox(curr)->topLeftLocationOffset();
         }
     }
-    
+
     // Subtract our parent's scroll offset.
     if (renderer()->isOutOfFlowPositioned() && enclosingPositionedAncestor()) {
         RenderLayer* positionedParent = enclosingPositionedAncestor();
@@ -1171,7 +1171,7 @@
             LayoutSize offset = positionedParent->scrolledContentOffset();
             localPoint -= offset;
         }
-        
+
         if (renderer()->isOutOfFlowPositioned() && positionedParent->renderer()->isInFlowPositioned() && positionedParent->renderer()->isRenderInline()) {
             LayoutSize offset = toRenderInline(positionedParent->renderer())->offsetForInFlowPositionedInline(toRenderBox(renderer()));
             localPoint += offset;
@@ -1194,7 +1194,7 @@
             localPoint -= scrollOffset;
         }
     }
-    
+
     bool positionOrOffsetChanged = false;
     if (renderer()->isInFlowPositioned()) {
         LayoutSize newOffset = toRenderBoxModelObject(renderer())->offsetForInFlowPosition();
@@ -1207,7 +1207,7 @@
 
     // FIXME: We'd really like to just get rid of the concept of a layer rectangle and rely on the renderers.
     localPoint -= inlineBoundingBoxOffset;
-    
+
     positionOrOffsetChanged |= location() != localPoint;
     setLocation(localPoint);
     return positionOrOffsetChanged;
@@ -1234,12 +1234,12 @@
     // We want it to be in the top-left, so subtract half the height and width.
     perspectiveOriginX -= boxWidth / 2.0f;
     perspectiveOriginY -= boxHeight / 2.0f;
-    
+
     TransformationMatrix t;
     t.translate(perspectiveOriginX, perspectiveOriginY);
     t.applyPerspective(style->perspective());
     t.translate(-perspectiveOriginX, -perspectiveOriginY);
-    
+
     return t;
 }
 
@@ -1334,7 +1334,7 @@
         if (curr->isComposited())
             return const_cast<RenderLayer*>(curr);
     }
-         
+
     return 0;
 }
 
@@ -1347,7 +1347,7 @@
         if (curr->isComposited() && !curr->backing()->paintsIntoCompositedAncestor())
             return const_cast<RenderLayer*>(curr);
     }
-         
+
     return 0;
 }
 
@@ -1358,7 +1358,7 @@
         if (curr->requiresFullLayerImageForFilters())
             return const_cast<RenderLayer*>(curr);
     }
-    
+
     return 0;
 }
 
@@ -1375,7 +1375,7 @@
 {
     if (rect.isEmpty())
         return;
-    
+
     LayoutRect rectForRepaint = rect;
     renderer()->style()->filterOutsets().expandRect(rectForRepaint);
 
@@ -1390,12 +1390,12 @@
         // Note: This is only for output rect, so there's no need to expand the dirty source rect.
         rectForRepaint.unite(calculateLayerBounds(this));
     }
-    
+
     RenderLayer* parentLayer = enclosingFilterRepaintLayer();
     ASSERT(parentLayer);
     FloatQuad repaintQuad(rectForRepaint);
     LayoutRect parentLayerRect = renderer()->localToContainerQuad(repaintQuad, parentLayer->renderer()).enclosingBoundingBox();
-    
+
     if (parentLayer->isComposited()) {
         parentLayer->setBackingNeedsRepaintInRect(parentLayerRect);
         return;
@@ -1403,15 +1403,15 @@
 
     if (parentLayer->paintsWithFilters()) {
         parentLayer->setFilterBackendNeedsRepaintingInRect(parentLayerRect);
-        return;        
+        return;
     }
-    
+
     if (parentLayer->isRootLayer()) {
         RenderView* view = toRenderView(parentLayer->renderer());
         view->repaintViewRectangle(parentLayerRect);
         return;
     }
-    
+
     ASSERT_NOT_REACHED();
 }
 
@@ -1424,7 +1424,7 @@
     }
     return false;
 }
-    
+
 RenderLayer* RenderLayer::clippingRootForPainting() const
 {
     if (isComposited())
@@ -1530,7 +1530,7 @@
     // FIXME: Although this function completely ignores CSS-imposed clipping, we did already intersect with the
     // paintDirtyRect, and that should cut down on the amount we have to paint.  Still it
     // would be better to respect clips.
-    
+
     if (rootLayer != layer && ((transparencyBehavior == PaintingTransparencyClipBox && layer->paintsWithTransform(paintBehavior))
         || (transparencyBehavior == HitTestingTransparencyClipBox && layer->hasTransform()))) {
         // The best we can do here is to use enclosed bounding boxes to establish a "fuzzy" enough clip to encompass
@@ -1552,19 +1552,19 @@
         LayoutRect result = transform.mapRect(clipRect);
         if (!paginationLayer)
             return result;
-        
+
         // We have to break up the transformed extent across our columns.
         // Split our box up into the actual fragment boxes that render in the columns/pages and unite those together to
         // get our true bounding box.
         RenderFlowThread* enclosingFlowThread = toRenderFlowThread(paginationLayer->renderer());
         result = enclosingFlowThread->fragmentsBoundingBox(result);
-        
+
         LayoutPoint rootLayerDelta;
         paginationLayer->convertToLayerCoords(rootLayer, rootLayerDelta);
         result.moveBy(rootLayerDelta);
         return result;
     }
-    
+
     LayoutRect clipRect = layer->boundingBox(rootLayer, RenderLayer::UseFragmentBoxes);
     expandClipRectForDescendantsAndReflection(clipRect, layer, rootLayer, transparencyBehavior, paintBehavior);
     layer->renderer()->style()->filterOutsets().expandRect(clipRect);
@@ -1580,11 +1580,11 @@
 {
     if (context->paintingDisabled() || (paintsWithTransparency(paintBehavior) && m_usedTransparency))
         return;
-    
+
     RenderLayer* ancestor = transparentPaintingAncestor();
     if (ancestor)
         ancestor->beginTransparencyLayers(context, rootLayer, paintDirtyRect, paintBehavior);
-    
+
     if (paintsWithTransparency(paintBehavior)) {
         m_usedTransparency = true;
         context->save();
@@ -1834,7 +1834,7 @@
                 break;
             }
         }
-        
+
         ASSERT(fixedPositionContainerLayer); // We should have hit the RenderView's layer at least.
 
         if (fixedPositionContainerLayer != ancestorLayer) {
@@ -1850,7 +1850,7 @@
         }
         return ancestorLayer;
     }
-    
+
     RenderLayer* parentLayer;
     if (position == AbsolutePosition || position == FixedPosition) {
         // Do what enclosingPositionedAncestor() does, but check for ancestorLayer along the way.
@@ -1883,7 +1883,7 @@
 
             LayoutPoint thisCoords;
             layer->convertToLayerCoords(positionedAncestor, thisCoords);
-            
+
             LayoutPoint ancestorCoords;
             ancestorLayer->convertToLayerCoords(positionedAncestor, ancestorCoords);
 
@@ -1892,7 +1892,7 @@
         }
     } else
         parentLayer = layer->parent();
-    
+
     if (!parentLayer)
         return 0;
 
@@ -2020,9 +2020,9 @@
     Frame* frame = renderer()->frame();
     if (!frame)
         return;
-    
+
     IntPoint lastKnownMousePosition = frame->eventHandler()->lastKnownMousePosition();
-    
+
     // We need to check if the last known mouse position is out of the window. When the mouse is out of the window, the position is incoherent
     static IntPoint previousMousePosition;
     if (lastKnownMousePosition.x() < 0 || lastKnownMousePosition.y() < 0)
@@ -2068,7 +2068,7 @@
         // have an overflow clip. Which means that it is a document node that can be scrolled.
         renderer()->view()->frameView()->scrollBy(delta);
 
-        // FIXME: If we didn't scroll the whole way, do we want to try looking at the frames ownerElement? 
+        // FIXME: If we didn't scroll the whole way, do we want to try looking at the frames ownerElement?
         // https://bugs.webkit.org/show_bug.cgi?id=28237
     }
 }
@@ -2104,7 +2104,7 @@
         if (m_scrollDimensionsDirty)
             computeScrollDimensions();
     }
-    
+
     if (m_scrollOffset == toIntSize(newScrollOffset))
         return;
     m_scrollOffset = toIntSize(newScrollOffset);
@@ -2113,7 +2113,7 @@
     InspectorInstrumentation::willScrollLayer(renderer());
 
     RenderView* view = renderer()->view();
-    
+
     // We should have a RenderView if we're trying to scroll.
     ASSERT(view);
 
@@ -2185,7 +2185,7 @@
     RenderLayer* parentLayer = 0;
     LayoutRect newRect = rect;
 
-    // We may end up propagating a scroll event. It is important that we suspend events until 
+    // We may end up propagating a scroll event. It is important that we suspend events until
     // the end of the function since they could delete the layer or the layer's renderer().
     FrameView* frameView = renderer()->document()->view();
     if (frameView)
@@ -2253,7 +2253,7 @@
             }
         }
     }
-    
+
     if (parentLayer)
         parentLayer->scrollRectToVisible(newRect, alignX, alignY);
 
@@ -2303,7 +2303,7 @@
 
     // Given the X behavior, compute the X coordinate.
     LayoutUnit x;
-    if (scrollX == noScroll) 
+    if (scrollX == noScroll)
         x = visibleRect.x();
     else if (scrollX == alignRight)
         x = exposeRect.maxX() - visibleRect.width();
@@ -2336,7 +2336,7 @@
 
     // Given the Y behavior, compute the Y coordinate.
     LayoutUnit y;
-    if (scrollY == noScroll) 
+    if (scrollY == noScroll)
         y = visibleRect.y();
     else if (scrollY == alignBottom)
         y = exposeRect.maxY() - visibleRect.height();
@@ -2409,17 +2409,17 @@
     LayoutSize newOffset = offsetFromResizeCorner(document->view()->windowToContents(pos));
     newOffset.setWidth(newOffset.width() / zoomFactor);
     newOffset.setHeight(newOffset.height() / zoomFactor);
-    
+
     LayoutSize currentSize = LayoutSize(renderer->width() / zoomFactor, renderer->height() / zoomFactor);
     LayoutSize minimumSize = element->minimumSizeForResizing().shrunkTo(currentSize);
     element->setMinimumSizeForResizing(minimumSize);
-    
+
     LayoutSize adjustedOldOffset = LayoutSize(oldOffset.width() / zoomFactor, oldOffset.height() / zoomFactor);
     if (renderer->style()->shouldPlaceBlockDirectionScrollbarOnLogicalLeft()) {
         newOffset.setWidth(-newOffset.width());
         adjustedOldOffset.setWidth(-adjustedOldOffset.width());
     }
-    
+
     LayoutSize difference = (currentSize + newOffset - adjustedOldOffset).expandedTo(minimumSize) - currentSize;
 
     bool isBoxSizingBorder = renderer->style()->boxSizing() == BORDER_BOX;
@@ -2496,9 +2496,9 @@
         verticalScrollbarWidth = (verticalScrollbar() && !verticalScrollbar()->isOverlayScrollbar()) ? verticalScrollbar()->width() : 0;
         horizontalScrollbarHeight = (horizontalScrollbar() && !horizontalScrollbar()->isOverlayScrollbar()) ? horizontalScrollbar()->height() : 0;
     }
-    
+
     return IntRect(IntPoint(scrollXOffset(), scrollYOffset()),
-                   IntSize(max(0, m_layerSize.width() - verticalScrollbarWidth), 
+                   IntSize(max(0, m_layerSize.width() - verticalScrollbarWidth),
                            max(0, m_layerSize.height() - horizontalScrollbarHeight)));
 }
 
@@ -2731,7 +2731,7 @@
 
     if (scrollbar == m_hBar.get())
         return IntSize(horizontalScrollbarStart(0), box->height() - box->borderBottom() - scrollbar->height());
-    
+
     ASSERT_NOT_REACHED();
     return IntSize();
 }
@@ -2800,10 +2800,10 @@
         widget = Scrollbar::createNativeScrollbar(scrollableArea(), orientation, RegularScrollbar);
         if (orientation == HorizontalScrollbar)
             scrollableArea()->didAddHorizontalScrollbar(widget.get());
-        else 
+        else
             scrollableArea()->didAddVerticalScrollbar(widget.get());
     }
-    renderer()->document()->view()->addChild(widget.get());        
+    renderer()->document()->view()->addChild(widget.get());
     return widget.release();
 }
 
@@ -2920,7 +2920,7 @@
 {
     if (!m_hBar && !m_vBar && !canResize())
         return;
-    
+
     RenderBox* box = renderBox();
     if (!box)
         return;
@@ -2933,13 +2933,13 @@
         vBarRect.move(offsetFromRoot);
         m_vBar->setFrameRect(vBarRect);
     }
-    
+
     if (m_hBar) {
         IntRect hBarRect = rectForHorizontalScrollbar(borderBox);
         hBarRect.move(offsetFromRoot);
         m_hBar->setFrameRect(hBarRect);
     }
-    
+
     if (m_scrollCorner)
         m_scrollCorner->setFrameRect(scrollCorner);
     if (m_resizer)
@@ -3146,7 +3146,7 @@
 
     if (scrollCornerRect().intersects(localRect))
         return true;
-    
+
     if (resizerCornerRect(borderBox, ResizerForPointer).intersects(localRect))
         return true;
 
@@ -3163,7 +3163,7 @@
     // on top of everything else. If this is the normal painting pass, paintingOverlayControls
     // will be false, and we should just tell the root layer that there are overlay scrollbars
     // that need to be painted. That will cause the second pass through the layer tree to run,
-    // and we'll paint the scrollbars then. In the meantime, cache tx and ty so that the 
+    // and we'll paint the scrollbars then. In the meantime, cache tx and ty so that the
     // second pass doesn't need to re-enter the RenderTree to get it right.
     if (hasOverlayScrollbars() && !paintingOverlayControls) {
         m_cachedOverlayScrollbarOffset = paintOffset;
@@ -3211,7 +3211,7 @@
     // We fill our scroll corner with white if we have a scrollbar that doesn't run all the way up to the
     // edge of the box.
     paintScrollCorner(context, adjustedPaintOffset, damageRect);
-    
+
     // Paint our resizer last, since it sits on top of the scroll corner.
     paintResizer(context, adjustedPaintOffset, damageRect);
 }
@@ -3331,7 +3331,7 @@
 
     RenderBox* box = renderBox();
     ASSERT(box);
-    
+
     IntRect resizeControlRect;
     if (renderer()->style()->resize() != RESIZE_NONE) {
         resizeControlRect = resizerCornerRect(box->pixelSnappedBorderBoxRect(), ResizerForPointer);
@@ -3404,13 +3404,13 @@
 {
     if (startLayer == endLayer)
         return true;
-    
+
     RenderView* view = startLayer->renderer()->view();
     for (RenderBlock* currentBlock = startLayer->renderer()->containingBlock(); currentBlock && currentBlock != view; currentBlock = currentBlock->containingBlock()) {
         if (currentBlock->layer() == endLayer)
             return true;
     }
-    
+
     return false;
 }
 
@@ -3421,7 +3421,7 @@
         return;
     context->save();
     context->clip(pixelSnappedIntRect(clipRect.rect()));
-    
+
     if (!clipRect.hasRadius())
         return;
 
@@ -3467,7 +3467,7 @@
 {
     return paintingReflection && !layer->has3DTransform();
 }
-    
+
 static inline bool shouldSuppressPaintingLayer(RenderLayer* layer)
 {
     // Avoid painting descendants of the root layer when stylesheets haven't loaded. This eliminates FOUC.
@@ -3509,7 +3509,7 @@
 
     if (shouldSuppressPaintingLayer(this))
         return;
-    
+
     // If this layer is totally invisible then there is nothing to paint.
     if (!renderer()->opacity())
         return;
@@ -3545,7 +3545,7 @@
                 IgnoreOverlayScrollbarSize, (paintFlags & PaintLayerPaintingOverflowContents) ? IgnoreOverflowClip : RespectOverflowClip);
             clipRect = backgroundClipRect(clipRectsContext);
             clipRect.intersect(paintingInfo.paintDirtyRect);
-        
+
             // Push the parent coordinate space's clip.
             parent()->clipToRect(paintingInfo.rootLayer, context, paintingInfo.paintDirtyRect, clipRect);
         }
@@ -3558,7 +3558,7 @@
 
         return;
     }
-    
+
     paintLayerContentsAndReflection(context, paintingInfo, paintFlags);
 }
 
@@ -3607,7 +3607,7 @@
     context->setUseHighResMarkers(deviceScaleFactor > 1.5f);
 
     GraphicsContext* transparencyLayerContext = context;
-    
+
     if (localPaintFlags & PaintLayerPaintingRootBackgroundOnly && !renderer()->isRenderView() && !renderer()->isRoot())
         return;
 
@@ -3672,7 +3672,7 @@
 
             // Rewire the old context to a memory buffer, so that we can capture the contents of the layer.
             // NOTE: We saved the old context in the "transparencyLayerContext" local variable, to be able to start a transparency layer
-            // on the original context and avoid duplicating "beginFilterEffect" after each transparency layer call. Also, note that 
+            // on the original context and avoid duplicating "beginFilterEffect" after each transparency layer call. Also, note that
             // beginTransparencyLayers will only create a single lazy transparency layer, even though it is called twice in this method.
             context = filterPainter.beginFilterEffect(context);
 
@@ -3705,7 +3705,7 @@
 
     bool forceBlackText = localPaintingInfo.paintBehavior & PaintBehaviorForceBlackText;
     bool selectionOnly  = localPaintingInfo.paintBehavior & PaintBehaviorSelectionOnly;
-    
+
     PaintBehavior paintBehavior = PaintBehaviorNormal;
     if (localPaintFlags & PaintLayerPaintingSkipRootBackground)
         paintBehavior |= PaintBehaviorSkipRootBackground;
@@ -3721,7 +3721,7 @@
             (isPaintingOverflowContents) ? IgnoreOverflowClip : RespectOverflowClip, &offsetFromRoot);
         updatePaintingInfoForFragments(layerFragments, localPaintingInfo, localPaintFlags, shouldPaintContent, &offsetFromRoot);
     }
-    
+
     if (isPaintingCompositedBackground) {
         // Paint only the backgrounds for all of the fragments of the layer.
         if (shouldPaintContent && !selectionOnly)
@@ -3732,7 +3732,7 @@
     // Now walk the sorted list of children with negative z-indices.
     if ((isPaintingScrollingContent && isPaintingOverflowContents) || (!isPaintingScrollingContent && isPaintingCompositedBackground))
         paintList(negZOrderList(), context, localPaintingInfo, localPaintFlags);
-    
+
     if (isPaintingCompositedForeground) {
         if (shouldPaintContent)
             paintForegroundForFragments(layerFragments, context, transparencyLayerContext, paintingInfo.paintDirtyRect, haveTransparency,
@@ -3745,7 +3745,7 @@
     if (isPaintingCompositedForeground) {
         // Paint any child layers that have overflow.
         paintList(m_normalFlowList.get(), context, localPaintingInfo, localPaintFlags);
-    
+
         // Now walk the sorted list of children with positive z-indices.
         paintList(posZOrderList(), context, localPaintingInfo, localPaintFlags);
     }
@@ -3761,7 +3761,7 @@
         context = filterPainter.applyFilterEffect();
         restoreClip(transparencyLayerContext, localPaintingInfo.paintDirtyRect, backgroundRect);
     }
-    
+
     // Make sure that we now use the original transparency context.
     ASSERT(transparencyLayerContext == context);
 
@@ -3836,11 +3836,11 @@
         fragments.append(fragment);
         return;
     }
-    
+
     // Compute our offset within the enclosing pagination layer.
     LayoutPoint offsetWithinPaginatedLayer;
     convertToLayerCoords(enclosingPaginationLayer(), offsetWithinPaginatedLayer);
-    
+
     // Calculate clip rects relative to the enclosingPaginationLayer. The purpose of this call is to determine our bounds clipped to intermediate
     // layers between us and the pagination context. It's important to minimize the number of fragments we need to create and this helps with that.
     ClipRectsContext paginationClipRectsContext(enclosingPaginationLayer(), region, clipRectsType, inOverlayScrollbarSizeRelevancy, respectOverflowClip);
@@ -3850,7 +3850,7 @@
     ClipRect outlineRectInFlowThread;
     calculateRects(paginationClipRectsContext, PaintInfo::infiniteRect(), layerBoundsInFlowThread, backgroundRectInFlowThread, foregroundRectInFlowThread,
         outlineRectInFlowThread, &offsetWithinPaginatedLayer);
-    
+
     // Take our bounding box within the flow thread and clip it.
     LayoutRect layerBoundingBoxInFlowThread = layerBoundingBox ? *layerBoundingBox : boundingBox(enclosingPaginationLayer(), 0, &offsetWithinPaginatedLayer);
     layerBoundingBoxInFlowThread.intersect(backgroundRectInFlowThread.rect());
@@ -3865,10 +3865,10 @@
     // that intersect the actual dirtyRect as well as the pages/columns that intersect our layer's bounding box.
     RenderFlowThread* enclosingFlowThread = toRenderFlowThread(enclosingPaginationLayer()->renderer());
     enclosingFlowThread->collectLayerFragments(fragments, layerBoundingBoxInFlowThread, dirtyRectInFlowThread);
-    
+
     if (fragments.isEmpty())
         return;
-    
+
     // Get the parent clip rects of the pagination layer, since we need to intersect with that when painting column contents.
     ClipRect ancestorClipRect = dirtyRect;
     if (enclosingPaginationLayer()->parent()) {
@@ -3879,17 +3879,17 @@
 
     for (size_t i = 0; i < fragments.size(); ++i) {
         LayerFragment& fragment = fragments.at(i);
-        
+
         // Set our four rects with all clipping applied that was internal to the flow thread.
         fragment.setRects(layerBoundsInFlowThread, backgroundRectInFlowThread, foregroundRectInFlowThread, outlineRectInFlowThread);
-        
+
         // Shift to the root-relative physical position used when painting the flow thread in this fragment.
         fragment.moveBy(fragment.paginationOffset + offsetOfPaginationLayerFromRoot);
 
         // Intersect the fragment with our ancestor's background clip so that e.g., columns in an overflow:hidden block are
         // properly clipped by the overflow.
         fragment.intersect(ancestorClipRect.rect());
-        
+
         // Now intersect with our pagination clip. This will typically mean we're just intersecting the dirty rect with the column
         // clip, so the column clip ends up being all we apply.
         fragment.intersect(fragment.paginationClip);
@@ -3918,18 +3918,18 @@
     enclosingPaginationLayer()->collectFragments(enclosingPaginationFragments, paintingInfo.rootLayer, paintingInfo.region, paintingInfo.paintDirtyRect,
         (paintFlags & PaintLayerTemporaryClipRects) ? TemporaryClipRects : PaintingClipRects, IgnoreOverlayScrollbarSize,
         (paintFlags & PaintLayerPaintingOverflowContents) ? IgnoreOverflowClip : RespectOverflowClip, &offsetOfPaginationLayerFromRoot, &transformedExtent);
-    
+
     for (size_t i = 0; i < enclosingPaginationFragments.size(); ++i) {
         const LayerFragment& fragment = enclosingPaginationFragments.at(i);
-        
+
         // Apply the page/column clip for this fragment, as well as any clips established by layers in between us and
         // the enclosing pagination layer.
         LayoutRect clipRect = fragment.backgroundRect.rect();
-        
+
         // Now compute the clips within a given fragment
         if (parent() != enclosingPaginationLayer()) {
             enclosingPaginationLayer()->convertToLayerCoords(paintingInfo.rootLayer, offsetOfPaginationLayerFromRoot);
-    
+
             ClipRectsContext clipRectsContext(enclosingPaginationLayer(), paintingInfo.region, (paintFlags & PaintLayerTemporaryClipRects) ? TemporaryClipRects : PaintingClipRects,
                 IgnoreOverlayScrollbarSize, (paintFlags & PaintLayerPaintingOverflowContents) ? IgnoreOverflowClip : RespectOverflowClip);
             LayoutRect parentClipRect = backgroundClipRect(clipRectsContext).rect();
@@ -3955,13 +3955,13 @@
         // Begin transparency layers lazily now that we know we have to paint something.
         if (haveTransparency)
             beginTransparencyLayers(transparencyLayerContext, localPaintingInfo.rootLayer, transparencyPaintDirtyRect, localPaintingInfo.paintBehavior);
-    
+
         if (localPaintingInfo.clipToDirtyRect) {
             // Paint our background first, before painting any child layers.
             // Establish the clip used to paint our background.
             clipToRect(localPaintingInfo.rootLayer, context, localPaintingInfo.paintDirtyRect, fragment.backgroundRect, DoNotIncludeSelfForBorderRadius); // Background painting will handle clipping to self.
         }
-        
+
         // Paint the background.
         // FIXME: Eventually we will collect the region from the fragment itself instead of just from the paint info.
         PaintInfo paintInfo(context, pixelSnappedIntRect(fragment.backgroundRect.rect()), PaintPhaseBlockBackground, paintBehavior, paintingRootForRenderer, localPaintingInfo.region, 0, 0, localPaintingInfo.rootLayer->renderer());
@@ -3986,25 +3986,25 @@
             }
         }
     }
-    
+
     PaintBehavior localPaintBehavior = forceBlackText ? (PaintBehavior)PaintBehaviorForceBlackText : paintBehavior;
 
     // Optimize clipping for the single fragment case.
     bool shouldClip = localPaintingInfo.clipToDirtyRect && layerFragments.size() == 1 && layerFragments[0].shouldPaintContent && !layerFragments[0].foregroundRect.isEmpty();
     if (shouldClip)
         clipToRect(localPaintingInfo.rootLayer, context, localPaintingInfo.paintDirtyRect, layerFragments[0].foregroundRect);
-    
+
     // We have to loop through every fragment multiple times, since we have to repaint in each specific phase in order for
     // interleaving of the fragments to work properly.
     paintForegroundForFragmentsWithPhase(selectionOnly ? PaintPhaseSelection : PaintPhaseChildBlockBackgrounds, layerFragments,
         context, localPaintingInfo, localPaintBehavior, paintingRootForRenderer);
-    
+
     if (!selectionOnly) {
         paintForegroundForFragmentsWithPhase(PaintPhaseFloat, layerFragments, context, localPaintingInfo, localPaintBehavior, paintingRootForRenderer);
         paintForegroundForFragmentsWithPhase(PaintPhaseForeground, layerFragments, context, localPaintingInfo, localPaintBehavior, paintingRootForRenderer);
         paintForegroundForFragmentsWithPhase(PaintPhaseChildOutlines, layerFragments, context, localPaintingInfo, localPaintBehavior, paintingRootForRenderer);
     }
-    
+
     if (shouldClip)
         restoreClip(context, localPaintingInfo.paintDirtyRect, layerFragments[0].foregroundRect);
 }
@@ -4018,15 +4018,15 @@
         const LayerFragment& fragment = layerFragments.at(i);
         if (!fragment.shouldPaintContent || fragment.foregroundRect.isEmpty())
             continue;
-        
+
         if (shouldClip)
             clipToRect(localPaintingInfo.rootLayer, context, localPaintingInfo.paintDirtyRect, fragment.foregroundRect);
-    
+
         PaintInfo paintInfo(context, pixelSnappedIntRect(fragment.foregroundRect.rect()), phase, paintBehavior, paintingRootForRenderer, localPaintingInfo.region, 0, 0, localPaintingInfo.rootLayer->renderer());
         if (phase == PaintPhaseForeground)
             paintInfo.overlapTestRequests = localPaintingInfo.overlapTestRequests;
         renderer()->paint(paintInfo, toPoint(fragment.layerBounds.location() - renderBoxLocation() + localPaintingInfo.subPixelAccumulation));
-        
+
         if (shouldClip)
             restoreClip(context, localPaintingInfo.paintDirtyRect, fragment.foregroundRect);
     }
@@ -4039,7 +4039,7 @@
         const LayerFragment& fragment = layerFragments.at(i);
         if (fragment.outlineRect.isEmpty())
             continue;
-    
+
         // Paint our own outline
         PaintInfo paintInfo(context, pixelSnappedIntRect(fragment.outlineRect.rect()), PaintPhaseSelfOutline, paintBehavior, paintingRootForRenderer, localPaintingInfo.region, 0, 0, localPaintingInfo.rootLayer->renderer());
         clipToRect(localPaintingInfo.rootLayer, context, localPaintingInfo.paintDirtyRect, fragment.outlineRect, DoNotIncludeSelfForBorderRadius);
@@ -4058,12 +4058,12 @@
 
         if (localPaintingInfo.clipToDirtyRect)
             clipToRect(localPaintingInfo.rootLayer, context, localPaintingInfo.paintDirtyRect, fragment.backgroundRect, DoNotIncludeSelfForBorderRadius); // Mask painting will handle clipping to self.
-        
+
         // Paint the mask.
         // FIXME: Eventually we will collect the region from the fragment itself instead of just from the paint info.
         PaintInfo paintInfo(context, pixelSnappedIntRect(fragment.backgroundRect.rect()), PaintPhaseMask, PaintBehaviorNormal, paintingRootForRenderer, localPaintingInfo.region, 0, 0, localPaintingInfo.rootLayer->renderer());
         renderer()->paint(paintInfo, toPoint(fragment.layerBounds.location() - renderBoxLocation() + localPaintingInfo.subPixelAccumulation));
-        
+
         if (localPaintingInfo.clipToDirtyRect)
             restoreClip(context, localPaintingInfo.paintDirtyRect, fragment.backgroundRect);
     }
@@ -4109,12 +4109,12 @@
     ASSERT(columnBlock && columnBlock->hasColumns());
     if (!columnBlock || !columnBlock->hasColumns())
         return;
-    
+
     LayoutPoint layerOffset;
     // FIXME: It looks suspicious to call convertToLayerCoords here
     // as canUseConvertToLayerCoords is true for this layer.
     columnBlock->layer()->convertToLayerCoords(paintingInfo.rootLayer, layerOffset);
-    
+
     bool isHorizontal = columnBlock->style()->isHorizontalWritingMode();
 
     ColumnInfo* colInfo = columnBlock->columnInfo();
@@ -4142,10 +4142,10 @@
 
         LayoutRect localDirtyRect(paintingInfo.paintDirtyRect);
         localDirtyRect.intersect(colRect);
-        
+
         if (!localDirtyRect.isEmpty()) {
             GraphicsContextStateSaver stateSaver(*context);
-            
+
             // Each strip pushes a clip, since column boxes are specified as being
             // like overflow:hidden.
             context->clip(pixelSnappedIntRect(colRect));
@@ -4158,9 +4158,9 @@
                     oldTransform = *childLayer->transform();
                 TransformationMatrix newTransform(oldTransform);
                 newTransform.translateRight(roundToInt(offset.width()), roundToInt(offset.height()));
-                
+
                 childLayer->m_transform = adoptPtr(new TransformationMatrix(newTransform));
-                
+
                 LayerPaintingInfo localPaintingInfo(paintingInfo);
                 localPaintingInfo.paintDirtyRect = localDirtyRect;
                 childLayer->paintLayer(context, localPaintingInfo, paintFlags);
@@ -4176,7 +4176,7 @@
                 columnLayers[colIndex - 1]->convertToLayerCoords(paintingInfo.rootLayer, childOffset);
                 TransformationMatrix transform;
                 transform.translateRight(roundToInt(childOffset.x() + offset.width()), roundToInt(childOffset.y() + offset.height()));
-                
+
                 // Apply the transform.
                 context->concatCTM(transform.toAffineTransform());
 
@@ -4225,8 +4225,8 @@
 
     RenderLayer* insideLayer = hitTestLayer(this, 0, request, result, hitTestArea, hitTestLocation, false);
     if (!insideLayer) {
-        // We didn't hit any layer. If we are the root layer and the mouse is -- or just was -- down, 
-        // return ourselves. We do this so mouse events continue getting delivered after a drag has 
+        // We didn't hit any layer. If we are the root layer and the mouse is -- or just was -- down,
+        // return ourselves. We do this so mouse events continue getting delivered after a drag has
         // exited the WebView, and so hit testing over a scrollbar hits the content document.
         if (!request.isChildFrameHitTest() && (request.active() || request.release()) && isRootLayer()) {
             renderer()->updateHitTestResult(result, toRenderView(renderer())->flipForWritingMode(hitTestLocation.point()));
@@ -4280,7 +4280,7 @@
 
     // Flatten the point into the target plane
     FloatPoint targetPoint = transformState.mappedPoint();
-    
+
     // Now map the point back through the transform, which computes Z.
     FloatPoint3D backmappedPoint = transformState.m_accumulatedTransform.mapPoint(FloatPoint3D(targetPoint));
     return backmappedPoint.z();
@@ -4313,7 +4313,7 @@
     } else {
         transformState->translate(offset.x(), offset.y(), HitTestingTransformState::AccumulateTransform);
     }
-    
+
     return transformState;
 }
 
@@ -4326,7 +4326,7 @@
     // The hit layer is depth-sorting with other layers, so just say that it was hit.
     if (canDepthSort)
         return true;
-    
+
     // We need to look at z-depth to decide if this layer was hit.
     if (zOffset) {
         ASSERT(transformState);
@@ -4347,8 +4347,8 @@
 // transformState.m_accumulatedTransform holds the transform from the containing flattening layer.
 // transformState.m_lastPlanarPoint is the hitTestLocation in the plane of the containing flattening layer.
 // transformState.m_lastPlanarQuad is the hitTestRect as a quad in the plane of the containing flattening layer.
-// 
-// If zOffset is non-null (which indicates that the caller wants z offset information), 
+//
+// If zOffset is non-null (which indicates that the caller wants z offset information),
 //  *zOffset on return is the z offset of the hit point relative to the containing flattening layer.
 RenderLayer* RenderLayer::hitTestLayer(RenderLayer* rootLayer, RenderLayer* containerLayer, const HitTestRequest& request, HitTestResult& result,
                                        const LayoutRect& hitTestRect, const HitTestLocation& hitTestLocation, bool appliedTransform,
@@ -4411,7 +4411,7 @@
     double localZOffset = -numeric_limits<double>::infinity();
     double* zOffsetForDescendantsPtr = 0;
     double* zOffsetForContentsPtr = 0;
-    
+
     bool depthSortDescendants = false;
     if (preserves3D()) {
         depthSortDescendants = true;
@@ -4525,7 +4525,7 @@
         if (hitTestContents(request, result, fragment.layerBounds, hitTestLocation, hitTestFilter))
             return true;
     }
-    
+
     return false;
 }
 
@@ -4539,7 +4539,7 @@
         if (fragment.backgroundRect.intersects(hitTestLocation) && resizerCornerRect(pixelSnappedIntRect(fragment.layerBounds), ResizerForPointer).contains(hitTestLocation.roundedPoint()))
             return true;
     }
-    
+
     return false;
 }
 
@@ -4554,21 +4554,21 @@
 
     for (int i = enclosingPaginationFragments.size() - 1; i >= 0; --i) {
         const LayerFragment& fragment = enclosingPaginationFragments.at(i);
-        
+
         // Apply the page/column clip for this fragment, as well as any clips established by layers in between us and
         // the enclosing pagination layer.
         LayoutRect clipRect = fragment.backgroundRect.rect();
-        
+
         // Now compute the clips within a given fragment
         if (parent() != enclosingPaginationLayer()) {
             enclosingPaginationLayer()->convertToLayerCoords(rootLayer, offsetOfPaginationLayerFromRoot);
-    
+
             ClipRectsContext clipRectsContext(enclosingPaginationLayer(), hitTestLocation.region(), RootRelativeClipRects, IncludeOverlayScrollbarSize);
             LayoutRect parentClipRect = backgroundClipRect(clipRectsContext).rect();
             parentClipRect.moveBy(fragment.paginationOffset + offsetOfPaginationLayerFromRoot);
             clipRect.intersect(parentClipRect);
         }
-        
+
         if (!hitTestLocation.intersects(clipRect))
             continue;
 
@@ -4577,7 +4577,7 @@
         if (hitLayer)
             return hitLayer;
     }
-    
+
     return 0;
 }
 
@@ -4633,14 +4633,14 @@
         if (!result.innerNonSharedNode())
             result.setInnerNonSharedNode(e);
     }
-        
+
     return true;
 }
 
 RenderLayer* RenderLayer::hitTestList(Vector<RenderLayer*>* list, RenderLayer* rootLayer,
                                       const HitTestRequest& request, HitTestResult& result,
                                       const LayoutRect& hitTestRect, const HitTestLocation& hitTestLocation,
-                                      const HitTestingTransformState* transformState, 
+                                      const HitTestingTransformState* transformState,
                                       double* zOffsetForDescendants, double* zOffset,
                                       const HitTestingTransformState* unflattenedTransformState,
                                       bool depthSortDescendants)
@@ -4805,7 +4805,7 @@
     if (m_clipRectsCache && m_clipRectsCache->getClipRects(clipRectsType, clipRectsContext.respectOverflowClip)) {
         ASSERT(clipRectsContext.rootLayer == m_clipRectsCache->m_clipRectsRoot[clipRectsType]);
         ASSERT(m_clipRectsCache->m_scrollbarRelevancy[clipRectsType] == clipRectsContext.overlayScrollbarSizeRelevancy);
-        
+
 #ifdef CHECK_CACHED_CLIP_RECTS
         // This code is useful to check cached clip rects, but is too expensive to leave enabled in debug builds by default.
         ClipRectsContext tempContext(clipRectsContext);
@@ -4816,7 +4816,7 @@
 #endif
         return; // We have the correct cached value.
     }
-    
+
     // For transformed layers, the root layer was shifted to be us, so there is no need to
     // examine the parent.  We want to cache clip rects with us as the root.
     RenderLayer* parentLayer = clipRectsContext.rootLayer != this ? parent() : 0;
@@ -4847,14 +4847,14 @@
         clipRects.reset(PaintInfo::infiniteRect());
         return;
     }
-    
+
     ClipRectsType clipRectsType = clipRectsContext.clipRectsType;
     bool useCached = clipRectsType != TemporaryClipRects;
 
     // For transformed layers, the root layer was shifted to be us, so there is no need to
     // examine the parent.  We want to cache clip rects with us as the root.
     RenderLayer* parentLayer = clipRectsContext.rootLayer != this ? parent() : 0;
-    
+
     // Ensure that our parent's clip has been calculated so that we can examine the values.
     if (parentLayer) {
         if (useCached && parentLayer->clipRects(clipRectsContext))
@@ -4877,7 +4877,7 @@
         clipRects.setPosClipRect(clipRects.overflowClipRect());
     else if (renderer()->style()->position() == AbsolutePosition)
         clipRects.setOverflowClipRect(clipRects.posClipRect());
-    
+
     // Update the clip rects that will be passed to child layers.
     if ((renderer()->hasOverflowClip() && (clipRectsContext.respectOverflowClip == RespectOverflowClip || this != clipRectsContext.rootLayer)) || renderer()->hasClip()) {
         // This layer establishes a clip of some kind.
@@ -4892,7 +4892,7 @@
         if (view && clipRects.fixed() && clipRectsContext.rootLayer->renderer() == view) {
             offset -= view->frameView()->scrollOffsetForFixedPosition();
         }
-        
+
         if (renderer()->hasOverflowClip()) {
             ClipRect newOverflowClip = toRenderBox(renderer())->overflowClipRect(offset, clipRectsContext.region, clipRectsContext.overlayScrollbarSizeRelevancy);
             if (renderer()->style()->hasBorderRadius())
@@ -4936,7 +4936,7 @@
 ClipRect RenderLayer::backgroundClipRect(const ClipRectsContext& clipRectsContext) const
 {
     ASSERT(parent());
-    
+
     ClipRects parentRects;
 
     // If we cross into a different pagination context, then we can't rely on the cache.
@@ -4947,7 +4947,7 @@
         parentClipRects(tempContext, parentRects);
     } else
         parentClipRects(clipRectsContext, parentRects);
-    
+
     ClipRect backgroundClipRect = backgroundClipRectForPosition(parentRects, renderer()->style()->position());
     RenderView* view = renderer()->view();
     ASSERT(view);
@@ -4970,7 +4970,7 @@
 
     foregroundRect = backgroundRect;
     outlineRect = backgroundRect;
-    
+
     LayoutPoint offset;
     if (offsetFromRoot)
         offset = *offsetFromRoot;
@@ -5105,7 +5105,7 @@
     if (isRootLayer() || renderer()->isRoot())
         return true;
 
-    // If we aren't an inline flow, and our layer bounds do intersect the damage rect, then we 
+    // If we aren't an inline flow, and our layer bounds do intersect the damage rect, then we
     // can go ahead and return true.
     RenderView* view = renderer()->view();
     ASSERT(view);
@@ -5115,7 +5115,7 @@
         if (b.intersects(damageRect))
             return true;
     }
-        
+
     // Otherwise we need to compute the bounding box of this single layer and see if it intersects
     // the damage rect.
     return boundingBox(rootLayer, 0, offsetFromRoot).intersects(damageRect);
@@ -5170,7 +5170,7 @@
 }
 
 LayoutRect RenderLayer::boundingBox(const RenderLayer* ancestorLayer, CalculateLayerBoundsFlags flags, const LayoutPoint* offsetFromRoot) const
-{    
+{
     LayoutRect result = localBoundingBox(flags);
     if (renderer()->isBox())
         renderBox()->flipForWritingMode(result);
@@ -5181,12 +5181,12 @@
         // Split our box up into the actual fragment boxes that render in the columns/pages and unite those together to
         // get our true bounding box.
         LayoutPoint offsetWithinPaginationLayer;
-        convertToLayerCoords(enclosingPaginationLayer(), offsetWithinPaginationLayer);        
+        convertToLayerCoords(enclosingPaginationLayer(), offsetWithinPaginationLayer);
         result.moveBy(offsetWithinPaginationLayer);
 
         RenderFlowThread* enclosingFlowThread = toRenderFlowThread(enclosingPaginationLayer()->renderer());
         result = enclosingFlowThread->fragmentsBoundingBox(result);
-        
+
         LayoutPoint delta;
         if (offsetFromRoot)
             delta = *offsetFromRoot;
@@ -5201,7 +5201,7 @@
         delta = *offsetFromRoot;
     else
         convertToLayerCoords(ancestorLayer, delta);
-    
+
     result.moveBy(delta);
     return result;
 }
@@ -5241,7 +5241,7 @@
         if (FrameView* frameView = renderer->view()->frameView()) {
             LayoutUnit contentsWidth = frameView->contentsWidth();
             LayoutUnit contentsHeight = frameView->contentsHeight();
-        
+
             boundingBoxRect.setWidth(max(boundingBoxRect.width(), contentsWidth - boundingBoxRect.x()));
             boundingBoxRect.setHeight(max(boundingBoxRect.height(), contentsHeight - boundingBoxRect.y()));
         }
@@ -5273,7 +5273,7 @@
             unionBounds.unite(childUnionBounds);
         }
     }
-    
+
     ASSERT(isStackingContainer() || (!posZOrderList() || !posZOrderList()->size()));
 
 #if !ASSERT_DISABLED
@@ -5331,7 +5331,7 @@
     else
         convertToLayerCoords(ancestorLayer, ancestorRelOffset);
     unionBounds.moveBy(ancestorRelOffset);
-    
+
     return pixelSnappedIntRect(unionBounds);
 }
 
@@ -5342,7 +5342,7 @@
         return;
 
     clearClipRects(typeToClear);
-    
+
     for (RenderLayer* l = firstChild(); l; l = l->nextSibling())
         l->clearClipRectsIncludingDescendants(typeToClear);
 }
@@ -5637,7 +5637,7 @@
             m_normalFlowList->append(child);
         }
     }
-    
+
     m_normalFlowListDirty = false;
 }
 
@@ -5682,7 +5682,7 @@
         // Create the buffer if it doesn't exist yet.
         if (!buffer)
             buffer = adoptPtr(new Vector<RenderLayer*>);
-        
+
         // Append ourselves at the end of the appropriate buffer.
         buffer->append(this);
     }
@@ -5830,7 +5830,7 @@
         if (!child->hasLayer()) {
             if (child->isRenderInline() || !child->isBox())
                 return true;
-        
+
             if (toRenderBox(child)->width() > 0 || toRenderBox(child)->height() > 0)
                 return true;
         }
@@ -6064,13 +6064,13 @@
         UseCounter::count(renderer()->document(), UseCounter::Reflection);
         updateReflectionStyle();
     }
-    
+
     // FIXME: Need to detect a swap from custom to native scrollbars (and vice versa).
     if (m_hBar)
         m_hBar->styleChanged();
     if (m_vBar)
         m_vBar->styleChanged();
-    
+
     updateScrollCornerStyle();
     updateResizerStyle();
 
@@ -6200,7 +6200,7 @@
 {
     RefPtr<RenderStyle> newStyle = RenderStyle::create();
     newStyle->inheritFrom(renderer()->style());
-    
+
     // Map in our transform.
     TransformOperations transform;
     switch (renderer()->style()->boxReflect()->direction()) {
@@ -6229,7 +6229,7 @@
 
     // Map in our mask.
     newStyle->setMaskBoxImage(renderer()->style()->boxReflect()->mask());
-    
+
     m_reflection->setStyle(newStyle.release());
 }
 
@@ -6279,13 +6279,13 @@
             RefPtr<CustomFilterProgram> program = customOperation->program();
             if (!program->isLoaded())
                 continue;
-            
+
             CustomFilterGlobalContext* globalContext = renderer()->view()->customFilterGlobalContext();
             RefPtr<CustomFilterValidatedProgram> validatedProgram = globalContext->getValidatedProgram(program->programInfo());
             if (!validatedProgram->isInitialized())
                 continue;
 
-            RefPtr<ValidatedCustomFilterOperation> validatedOperation = ValidatedCustomFilterOperation::create(validatedProgram.release(), 
+            RefPtr<ValidatedCustomFilterOperation> validatedOperation = ValidatedCustomFilterOperation::create(validatedProgram.release(),
                 customOperation->parameters(), customOperation->meshRows(), customOperation->meshColumns(), customOperation->meshType());
             outputFilters.operations().append(validatedOperation.release());
             continue;
@@ -6326,14 +6326,14 @@
 
         return;
     }
-    
+
     RenderLayerFilterInfo* filterInfo = ensureFilterInfo();
     if (!filterInfo->renderer()) {
         RefPtr<FilterEffectRenderer> filterRenderer = FilterEffectRenderer::create();
         RenderingMode renderingMode = renderer()->frame()->page()->settings()->acceleratedFiltersEnabled() ? Accelerated : Unaccelerated;
         filterRenderer->setRenderingMode(renderingMode);
         filterInfo->setRenderer(filterRenderer.release());
-        
+
         // We can optimize away code paths in other places if we know that there are no software filters.
         renderer()->document()->view()->setHasSoftwareFilters(true);
     }
diff --git a/Source/core/rendering/RenderLayer.h b/Source/core/rendering/RenderLayer.h
index 528b4ce..1ac295c 100644
--- a/Source/core/rendering/RenderLayer.h
+++ b/Source/core/rendering/RenderLayer.h
@@ -49,7 +49,7 @@
 #include "core/rendering/RenderBox.h"
 #include "core/rendering/RenderLayerScrollableArea.h"
 
-#include <wtf/OwnPtr.h>
+#include "wtf/OwnPtr.h"
 
 #include "core/rendering/RenderLayerFilterInfo.h"
 
@@ -85,12 +85,12 @@
     ClipRect()
     : m_hasRadius(false)
     { }
-    
+
     ClipRect(const LayoutRect& rect)
     : m_rect(rect)
     , m_hasRadius(false)
     { }
-    
+
     const LayoutRect& rect() const { return m_rect; }
     void setRect(const LayoutRect& rect) { m_rect = rect; }
 
@@ -154,7 +154,7 @@
         m_posClipRect = r;
         m_fixed = false;
     }
-    
+
     const ClipRect& overflowClipRect() const { return m_overflowClipRect; }
     void setOverflowClipRect(const ClipRect& r) { m_overflowClipRect = r; }
 
@@ -277,7 +277,7 @@
         foregroundRect = foreground;
         outlineRect = outline;
     }
-    
+
     void moveBy(const LayoutPoint& offset)
     {
         layerBounds.moveBy(offset);
@@ -286,23 +286,23 @@
         outlineRect.moveBy(offset);
         paginationClip.moveBy(offset);
     }
-    
+
     void intersect(const LayoutRect& rect)
     {
         backgroundRect.intersect(rect);
         foregroundRect.intersect(rect);
         outlineRect.intersect(rect);
     }
-    
+
     bool shouldPaintContent;
     LayoutRect layerBounds;
     ClipRect backgroundRect;
     ClipRect foregroundRect;
     ClipRect outlineRect;
-    
+
     // Unique to paginated fragments. The physical translation to apply to shift the layer when painting/hit-testing.
     LayoutPoint paginationOffset;
-    
+
     // Also unique to paginated fragments. An additional clip that applies to the layer. It is in layer-local
     // (physical) coordinates.
     LayoutRect paginationClip;
@@ -368,7 +368,7 @@
             curr = curr->parent();
         return curr;
     }
-    
+
     const LayoutPoint& location() const { return m_topLeft; }
     void setLocation(const LayoutPoint& p) { m_topLeft = p; }
 
@@ -442,7 +442,7 @@
     bool isRootLayer() const { return m_isRootLayer; }
 
     RenderLayerCompositor* compositor() const;
-    
+
     // Notification from the renderer that its content changed (e.g. current frame of image changed).
     // Allows updates of layer content without repainting.
     void contentChanged(ContentChangeType);
@@ -601,7 +601,7 @@
         PaintLayerPaintingSkipRootBackground = 1 << 11,
         PaintLayerPaintingCompositingAllPhases = (PaintLayerPaintingCompositingBackgroundPhase | PaintLayerPaintingCompositingForegroundPhase | PaintLayerPaintingCompositingMaskPhase)
     };
-    
+
     typedef unsigned PaintLayerFlags;
 
     // The two main functions that use the layer system.  The paint method
@@ -683,7 +683,7 @@
 
     // Can pass offsetFromRoot if known.
     IntRect calculateLayerBounds(const RenderLayer* ancestorLayer, const LayoutPoint* offsetFromRoot = 0, CalculateLayerBoundsFlags = DefaultCalculateLayerBoundsFlags) const;
-    
+
     // WARNING: This method returns the offset for the parent as this is what updateLayerPositions expects.
     LayoutPoint computeOffsetFromRoot(bool& hasLayerOffset) const;
 
@@ -695,7 +695,7 @@
 
     LayoutUnit staticInlinePosition() const { return m_staticInlinePosition; }
     LayoutUnit staticBlockPosition() const { return m_staticBlockPosition; }
-   
+
     void setStaticInlinePosition(LayoutUnit position) { m_staticInlinePosition = position; }
     void setStaticBlockPosition(LayoutUnit position) { m_staticBlockPosition = position; }
 
@@ -707,7 +707,7 @@
     // returns the identity matrix.
     TransformationMatrix currentTransform(RenderStyle::ApplyTransformOrigin = RenderStyle::IncludeTransformOrigin) const;
     TransformationMatrix renderableTransform(PaintBehavior) const;
-    
+
     // Get the perspective transform, which is applied to transformed sublayers.
     // Returns true if the layer has a -webkit-perspective.
     // Note that this transform has the perspective-origin baked in.
@@ -757,20 +757,20 @@
     FilterOperations computeFilterOperations(const RenderStyle*);
     bool paintsWithFilters() const;
     bool requiresFullLayerImageForFilters() const;
-    FilterEffectRenderer* filterRenderer() const 
+    FilterEffectRenderer* filterRenderer() const
     {
         RenderLayerFilterInfo* filterInfo = this->filterInfo();
         return filterInfo ? filterInfo->renderer() : 0;
     }
-    
+
     RenderLayerFilterInfo* filterInfo() const { return hasFilterInfo() ? RenderLayerFilterInfo::filterInfoForRenderLayer(this) : 0; }
     RenderLayerFilterInfo* ensureFilterInfo() { return RenderLayerFilterInfo::createFilterInfoForRenderLayerIfNeeded(this); }
-    void removeFilterInfoIfNeeded() 
+    void removeFilterInfoIfNeeded()
     {
         if (hasFilterInfo())
-            RenderLayerFilterInfo::removeFilterInfoForRenderLayer(this); 
+            RenderLayerFilterInfo::removeFilterInfoForRenderLayer(this);
     }
-    
+
     bool hasFilterInfo() const { return m_hasFilterInfo; }
     void setHasFilterInfo(bool hasFilterInfo) { m_hasFilterInfo = hasFilterInfo; }
 
@@ -816,7 +816,10 @@
     bool requiresScrollableArea() const
     {
         // We don't use hasOverflowClip as it is not set on a lot of cases (e.g. non-block and root).
-        return renderer()->style()->overflowX() != OVISIBLE || canResize() || usesCompositedScrolling();
+        // FIXME: It's wrong to check for scrollbars here but the scrollbar / scrollablearea code is
+        // entangled and racy at the moment so we need to hold onto the ScrollableArea as long as we
+        // have scrollbars. This check will go away once the scrollbars have been moved to RenderLayerScrollableArea.
+        return renderer()->style()->overflowX() != OVISIBLE || canResize() || usesCompositedScrolling() || m_hBar || m_vBar;
     }
 
     enum CollectLayersBehavior {
@@ -934,7 +937,7 @@
         PaintBehavior paintBehavior;
         bool clipToDirtyRect;
     };
-        
+
     void paintLayer(GraphicsContext*, const LayerPaintingInfo&, PaintLayerFlags);
     void paintLayerContentsAndReflection(GraphicsContext*, const LayerPaintingInfo&, PaintLayerFlags);
     void paintLayerByApplyingTransform(GraphicsContext*, const LayerPaintingInfo&, PaintLayerFlags, const LayoutPoint& translationOffset = LayoutPoint());
@@ -980,7 +983,7 @@
                             const LayoutRect& hitTestRect, const HitTestLocation&,
                             const HitTestingTransformState* containerTransformState,
                             const LayoutPoint& translationOffset = LayoutPoint()) const;
-    
+
     bool hitTestContents(const HitTestRequest&, HitTestResult&, const LayoutRect& layerBounds, const HitTestLocation&, HitTestFilter) const;
     bool hitTestContentsForFragments(const LayerFragments&, const HitTestRequest&, HitTestResult&, const HitTestLocation&, HitTestFilter, bool& insideClipRect) const;
     bool hitTestResizerInFragments(const LayerFragments&, const HitTestLocation&) const;
@@ -1067,7 +1070,7 @@
     // This flag is computed by RenderLayerCompositor, which knows more about 3d hierarchies than we do.
     void setHas3DTransformedDescendant(bool b) { m_has3DTransformedDescendant = b; }
     bool has3DTransformedDescendant() const { return m_has3DTransformedDescendant; }
-    
+
     void dirty3DTransformedDescendantStatus();
     // Both updates the status, and returns true if descendants of this have 3d.
     bool update3DTransformedDescendantStatus();
@@ -1099,10 +1102,10 @@
     void drawPlatformResizerImage(GraphicsContext*, IntRect resizerCornerRect);
 
     void updatePagination();
-    
+
     // FIXME: Temporary. Remove when new columns come online.
     bool useRegionBasedColumns() const;
-    
+
     bool hasCompositingDescendant() const { return m_compositingProperties.hasCompositingDescendant; }
     void setHasCompositingDescendant(bool b)  { m_compositingProperties.hasCompositingDescendant = b; }
 
@@ -1242,7 +1245,7 @@
     OwnPtr<Vector<RenderLayer*> > m_normalFlowList;
 
     OwnPtr<ClipRectsCache> m_clipRectsCache;
-    
+
     IntPoint m_cachedOverlayScrollbarOffset;
 
     // Cached normal flow values for absolute positioned elements with static left/top values.
@@ -1250,10 +1253,10 @@
     LayoutUnit m_staticBlockPosition;
 
     OwnPtr<TransformationMatrix> m_transform;
-    
+
     // May ultimately be extended to many replicas (with their own paint order).
     RenderReplica* m_reflection;
-        
+
     // Renderers to hold our custom scroll corner and resizer.
     RenderScrollbarPart* m_scrollCorner;
     RenderScrollbarPart* m_resizer;
@@ -1322,7 +1325,7 @@
     {
         m_layer->setLayerListMutationAllowed(false);
     }
-    
+
     ~LayerListMutationDetector()
     {
         m_layer->setLayerListMutationAllowed(m_previousMutationAllowedState);
diff --git a/Source/core/rendering/RenderLayerBacking.cpp b/Source/core/rendering/RenderLayerBacking.cpp
index ca15213..3e23e44 100644
--- a/Source/core/rendering/RenderLayerBacking.cpp
+++ b/Source/core/rendering/RenderLayerBacking.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -53,8 +53,8 @@
 #include "core/rendering/RenderVideo.h"
 #include "core/rendering/RenderView.h"
 #include "core/rendering/style/KeyframeList.h"
-#include <wtf/CurrentTime.h>
-#include <wtf/text/StringBuilder.h>
+#include "wtf/CurrentTime.h"
+#include "wtf/text/StringBuilder.h"
 
 #include "core/platform/graphics/filters/custom/CustomFilterOperation.h"
 #include "core/rendering/FilterEffectRenderer.h"
@@ -165,7 +165,7 @@
             m_isMainFrameRenderViewLayer = true;
         }
     }
-    
+
     createPrimaryGraphicsLayer();
 }
 
@@ -205,7 +205,7 @@
 #ifndef NDEBUG
     layerName = m_owningLayer->debugName();
 #endif
-    
+
     m_graphicsLayer = createGraphicsLayer(layerName, m_owningLayer->compositingReasons());
 
 #if !OS(ANDROID)
@@ -251,7 +251,7 @@
         style->applyTransform(t, toRenderBox(renderer())->pixelSnappedBorderBoxRect().size(), RenderStyle::ExcludeTransformOrigin);
         makeMatrixRenderable(t, compositor()->canRender3DTransforms());
     }
-    
+
     m_graphicsLayer->setTransform(t);
 }
 
@@ -303,7 +303,7 @@
         if (curr->hasTransform() || curr->needsCompositedScrolling())
             return true;
     }
-    
+
     return false;
 }
 
@@ -347,7 +347,7 @@
         m_boundsConstrainedByClipping = true;
     } else
         m_boundsConstrainedByClipping = false;
-    
+
     // If the element has a transform-origin that has fixed lengths, and the renderer has zero size,
     // then we need to ensure that the compositing layer has non-zero size so that we can apply
     // the transform-origin via the GraphicsLayer anchorPoint (which is expressed as a fractional value).
@@ -384,14 +384,14 @@
     if (!layerCompositor->compositingLayersNeedRebuild()) {
         // Calling updateGraphicsLayerGeometry() here gives incorrect results, because the
         // position of this layer's GraphicsLayer depends on the position of our compositing
-        // ancestor's GraphicsLayer. That cannot be determined until all the descendant 
+        // ancestor's GraphicsLayer. That cannot be determined until all the descendant
         // RenderLayers of that ancestor have been processed via updateLayerPositions().
         //
         // The solution is to update compositing children of this layer here,
         // via updateCompositingChildrenGeometry().
         updateCompositedBounds();
         layerCompositor->updateCompositingDescendantGeometry(m_owningLayer, m_owningLayer, flags & CompositingChildrenOnly);
-        
+
         if (flags & IsUpdateRoot) {
             updateGraphicsLayerGeometry();
             layerCompositor->updateRootLayerPosition();
@@ -400,7 +400,7 @@
                 layerCompositor->updateCompositingDescendantGeometry(stackingContainer, stackingContainer, flags & CompositingChildrenOnly);
         }
     }
-    
+
     if (flags & NeedsFullRepaint && !paintsIntoCompositedAncestor())
         setContentsNeedDisplay();
 }
@@ -415,14 +415,14 @@
 
     bool layerConfigChanged = false;
     setBackgroundLayerPaintsFixedRootBackground(compositor->needsFixedRootBackgroundLayer(m_owningLayer));
-    
+
     // The background layer is currently only used for fixed root backgrounds.
     if (updateBackgroundLayer(m_backgroundLayerPaintsFixedRootBackground))
         layerConfigChanged = true;
 
     if (updateForegroundLayer(compositor->needsContentsCompositingLayer(m_owningLayer)))
         layerConfigChanged = true;
-    
+
     bool needsDescendentsClippingLayer = compositor->clipsCompositingDescendants(m_owningLayer);
 
     // Our scrolling layer will clip.
@@ -506,7 +506,7 @@
         updateLayerBlendMode(renderer()->style());
 
     bool isSimpleContainer = isSimpleContainerCompositingLayer();
-    
+
     m_owningLayer->updateDescendantDependentFlags();
 
     // m_graphicsLayer is the corresponding GraphicsLayer for this RenderLayer and its non-compositing
@@ -521,7 +521,7 @@
     m_graphicsLayer->setBackfaceVisibility(style->backfaceVisibility() == BackfaceVisibilityVisible);
 
     RenderLayer* compAncestor = m_owningLayer->ancestorCompositingLayer();
-    
+
     // We compute everything relative to the enclosing compositing layer.
     IntRect ancestorCompositingBounds;
     if (compAncestor) {
@@ -553,7 +553,7 @@
         IntPoint scrollOrigin(renderBox->borderLeft(), renderBox->borderTop());
         graphicsLayerParentLocation = scrollOrigin - scrollOffset;
     }
-    
+
     if (compAncestor && m_ancestorClippingLayer) {
         // Call calculateRects to get the backgroundRect which is what is used to clip the contents of this
         // layer. Note that we call it with temporaryClipRects = true because normally when computing clip rects
@@ -572,10 +572,10 @@
     }
 
     FloatSize contentsSize = relativeCompositingBounds.size();
-    
+
     m_graphicsLayer->setPosition(FloatPoint(relativeCompositingBounds.location() - graphicsLayerParentLocation));
     m_graphicsLayer->setOffsetFromRenderer(toIntSize(localCompositingBounds.location()));
-    
+
     FloatSize oldSize = m_graphicsLayer->size();
     if (oldSize != contentsSize) {
         m_graphicsLayer->setSize(contentsSize);
@@ -594,7 +594,7 @@
         clipLayer->setSize(clippingBox.size());
         clipLayer->setOffsetFromRenderer(toIntSize(clippingBox.location()));
     }
-    
+
     if (m_maskLayer) {
         if (m_maskLayer->size() != m_graphicsLayer->size()) {
             m_maskLayer->setSize(m_graphicsLayer->size());
@@ -603,7 +603,7 @@
         m_maskLayer->setPosition(FloatPoint());
         m_maskLayer->setOffsetFromRenderer(m_graphicsLayer->offsetFromRenderer());
     }
-    
+
     if (m_owningLayer->hasTransform()) {
         const IntRect borderBox = toRenderBox(renderer())->pixelSnappedBorderBoxRect();
 
@@ -622,7 +622,7 @@
         GraphicsLayer* clipLayer = clippingLayer();
         if (style->hasPerspective()) {
             TransformationMatrix t = owningLayer()->perspectiveTransform();
-            
+
             if (clipLayer) {
                 clipLayer->setChildrenTransform(t);
                 m_graphicsLayer->setChildrenTransform(TransformationMatrix());
@@ -676,7 +676,7 @@
     if (m_owningLayer->reflectionLayer() && m_owningLayer->reflectionLayer()->isComposited()) {
         RenderLayerBacking* reflectionBacking = m_owningLayer->reflectionLayer()->backing();
         reflectionBacking->updateGraphicsLayerGeometry();
-        
+
         // The reflection layer has the bounds of m_owningLayer->reflectionLayer(),
         // but the reflected layer is the bounds of this layer, so we need to position it appropriately.
         FloatRect layerBounds = compositedBounds();
@@ -764,7 +764,7 @@
     // so it's not inserted here.
     if (m_ancestorClippingLayer)
         m_ancestorClippingLayer->removeAllChildren();
-    
+
     m_graphicsLayer->removeFromParent();
 
     if (m_ancestorClippingLayer)
@@ -864,7 +864,7 @@
         m_ancestorClippingLayer = nullptr;
         layersChanged = true;
     }
-    
+
     if (needsDescendantClip) {
         // We don't need a child containment layer if we're the main frame render view
         // layer. It's redundant as the frame clip above us will handle this clipping.
@@ -878,7 +878,7 @@
         m_childContainmentLayer = nullptr;
         layersChanged = true;
     }
-    
+
     return layersChanged;
 }
 
@@ -945,7 +945,7 @@
         }
         layer->setDrawsContent(hBar && !layer->hasContentsLayer());
     }
-    
+
     if (GraphicsLayer* layer = layerForVerticalScrollbar()) {
         Scrollbar* vBar = m_owningLayer->verticalScrollbar();
         if (vBar) {
@@ -1130,18 +1130,18 @@
 float RenderLayerBacking::compositingOpacity(float rendererOpacity) const
 {
     float finalOpacity = rendererOpacity;
-    
+
     for (RenderLayer* curr = m_owningLayer->parent(); curr; curr = curr->parent()) {
         // We only care about parents that are stacking contexts.
         // Recall that opacity creates stacking context.
         if (!curr->isStackingContainer())
             continue;
-        
+
         // If we found a compositing layer, we want to compute opacity
         // relative to it. So we can break here.
         if (curr->isComposited())
             break;
-        
+
         finalOpacity *= curr->renderer()->opacity();
     }
 
@@ -1206,7 +1206,7 @@
 {
     if (m_owningLayer->hasVisibleContent() && m_owningLayer->hasNonEmptyChildRenderers())
         return true;
-        
+
     if (hasVisibleNonCompositingDescendantLayers())
         return true;
 
@@ -1229,7 +1229,7 @@
 
     if (renderObject->isReplaced() && !isCompositedPlugin(renderObject))
         return false;
-    
+
     if (paintsBoxDecorations() || paintsChildren())
         return false;
 
@@ -1241,22 +1241,22 @@
         RenderObject* rootObject = renderObject->document()->documentElement() ? renderObject->document()->documentElement()->renderer() : 0;
         if (!rootObject)
             return false;
-        
+
         RenderStyle* style = rootObject->style();
-        
+
         // Reject anything that has a border, a border-radius or outline,
         // or is not a simple background (no background, or solid color).
         if (hasBoxDecorationsOrBackgroundImage(style))
             return false;
-        
+
         // Now look at the body's renderer.
         HTMLElement* body = renderObject->document()->body();
         RenderObject* bodyObject = (body && body->hasLocalName(bodyTag)) ? body->renderer() : 0;
         if (!bodyObject)
             return false;
-        
+
         style = bodyObject->style();
-        
+
         if (hasBoxDecorationsOrBackgroundImage(style))
             return false;
     }
@@ -1339,7 +1339,7 @@
 bool RenderLayerBacking::isDirectlyCompositedImage() const
 {
     RenderObject* renderObject = renderer();
-    
+
     if (!renderObject->isImage() || m_owningLayer->hasBoxDecorationsOrBackground() || renderObject->hasClip())
         return false;
 
@@ -1398,7 +1398,7 @@
     m_graphicsLayer->setContentsToImage(image);
     bool isSimpleContainer = false;
     updateDrawsContent(isSimpleContainer);
-    
+
     // Image animation is "lazy", in that it automatically stops unless someone is drawing
     // the image. So we have to kick the animation each time; this has the downside that the
     // image will keep animating, even if its layer is not visible.
@@ -1471,14 +1471,14 @@
 {
     if (requiresOwnBacking == m_requiresOwnBackingStore)
         return;
-    
+
     m_requiresOwnBackingStore = requiresOwnBacking;
 
     // This affects the answer to paintsIntoCompositedAncestor(), which in turn affects
     // cached clip rects, so when it changes we have to clear clip rects on descendants.
     m_owningLayer->clearClipRectsIncludingDescendants(PaintingClipRects);
     m_owningLayer->computeRepaintRectsIncludingDescendants();
-    
+
     compositor()->repaintInCompositedAncestor(m_owningLayer, compositedBounds());
 }
 
@@ -1489,10 +1489,10 @@
 void RenderLayerBacking::setContentsNeedDisplay()
 {
     ASSERT(!paintsIntoCompositedAncestor());
-    
+
     if (m_graphicsLayer && m_graphicsLayer->drawsContent())
         m_graphicsLayer->setNeedsDisplay();
-    
+
     if (m_foregroundLayer && m_foregroundLayer->drawsContent())
         m_foregroundLayer->setNeedsDisplay();
 
@@ -1553,7 +1553,7 @@
     }
 
     FontCachePurgePreventer fontCachePurgePreventer;
-    
+
     RenderLayer::PaintLayerFlags paintFlags = 0;
     if (paintingPhase & GraphicsLayerPaintBackground)
         paintFlags |= RenderLayer::PaintLayerPaintingCompositingBackgroundPhase;
@@ -1570,7 +1570,7 @@
         paintFlags |= (RenderLayer::PaintLayerPaintingRootBackgroundOnly | RenderLayer::PaintLayerPaintingCompositingForegroundPhase); // Need PaintLayerPaintingCompositingForegroundPhase to walk child layers.
     else if (compositor()->fixedRootBackgroundLayer())
         paintFlags |= RenderLayer::PaintLayerPaintingSkipRootBackground;
-    
+
     // FIXME: GraphicsLayers need a way to split for RenderRegions.
     RenderLayer::LayerPaintingInfo paintingInfo(m_owningLayer, paintDirtyRect, paintBehavior, LayoutSize());
     m_owningLayer->paintLayerContents(context, paintingInfo, paintFlags);
@@ -1678,7 +1678,7 @@
 
     if (!hasOpacity && !hasTransform && !hasFilter)
         return false;
-    
+
     KeyframeValueList transformVector(AnimatedPropertyWebkitTransform);
     KeyframeValueList opacityVector(AnimatedPropertyOpacity);
     KeyframeValueList filterVector(AnimatedPropertyWebkitFilter);
@@ -1691,14 +1691,14 @@
 
         if (!keyframeStyle)
             continue;
-            
+
         // Get timing function.
         RefPtr<TimingFunction> tf = keyframeStyle->hasAnimations() ? (*keyframeStyle->animations()).animation(0)->timingFunction() : 0;
-        
+
         bool isFirstOrLastKeyframe = key == 0 || key == 1;
         if ((hasTransform && isFirstOrLastKeyframe) || currentKeyframe.containsProperty(CSSPropertyWebkitTransform))
             transformVector.insert(adoptPtr(new TransformAnimationValue(key, &(keyframeStyle->transform()), tf)));
-        
+
         if ((hasOpacity && isFirstOrLastKeyframe) || currentKeyframe.containsProperty(CSSPropertyOpacity))
             opacityVector.insert(adoptPtr(new FloatAnimationValue(key, keyframeStyle->opacity(), tf)));
 
@@ -1869,14 +1869,14 @@
 
     if (m_graphicsLayer->drawsContent())
         return NormalCompositingLayer;
-    
+
     return ContainerCompositingLayer;
 }
 
 double RenderLayerBacking::backingStoreMemoryEstimate() const
 {
     double backingMemory;
-    
+
     // m_ancestorClippingLayer and m_childContainmentLayer are just used for masking or containment, so have no backing.
     backingMemory = m_graphicsLayer->backingStoreMemoryEstimate();
     if (m_foregroundLayer)
@@ -1897,7 +1897,7 @@
 
     if (m_layerForScrollCorner)
         backingMemory += m_layerForScrollCorner->backingStoreMemoryEstimate();
-    
+
     return backingMemory;
 }
 
diff --git a/Source/core/rendering/RenderLayerBacking.h b/Source/core/rendering/RenderLayerBacking.h
index c8d7fe2..1df576f 100644
--- a/Source/core/rendering/RenderLayerBacking.h
+++ b/Source/core/rendering/RenderLayerBacking.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderLayerBacking_h
@@ -47,7 +47,7 @@
 // RenderLayerBacking controls the compositing behavior for a single RenderLayer.
 // It holds the various GraphicsLayers, and makes decisions about intra-layer rendering
 // optimizations.
-// 
+//
 // There is one RenderLayerBacking for each RenderLayer that is composited.
 
 class RenderLayerBacking : public GraphicsLayerClient {
@@ -65,7 +65,7 @@
     };
     typedef unsigned UpdateAfterLayoutFlags;
     void updateAfterLayout(UpdateAfterLayoutFlags);
-    
+
     // Returns true if layer configuration changed.
     bool updateGraphicsLayerConfiguration();
     // Update graphics layer position and bounds.
@@ -88,7 +88,7 @@
 
     GraphicsLayer* backgroundLayer() const { return m_backgroundLayer.get(); }
     bool backgroundLayerPaintsFixedRootBackground() const { return m_backgroundLayerPaintsFixedRootBackground; }
-    
+
     bool hasScrollingLayer() const { return m_scrollingLayer; }
     GraphicsLayer* scrollingLayer() const { return m_scrollingLayer.get(); }
     GraphicsLayer* scrollingContentsLayer() const { return m_scrollingContentsLayer.get(); }
@@ -126,7 +126,7 @@
     IntRect compositedBounds() const;
     void setCompositedBounds(const IntRect&);
     void updateCompositedBounds();
-    
+
     void updateAfterWidgetResize();
     void positionOverflowControlsLayers(const IntSize& offsetFromRoot);
     bool hasUnpositionedOverflowControlsLayers() const;
@@ -147,10 +147,10 @@
 
     IntRect contentsBox() const;
     IntRect backgroundBox() const;
-    
+
     // For informative purposes only.
     CompositingLayerType compositingLayerType() const;
-    
+
     GraphicsLayer* layerForHorizontalScrollbar() const { return m_layerForHorizontalScrollbar.get(); }
     GraphicsLayer* layerForVerticalScrollbar() const { return m_layerForVerticalScrollbar.get(); }
     GraphicsLayer* layerForScrollCorner() const { return m_layerForScrollCorner.get(); }
@@ -166,7 +166,7 @@
 private:
     void createPrimaryGraphicsLayer();
     void destroyGraphicsLayers();
-    
+
     PassOwnPtr<GraphicsLayer> createGraphicsLayer(const String& name, CompositingReasons);
 
     RenderLayerModelObject* renderer() const { return m_owningLayer->renderer(); }
@@ -184,11 +184,11 @@
     bool updateScrollingLayers(bool scrollingLayers);
     void updateDrawsContent(bool isSimpleContainer);
     void registerScrollingLayers();
-    
+
     void setBackgroundLayerPaintsFixedRootBackground(bool);
 
     GraphicsLayerPaintingPhase paintingPhaseForPrimaryLayer() const;
-    
+
     IntSize contentOffsetInCompostingLayer() const;
     // Result is transform origin in pixels.
     FloatPoint3D computeTransformOrigin(const IntRect& borderBox) const;
@@ -200,9 +200,9 @@
     void updateLayerBlendMode(const RenderStyle*);
     // Return the opacity value that this layer should use for compositing.
     float compositingOpacity(float rendererOpacity) const;
-    
+
     bool isMainFrameRenderViewLayer() const;
-    
+
     bool paintsBoxDecorations() const;
     bool paintsChildren() const;
 
diff --git a/Source/core/rendering/RenderLayerCompositor.cpp b/Source/core/rendering/RenderLayerCompositor.cpp
index f736740..9a2f22b 100644
--- a/Source/core/rendering/RenderLayerCompositor.cpp
+++ b/Source/core/rendering/RenderLayerCompositor.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -176,7 +176,7 @@
 #endif
     {
     }
-    
+
     CompositingState(const CompositingState& other)
         : m_compositingAncestor(other.m_compositingAncestor)
         , m_subtreeIsCompositing(other.m_subtreeIsCompositing)
@@ -186,7 +186,7 @@
 #endif
     {
     }
-    
+
     RenderLayer* m_compositingAncestor;
     bool m_subtreeIsCompositing;
     bool m_testingOverlap;
@@ -238,7 +238,7 @@
 {
     if (enable != m_compositing) {
         m_compositing = enable;
-        
+
         if (m_compositing) {
             ensureRootLayer();
             notifyIFramesOfCompositingChange();
@@ -352,7 +352,7 @@
     AnimationUpdateBlock animationUpdateBlock(m_renderView->frameView()->frame()->animation());
 
     TemporaryChange<bool> postLayoutChange(m_inPostLayoutUpdate, true);
-    
+
     bool checkForHierarchyUpdate = m_reevaluateCompositingAfterLayout;
     bool needGeometryUpdate = false;
 
@@ -439,7 +439,7 @@
         // most of the time, geometry is updated via RenderLayer::styleChanged().
         updateLayerTreeGeometry(updateRoot, 0);
     }
-    
+
 #if !LOG_DISABLED
     if (compositingLogEnabled() && isFullUpdate && (needHierarchyUpdate || needGeometryUpdate)) {
         double endTime = currentTime();
@@ -478,7 +478,7 @@
 {
     if (!compositingLogEnabled())
         return;
-        
+
     RenderLayerBacking* backing = layer->backing();
     if (requiresCompositing(directReasonsForCompositing(layer)) || layer->isRootLayer()) {
         ++m_obligateCompositedLayerCount;
@@ -520,7 +520,7 @@
     // requirements fully.
     if (needsToBeComposited(layer)) {
         enableCompositingMode();
-        
+
         if (!layer->backing()) {
             // If we need to repaint, do so before making backing
             if (shouldRepaint == CompositingChangeRepaintNow)
@@ -544,7 +544,7 @@
     } else {
         if (layer->backing()) {
             // If we're removing backing on a reflection, clear the source GraphicsLayer's pointer to
-            // its replica GraphicsLayer. In practice this should never happen because reflectee and reflection 
+            // its replica GraphicsLayer. In practice this should never happen because reflectee and reflection
             // are both either composited, or not composited.
             if (layer->isReflection()) {
                 RenderLayer* sourceLayer = toRenderLayerModelObject(layer->renderer()->parent())->layer();
@@ -555,7 +555,7 @@
             }
 
             removeViewportConstrainedLayer(layer);
-            
+
             layer->clearBacking();
             layerChanged = true;
 
@@ -574,7 +574,7 @@
         if (innerCompositor && innerCompositor->inCompositingMode())
             innerCompositor->updateRootLayerAttachment();
     }
-    
+
     if (layerChanged)
         layer->clearClipRectsIncludingDescendants(PaintingClipRects);
 
@@ -590,7 +590,7 @@
                 scrollingCoordinator->frameViewFixedObjectsDidChange(m_renderView->frameView());
         }
     }
-    
+
     return layerChanged;
 }
 
@@ -709,7 +709,7 @@
     // A null ancestorLayer is an indication that 'layer' has already been pushed.
     if (ancestorLayer)
         overlapMap.geometryMap().pushMappingsToAncestor(layer, ancestorLayer);
-    
+
     IntRect bounds;
     bool haveComputedBounds = false;
     addToOverlapMap(overlapMap, layer, bounds, haveComputedBounds);
@@ -745,7 +745,7 @@
             }
         }
     }
-    
+
     if (ancestorLayer)
         overlapMap.geometryMap().popMappingsToAncestor(ancestorLayer);
 }
@@ -762,10 +762,10 @@
 void RenderLayerCompositor::computeCompositingRequirements(RenderLayer* ancestorLayer, RenderLayer* layer, OverlapMap* overlapMap, CompositingState& compositingState, bool& layersChanged, bool& descendantHas3DTransform)
 {
     layer->updateLayerListsIfNeeded();
-    
+
     if (overlapMap)
         overlapMap->geometryMap().pushMappingsToAncestor(layer, ancestorLayer);
-    
+
     // Clear the flag
     layer->setHasCompositingDescendant(false);
 
@@ -822,7 +822,7 @@
 
         if (overlapMap)
             overlapMap->pushCompositingContainer();
-        // This layer is going to be composited, so children can safely ignore the fact that there's an 
+        // This layer is going to be composited, so children can safely ignore the fact that there's an
         // animation running behind this layer, meaning they can rely on the overlap map testing again.
         childState.m_testingOverlap = true;
     }
@@ -859,7 +859,7 @@
             }
         }
     }
-    
+
     if (Vector<RenderLayer*>* normalFlowList = layer->normalFlowList()) {
         size_t listSize = normalFlowList->size();
         for (size_t i = 0; i < listSize; ++i) {
@@ -925,7 +925,7 @@
     bool isCompositedClippingLayer = canBeComposited(layer) && (reasonsToComposite & CompositingReasonClipsCompositingDescendants);
     if ((!childState.m_testingOverlap && !isCompositedClippingLayer) || isRunningAcceleratedTransformAnimation(layer->renderer()))
         compositingState.m_testingOverlap = false;
-    
+
     if (overlapMap && childState.m_compositingAncestor == layer && !layer->isRootLayer())
         overlapMap->popCompositingContainer();
 
@@ -973,7 +973,7 @@
     if (parentLayer) {
         GraphicsLayer* hostingLayer = parentLayer->backing()->parentForSublayers();
         GraphicsLayer* hostedLayer = childLayer->backing()->childForSuperlayers();
-        
+
         hostingLayer->addChild(hostedLayer);
     } else
         childLayer->backing()->childForSuperlayers()->removeFromParent();
@@ -1074,7 +1074,7 @@
             rebuildCompositingLayerTree(curLayer, childList, depth + 1);
         }
     }
-    
+
     if (layer->isStackingContainer()) {
         if (Vector<RenderLayer*>* posZOrderList = layer->posZOrderList()) {
             size_t listSize = posZOrderList->size();
@@ -1084,7 +1084,7 @@
             }
         }
     }
-    
+
     if (layerBacking) {
         bool parented = false;
         if (layer->renderer()->isRenderPart())
@@ -1232,7 +1232,7 @@
 {
     if (!renderer->node()->isFrameOwnerElement())
         return 0;
-        
+
     HTMLFrameOwnerElement* element = toFrameOwnerElement(renderer->node());
     if (Document* contentDocument = element->contentDocument()) {
         if (RenderView* view = contentDocument->renderView())
@@ -1246,7 +1246,7 @@
     RenderLayerCompositor* innerCompositor = frameContentsCompositor(renderer);
     if (!innerCompositor || !innerCompositor->inCompositingMode() || innerCompositor->rootLayerAttachment() != RootLayerAttachedViaEnclosingFrame)
         return false;
-    
+
     RenderLayer* layer = renderer->layer();
     if (!layer->isComposited())
         return false;
@@ -1304,7 +1304,7 @@
         for (size_t i = 0; i < listSize; ++i)
             updateLayerTreeGeometry(normalFlowList->at(i), depth + 1);
     }
-    
+
     if (layer->isStackingContainer()) {
         if (Vector<RenderLayer*>* posZOrderList = layer->posZOrderList()) {
             size_t listSize = posZOrderList->size();
@@ -1341,7 +1341,7 @@
 #if !ASSERT_DISABLED
     LayerListMutationDetector mutationChecker(layer);
 #endif
-    
+
     if (layer->isStackingContainer()) {
         if (Vector<RenderLayer*>* negZOrderList = layer->negZOrderList()) {
             size_t listSize = negZOrderList->size();
@@ -1355,7 +1355,7 @@
         for (size_t i = 0; i < listSize; ++i)
             updateCompositingDescendantGeometry(compositingAncestor, normalFlowList->at(i), compositedChildrenOnly);
     }
-    
+
     if (layer->isStackingContainer()) {
         if (Vector<RenderLayer*>* posZOrderList = layer->posZOrderList()) {
             size_t listSize = posZOrderList->size();
@@ -1471,7 +1471,7 @@
         removeViewportConstrainedLayer(layer);
         layer->clearBacking();
     }
-    
+
     for (RenderLayer* currLayer = layer->firstChild(); currLayer; currLayer = currLayer->nextSibling())
         clearBackingForLayerIncludingDescendants(currLayer);
 }
@@ -1585,7 +1585,7 @@
         directReasons |= CompositingReasonPlugin;
     else if (requiresCompositingForFrame(renderer))
         directReasons |= CompositingReasonIFrame;
-    
+
     if (requiresCompositingForBackfaceVisibilityHidden(renderer))
         directReasons |= CompositingReasonBackfaceVisibilityHidden;
 
@@ -1639,7 +1639,7 @@
 
     if (reasons & CompositingReasonIFrame)
         return "iframe";
-    
+
     if (reasons & CompositingReasonBackfaceVisibilityHidden)
         return "backface-visibility: hidden";
 
@@ -1684,7 +1684,7 @@
 
     if (reasons & CompositingReasonFilterWithCompositedDescendants)
         return "filter with composited descendants";
-            
+
     if (reasons & CompositingReasonBlendingWithCompositedDescendants)
         return "blending with composited descendants";
 
@@ -1728,7 +1728,7 @@
         }
         curr = next;
     }
-    
+
     if (!computeClipRoot || computeClipRoot == layer)
         return false;
 
@@ -1807,7 +1807,7 @@
         return false;
 
     m_reevaluateCompositingAfterLayout = true;
-    
+
     RenderWidget* pluginRenderer = toRenderWidget(renderer);
     // If we can't reliably know the size of the plugin yet, don't change compositing state.
     if (pluginRenderer->needsLayout())
@@ -1822,7 +1822,7 @@
 {
     if (!renderer->isRenderPart())
         return false;
-    
+
     RenderPart* frameRenderer = toRenderPart(renderer);
 
     if (!frameRenderer->requiresAcceleratedCompositing())
@@ -1837,7 +1837,7 @@
     // If we can't reliably know the size of the iframe yet, don't change compositing state.
     if (renderer->needsLayout())
         return frameRenderer->hasLayer() && frameRenderer->layer()->isComposited();
-    
+
     // Don't go into compositing mode if height or width are zero.
     IntRect contentBox = pixelSnappedIntRect(frameRenderer->contentBoxRect());
     return contentBox.height() * contentBox.width() > 0;
@@ -1914,7 +1914,7 @@
     if (has3DTransformedDescendants) {
         if (renderer->style()->transformStyle3D() == TransformStyle3DPreserve3D)
             subtreeReasons |= CompositingReasonPreserve3D;
-    
+
         if (renderer->style()->hasPerspective())
             subtreeReasons |= CompositingReasonPerspective;
     }
@@ -1942,12 +1942,12 @@
     // z-index and clipping will be broken.
     if (!renderer->isPositioned())
         return false;
-    
+
     EPosition position = renderer->style()->position();
     bool isFixed = renderer->isOutOfFlowPositioned() && position == FixedPosition;
     if (isFixed && !layer->isStackingContainer())
         return false;
-    
+
     bool isSticky = renderer->isInFlowPositioned() && position == StickyPosition;
     if (!isFixed && !isSticky)
         return false;
@@ -1975,7 +1975,7 @@
             *viewportConstrainedNotCompositedReason = RenderLayer::NotCompositedForNonViewContainer;
         return false;
     }
-    
+
     // If the fixed-position element does not have any scrollable ancestor between it and
     // its container, then we do not need to spend compositor resources for it. Start by
     // assuming we can opt-out (i.e. no scrollable ancestor), and refine the answer below.
@@ -2026,7 +2026,7 @@
             return false;
         }
     }
-    
+
     return true;
 }
 
@@ -2046,7 +2046,7 @@
     return false;
 }
 
-// If an element has negative z-index children, those children render in front of the 
+// If an element has negative z-index children, those children render in front of the
 // layer background, so we need an extra 'contents' layer for the foreground of the layer
 // object.
 bool RenderLayerCompositor::needsContentsCompositingLayer(const RenderLayer* layer) const
@@ -2113,7 +2113,7 @@
     RenderLayer* viewLayer = m_renderView->layer();
     if (!viewLayer)
         return 0;
-    
+
     if (viewLayer->isComposited() && viewLayer->backing()->backgroundLayerPaintsFixedRootBackground())
         return viewLayer->backing()->backgroundLayer();
 
@@ -2547,8 +2547,8 @@
         if (child->document() && child->document()->ownerElement())
             child->document()->ownerElement()->scheduleLayerUpdate();
     }
-    
-    // Compositing also affects the answer to RenderIFrame::requiresAcceleratedCompositing(), so 
+
+    // Compositing also affects the answer to RenderIFrame::requiresAcceleratedCompositing(), so
     // we need to schedule a style recalc in our parent document.
     if (HTMLFrameOwnerElement* ownerElement = m_renderView->document()->ownerElement())
         ownerElement->scheduleLayerUpdate();
@@ -2558,7 +2558,7 @@
 {
     const RenderStyle* style = layer->renderer()->style();
 
-    if (style && 
+    if (style &&
         (style->transformStyle3D() == TransformStyle3DPreserve3D ||
          style->hasPerspective() ||
          style->transform().has3DOperation()))
@@ -2672,7 +2672,7 @@
     // If top and bottom are auto, use top.
     if (style->top().isAuto() && style->bottom().isAuto())
         constraints.addAnchorEdge(ViewportConstraints::AnchorEdgeTop);
-        
+
     return constraints;
 }
 
@@ -2717,7 +2717,7 @@
 {
     if (Frame* frame = m_renderView->frameView()->frame())
         return frame->page();
-    
+
     return 0;
 }
 
diff --git a/Source/core/rendering/RenderLayerCompositor.h b/Source/core/rendering/RenderLayerCompositor.h
index 588ab69..31d715a 100644
--- a/Source/core/rendering/RenderLayerCompositor.h
+++ b/Source/core/rendering/RenderLayerCompositor.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderLayerCompositor_h
@@ -30,7 +30,7 @@
 #include "core/page/Frame.h"
 #include "core/platform/graphics/GraphicsLayerClient.h"
 #include "core/rendering/RenderLayer.h"
-#include <wtf/HashMap.h>
+#include "wtf/HashMap.h"
 
 namespace WebCore {
 
@@ -54,7 +54,7 @@
 // composited RenderLayers. It determines which RenderLayers
 // become compositing, and creates and maintains a hierarchy of
 // GraphicsLayers based on the RenderLayer painting order.
-// 
+//
 // There is one RenderLayerCompositor per RenderView.
 
 class RenderLayerCompositor : public GraphicsLayerClient {
@@ -94,14 +94,14 @@
 
     // Rebuild the tree of compositing layers
     void updateCompositingLayers(CompositingUpdateType, RenderLayer* updateRoot = 0);
-    
+
     // Update the compositing state of the given layer. Returns true if that state changed.
     enum CompositingChangeRepaint { CompositingChangeRepaintNow, CompositingChangeWillRepaintLater };
     bool updateLayerCompositingState(RenderLayer*, CompositingChangeRepaint = CompositingChangeRepaintNow);
 
     // Update the geometry for compositing children of compositingAncestor.
     void updateCompositingDescendantGeometry(RenderLayer* compositingAncestor, RenderLayer*, bool compositedChildrenOnly);
-    
+
     // Whether layer's backing needs a graphics layer to do clipping by an ancestor (non-stacking-context parent with overflow).
     bool clippedByAncestor(RenderLayer*) const;
     // Whether layer's backing needs a graphics layer to clip z-order children of the given layer.
@@ -113,16 +113,16 @@
     bool supportsFixedRootBackgroundCompositing() const;
     bool needsFixedRootBackgroundLayer(const RenderLayer*) const;
     GraphicsLayer* fixedRootBackgroundLayer() const;
-    
+
     // Return the bounding box required for compositing layer and its childern, relative to ancestorLayer.
     // If layerBoundingBox is not 0, on return it contains the bounding box of this layer only.
     IntRect calculateCompositedBounds(const RenderLayer*, const RenderLayer* ancestorLayer) const;
 
     // Repaint the appropriate layers when the given RenderLayer starts or stops being composited.
     void repaintOnCompositingChange(RenderLayer*);
-    
+
     void repaintInCompositedAncestor(RenderLayer*, const LayoutRect&);
-    
+
     // Notify us that a layer has been added or removed
     void layerWasAdded(RenderLayer* parent, RenderLayer* child);
     void layerWillBeRemoved(RenderLayer* parent, RenderLayer* child);
@@ -149,11 +149,11 @@
     RootLayerAttachment rootLayerAttachment() const { return m_rootLayerAttachment; }
     void updateRootLayerAttachment();
     void updateRootLayerPosition();
-    
+
     void setIsInWindow(bool);
 
     void clearBackingForAllLayers();
-    
+
     void layerBecameComposited(const RenderLayer*) { ++m_compositedLayerCount; }
     void layerBecameNonComposited(const RenderLayer*);
 
@@ -163,7 +163,7 @@
     // Walk the tree looking for layers with 3d transforms. Useful in case you need
     // to know if there is non-affine content, e.g. for drawing into an image.
     bool has3DContent() const;
-    
+
     static RenderLayerCompositor* frameContentsCompositor(RenderPart*);
     // Return true if the layers changed.
     static bool parentFrameContentLayers(RenderPart*);
@@ -204,7 +204,7 @@
 
     // Returns all reasons (direct, indirectly due to subtree, and indirectly due to overlap) that a layer should be composited.
     CompositingReasons reasonsForCompositing(const RenderLayer*) const;
-    
+
 private:
     class OverlapMap;
 
@@ -213,7 +213,7 @@
     virtual void paintContents(const GraphicsLayer*, GraphicsContext&, GraphicsLayerPaintingPhase, const IntRect&) OVERRIDE;
 
     virtual bool isTrackingRepaints() const OVERRIDE;
-    
+
     // Whether the given RL needs a compositing layer.
     bool needsToBeComposited(const RenderLayer*) const;
     // Whether the layer could ever be composited.
@@ -238,13 +238,13 @@
 
     // Returns true if any layer's compositing changed
     void computeCompositingRequirements(RenderLayer* ancestorLayer, RenderLayer*, OverlapMap*, struct CompositingState&, bool& layersChanged, bool& descendantHas3DTransform);
-    
+
     // Recurses down the tree, parenting descendant compositing layers and collecting an array of child layers for the current compositing layer.
     void rebuildCompositingLayerTree(RenderLayer*, Vector<GraphicsLayer*>& childGraphicsLayersOfEnclosingLayer, int depth);
 
     // Recurses down the tree, updating layer geometry only.
     void updateLayerTreeGeometry(RenderLayer*, int depth);
-    
+
     // Hook compositing layers together
     void setCompositingParent(RenderLayer* childLayer, RenderLayer* parentLayer);
     void removeCompositedChildren(RenderLayer*);
@@ -261,13 +261,13 @@
     void detachRootLayer();
 
     bool isMainFrame() const;
-    
+
     void updateOverflowControlsLayers();
 
     void notifyIFramesOfCompositingChange();
 
     Page* page() const;
-    
+
     GraphicsLayerFactory* graphicsLayerFactory() const;
     ScrollingCoordinator* scrollingCoordinator() const;
 
@@ -326,7 +326,7 @@
     bool m_needsUpdateCompositingRequirementsState;
 
     bool m_isTrackingRepaints; // Used for testing.
-    
+
     RootLayerAttachment m_rootLayerAttachment;
 
     // Enclosing container layer, which clips for iframe content
diff --git a/Source/core/rendering/RenderLayerFilterInfo.cpp b/Source/core/rendering/RenderLayerFilterInfo.cpp
index df709e1..9cf7cf7 100644
--- a/Source/core/rendering/RenderLayerFilterInfo.cpp
+++ b/Source/core/rendering/RenderLayerFilterInfo.cpp
@@ -12,7 +12,7 @@
  *    copyright notice, this list of conditions and the following
  *    disclaimer in the documentation and/or other materials
  *    provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
@@ -58,13 +58,13 @@
 {
     if (!s_filterMap)
         s_filterMap = new RenderLayerFilterInfoMap();
-    
+
     RenderLayerFilterInfoMap::iterator iter = s_filterMap->find(layer);
     if (iter != s_filterMap->end()) {
         ASSERT(layer->hasFilterInfo());
         return iter->value;
     }
-    
+
     RenderLayerFilterInfo* filter = new RenderLayerFilterInfo(layer);
     s_filterMap->set(layer, filter);
     layer->setHasFilterInfo(true);
@@ -100,8 +100,8 @@
 }
 
 void RenderLayerFilterInfo::setRenderer(PassRefPtr<FilterEffectRenderer> renderer)
-{ 
-    m_renderer = renderer; 
+{
+    m_renderer = renderer;
 }
 
 void RenderLayerFilterInfo::notifyFinished(CachedResource*)
diff --git a/Source/core/rendering/RenderLayerFilterInfo.h b/Source/core/rendering/RenderLayerFilterInfo.h
index 831045d..0f07a3a 100644
--- a/Source/core/rendering/RenderLayerFilterInfo.h
+++ b/Source/core/rendering/RenderLayerFilterInfo.h
@@ -12,7 +12,7 @@
  *    copyright notice, this list of conditions and the following
  *    disclaimer in the documentation and/or other materials
  *    provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
@@ -35,9 +35,9 @@
 #include "core/platform/graphics/LayoutRect.h"
 #include "core/platform/graphics/filters/FilterOperation.h"
 #include "core/platform/graphics/filters/custom/CustomFilterProgramClient.h"
-#include <wtf/HashMap.h>
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefPtr.h>
+#include "wtf/HashMap.h"
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
@@ -47,7 +47,7 @@
 class RenderLayerFilterInfo;
 
 typedef HashMap<const RenderLayer*, RenderLayerFilterInfo*> RenderLayerFilterInfoMap;
-    
+
 class RenderLayerFilterInfo : public CustomFilterProgramClient, public CachedDocumentClient {
 public:
     static RenderLayerFilterInfo* filterInfoForRenderLayer(const RenderLayer*);
@@ -57,7 +57,7 @@
     const LayoutRect& dirtySourceRect() const { return m_dirtySourceRect; }
     void expandDirtySourceRect(const LayoutRect& rect) { m_dirtySourceRect.unite(rect); }
     void resetDirtySourceRect() { m_dirtySourceRect = LayoutRect(); }
-    
+
     FilterEffectRenderer* renderer() const { return m_renderer.get(); }
     void setRenderer(PassRefPtr<FilterEffectRenderer>);
 
@@ -74,15 +74,15 @@
 private:
     RenderLayerFilterInfo(RenderLayer*);
     ~RenderLayerFilterInfo();
-    
+
     RenderLayer* m_layer;
-    
+
     RefPtr<FilterEffectRenderer> m_renderer;
     LayoutRect m_dirtySourceRect;
 
     typedef Vector<RefPtr<CustomFilterProgram> > CustomFilterProgramList;
     CustomFilterProgramList m_cachedCustomFilterPrograms;
-    
+
     static RenderLayerFilterInfoMap* s_filterMap;
     Vector<RefPtr<Element> > m_internalSVGReferences;
     Vector<CachedResourceHandle<CachedDocument> > m_externalSVGReferences;
diff --git a/Source/core/rendering/RenderLineBoxList.cpp b/Source/core/rendering/RenderLineBoxList.cpp
index 2adc730..1205f19 100644
--- a/Source/core/rendering/RenderLineBoxList.cpp
+++ b/Source/core/rendering/RenderLineBoxList.cpp
@@ -51,7 +51,7 @@
 void RenderLineBoxList::appendLineBox(InlineFlowBox* box)
 {
     checkConsistency();
-    
+
     if (!m_firstLineBox)
         m_firstLineBox = m_lastLineBox = box;
     else {
@@ -78,7 +78,7 @@
 void RenderLineBoxList::extractLineBox(InlineFlowBox* box)
 {
     checkConsistency();
-    
+
     m_lastLineBox = box->prevLineBox();
     if (box == m_firstLineBox)
         m_firstLineBox = 0;
@@ -156,7 +156,7 @@
     LayoutUnit physicalEnd = block->flipForWritingMode(logicalBottom);
     LayoutUnit physicalExtent = absoluteValue(physicalEnd - physicalStart);
     physicalStart = min(physicalStart, physicalEnd);
-    
+
     if (renderer->style()->isHorizontalWritingMode()) {
         physicalStart += offset.y();
         if (physicalStart >= rect.maxY() || physicalStart + physicalExtent <= rect.y())
@@ -166,7 +166,7 @@
         if (physicalStart >= rect.maxX() || physicalStart + physicalExtent <= rect.x())
             return false;
     }
-    
+
     return true;
 }
 
@@ -182,7 +182,7 @@
     LayoutUnit lastLineBottom = lastLineBox()->logicalBottomVisualOverflow(lastRootBox->lineBottom());
     LayoutUnit logicalTop = firstLineTop - outlineSize;
     LayoutUnit logicalBottom = outlineSize + lastLineBottom;
-    
+
     return rangeIntersectsRect(renderer, logicalTop, logicalBottom, rect, offset);
 }
 
@@ -191,14 +191,14 @@
     RootInlineBox* root = box->root();
     LayoutUnit logicalTop = min<LayoutUnit>(box->logicalTopVisualOverflow(root->lineTop()), root->selectionTop()) - renderer->maximalOutlineSize(paintInfo.phase);
     LayoutUnit logicalBottom = box->logicalBottomVisualOverflow(root->lineBottom()) + renderer->maximalOutlineSize(paintInfo.phase);
-    
+
     return rangeIntersectsRect(renderer, logicalTop, logicalBottom, paintInfo.rect, offset);
 }
 
 void RenderLineBoxList::paint(RenderBoxModelObject* renderer, PaintInfo& paintInfo, const LayoutPoint& paintOffset) const
 {
     // Only paint during the foreground/selection phases.
-    if (paintInfo.phase != PaintPhaseForeground && paintInfo.phase != PaintPhaseSelection && paintInfo.phase != PaintPhaseOutline 
+    if (paintInfo.phase != PaintPhaseForeground && paintInfo.phase != PaintPhaseSelection && paintInfo.phase != PaintPhaseOutline
         && paintInfo.phase != PaintPhaseSelfOutline && paintInfo.phase != PaintPhaseChildOutlines && paintInfo.phase != PaintPhaseTextClip
         && paintInfo.phase != PaintPhaseMask)
         return;
@@ -293,7 +293,7 @@
     }
 
     // Try to figure out which line box we belong in.  First try to find a previous
-    // line box by examining our siblings.  If we didn't find a line box, then use our 
+    // line box by examining our siblings.  If we didn't find a line box, then use our
     // parent's first line box.
     RootInlineBox* box = 0;
     RenderObject* curr = 0;
@@ -352,7 +352,7 @@
         adjacentBox = box->nextRootBox();
         // If |child| has been inserted before the first element in the linebox, but after collapsed leading
         // space, the search for |child|'s linebox will go past the leading space to the previous linebox and select that
-        // one as |box|. If we hit that situation here, dirty the |box| actually containing the child too. 
+        // one as |box|. If we hit that situation here, dirty the |box| actually containing the child too.
         bool insertedAfterLeadingSpace = box->lineBreakObj() == child->previousSibling();
         if (adjacentBox && (adjacentBox->lineBreakObj() == child || child->isBR() || (curr && curr->isBR())
             || insertedAfterLeadingSpace || isIsolated(container->style()->unicodeBidi()))) {
diff --git a/Source/core/rendering/RenderLineBoxList.h b/Source/core/rendering/RenderLineBoxList.h
index 2dd5d9d..d0c1afd 100644
--- a/Source/core/rendering/RenderLineBoxList.h
+++ b/Source/core/rendering/RenderLineBoxList.h
@@ -59,7 +59,7 @@
     void extractLineBox(InlineFlowBox*);
     void attachLineBox(InlineFlowBox*);
     void removeLineBox(InlineFlowBox*);
-    
+
     void dirtyLineBoxes();
     void dirtyLinesFromChangedChild(RenderObject* parent, RenderObject* child);
 
diff --git a/Source/core/rendering/RenderListBox.cpp b/Source/core/rendering/RenderListBox.cpp
index 9ce0587..1771c60 100644
--- a/Source/core/rendering/RenderListBox.cpp
+++ b/Source/core/rendering/RenderListBox.cpp
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -63,7 +63,7 @@
 namespace WebCore {
 
 using namespace HTMLNames;
- 
+
 const int rowSpacing = 1;
 
 const int optionsSpacingHorizontal = 2;
@@ -115,7 +115,7 @@
     if (m_optionsChanged) {
         const Vector<HTMLElement*>& listItems = selectElement()->listItems();
         int size = numItems();
-        
+
         float width = 0;
         for (int i = 0; i < size; ++i) {
             HTMLElement* element = listItems[i];
@@ -142,7 +142,7 @@
         }
         m_optionsWidth = static_cast<int>(ceilf(width));
         m_optionsChanged = false;
-        
+
         setHasVerticalScrollbar(true);
 
         setNeedsLayoutAndPrefWidthsRecalc();
@@ -163,7 +163,7 @@
         else
             scrollToRevealSelection();
     }
-    
+
     if (AXObjectCache* cache = document()->existingAXObjectCache())
         cache->selectedChildrenChanged(this);
 }
@@ -191,7 +191,7 @@
 }
 
 void RenderListBox::scrollToRevealSelection()
-{    
+{
     HTMLSelectElement* select = selectElement();
 
     m_scrollToRevealSelectionAfterLayout = false;
@@ -235,7 +235,7 @@
     LayoutUnit toAdd = borderAndPaddingWidth();
     m_minPreferredLogicalWidth += toAdd;
     m_maxPreferredLogicalWidth += toAdd;
-                                
+
     setPreferredLogicalWidthsDirty(false);
 }
 
@@ -281,12 +281,12 @@
                    additionalOffset.y() + borderTop() + paddingTop() + itemHeight() * (index - m_indexOffset),
                    contentWidth(), itemHeight());
 }
-    
+
 void RenderListBox::paintObject(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
 {
     if (style()->visibility() != VISIBLE)
         return;
-    
+
     int listItemsSize = numItems();
 
     if (paintInfo.phase == PaintPhaseForeground) {
@@ -513,7 +513,7 @@
 
     // If the point is too far from the center we limit the speed
     yDelta = max<int>(min<int>(yDelta, maxSpeed), -maxSpeed);
-    
+
     if (abs(yDelta) < iconRadius) // at the center we let the space for the icon
         return;
 
@@ -529,7 +529,7 @@
     IntPoint scrollPoint(0, 0);
     scrollPoint.setY(absOffset.y() + yDelta);
     int newOffset = scrollToward(scrollPoint);
-    if (newOffset < 0) 
+    if (newOffset < 0)
         return;
 
     m_inAutoscroll = true;
@@ -546,13 +546,13 @@
 
     int rows = numVisibleItems();
     int offset = m_indexOffset;
-    
+
     if (positionOffset.height() < borderTop() + paddingTop() && scrollToRevealElementAtListIndex(offset - 1))
         return offset - 1;
-    
+
     if (positionOffset.height() > height() - paddingBottom() - borderBottom() && scrollToRevealElementAtListIndex(offset + rows))
         return offset + rows - 1;
-    
+
     return listIndexAtOffset(positionOffset);
 }
 
@@ -602,7 +602,7 @@
 }
 
 bool RenderListBox::listIndexIsVisible(int index)
-{    
+{
     return index >= m_indexOffset && index < m_indexOffset + numVisibleItems();
 }
 
@@ -687,11 +687,11 @@
 
 void RenderListBox::setScrollTop(int newTop)
 {
-    // Determine an index and scroll to it.    
+    // Determine an index and scroll to it.
     int index = newTop / itemHeight();
     if (index < 0 || index >= numItems() || index == m_indexOffset)
         return;
-    
+
     scrollToOffsetWithoutAnimation(VerticalScrollbar, index);
 }
 
@@ -861,7 +861,7 @@
         widget = Scrollbar::createNativeScrollbar(this, VerticalScrollbar, theme()->scrollbarControlSizeForPart(ListboxPart));
         didAddVerticalScrollbar(widget.get());
     }
-    document()->view()->addChild(widget.get());        
+    document()->view()->addChild(widget.get());
     return widget.release();
 }
 
diff --git a/Source/core/rendering/RenderListBox.h b/Source/core/rendering/RenderListBox.h
index 1b53fda..97e73d3 100644
--- a/Source/core/rendering/RenderListBox.h
+++ b/Source/core/rendering/RenderListBox.h
@@ -8,13 +8,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -132,7 +132,7 @@
     void setHasVerticalScrollbar(bool hasScrollbar);
     PassRefPtr<Scrollbar> createScrollbar();
     void destroyScrollbar();
-    
+
     LayoutUnit itemHeight() const;
     void valueChanged(unsigned listIndex);
     int numVisibleItems() const;
@@ -153,7 +153,7 @@
 };
 
 inline RenderListBox* toRenderListBox(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isListBox());
     return static_cast<RenderListBox*>(object);
 }
diff --git a/Source/core/rendering/RenderListItem.cpp b/Source/core/rendering/RenderListItem.cpp
index f6e8b40..0944508 100644
--- a/Source/core/rendering/RenderListItem.cpp
+++ b/Source/core/rendering/RenderListItem.cpp
@@ -29,8 +29,8 @@
 #include "core/html/HTMLOListElement.h"
 #include "core/rendering/RenderListMarker.h"
 #include "core/rendering/RenderView.h"
-#include <wtf/StdLibExtras.h>
-#include <wtf/text/StringBuilder.h>
+#include "wtf/StdLibExtras.h"
+#include "wtf/text/StringBuilder.h"
 
 using namespace std;
 
@@ -57,7 +57,7 @@
         RefPtr<RenderStyle> newStyle = RenderStyle::create();
         // The marker always inherits from the list item, regardless of where it might end
         // up (e.g., in some deeply nested line box). See CSS3 spec.
-        newStyle->inheritFrom(style()); 
+        newStyle->inheritFrom(style());
         if (!m_marker)
             m_marker = RenderListMarker::createAnonymous(this);
         m_marker->setStyle(newStyle.release());
@@ -68,7 +68,7 @@
 }
 
 void RenderListItem::willBeDestroyed()
-{    
+{
     if (m_marker) {
         m_marker->destroy();
         m_marker = 0;
@@ -303,9 +303,9 @@
 void RenderListItem::layout()
 {
     StackStats::LayoutCheckPoint layoutCheckPoint;
-    ASSERT(needsLayout()); 
+    ASSERT(needsLayout());
 
-    updateMarkerLocation();    
+    updateMarkerLocation();
     RenderBlock::layout();
 }
 
@@ -330,7 +330,7 @@
         LayoutUnit markerLogicalLeft;
         RootInlineBox* root = m_marker->inlineBoxWrapper()->root();
         bool hitSelfPaintingLayer = false;
-        
+
         RootInlineBox* rootBox = m_marker->inlineBoxWrapper()->root();
         LayoutUnit lineTop = rootBox->lineTop();
         LayoutUnit lineBottom = rootBox->lineBottom();
@@ -377,7 +377,7 @@
                         adjustOverflow = true;
                 }
                 box->setOverflowFromLogicalRects(newLogicalLayoutOverflowRect, newLogicalVisualOverflowRect, lineTop, lineBottom);
-                
+
                 if (box->boxModelObject()->hasSelfPaintingLayer())
                     hitSelfPaintingLayer = true;
             }
diff --git a/Source/core/rendering/RenderListItem.h b/Source/core/rendering/RenderListItem.h
index 2a563f6..44731aa 100644
--- a/Source/core/rendering/RenderListItem.h
+++ b/Source/core/rendering/RenderListItem.h
@@ -57,7 +57,7 @@
     virtual const char* renderName() const { return "RenderListItem"; }
 
     virtual bool isListItem() const { return true; }
-    
+
     virtual void willBeDestroyed();
 
     virtual void insertedIntoTree() OVERRIDE;
diff --git a/Source/core/rendering/RenderListMarker.cpp b/Source/core/rendering/RenderListMarker.cpp
index 2d08cbf..f965338 100644
--- a/Source/core/rendering/RenderListMarker.cpp
+++ b/Source/core/rendering/RenderListMarker.cpp
@@ -32,8 +32,8 @@
 #include "core/rendering/RenderLayer.h"
 #include "core/rendering/RenderListItem.h"
 #include "core/rendering/RenderView.h"
-#include <wtf/text/StringBuilder.h>
-#include <wtf/unicode/CharacterNames.h>
+#include "wtf/text/StringBuilder.h"
+#include "wtf/unicode/CharacterNames.h"
 
 using namespace std;
 using namespace WTF;
@@ -165,7 +165,7 @@
 
 template <typename CharacterType, size_t size>
 static inline String toSymbolic(int number, const CharacterType(&alphabet)[size])
-{    
+{
     return toSymbolic(number, alphabet, size);
 }
 
@@ -1080,7 +1080,7 @@
 {
     if (style() && (newStyle->listStylePosition() != style()->listStylePosition() || newStyle->listStyleType() != style()->listStyleType()))
         setNeedsLayoutAndPrefWidthsRecalc();
-    
+
     RenderBox::styleWillChange(diff, newStyle);
 }
 
@@ -1323,7 +1323,7 @@
 {
     StackStats::LayoutCheckPoint layoutCheckPoint;
     ASSERT(needsLayout());
- 
+
     if (isImage()) {
         updateMarginsAndContent();
         setWidth(m_image->imageSize(this, style()->effectiveZoom()).width());
@@ -1653,7 +1653,7 @@
             }
             marginStart = -marginEnd - minPreferredLogicalWidth();
         }
-        
+
     }
 
     style()->setMarginStart(Length(marginStart, Fixed));
@@ -1705,7 +1705,7 @@
 {
     if (isImage())
         return IntRect(0, 0, m_image->imageSize(this, style()->effectiveZoom()).width(), m_image->imageSize(this, style()->effectiveZoom()).height());
-    
+
     IntRect relativeRect;
     EListStyleType type = style()->listStyleType();
     switch (type) {
@@ -1838,12 +1838,12 @@
 
     RootInlineBox* root = inlineBoxWrapper()->root();
     LayoutRect rect(0, root->selectionTop() - y(), width(), root->selectionHeight());
-            
+
     if (clipToVisibleContent)
         computeRectForRepaint(repaintContainer, rect);
     else
         rect = localToContainerQuad(FloatRect(rect), repaintContainer).enclosingBoundingBox();
-    
+
     return rect;
 }
 
diff --git a/Source/core/rendering/RenderMarquee.cpp b/Source/core/rendering/RenderMarquee.cpp
index 6dee3e9..eed4b72 100644
--- a/Source/core/rendering/RenderMarquee.cpp
+++ b/Source/core/rendering/RenderMarquee.cpp
@@ -102,13 +102,13 @@
         result = (dir == LTR) ? MRIGHT : MLEFT;
     if (result == MBACKWARD)
         result = (dir == LTR) ? MLEFT : MRIGHT;
-    
+
     // Now we have the real direction.  Next we check to see if the increment is negative.
     // If so, then we reverse the direction.
     Length increment = style()->marqueeIncrement();
     if (increment.isNegative())
         result = static_cast<EMarqueeDirection>(-result);
-    
+
     return result;
 }
 
@@ -154,10 +154,10 @@
         else {
             if (stopAtContentEdge)
                 return max(contentHeight - clientHeight, 0);
-            else 
+            else
                 return contentHeight;
         }
-    }    
+    }
 }
 
 void RenderMarquee::start()
@@ -165,7 +165,7 @@
     if (m_timer.isActive() || style()->marqueeIncrement().isZero())
         return;
 
-    // We may end up propagating a scroll event. It is important that we suspend events until 
+    // We may end up propagating a scroll event. It is important that we suspend events until
     // the end of the function since they could delete the layer, including the marquee.
     FrameView* frameView = document()->view();
     if (frameView)
@@ -233,13 +233,13 @@
     RenderBlock::styleDidChange(difference, oldStyle);
 
     RenderStyle* s = style();
-    
+
     if (m_direction != s->marqueeDirection() || (m_totalLoops != s->marqueeLoopCount() && m_currentLoop >= m_totalLoops))
         m_currentLoop = 0; // When direction changes or our loopCount is a smaller number than our current loop, reset our loop.
-    
+
     m_totalLoops = s->marqueeLoopCount();
     m_direction = s->marqueeDirection();
-    
+
     // Hack for WinIE. In WinIE, a value of 0 or lower for the loop count for SLIDE means to only do
     // one loop.
     if (m_totalLoops <= 0 && s->marqueeBehavior() == MSLIDE)
@@ -258,14 +258,14 @@
 
     // Legacy hack - multiple browsers default vertical marquees to 200px tall.
     if (!isHorizontal() && s->height().isAuto())
-        s->setHeight(Length(200, Fixed)); 
-   
+        s->setHeight(Length(200, Fixed));
+
     if (speed() != marqueeSpeed()) {
         m_speed = marqueeSpeed();
         if (m_timer.isActive())
             m_timer.startRepeating(speed() * 0.001);
     }
-    
+
     // Check the loop count to see if we should now stop.
     bool activate = (m_totalLoops <= 0 || m_currentLoop < m_totalLoops);
     if (activate && !m_timer.isActive())
@@ -286,7 +286,7 @@
     // FIXME: Why do we need to check the view and not just the RenderMarquee itself?
     if (view()->needsLayout())
         return;
-    
+
     if (m_reset) {
         m_reset = false;
         if (isHorizontal())
@@ -295,15 +295,15 @@
             layer()->scrollToYOffset(m_start);
         return;
     }
-    
+
     RenderStyle* s = style();
-    
+
     int endPoint = m_end;
     int range = m_end - m_start;
     int newPos;
     if (range == 0)
         newPos = m_end;
-    else {  
+    else {
         bool addIncrement = direction() == MUP || direction() == MLEFT;
         bool isReversed = s->marqueeBehavior() == MALTERNATE && m_currentLoop % 2;
         if (isReversed) {
@@ -330,7 +330,7 @@
         else if (s->marqueeBehavior() != MALTERNATE)
             m_reset = true;
     }
-    
+
     if (isHorizontal())
         layer()->scrollToXOffset(newPos);
     else
diff --git a/Source/core/rendering/RenderMarquee.h b/Source/core/rendering/RenderMarquee.h
index 02aef3e..e956a00 100644
--- a/Source/core/rendering/RenderMarquee.h
+++ b/Source/core/rendering/RenderMarquee.h
@@ -70,7 +70,7 @@
     int computePosition(EMarqueeDirection, bool stopAtClientEdge);
 
     void setEnd(int end) { m_end = end; }
-    
+
     void start();
     void suspend();
     void stop();
diff --git a/Source/core/rendering/RenderMedia.cpp b/Source/core/rendering/RenderMedia.cpp
index 20634e4..6c7cd51 100644
--- a/Source/core/rendering/RenderMedia.cpp
+++ b/Source/core/rendering/RenderMedia.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -51,8 +51,8 @@
 }
 
 HTMLMediaElement* RenderMedia::mediaElement() const
-{ 
-    return toMediaElement(node()); 
+{
+    return toMediaElement(node());
 }
 
 void RenderMedia::layout()
@@ -79,7 +79,7 @@
     if (newSize == oldSize && !controlsNeedLayout)
         return;
 
-    // When calling layout() on a child node, a parent must either push a LayoutStateMaintainter, or 
+    // When calling layout() on a child node, a parent must either push a LayoutStateMaintainter, or
     // instantiate LayoutStateDisabler. Since using a LayoutStateMaintainer is slightly more efficient,
     // and this method will be called many times per second during playback, use a LayoutStateMaintainer:
     LayoutStateMaintainer statePusher(view(), this, locationOffset(), hasTransform() || hasReflection() || style()->isFlippedBlocksWritingMode());
diff --git a/Source/core/rendering/RenderMedia.h b/Source/core/rendering/RenderMedia.h
index 6c99a03..c32bf29 100644
--- a/Source/core/rendering/RenderMedia.h
+++ b/Source/core/rendering/RenderMedia.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderMedia_h
diff --git a/Source/core/rendering/RenderMediaControls.cpp b/Source/core/rendering/RenderMediaControls.cpp
index 001ff7d..ae146c0 100644
--- a/Source/core/rendering/RenderMediaControls.cpp
+++ b/Source/core/rendering/RenderMediaControls.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -30,6 +30,6 @@
 // FIXME: Unify more of the code for Mac and Win.
 
 using namespace std;
- 
+
 namespace WebCore {
 }
diff --git a/Source/core/rendering/RenderMediaControls.h b/Source/core/rendering/RenderMediaControls.h
index d1b3f87..aca27ba 100644
--- a/Source/core/rendering/RenderMediaControls.h
+++ b/Source/core/rendering/RenderMediaControls.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderMediaControls_h
diff --git a/Source/core/rendering/RenderMenuList.cpp b/Source/core/rendering/RenderMenuList.cpp
index 241185f..571e49e 100644
--- a/Source/core/rendering/RenderMenuList.cpp
+++ b/Source/core/rendering/RenderMenuList.cpp
@@ -166,7 +166,7 @@
 {
     float maxOptionWidth = 0;
     const Vector<HTMLElement*>& listItems = selectElement()->listItems();
-    int size = listItems.size();    
+    int size = listItems.size();
     FontCachePurgePreventer fontCachePurgePreventer;
 
     for (int i = 0; i < size; ++i) {
@@ -268,14 +268,14 @@
     // Clip to the intersection of the content box and the content box for the inner box
     // This will leave room for the arrows which sit in the inner box padding,
     // and if the inner box ever spills out of the outer box, that will get clipped too.
-    LayoutRect outerBox(additionalOffset.x() + borderLeft() + paddingLeft(), 
+    LayoutRect outerBox(additionalOffset.x() + borderLeft() + paddingLeft(),
                    additionalOffset.y() + borderTop() + paddingTop(),
-                   contentWidth(), 
+                   contentWidth(),
                    contentHeight());
-    
-    LayoutRect innerBox(additionalOffset.x() + m_innerBlock->x() + m_innerBlock->paddingLeft(), 
+
+    LayoutRect innerBox(additionalOffset.x() + m_innerBlock->x() + m_innerBlock->paddingLeft(),
                    additionalOffset.y() + m_innerBlock->y() + m_innerBlock->paddingTop(),
-                   m_innerBlock->contentWidth(), 
+                   m_innerBlock->contentWidth(),
                    m_innerBlock->contentHeight());
 
     return intersection(outerBox, innerBox);
@@ -292,7 +292,7 @@
 {
     m_minPreferredLogicalWidth = 0;
     m_maxPreferredLogicalWidth = 0;
-    
+
     if (style()->width().isFixed() && style()->width().value() > 0)
         m_minPreferredLogicalWidth = m_maxPreferredLogicalWidth = adjustContentBoxLogicalWidthForBoxSizing(style()->width().value());
     else
@@ -350,7 +350,7 @@
     Document* doc = toElement(node())->document();
     if (!doc || doc != doc->frame()->document())
         return;
-    
+
     HTMLSelectElement* select = selectElement();
     select->optionSelectedByUser(select->listToOptionIndex(listIndex), fireOnChange);
 }
@@ -426,7 +426,7 @@
         return String();
     return listItems[listIndex]->fastGetAttribute(aria_labelAttr);
 }
-    
+
 String RenderMenuList::itemToolTip(unsigned listIndex) const
 {
     const Vector<HTMLElement*>& listItems = selectElement()->listItems();
diff --git a/Source/core/rendering/RenderMeter.h b/Source/core/rendering/RenderMeter.h
index d157a39..0c5f80a 100644
--- a/Source/core/rendering/RenderMeter.h
+++ b/Source/core/rendering/RenderMeter.h
@@ -36,7 +36,7 @@
     HTMLMeterElement* meterElement() const;
     virtual void updateFromElement();
 
-private:    
+private:
     virtual void updateLogicalWidth() OVERRIDE;
     virtual void computeLogicalHeight(LayoutUnit logicalHeight, LayoutUnit logicalTop, LogicalExtentComputedValues&) const OVERRIDE;
 
diff --git a/Source/core/rendering/RenderMultiColumnBlock.cpp b/Source/core/rendering/RenderMultiColumnBlock.cpp
index 434fccd..8831a88 100644
--- a/Source/core/rendering/RenderMultiColumnBlock.cpp
+++ b/Source/core/rendering/RenderMultiColumnBlock.cpp
@@ -57,7 +57,7 @@
     // FIXME: Can overflow on fast/block/float/float-not-removed-from-next-sibling4.html, see https://bugs.webkit.org/show_bug.cgi?id=68744
     m_columnCount = 1;
     m_columnWidth = contentLogicalWidth();
-    
+
     ASSERT(!style()->hasAutoColumnCount() || !style()->hasAutoColumnWidth());
 
     LayoutUnit availWidth = m_columnWidth;
@@ -145,12 +145,12 @@
     }
     m_flowThread->addChild(newChild, beforeChild);
 }
-    
+
 RenderObject* RenderMultiColumnBlock::layoutSpecialExcludedChild(bool relayoutChildren)
 {
     if (!m_flowThread)
         return 0;
-    
+
     // Update the dimensions of our regions before we lay out the flow thread.
     // FIXME: Eventually this is going to get way more complicated, and we will be destroying regions
     // instead of trying to keep them around.
@@ -165,17 +165,17 @@
             shouldInvalidateRegions = true;
         }
     }
-    
+
     if (shouldInvalidateRegions)
         m_flowThread->invalidateRegions();
 
     if (relayoutChildren)
         m_flowThread->setChildNeedsLayout(true, MarkOnlyThis);
-    
+
     setLogicalTopForChild(m_flowThread, borderBefore() + paddingBefore());
     m_flowThread->layoutIfNeeded();
     determineLogicalLeftPositionForChild(m_flowThread);
-    
+
     return m_flowThread;
 }
 
diff --git a/Source/core/rendering/RenderMultiColumnBlock.h b/Source/core/rendering/RenderMultiColumnBlock.h
index c4e3cdc..6b441c2 100644
--- a/Source/core/rendering/RenderMultiColumnBlock.h
+++ b/Source/core/rendering/RenderMultiColumnBlock.h
@@ -48,13 +48,13 @@
 
 private:
     virtual bool isRenderMultiColumnBlock() const { return true; }
-    
+
     virtual const char* renderName() const;
 
     virtual RenderObject* layoutSpecialExcludedChild(bool relayoutChildren) OVERRIDE;
 
     virtual void styleDidChange(StyleDifference, const RenderStyle*) OVERRIDE;
-    
+
     virtual bool updateLogicalWidthAndColumnWidth() OVERRIDE;
     virtual void checkForPaginationLogicalHeightChange(LayoutUnit& pageLogicalHeight, bool& pageLogicalHeightChanged, bool& hasSpecifiedPageLogicalHeight) OVERRIDE;
     virtual bool relayoutForPagination(bool hasSpecifiedPageLogicalHeight, LayoutUnit pageLogicalHeight, LayoutStateMaintainer&) OVERRIDE;
diff --git a/Source/core/rendering/RenderMultiColumnFlowThread.cpp b/Source/core/rendering/RenderMultiColumnFlowThread.cpp
index 5e3c26f..53bf05a 100644
--- a/Source/core/rendering/RenderMultiColumnFlowThread.cpp
+++ b/Source/core/rendering/RenderMultiColumnFlowThread.cpp
@@ -48,7 +48,7 @@
 }
 
 const char* RenderMultiColumnFlowThread::renderName() const
-{    
+{
     return "RenderMultiColumnFlowThread";
 }
 
@@ -88,7 +88,7 @@
     RenderMultiColumnSet* firstSet = toRenderMultiColumnSet(firstRegion());
     if (firstSet)
         return;
-    
+
     invalidateRegions();
 
     RenderMultiColumnBlock* parentBlock = toRenderMultiColumnBlock(parent());
diff --git a/Source/core/rendering/RenderMultiColumnSet.cpp b/Source/core/rendering/RenderMultiColumnSet.cpp
index ee87b12..2c0175b 100644
--- a/Source/core/rendering/RenderMultiColumnSet.cpp
+++ b/Source/core/rendering/RenderMultiColumnSet.cpp
@@ -139,7 +139,7 @@
 {
     RenderMultiColumnBlock* parentBlock = toRenderMultiColumnBlock(parent());
     setComputedColumnWidthAndCount(parentBlock->columnWidth(), parentBlock->columnCount()); // FIXME: This will eventually vary if we are contained inside regions.
-    
+
     // FIXME: When we add regions support, we'll start it off at the width of the multi-column
     // block in that particular region.
     setLogicalWidth(parentBox()->contentLogicalWidth());
@@ -384,7 +384,7 @@
             IntRect pixelSnappedRuleRect = pixelSnappedIntRectFromEdges(ruleLeft, ruleTop, ruleRight, ruleBottom);
             drawLineForBoxSide(paintInfo.context, pixelSnappedRuleRect.x(), pixelSnappedRuleRect.y(), pixelSnappedRuleRect.maxX(), pixelSnappedRuleRect.maxY(), boxSide, ruleColor, ruleStyle, 0, 0, antialias);
         }
-        
+
         ruleLogicalLeft = currLogicalLeftOffset;
     }
 }
@@ -395,30 +395,30 @@
     // entire column set. Put the repaint rect into flow thread coordinates by flipping it first.
     LayoutRect flowThreadRepaintRect(repaintRect);
     flowThread()->flipForWritingMode(flowThreadRepaintRect);
-    
+
     // Now we can compare this rect with the flow thread portions owned by each column. First let's
     // just see if the repaint rect intersects our flow thread portion at all.
     LayoutRect clippedRect(flowThreadRepaintRect);
     clippedRect.intersect(RenderRegion::flowThreadPortionOverflowRect());
     if (clippedRect.isEmpty())
         return;
-    
+
     // Now we know we intersect at least one column. Let's figure out the logical top and logical
     // bottom of the area we're repainting.
     LayoutUnit repaintLogicalTop = isHorizontalWritingMode() ? flowThreadRepaintRect.y() : flowThreadRepaintRect.x();
     LayoutUnit repaintLogicalBottom = (isHorizontalWritingMode() ? flowThreadRepaintRect.maxY() : flowThreadRepaintRect.maxX()) - 1;
-    
+
     unsigned startColumn = columnIndexAtOffset(repaintLogicalTop);
     unsigned endColumn = columnIndexAtOffset(repaintLogicalBottom);
-    
+
     LayoutUnit colGap = columnGap();
     unsigned colCount = columnCount();
     for (unsigned i = startColumn; i <= endColumn; i++) {
         LayoutRect colRect = columnRectAt(i);
-        
+
         // Get the portion of the flow thread that corresponds to this column.
         LayoutRect flowThreadPortion = flowThreadPortionRectAt(i);
-        
+
         // Now get the overflow rect that corresponds to the column.
         LayoutRect flowThreadOverflowPortion = flowThreadPortionOverflowRect(flowThreadPortion, i, colCount, colGap);
 
@@ -443,25 +443,25 @@
     clippedRect.intersect(RenderRegion::flowThreadPortionOverflowRect());
     if (clippedRect.isEmpty())
         return;
-    
+
     // Now we know we intersect at least one column. Let's figure out the logical top and logical
     // bottom of the area we're checking.
     LayoutUnit layerLogicalTop = isHorizontalWritingMode() ? layerBoundsInFlowThread.y() : layerBoundsInFlowThread.x();
     LayoutUnit layerLogicalBottom = (isHorizontalWritingMode() ? layerBoundsInFlowThread.maxY() : layerBoundsInFlowThread.maxX()) - 1;
-    
+
     // Figure out the start and end columns and only check within that range so that we don't walk the
     // entire column set.
     unsigned startColumn = columnIndexAtOffset(layerLogicalTop);
     unsigned endColumn = columnIndexAtOffset(layerLogicalBottom);
-    
+
     LayoutUnit colLogicalWidth = computedColumnWidth();
     LayoutUnit colGap = columnGap();
     unsigned colCount = columnCount();
-    
+
     for (unsigned i = startColumn; i <= endColumn; i++) {
         // Get the portion of the flow thread that corresponds to this column.
         LayoutRect flowThreadPortion = flowThreadPortionRectAt(i);
-        
+
         // Now get the overflow rect that corresponds to the column.
         LayoutRect flowThreadOverflowPortion = flowThreadPortionOverflowRect(flowThreadPortion, i, colCount, colGap);
 
@@ -470,7 +470,7 @@
         clippedRect.intersect(flowThreadOverflowPortion);
         if (clippedRect.isEmpty())
             continue;
-        
+
         // We also need to intersect the dirty rect. We have to apply a translation and shift based off
         // our column index.
         LayoutPoint translationOffset;
@@ -490,18 +490,18 @@
         // Shift the dirty rect to be in flow thread coordinates with this translation applied.
         LayoutRect translatedDirtyRect(dirtyRectInFlowThread);
         translatedDirtyRect.moveBy(-translationOffset);
-        
+
         // See if we intersect the dirty rect.
         clippedRect = layerBoundsInFlowThread;
         clippedRect.intersect(translatedDirtyRect);
         if (clippedRect.isEmpty())
             continue;
-        
+
         // Something does need to paint in this column. Make a fragment now and supply the physical translation
         // offset and the clip rect for the column with that offset applied.
         LayerFragment fragment;
         fragment.paginationOffset = translationOffset;
-        
+
         LayoutRect flippedFlowThreadOverflowPortion(flowThreadOverflowPortion);
         flipForWritingMode(flippedFlowThreadOverflowPortion);
         fragment.paginationClip = flippedFlowThreadOverflowPortion;
@@ -510,7 +510,7 @@
 }
 
 const char* RenderMultiColumnSet::renderName() const
-{    
+{
     return "RenderMultiColumnSet";
 }
 
diff --git a/Source/core/rendering/RenderMultiColumnSet.h b/Source/core/rendering/RenderMultiColumnSet.h
index a0d2792..d60bd97 100644
--- a/Source/core/rendering/RenderMultiColumnSet.h
+++ b/Source/core/rendering/RenderMultiColumnSet.h
@@ -66,13 +66,13 @@
     LayoutUnit forcedBreakOffset() const { return m_forcedBreakOffset; }
     LayoutUnit maximumDistanceBetweenForcedBreaks() const { return m_maximumDistanceBetweenForcedBreaks; }
     void clearForcedBreaks()
-    { 
+    {
         m_forcedBreaksCount = 0;
         m_maximumDistanceBetweenForcedBreaks = 0;
         m_forcedBreakOffset = 0;
     }
     void addForcedBreak(LayoutUnit offsetFromFirstPage)
-    { 
+    {
         ASSERT(!computedColumnHeight());
         LayoutUnit distanceFromLastBreak = offsetFromFirstPage - m_forcedBreakOffset;
         if (!distanceFromLastBreak)
@@ -108,20 +108,20 @@
     virtual LayoutUnit pageLogicalHeight() const OVERRIDE { return m_computedColumnHeight; }
 
     virtual LayoutUnit pageLogicalTopForOffset(LayoutUnit offset) const OVERRIDE;
-    
+
     // FIXME: This will change once we have column sets constrained by enclosing pages, etc.
     virtual LayoutUnit logicalHeightOfAllFlowThreadContent() const OVERRIDE { return m_computedColumnHeight; }
 
     // FIXME: For now we return false, but it's likely we will leverage the auto height region code to do column
     // balancing. That's why we have an override of this function that is distinct from RenderRegionSet's override.
     virtual bool shouldHaveAutoLogicalHeight() const OVERRIDE { return false; }
-    
+
     virtual void repaintFlowThreadContent(const LayoutRect& repaintRect) const OVERRIDE;
 
     virtual void collectLayerFragments(LayerFragments&, const LayoutRect& layerBoundingBox, const LayoutRect& dirtyRect) OVERRIDE;
 
     virtual const char* renderName() const;
-    
+
     void paintColumnRules(PaintInfo&, const LayoutPoint& paintOffset);
 
     LayoutUnit columnGap() const;
@@ -142,7 +142,7 @@
     unsigned m_computedColumnCount;
     LayoutUnit m_computedColumnWidth;
     LayoutUnit m_computedColumnHeight;
-    
+
     // The following variables are used when balancing the column set.
     LayoutUnit m_maxColumnHeight; // Maximum column height allowed.
     LayoutUnit m_minSpaceShortage; // The smallest amout of space shortage that caused a column break.
diff --git a/Source/core/rendering/RenderNamedFlowThread.cpp b/Source/core/rendering/RenderNamedFlowThread.cpp
index 0f64ff5..5537e81 100644
--- a/Source/core/rendering/RenderNamedFlowThread.cpp
+++ b/Source/core/rendering/RenderNamedFlowThread.cpp
@@ -71,22 +71,22 @@
 }
 
 const char* RenderNamedFlowThread::renderName() const
-{    
+{
     return "RenderNamedFlowThread";
 }
-    
+
 void RenderNamedFlowThread::clearContentNodes()
 {
     for (NamedFlowContentNodes::iterator it = m_contentNodes.begin(); it != m_contentNodes.end(); ++it) {
         Node* contentNode = *it;
-        
+
         ASSERT(contentNode && contentNode->isElementNode());
         ASSERT(contentNode->inNamedFlow());
         ASSERT(contentNode->document() == document());
-        
+
         contentNode->clearInNamedFlow();
     }
-    
+
     m_contentNodes.clear();
 }
 
@@ -129,7 +129,7 @@
 
 void RenderNamedFlowThread::addFlowChild(RenderObject* newChild)
 {
-    // The child list is used to sort the flow thread's children render objects 
+    // The child list is used to sort the flow thread's children render objects
     // based on their corresponding nodes DOM order. The list is needed to avoid searching the whole DOM.
 
     Node* childNode = newChild->node();
diff --git a/Source/core/rendering/RenderNamedFlowThread.h b/Source/core/rendering/RenderNamedFlowThread.h
index e9fad64..1e41f99 100644
--- a/Source/core/rendering/RenderNamedFlowThread.h
+++ b/Source/core/rendering/RenderNamedFlowThread.h
@@ -29,9 +29,9 @@
 
 #include "core/platform/Timer.h"
 #include "core/rendering/RenderFlowThread.h"
-#include <wtf/HashCountedSet.h>
-#include <wtf/ListHashSet.h>
-#include <wtf/text/AtomicString.h>
+#include "wtf/HashCountedSet.h"
+#include "wtf/ListHashSet.h"
+#include "wtf/text/AtomicString.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/RenderObject.cpp b/Source/core/rendering/RenderObject.cpp
index 1f43a15..a48ca9f 100644
--- a/Source/core/rendering/RenderObject.cpp
+++ b/Source/core/rendering/RenderObject.cpp
@@ -597,7 +597,7 @@
             return toRenderBox(curr);
         curr = curr->parent();
     }
-    
+
     ASSERT_NOT_REACHED();
     return 0;
 }
@@ -623,7 +623,7 @@
     RenderFlowThread* flowThread = view()->flowThreadController()->currentRenderFlowThread();
     if (flowThread)
         return flowThread;
-    
+
     // Not in the middle of layout so have to find the thread the slow way.
     RenderObject* curr = const_cast<RenderObject*>(this);
     while (curr) {
@@ -752,7 +752,7 @@
     // in the chain that we mark dirty (even though they're kind of irrelevant).
     RenderObject* o = isTableCell() ? containingBlock() : container();
     while (o && !o->preferredLogicalWidthsDirty()) {
-        // Don't invalidate the outermost object of an unrooted subtree. That object will be 
+        // Don't invalidate the outermost object of an unrooted subtree. That object will be
         // invalidated when the subtree is added to the document.
         RenderObject* container = o->isTableCell() ? o->containingBlock() : o->container();
         if (!container && !o->isRenderView())
@@ -846,7 +846,7 @@
 
     if (sizeType == Contain || sizeType == Cover)
         return true;
-    
+
     if (sizeType == SizeLength) {
         if (layer->sizeLength().width().isPercent() || layer->sizeLength().height().isPercent())
             return true;
@@ -875,7 +875,7 @@
 
     if (mustRepaintFillLayers(this, style()->backgroundLayers()))
         return true;
-     
+
     // Our fill layers are ok.  Let's check border.
     if (style()->hasBorder() && borderImageIsLoadedAndCanBeRendered())
         return true;
@@ -1200,7 +1200,7 @@
     int topInner = inner.y();
     int bottomOuter = outer.maxY();
     int bottomInner = inner.maxY();
-    
+
     drawLineForBoxSide(graphicsContext, leftOuter, topOuter, leftInner, bottomOuter, BSLeft, outlineColor, outlineStyle, outlineWidth, outlineWidth);
     drawLineForBoxSide(graphicsContext, leftOuter, topOuter, rightOuter, topInner, BSTop, outlineColor, outlineStyle, outlineWidth, outlineWidth);
     drawLineForBoxSide(graphicsContext, rightInner, topOuter, rightOuter, bottomOuter, BSRight, outlineColor, outlineStyle, outlineWidth, outlineWidth);
@@ -1219,7 +1219,7 @@
         size_t n = quads.size();
         if (!n)
             return IntRect();
-    
+
         IntRect result = quads[0].enclosingBoundingBox();
         for (size_t i = 1; i < n; ++i)
             result.unite(quads[i].enclosingBoundingBox());
@@ -1301,7 +1301,7 @@
     RenderView* v = view();
     if (!v)
         return 0;
-    
+
     RenderLayerModelObject* repaintContainer = 0;
 
     if (v->usesCompositing()) {
@@ -1367,7 +1367,7 @@
             return;
         }
     }
-    
+
     if (v->usesCompositing()) {
         ASSERT(repaintContainer->hasLayer() && repaintContainer->layer()->isComposited());
         repaintContainer->layer()->setBackingNeedsRepaintInRect(r);
@@ -1769,7 +1769,7 @@
         else if (diff < StyleDifferenceRecompositeLayer)
             diff = StyleDifferenceRecompositeLayer;
     }
-    
+
     // The answer to requiresLayer() for plugins, iframes, and canvas can change without the actual
     // style changing, since it depends on whether we decide to composite these elements. When the
     // layer status of one of these elements changes, we need to force a layout.
@@ -1839,7 +1839,7 @@
     diff = adjustStyleDifference(diff, contextSensitiveProperties);
 
     styleWillChange(diff, style.get());
-    
+
     RefPtr<RenderStyle> oldStyle = m_style.release();
     setStyleInternal(style);
 
@@ -1868,7 +1868,7 @@
     // Now that the layer (if any) has been updated, we need to adjust the diff again,
     // check whether we should layout now, and decide if we need to repaint.
     StyleDifference updatedDiff = adjustStyleDifference(diff, contextSensitiveProperties);
-    
+
     if (diff <= StyleDifferenceLayoutPositionedMovementOnly) {
         if (updatedDiff == StyleDifferenceLayout)
             setNeedsLayoutAndPrefWidthsRecalc();
@@ -1880,7 +1880,7 @@
         } else if (updatedDiff == StyleDifferenceSimplifiedLayout)
             setNeedsSimplifiedNormalFlowLayout();
     }
-    
+
     if (updatedDiff == StyleDifferenceRepaintLayer || shouldRepaintForStyleDifference(updatedDiff)) {
         // Do a repaint with the new style now, e.g., for example if we go from
         // not having an outline to having an outline.
@@ -1899,8 +1899,8 @@
         // If our z-index changes value or our visibility changes,
         // we need to dirty our stacking context's z-order list.
         if (newStyle) {
-            bool visibilityChanged = m_style->visibility() != newStyle->visibility() 
-                || m_style->zIndex() != newStyle->zIndex() 
+            bool visibilityChanged = m_style->visibility() != newStyle->visibility()
+                || m_style->zIndex() != newStyle->zIndex()
                 || m_style->hasAutoZIndex() != newStyle->hasAutoZIndex();
             if (visibilityChanged) {
                 document()->setAnnotatedRegionsDirty(true);
@@ -2003,7 +2003,7 @@
 
     if (!m_parent)
         return;
-    
+
     if (diff == StyleDifferenceLayout || diff == StyleDifferenceSimplifiedLayout) {
         RenderCounter::rendererStyleChanged(this, oldStyle, m_style.get());
 
@@ -2069,7 +2069,7 @@
     // Optimize the common case
     if (oldLayers && !oldLayers->next() && newLayers && !newLayers->next() && (oldLayers->image() == newLayers->image()))
         return;
-    
+
     // Go through the new layers and addClients first, to avoid removing all clients of an image.
     for (const FillLayer* currNew = newLayers; currNew; currNew = currNew->next()) {
         if (currNew->image())
@@ -2102,7 +2102,7 @@
     TransformState transformState(TransformState::ApplyTransformDirection, localPoint);
     mapLocalToContainer(0, transformState, mode | ApplyContainerFlip);
     transformState.flatten();
-    
+
     return transformState.lastPlanarPoint();
 }
 
@@ -2111,7 +2111,7 @@
     TransformState transformState(TransformState::UnapplyInverseTransformDirection, containerPoint);
     mapAbsoluteToLocalPoint(mode, transformState);
     transformState.flatten();
-    
+
     return transformState.lastPlanarPoint();
 }
 
@@ -2165,7 +2165,7 @@
         offset = -toRenderBox(container)->scrolledContentOffset();
 
     geometryMap.push(this, offset, hasColumns());
-    
+
     return container;
 }
 
@@ -2193,7 +2193,7 @@
     RenderLayer* layer;
     if (hasLayer() && (layer = toRenderLayerModelObject(this)->layer()) && layer->transform())
         transform.multiply(layer->currentTransform());
-    
+
     if (containerObject && containerObject->hasLayer() && containerObject->style()->hasPerspective()) {
         // Perpsective on the container affects us, so we have to factor it in here.
         ASSERT(containerObject->hasLayer());
@@ -2201,7 +2201,7 @@
 
         TransformationMatrix perspectiveMatrix;
         perspectiveMatrix.applyPerspective(containerObject->style()->perspective());
-        
+
         transform.translateRight3d(-perspectiveOrigin.x(), -perspectiveOrigin.y(), 0);
         transform = perspectiveMatrix * transform;
         transform.translateRight3d(perspectiveOrigin.x(), perspectiveOrigin.y(), 0);
@@ -2215,7 +2215,7 @@
     TransformState transformState(TransformState::ApplyTransformDirection, localQuad.boundingBox().center(), localQuad);
     mapLocalToContainer(repaintContainer, transformState, mode | ApplyContainerFlip | UseTransforms, wasFixed);
     transformState.flatten();
-    
+
     return transformState.lastPlanarQuad();
 }
 
@@ -2355,7 +2355,7 @@
         if (bodyObject)
             return bodyObject;
     }
-    
+
     return this;
 }
 
@@ -2469,7 +2469,7 @@
         children->destroyLeftoverChildren();
 
     // If this renderer is being autoscrolled, stop the autoscroll timer
-    
+
     // FIXME: RenderObject::destroy should not get called with a renderer whose document
     // has a null frame, so we assert this. However, we don't want release builds to crash which is why we
     // check that the frame is not null.
@@ -2585,9 +2585,9 @@
 {
     if (flowThreadState() == NotInsideFlowThread)
         return;
-    
+
     // Sometimes we remove the element from the flow, but it's not destroyed at that time.
-    // It's only until later when we actually destroy it and remove all the children from it. 
+    // It's only until later when we actually destroy it and remove all the children from it.
     // Currently, that happens for firstLetter elements and list markers.
     // Pass in the flow thread so that we don't have to look it up for all the children.
     removeFromRenderFlowThreadRecursive(flowThreadContainingBlock());
@@ -2599,7 +2599,7 @@
         for (RenderObject* child = children->firstChild(); child; child = child->nextSibling())
             child->removeFromRenderFlowThreadRecursive(renderFlowThread);
     }
-    
+
     RenderFlowThread* localFlowThread = renderFlowThread;
     if (flowThreadState() == InsideInFlowThread)
         localFlowThread = flowThreadContainingBlock(); // We have to ask. We can't just assume we are in the same flow thread.
@@ -2832,7 +2832,7 @@
     RenderStyle* cachedStyle = style()->getCachedPseudoStyle(pseudo);
     if (cachedStyle)
         return cachedStyle;
-    
+
     RefPtr<RenderStyle> result = getUncachedPseudoStyle(PseudoStyleRequest(pseudo), parentStyle);
     if (result)
         return style()->addCachedPseudoStyle(result.release());
@@ -2843,7 +2843,7 @@
 {
     if (pseudoStyleRequest.pseudoId < FIRST_INTERNAL_PSEUDOID && !ownStyle && !style()->hasPseudoStyle(pseudoStyleRequest.pseudoId))
         return 0;
-    
+
     if (!parentStyle) {
         ASSERT(!ownStyle);
         parentStyle = style();
@@ -2884,7 +2884,7 @@
         if (result.alpha())
             return result.color();
     }
-    
+
     result = object->resolveColor(style, CSSPropertyWebkitTextFillColor);
     return result.color();
 }
@@ -2940,7 +2940,7 @@
     // Convert the style regions to absolute coordinates.
     if (style()->visibility() != VISIBLE || !isBox())
         return;
-    
+
     RenderBox* box = toRenderBox(this);
     FloatPoint absPos = localToAbsolute();
 
@@ -3122,7 +3122,7 @@
     // If this is a non-anonymous renderer in an editable area, then it's simple.
     if (Node* node = nonPseudoNode()) {
         if (!node->rendererIsEditable()) {
-            // If it can be found, we prefer a visually equivalent position that is editable. 
+            // If it can be found, we prefer a visually equivalent position that is editable.
             Position position = createLegacyEditingPosition(node, offset);
             Position candidate = position.downstream(CanCrossEditingBoundary);
             if (candidate.deprecatedNode()->rendererIsEditable())
diff --git a/Source/core/rendering/RenderObject.h b/Source/core/rendering/RenderObject.h
index 05df7a9..d85358c 100644
--- a/Source/core/rendering/RenderObject.h
+++ b/Source/core/rendering/RenderObject.h
@@ -38,9 +38,9 @@
 #include "core/rendering/ScrollBehavior.h"
 #include "core/rendering/style/RenderStyle.h"
 #include "core/rendering/style/StyleInheritedData.h"
-#include <wtf/HashSet.h>
-#include <wtf/StackStats.h>
-#include <wtf/UnusedParam.h>
+#include "wtf/HashSet.h"
+#include "wtf/StackStats.h"
+#include "wtf/UnusedParam.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/RenderObjectChildList.cpp b/Source/core/rendering/RenderObjectChildList.cpp
index 012bca5..e14404e 100644
--- a/Source/core/rendering/RenderObjectChildList.cpp
+++ b/Source/core/rendering/RenderObjectChildList.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/rendering/RenderObjectChildList.h b/Source/core/rendering/RenderObjectChildList.h
index b2804ec..81396e1 100644
--- a/Source/core/rendering/RenderObjectChildList.h
+++ b/Source/core/rendering/RenderObjectChildList.h
@@ -20,13 +20,13 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderObjectChildList_h
 #define RenderObjectChildList_h
 
-#include <wtf/Forward.h>
+#include "wtf/Forward.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/RenderOverflow.h b/Source/core/rendering/RenderOverflow.h
index c737eb3..d01d3ba 100644
--- a/Source/core/rendering/RenderOverflow.h
+++ b/Source/core/rendering/RenderOverflow.h
@@ -32,20 +32,20 @@
 // visual overflow (which is not expected to be reachable via scrolling mechanisms).
 //
 // Layout overflow examples include other boxes that spill out of our box,  For example, in the inline case a tall image
-// could spill out of a line box. 
-    
+// could spill out of a line box.
+
 // Examples of visual overflow are shadows, text stroke (and eventually outline and border-image).
 
 // This object is allocated only when some of these fields have non-default values in the owning box.
 class RenderOverflow {
     WTF_MAKE_NONCOPYABLE(RenderOverflow); WTF_MAKE_FAST_ALLOCATED;
 public:
-    RenderOverflow(const LayoutRect& layoutRect, const LayoutRect& visualRect) 
+    RenderOverflow(const LayoutRect& layoutRect, const LayoutRect& visualRect)
         : m_layoutOverflow(layoutRect)
         , m_visualOverflow(visualRect)
     {
     }
-   
+
     const LayoutRect layoutOverflowRect() const { return m_layoutOverflow; }
     const LayoutRect visualOverflowRect() const { return m_visualOverflow; }
 
@@ -53,14 +53,14 @@
     void setMaxYLayoutOverflow(LayoutUnit overflow) { m_layoutOverflow.setHeight(overflow - m_layoutOverflow.y()); }
     void setMinXLayoutOverflow(LayoutUnit overflow) { m_layoutOverflow.setX(overflow); }
     void setMaxXLayoutOverflow(LayoutUnit overflow) { m_layoutOverflow.setWidth(overflow - m_layoutOverflow.x()); }
-    
+
     void setMinYVisualOverflow(LayoutUnit overflow) { m_visualOverflow.setY(overflow); }
     void setMaxYVisualOverflow(LayoutUnit overflow) { m_visualOverflow.setHeight(overflow - m_layoutOverflow.y()); }
     void setMinXVisualOverflow(LayoutUnit overflow) { m_visualOverflow.setX(overflow); }
     void setMaxXVisualOverflow(LayoutUnit overflow) { m_visualOverflow.setWidth(overflow - m_layoutOverflow.x()); }
-    
+
     void move(LayoutUnit dx, LayoutUnit dy);
-    
+
     void addLayoutOverflow(const LayoutRect&);
     void addVisualOverflow(const LayoutRect&);
 
diff --git a/Source/core/rendering/RenderPart.cpp b/Source/core/rendering/RenderPart.cpp
index dad2632..4395bcc 100644
--- a/Source/core/rendering/RenderPart.cpp
+++ b/Source/core/rendering/RenderPart.cpp
@@ -69,14 +69,14 @@
 {
     if (RenderWidget::requiresLayer())
         return true;
-    
+
     return requiresAcceleratedCompositing();
 }
 
 bool RenderPart::requiresAcceleratedCompositing() const
 {
-    // There are two general cases in which we can return true. First, if this is a plugin 
-    // renderer and the plugin has a layer, then we need a layer. Second, if this is 
+    // There are two general cases in which we can return true. First, if this is a plugin
+    // renderer and the plugin has a layer, then we need a layer. Second, if this is
     // a renderer with a contentDocument and that document needs a layer, then we need
     // a layer.
     if (widget() && widget()->isPluginView() && toPluginView(widget())->platformLayer())
diff --git a/Source/core/rendering/RenderProgress.cpp b/Source/core/rendering/RenderProgress.cpp
index ce65ce1..e5b52f0 100644
--- a/Source/core/rendering/RenderProgress.cpp
+++ b/Source/core/rendering/RenderProgress.cpp
@@ -24,8 +24,8 @@
 
 #include "core/html/HTMLProgressElement.h"
 #include "core/rendering/RenderTheme.h"
-#include <wtf/CurrentTime.h>
-#include <wtf/RefPtr.h>
+#include "wtf/CurrentTime.h"
+#include "wtf/RefPtr.h"
 
 using namespace std;
 
@@ -108,6 +108,6 @@
 
     ASSERT(node()->shadowHost());
     return toHTMLProgressElement(node()->shadowHost());
-}    
+}
 
 } // namespace WebCore
diff --git a/Source/core/rendering/RenderRegion.cpp b/Source/core/rendering/RenderRegion.cpp
index c7cbc18..1952abe 100644
--- a/Source/core/rendering/RenderRegion.cpp
+++ b/Source/core/rendering/RenderRegion.cpp
@@ -254,7 +254,7 @@
     bool hasAnchoredEndpointsForHeight = isOutOfFlowPositioned() && hasSpecifiedEndpointsForHeight;
     return style()->logicalHeight().isAuto() && !hasAnchoredEndpointsForHeight;
 }
-    
+
 void RenderRegion::styleDidChange(StyleDifference diff, const RenderStyle* oldStyle)
 {
     RenderBlock::styleDidChange(diff, oldStyle);
@@ -329,7 +329,7 @@
 
     // Now switch to the region's writing mode coordinate space and let it repaint itself.
     flipForWritingMode(clippedRect);
-    
+
     // Issue the repaint.
     repaintRectangle(clippedRect);
 }
@@ -361,7 +361,7 @@
 {
     if (documentBeingDestroyed())
         return;
-    
+
     // A region starts off invalid.
     setIsValid(false);
 
@@ -369,7 +369,7 @@
     // The flow thread lifetime is influenced by the number of regions attached to it,
     // and we are attaching the region to the flow thread.
     installFlowThread();
-    
+
     if (!m_flowThread)
         return;
 
diff --git a/Source/core/rendering/RenderRegion.h b/Source/core/rendering/RenderRegion.h
index b9b562f..2e5d431 100644
--- a/Source/core/rendering/RenderRegion.h
+++ b/Source/core/rendering/RenderRegion.h
@@ -86,7 +86,7 @@
     void setRegionOversetState(RegionOversetState);
 
     Element* element() const;
-    
+
     // These methods represent the width and height of a "page" and for a RenderRegion they are just the
     // content width and content height of a region. For RenderRegionSets, however, they will be the width and
     // height of a single column or page in the set.
@@ -114,12 +114,12 @@
     // flow thread portion we contain. For sets, we have to figure out the top of the nearest column or
     // page.
     virtual LayoutUnit pageLogicalTopForOffset(LayoutUnit offset) const;
-    
+
     virtual void expandToEncompassFlowThreadContentsIfNeeded() { };
 
     // Whether or not this region is a set.
     virtual bool isRenderRegionSet() const { return false; }
-    
+
     virtual void repaintFlowThreadContent(const LayoutRect& repaintRect) const;
 
     virtual void collectLayerFragments(LayerFragments&, const LayoutRect&, const LayoutRect&) { }
diff --git a/Source/core/rendering/RenderRegionSet.cpp b/Source/core/rendering/RenderRegionSet.cpp
index 217ac85..9336115 100644
--- a/Source/core/rendering/RenderRegionSet.cpp
+++ b/Source/core/rendering/RenderRegionSet.cpp
@@ -47,7 +47,7 @@
     // of the flow thread content. This is because it is always capable of generating an
     // infinite number of boxes in order to hold all of the remaining content.
     LayoutRect rect(flowThreadPortionRect());
-    
+
     // Get the offset within the flow thread in its block progression direction. Then get the
     // flow thread's remaining logical height including its overflow and expand our rect
     // to encompass that remaining height and overflow. The idea is that we will generate
diff --git a/Source/core/rendering/RenderRegionSet.h b/Source/core/rendering/RenderRegionSet.h
index 3d19e88..6802852 100644
--- a/Source/core/rendering/RenderRegionSet.h
+++ b/Source/core/rendering/RenderRegionSet.h
@@ -48,7 +48,7 @@
 class RenderRegionSet : public RenderRegion {
 public:
     RenderRegionSet(Element*, RenderFlowThread*);
-    
+
 protected:
     virtual bool shouldHaveAutoLogicalHeight() const OVERRIDE { return false; }
 
@@ -58,7 +58,7 @@
     virtual void expandToEncompassFlowThreadContentsIfNeeded() OVERRIDE FINAL;
 
     virtual const char* renderName() const = 0;
-    
+
     virtual bool isRenderRegionSet() const OVERRIDE FINAL { return true; }
 };
 
diff --git a/Source/core/rendering/RenderReplaced.cpp b/Source/core/rendering/RenderReplaced.cpp
index 2e19c57..4f47b3d 100644
--- a/Source/core/rendering/RenderReplaced.cpp
+++ b/Source/core/rendering/RenderReplaced.cpp
@@ -78,9 +78,9 @@
 {
     StackStats::LayoutCheckPoint layoutCheckPoint;
     ASSERT(needsLayout());
-    
+
     LayoutRepainter repainter(*this, checkForRepaintDuringLayout());
-    
+
     setHeight(minimumReplacedHeight());
 
     updateLogicalWidth();
@@ -109,12 +109,12 @@
 
     if (!shouldPaint(paintInfo, paintOffset))
         return;
-    
+
     LayoutPoint adjustedPaintOffset = paintOffset + location();
-    
-    if (hasBoxDecorations() && (paintInfo.phase == PaintPhaseForeground || paintInfo.phase == PaintPhaseSelection)) 
+
+    if (hasBoxDecorations() && (paintInfo.phase == PaintPhaseForeground || paintInfo.phase == PaintPhaseSelection))
         paintBoxDecorations(paintInfo, adjustedPaintOffset);
-    
+
     if (paintInfo.phase == PaintPhaseMask) {
         paintMask(paintInfo, adjustedPaintOffset);
         return;
@@ -123,13 +123,13 @@
     LayoutRect paintRect = LayoutRect(adjustedPaintOffset, size());
     if ((paintInfo.phase == PaintPhaseOutline || paintInfo.phase == PaintPhaseSelfOutline) && style()->outlineWidth())
         paintOutline(paintInfo, paintRect);
-    
+
     if (paintInfo.phase != PaintPhaseForeground && paintInfo.phase != PaintPhaseSelection && !canHaveChildren())
         return;
-    
+
     if (!paintInfo.shouldPaintWithinRoot(this))
         return;
-    
+
     bool drawSelectionTint = selectionState() != SelectionNone && !document()->printing();
     if (paintInfo.phase == PaintPhaseSelection) {
         if (selectionState() == SelectionNone)
@@ -170,7 +170,7 @@
 
 bool RenderReplaced::shouldPaint(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
 {
-    if (paintInfo.phase != PaintPhaseForeground && paintInfo.phase != PaintPhaseOutline && paintInfo.phase != PaintPhaseSelfOutline 
+    if (paintInfo.phase != PaintPhaseForeground && paintInfo.phase != PaintPhaseOutline && paintInfo.phase != PaintPhaseSelfOutline
             && paintInfo.phase != PaintPhaseSelection && paintInfo.phase != PaintPhaseMask)
         return false;
 
@@ -276,7 +276,7 @@
 
         if (rendererHasAspectRatio(this) && isPercentageIntrinsicSize)
             intrinsicRatio = 1;
-            
+
         // Update our intrinsic size to match what the content renderer has computed, so that when we
         // constrain the size below, the correct intrinsic size will be obtained for comparison against
         // min and max widths.
@@ -452,7 +452,7 @@
         m_maxPreferredLogicalWidth = max(m_maxPreferredLogicalWidth, adjustContentBoxLogicalWidthForBoxSizing(styleToUse->logicalMinWidth().value()));
         m_minPreferredLogicalWidth = max(m_minPreferredLogicalWidth, adjustContentBoxLogicalWidthForBoxSizing(styleToUse->logicalMinWidth().value()));
     }
-    
+
     if (styleToUse->logicalMaxWidth().isFixed()) {
         m_maxPreferredLogicalWidth = min(m_maxPreferredLogicalWidth, adjustContentBoxLogicalWidthForBoxSizing(styleToUse->logicalMaxWidth().value()));
         m_minPreferredLogicalWidth = min(m_minPreferredLogicalWidth, adjustContentBoxLogicalWidthForBoxSizing(styleToUse->logicalMaxWidth().value()));
@@ -470,19 +470,19 @@
     // FIXME: This code is buggy if the replaced element is relative positioned.
     InlineBox* box = inlineBoxWrapper();
     RootInlineBox* rootBox = box ? box->root() : 0;
-    
+
     LayoutUnit top = rootBox ? rootBox->selectionTop() : logicalTop();
     LayoutUnit bottom = rootBox ? rootBox->selectionBottom() : logicalBottom();
-    
+
     LayoutUnit blockDirectionPosition = isHorizontalWritingMode() ? point.y() + y() : point.x() + x();
     LayoutUnit lineDirectionPosition = isHorizontalWritingMode() ? point.x() + x() : point.y() + y();
-    
+
     if (blockDirectionPosition < top)
         return createVisiblePosition(caretMinOffset(), DOWNSTREAM); // coordinates are above
-    
+
     if (blockDirectionPosition >= bottom)
         return createVisiblePosition(caretMaxOffset(), DOWNSTREAM); // coordinates are below
-    
+
     if (node()) {
         if (lineDirectionPosition <= logicalLeft() + (logicalWidth() / 2))
             return createVisiblePosition(0, DOWNSTREAM);
@@ -498,13 +498,13 @@
 
     if (!isSelected())
         return LayoutRect();
-    
+
     LayoutRect rect = localSelectionRect();
     if (clipToVisibleContent)
         computeRectForRepaint(repaintContainer, rect);
     else
         rect = localToContainerQuad(FloatRect(rect), repaintContainer).enclosingBoundingBox();
-    
+
     return rect;
 }
 
@@ -516,7 +516,7 @@
     if (!m_inlineBoxWrapper)
         // We're a block-level replaced element.  Just return our own dimensions.
         return LayoutRect(LayoutPoint(), size());
-    
+
     RootInlineBox* root = m_inlineBoxWrapper->root();
     LayoutUnit newLogicalTop = root->block()->style()->isFlippedBlocksWritingMode() ? m_inlineBoxWrapper->logicalBottom() - root->selectionBottom() : root->selectionTop() - m_inlineBoxWrapper->logicalTop();
     if (root->block()->style()->isHorizontalWritingMode())
@@ -546,13 +546,13 @@
     selectionStartEnd(selectionStart, selectionEnd);
     if (s == SelectionStart)
         return selectionStart == 0;
-        
+
     int end = node()->hasChildNodes() ? node()->childNodeCount() : 1;
     if (s == SelectionEnd)
         return selectionEnd == end;
     if (s == SelectionBoth)
         return selectionStart == 0 && selectionEnd == end;
-        
+
     ASSERT(0);
     return false;
 }
diff --git a/Source/core/rendering/RenderReplaced.h b/Source/core/rendering/RenderReplaced.h
index 8820449..43775ad 100644
--- a/Source/core/rendering/RenderReplaced.h
+++ b/Source/core/rendering/RenderReplaced.h
@@ -78,7 +78,7 @@
     virtual LayoutRect clippedOverflowRectForRepaint(const RenderLayerModelObject* repaintContainer) const OVERRIDE;
 
     virtual VisiblePosition positionForPoint(const LayoutPoint&) OVERRIDE FINAL;
-    
+
     virtual bool canBeSelectionLeaf() const { return true; }
 
     virtual LayoutRect selectionRectForRepaint(const RenderLayerModelObject* repaintContainer, bool clipToVisibleContent = true) OVERRIDE FINAL;
diff --git a/Source/core/rendering/RenderReplica.cpp b/Source/core/rendering/RenderReplica.cpp
index d8cd92b..c5831f6 100644
--- a/Source/core/rendering/RenderReplica.cpp
+++ b/Source/core/rendering/RenderReplica.cpp
@@ -53,7 +53,7 @@
 RenderReplica::~RenderReplica()
 {
 }
-    
+
 void RenderReplica::layout()
 {
     StackStats::LayoutCheckPoint layoutCheckPoint;
@@ -75,7 +75,7 @@
 
     if (paintInfo.phase != PaintPhaseForeground && paintInfo.phase != PaintPhaseMask)
         return;
- 
+
     LayoutPoint adjustedPaintOffset = paintOffset + location();
 
     if (paintInfo.phase == PaintPhaseForeground) {
diff --git a/Source/core/rendering/RenderReplica.h b/Source/core/rendering/RenderReplica.h
index 365e424..43bee56 100644
--- a/Source/core/rendering/RenderReplica.h
+++ b/Source/core/rendering/RenderReplica.h
@@ -40,11 +40,11 @@
     virtual ~RenderReplica();
 
     virtual const char* renderName() const { return "RenderReplica"; }
-    
+
     virtual bool requiresLayer() const { return true; }
 
     virtual void layout();
-    
+
     virtual void paint(PaintInfo&, const LayoutPoint&);
 
 private:
diff --git a/Source/core/rendering/RenderRuby.cpp b/Source/core/rendering/RenderRuby.cpp
index 5a49d65..3459add 100644
--- a/Source/core/rendering/RenderRuby.cpp
+++ b/Source/core/rendering/RenderRuby.cpp
@@ -34,7 +34,7 @@
 
 #include "core/rendering/RenderRubyRun.h"
 #include "core/rendering/style/RenderStyle.h"
-#include <wtf/RefPtr.h>
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/RenderRubyBase.cpp b/Source/core/rendering/RenderRubyBase.cpp
index 94e8a36..503a9f5 100644
--- a/Source/core/rendering/RenderRubyBase.cpp
+++ b/Source/core/rendering/RenderRubyBase.cpp
@@ -118,8 +118,8 @@
     // If an anonymous block would be put next to another such block, then merge those.
     RenderObject* firstChildHere = firstChild();
     RenderObject* lastChildThere = toBase->lastChild();
-    if (firstChildHere->isAnonymousBlock() && firstChildHere->childrenInline() 
-            && lastChildThere && lastChildThere->isAnonymousBlock() && lastChildThere->childrenInline()) {            
+    if (firstChildHere->isAnonymousBlock() && firstChildHere->childrenInline()
+            && lastChildThere && lastChildThere->isAnonymousBlock() && lastChildThere->childrenInline()) {
         RenderBlock* anonBlockHere = toRenderBlock(firstChildHere);
         RenderBlock* anonBlockThere = toRenderBlock(lastChildThere);
         anonBlockHere->moveAllChildrenTo(anonBlockThere, anonBlockThere->children());
diff --git a/Source/core/rendering/RenderRubyBase.h b/Source/core/rendering/RenderRubyBase.h
index 3a00b33..4d1f56d 100644
--- a/Source/core/rendering/RenderRubyBase.h
+++ b/Source/core/rendering/RenderRubyBase.h
@@ -40,7 +40,7 @@
 class RenderRubyBase FINAL : public RenderBlock {
 public:
     virtual ~RenderRubyBase();
-    
+
     static RenderRubyBase* createAnonymous(Document*);
 
     virtual const char* renderName() const { return "RenderRubyBase (anonymous)"; }
diff --git a/Source/core/rendering/RenderRubyRun.cpp b/Source/core/rendering/RenderRubyRun.cpp
index 3686cb0..5890d2a 100644
--- a/Source/core/rendering/RenderRubyRun.cpp
+++ b/Source/core/rendering/RenderRubyRun.cpp
@@ -230,13 +230,13 @@
 void RenderRubyRun::layout()
 {
     RenderBlock::layout();
-    
+
     RenderRubyText* rt = rubyText();
     if (!rt)
         return;
 
     rt->setLogicalLeft(0);
-    
+
     // Place the RenderRubyText such that its bottom is flush with the lineTop of the first line of the RenderRubyBase.
     LayoutUnit lastLineRubyTextBottom = rt->logicalHeight();
     LayoutUnit firstLineRubyTextTop = 0;
@@ -255,7 +255,7 @@
                 firstLineTop = rootBox->logicalTopLayoutOverflow();
             firstLineTop += rb->logicalTop();
         }
-        
+
         rt->setLogicalTop(-lastLineRubyTextBottom + firstLineTop);
     } else {
         LayoutUnit lastLineBottom = logicalHeight();
diff --git a/Source/core/rendering/RenderScrollbar.cpp b/Source/core/rendering/RenderScrollbar.cpp
index 51acda5..1f39c36 100644
--- a/Source/core/rendering/RenderScrollbar.cpp
+++ b/Source/core/rendering/RenderScrollbar.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -48,7 +48,7 @@
     ASSERT(ownerNode || owningFrame);
 
     // FIXME: We need to do this because RenderScrollbar::styleChanged is called as soon as the scrollbar is created.
-    
+
     // Update the scrollbar size.
     int width = 0;
     int height = 0;
@@ -68,10 +68,10 @@
 RenderScrollbar::~RenderScrollbar()
 {
     if (!m_parts.isEmpty()) {
-        // When a scrollbar is detached from its parent (causing all parts removal) and 
+        // When a scrollbar is detached from its parent (causing all parts removal) and
         // ready to be destroyed, its destruction can be delayed because of RefPtr
         // maintained in other classes such as EventHandler (m_lastScrollbarUnderMouse).
-        // Meanwhile, we can have a call to updateScrollbarPart which recreates the 
+        // Meanwhile, we can have a call to updateScrollbarPart which recreates the
         // scrollbar part. So, we need to destroy these parts since we don't want them
         // to call on a destroyed scrollbar. See webkit bug 68009.
         updateScrollbarParts(true);
@@ -137,10 +137,10 @@
 {
     ScrollbarPart oldPart = m_pressedPart;
     Scrollbar::setPressedPart(part);
-    
+
     updateScrollbarPart(oldPart);
     updateScrollbarPart(part);
-    
+
     updateScrollbarPart(ScrollbarBGPart);
     updateScrollbarPart(TrackBGPart);
 }
@@ -151,7 +151,7 @@
         return 0;
 
     RefPtr<RenderStyle> result = owningRenderer()->getUncachedPseudoStyle(PseudoStyleRequest(pseudoId, this, partType), owningRenderer()->style());
-    // Scrollbars for root frames should always have background color 
+    // Scrollbars for root frames should always have background color
     // unless explicitly specified as transparent. So we force it.
     // This is because WebKit assumes scrollbar to be always painted and missing background
     // causes visual artifact like non-repainted dirty region.
@@ -172,12 +172,12 @@
     updateScrollbarPart(BackButtonEndPart, destroy);
     updateScrollbarPart(ForwardButtonEndPart, destroy);
     updateScrollbarPart(TrackBGPart, destroy);
-    
+
     if (destroy)
         return;
 
     // See if the scrollbar's thickness changed.  If so, we need to mark our owning object as needing a layout.
-    bool isHorizontal = orientation() == HorizontalScrollbar;    
+    bool isHorizontal = orientation() == HorizontalScrollbar;
     int oldThickness = isHorizontal ? height() : width();
     int newThickness = 0;
     RenderScrollbarPart* part = m_parts.get(ScrollbarBGPart);
@@ -185,7 +185,7 @@
         part->layout();
         newThickness = isHorizontal ? part->height() : part->width();
     }
-    
+
     if (newThickness != oldThickness) {
         setFrameRect(IntRect(location(), IntSize(isHorizontal ? width() : newThickness, isHorizontal ? newThickness : height())));
         if (RenderBox* box = owningRenderer())
@@ -224,9 +224,9 @@
         return;
 
     RefPtr<RenderStyle> partStyle = !destroy ? getScrollbarPseudoStyle(partType,  pseudoForScrollbarPart(partType)) : PassRefPtr<RenderStyle>(0);
-    
+
     bool needRenderer = !destroy && partStyle && partStyle->display() != NONE && partStyle->visibility() == VISIBLE;
-    
+
     if (needRenderer && partStyle->display() != BLOCK) {
         // See if we are a button that should not be visible according to OS settings.
         ScrollbarButtonsPlacement buttonsPlacement = theme()->buttonsPlacement();
@@ -249,7 +249,7 @@
                 break;
         }
     }
-    
+
     RenderScrollbarPart* partRenderer = m_parts.get(partType);
     if (!partRenderer && needRenderer) {
         partRenderer = RenderScrollbarPart::createAnonymous(owningRenderer()->document(), this, partType);
@@ -259,7 +259,7 @@
         partRenderer->destroy();
         partRenderer = 0;
     }
-    
+
     if (partRenderer)
         partRenderer->setStyle(partStyle.release());
 }
@@ -277,9 +277,9 @@
     RenderScrollbarPart* partRenderer = m_parts.get(partType);
     if (!partRenderer)
         return IntRect();
-        
+
     partRenderer->layout();
-    
+
     bool isHorizontal = orientation() == HorizontalScrollbar;
     if (partType == BackButtonStartPart)
         return IntRect(location(), IntSize(isHorizontal ? partRenderer->pixelSnappedWidth() : width(), isHorizontal ? height() : partRenderer->pixelSnappedHeight()));
@@ -288,7 +288,7 @@
                        isHorizontal ? y() : y() + height() - partRenderer->pixelSnappedHeight(),
                        isHorizontal ? partRenderer->pixelSnappedWidth() : width(),
                        isHorizontal ? height() : partRenderer->pixelSnappedHeight());
-    
+
     if (partType == ForwardButtonStartPart) {
         IntRect previousButton = buttonRect(BackButtonStartPart);
         return IntRect(isHorizontal ? x() + previousButton.width() : x(),
@@ -296,7 +296,7 @@
                        isHorizontal ? partRenderer->pixelSnappedWidth() : width(),
                        isHorizontal ? height() : partRenderer->pixelSnappedHeight());
     }
-    
+
     IntRect followingButton = buttonRect(ForwardButtonEndPart);
     return IntRect(isHorizontal ? x() + width() - followingButton.width() - partRenderer->pixelSnappedWidth() : x(),
                    isHorizontal ? y() : y() + height() - followingButton.height() - partRenderer->pixelSnappedHeight(),
@@ -318,7 +318,7 @@
         int totalLength = startLength + endLength;
         return IntRect(x() + startLength, y(), width() - totalLength, height());
     }
-    
+
     int marginTop = part ? static_cast<int>(part->marginTop()) : 0;
     int marginBottom = part ? static_cast<int>(part->marginBottom()) : 0;
     startLength += marginTop;
@@ -333,9 +333,9 @@
     RenderScrollbarPart* partRenderer = m_parts.get(partType);
     if (!partRenderer)
         return oldRect;
-    
+
     partRenderer->layout();
-    
+
     IntRect rect = oldRect;
     if (orientation() == HorizontalScrollbar) {
         rect.setX(rect.x() + partRenderer->marginLeft());
@@ -351,7 +351,7 @@
 {
     RenderScrollbarPart* partRenderer = m_parts.get(ThumbPart);
     if (!partRenderer)
-        return 0;    
+        return 0;
     partRenderer->layout();
     return orientation() == HorizontalScrollbar ? partRenderer->width() : partRenderer->height();
 }
diff --git a/Source/core/rendering/RenderScrollbar.h b/Source/core/rendering/RenderScrollbar.h
index 12c6032..a40ede8 100644
--- a/Source/core/rendering/RenderScrollbar.h
+++ b/Source/core/rendering/RenderScrollbar.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderScrollbar_h
@@ -28,7 +28,7 @@
 
 #include "core/platform/Scrollbar.h"
 #include "core/rendering/style/RenderStyleConstants.h"
-#include <wtf/HashMap.h>
+#include "wtf/HashMap.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/RenderScrollbarPart.cpp b/Source/core/rendering/RenderScrollbarPart.cpp
index 0e45be1..9d36cce 100644
--- a/Source/core/rendering/RenderScrollbarPart.cpp
+++ b/Source/core/rendering/RenderScrollbarPart.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -84,7 +84,7 @@
     } else {
         setWidth(m_scrollbar->width());
         computeScrollbarHeight();
-    } 
+    }
 }
 
 static int calcScrollbarThicknessUsing(SizeType sizeType, const Length& length, int containingLength, RenderView* renderView)
@@ -106,8 +106,8 @@
     int minWidth = calcScrollbarThicknessUsing(MinSize, style()->minWidth(), visibleSize, renderView);
     int maxWidth = style()->maxWidth().isUndefined() ? w : calcScrollbarThicknessUsing(MaxSize, style()->maxWidth(), visibleSize, renderView);
     setWidth(max(minWidth, min(maxWidth, w)));
-    
-    // Buttons and track pieces can all have margins along the axis of the scrollbar. 
+
+    // Buttons and track pieces can all have margins along the axis of the scrollbar.
     m_marginBox.setLeft(minimumValueForLength(style()->marginLeft(), visibleSize, renderView));
     m_marginBox.setRight(minimumValueForLength(style()->marginRight(), visibleSize, renderView));
 }
@@ -125,7 +125,7 @@
     int maxHeight = style()->maxHeight().isUndefined() ? h : calcScrollbarThicknessUsing(MaxSize, style()->maxHeight(), visibleSize, renderView);
     setHeight(max(minHeight, min(maxHeight, h)));
 
-    // Buttons and track pieces can all have margins along the axis of the scrollbar. 
+    // Buttons and track pieces can all have margins along the axis of the scrollbar.
     m_marginBox.setTop(minimumValueForLength(style()->marginTop(), visibleSize, renderView));
     m_marginBox.setBottom(minimumValueForLength(style()->marginBottom(), visibleSize, renderView));
 }
@@ -134,7 +134,7 @@
 {
     if (!preferredLogicalWidthsDirty())
         return;
-    
+
     m_minPreferredLogicalWidth = m_maxPreferredLogicalWidth = 0;
 
     setPreferredLogicalWidthsDirty(false);
@@ -168,7 +168,7 @@
                 return;
             }
         }
-        
+
         RenderBlock::imageChanged(image, rect);
     }
 }
diff --git a/Source/core/rendering/RenderScrollbarPart.h b/Source/core/rendering/RenderScrollbarPart.h
index dac6d3b..b2331cd 100644
--- a/Source/core/rendering/RenderScrollbarPart.h
+++ b/Source/core/rendering/RenderScrollbarPart.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderScrollbarPart_h
@@ -36,15 +36,15 @@
 class RenderScrollbarPart FINAL : public RenderBlock {
 public:
     static RenderScrollbarPart* createAnonymous(Document*, RenderScrollbar* = 0, ScrollbarPart = NoPart);
-    
+
     virtual ~RenderScrollbarPart();
 
     virtual const char* renderName() const { return "RenderScrollbarPart"; }
-    
+
     virtual bool requiresLayer() const { return false; }
 
     virtual void layout();
-    
+
     void paintIntoRect(GraphicsContext*, const LayoutPoint&, const LayoutRect&);
 
     // Scrollbar parts needs to be rendered at device pixel boundaries.
@@ -71,7 +71,7 @@
 
     void computeScrollbarWidth();
     void computeScrollbarHeight();
-    
+
     RenderScrollbar* m_scrollbar;
     ScrollbarPart m_part;
 };
diff --git a/Source/core/rendering/RenderScrollbarTheme.cpp b/Source/core/rendering/RenderScrollbarTheme.cpp
index 13aca53..84185ff 100644
--- a/Source/core/rendering/RenderScrollbarTheme.cpp
+++ b/Source/core/rendering/RenderScrollbarTheme.cpp
@@ -20,14 +20,14 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
 #include "core/platform/ScrollbarThemeClient.h"
 #include "core/rendering/RenderScrollbar.h"
 #include "core/rendering/RenderScrollbarTheme.h"
-#include <wtf/StdLibExtras.h>
+#include "wtf/StdLibExtras.h"
 
 namespace WebCore {
 
@@ -93,7 +93,7 @@
 }
 
 IntRect RenderScrollbarTheme::constrainTrackRectToTrackPieces(ScrollbarThemeClient* scrollbar, const IntRect& rect)
-{ 
+{
     IntRect backRect = toRenderScrollbar(scrollbar)->trackPieceRectWithMargins(BackTrackPart, rect);
     IntRect forwardRect = toRenderScrollbar(scrollbar)->trackPieceRectWithMargins(ForwardTrackPart, rect);
     IntRect result = rect;
diff --git a/Source/core/rendering/RenderScrollbarTheme.h b/Source/core/rendering/RenderScrollbarTheme.h
index fea8540..d718f5f 100644
--- a/Source/core/rendering/RenderScrollbarTheme.h
+++ b/Source/core/rendering/RenderScrollbarTheme.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderScrollbarTheme_h
@@ -37,7 +37,7 @@
 class RenderScrollbarTheme : public ScrollbarThemeComposite {
 public:
     virtual ~RenderScrollbarTheme() {};
-    
+
     virtual int scrollbarThickness(ScrollbarControlSize controlSize) { return ScrollbarTheme::theme()->scrollbarThickness(controlSize); }
 
     virtual ScrollbarButtonsPlacement buttonsPlacement() const { return ScrollbarTheme::theme()->buttonsPlacement(); }
@@ -47,7 +47,7 @@
     virtual void paintScrollCorner(ScrollView*, GraphicsContext* context, const IntRect& cornerRect);
 
     virtual bool shouldCenterOnThumb(ScrollbarThemeClient* scrollbar, const PlatformMouseEvent& event) { return ScrollbarTheme::theme()->shouldCenterOnThumb(scrollbar, event); }
-    
+
     virtual double initialAutoscrollTimerDelay() { return ScrollbarTheme::theme()->initialAutoscrollTimerDelay(); }
     virtual double autoscrollTimerDelay() { return ScrollbarTheme::theme()->autoscrollTimerDelay(); }
 
@@ -57,7 +57,7 @@
     virtual int minimumThumbLength(ScrollbarThemeClient*);
 
     void buttonSizesAlongTrackAxis(ScrollbarThemeClient*, int& beforeSize, int& afterSize);
-    
+
     static RenderScrollbarTheme* renderScrollbarTheme();
 
 protected:
@@ -67,7 +67,7 @@
     virtual IntRect backButtonRect(ScrollbarThemeClient*, ScrollbarPart, bool painting = false);
     virtual IntRect forwardButtonRect(ScrollbarThemeClient*, ScrollbarPart, bool painting = false);
     virtual IntRect trackRect(ScrollbarThemeClient*, bool painting = false);
-    
+
     virtual void paintScrollbarBackground(GraphicsContext*, ScrollbarThemeClient*);
     virtual void paintTrackBackground(GraphicsContext*, ScrollbarThemeClient*, const IntRect&);
     virtual void paintTrackPiece(GraphicsContext*, ScrollbarThemeClient*, const IntRect&, ScrollbarPart);
diff --git a/Source/core/rendering/RenderSearchField.cpp b/Source/core/rendering/RenderSearchField.cpp
index 2adc8b3..11ee314 100644
--- a/Source/core/rendering/RenderSearchField.cpp
+++ b/Source/core/rendering/RenderSearchField.cpp
@@ -1,6 +1,6 @@
 /**
  * Copyright (C) 2006, 2007, 2010 Apple Inc. All rights reserved.
- *           (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/) 
+ *           (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/)
  * Copyright (C) 2010 Google Inc. All rights reserved.
  * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
  *
diff --git a/Source/core/rendering/RenderSelectionInfo.h b/Source/core/rendering/RenderSelectionInfo.h
index f916214..96d0027 100644
--- a/Source/core/rendering/RenderSelectionInfo.h
+++ b/Source/core/rendering/RenderSelectionInfo.h
@@ -46,7 +46,7 @@
         , m_state(o->selectionState())
     {
     }
-    
+
     RenderObject* object() const { return m_object; }
     RenderLayerModelObject* repaintContainer() const { return m_repaintContainer; }
     RenderObject::SelectionState state() const { return m_state; }
@@ -65,7 +65,7 @@
         , m_rect(o->canUpdateSelectionOnRootLineBoxes() ? o->selectionRectForRepaint(m_repaintContainer, clipToVisibleContent) : LayoutRect())
     {
     }
-    
+
     void repaint()
     {
         m_object->repaintUsingContainer(m_repaintContainer, enclosingIntRect(m_rect));
@@ -84,14 +84,14 @@
     RenderBlockSelectionInfo(RenderBlock* b)
         : RenderSelectionInfoBase(b)
         , m_rects(b->canUpdateSelectionOnRootLineBoxes() ? block()->selectionGapRectsForRepaint(m_repaintContainer) : GapRects())
-    { 
+    {
     }
 
     void repaint()
     {
         m_object->repaintUsingContainer(m_repaintContainer, enclosingIntRect(m_rects));
     }
-    
+
     RenderBlock* block() const { return toRenderBlock(m_object); }
     GapRects rects() const { return m_rects; }
 
diff --git a/Source/core/rendering/RenderSlider.cpp b/Source/core/rendering/RenderSlider.cpp
index 76d24fd..bb0be19 100644
--- a/Source/core/rendering/RenderSlider.cpp
+++ b/Source/core/rendering/RenderSlider.cpp
@@ -23,7 +23,7 @@
 
 #include "core/html/HTMLInputElement.h"
 #include "core/html/shadow/SliderThumbElement.h"
-#include <wtf/MathExtras.h>
+#include "wtf/MathExtras.h"
 
 using std::min;
 
@@ -85,7 +85,7 @@
     m_minPreferredLogicalWidth += toAdd;
     m_maxPreferredLogicalWidth += toAdd;
 
-    setPreferredLogicalWidthsDirty(false); 
+    setPreferredLogicalWidthsDirty(false);
 }
 
 void RenderSlider::layout()
diff --git a/Source/core/rendering/RenderTable.cpp b/Source/core/rendering/RenderTable.cpp
index 01c1695..aaea9fb 100644
--- a/Source/core/rendering/RenderTable.cpp
+++ b/Source/core/rendering/RenderTable.cpp
@@ -67,7 +67,7 @@
 {
     setChildrenInline(false);
     m_columnPos.fill(0, 1);
-    
+
 }
 
 RenderTable::~RenderTable()
@@ -128,7 +128,7 @@
                     m_head = toRenderTableSection(child);
                 } else {
                     resetSectionPointerIfNotBefore(m_firstBody, beforeChild);
-                    if (!m_firstBody) 
+                    if (!m_firstBody)
                         m_firstBody = toRenderTableSection(child);
                 }
                 wrapInAnonymousSection = false;
@@ -411,14 +411,14 @@
     // FIXME: We should do this recalc lazily in borderStart/borderEnd so that we don't have to make sure
     // to call this before we call borderStart/borderEnd to avoid getting a stale value.
     recalcBordersInRowDirection();
-        
+
     LayoutRepainter repainter(*this, checkForRepaintDuringLayout());
     LayoutStateMaintainer statePusher(view(), this, locationOffset(), style()->isFlippedBlocksWritingMode());
 
     setLogicalHeight(0);
 
     initMaxMarginValues();
-    
+
     LayoutUnit oldLogicalWidth = logicalWidth();
     updateLogicalWidth();
 
@@ -484,11 +484,11 @@
         updateLogicalHeight();
 
     LayoutUnit computedLogicalHeight = 0;
-    
+
     Length logicalHeightLength = style()->logicalHeight();
     if (logicalHeightLength.isIntrinsic() || (logicalHeightLength.isSpecified() && logicalHeightLength.isPositive()))
         computedLogicalHeight = convertStyleLogicalHeightToComputedHeight(logicalHeightLength);
-    
+
     Length logicalMaxHeightLength = style()->logicalMaxHeight();
     if (logicalMaxHeightLength.isIntrinsic() || (logicalMaxHeightLength.isSpecified() && !logicalMaxHeightLength.isNegative())) {
         LayoutUnit computedMaxLogicalHeight = convertStyleLogicalHeightToComputedHeight(logicalMaxHeightLength);
@@ -612,7 +612,7 @@
     }
 
     // Add overflow from our caption.
-    for (unsigned i = 0; i < m_captions.size(); i++) 
+    for (unsigned i = 0; i < m_captions.size(); i++)
         addOverflowFromChild(m_captions[i]);
 
     // Add overflow from our sections.
@@ -657,7 +657,7 @@
     // We're done.  We don't bother painting any children.
     if (paintPhase == PaintPhaseBlockBackground)
         return;
-    
+
     // We don't paint our own background, but we do let the kids paint their backgrounds.
     if (paintPhase == PaintPhaseChildBlockBackgrounds)
         paintPhase = PaintPhaseChildBlockBackground;
@@ -672,7 +672,7 @@
             child->paint(info, childPoint);
         }
     }
-    
+
     if (collapseBorders() && paintPhase == PaintPhaseChildBlockBackground && style()->visibility() == VISIBLE) {
         recalcCollapsedBorders();
         // Using our cached sorted styles, we then do individual passes,
@@ -954,7 +954,7 @@
                 maxCols = sectionCols;
         }
     }
-    
+
     m_columns.resize(maxCols);
     m_columnPos.resize(maxCols + 1);
 
@@ -1303,7 +1303,7 @@
     unsigned effCol = colToEffCol(cell->col());
     if (!effCol)
         return 0;
-    
+
     // If we hit a colspan back up to a real cell.
     RenderTableSection::CellStruct& prevCell = section->cellAt(cell->rowIndex(), effCol - 1);
     return prevCell.primaryCell();
@@ -1370,7 +1370,7 @@
 LayoutRect RenderTable::overflowClipRect(const LayoutPoint& location, RenderRegion* region, OverlayScrollbarSizeRelevancy relevancy)
 {
     LayoutRect rect = RenderBlock::overflowClipRect(location, region, relevancy);
-    
+
     // If we have a caption, expand the clip to include the caption.
     // FIXME: Technically this is wrong, but it's virtually impossible to fix this
     // for real until captions have been re-written.
diff --git a/Source/core/rendering/RenderTable.h b/Source/core/rendering/RenderTable.h
index 0d48432..d18b649 100644
--- a/Source/core/rendering/RenderTable.h
+++ b/Source/core/rendering/RenderTable.h
@@ -28,7 +28,7 @@
 #include "CSSPropertyNames.h"
 #include "core/rendering/RenderBlock.h"
 #include "core/rendering/style/CollapsedBorderValue.h"
-#include <wtf/Vector.h>
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
@@ -49,7 +49,7 @@
     // and rows respectively, not necessarily the horizontal and vertical spacing respectively".
     int hBorderSpacing() const { return m_hSpacing; }
     int vBorderSpacing() const { return m_vSpacing; }
-    
+
     bool collapseBorders() const { return style()->borderCollapse(); }
 
     int borderStart() const { return m_borderStart; }
@@ -168,7 +168,7 @@
     void appendColumn(unsigned span);
     unsigned numEffCols() const { return m_columns.size(); }
     unsigned spanOfEffCol(unsigned effCol) const { return m_columns[effCol].span; }
-    
+
     unsigned colToEffCol(unsigned column) const
     {
         unsigned effColumn = 0;
@@ -177,7 +177,7 @@
             c += m_columns[effColumn].span;
         return effColumn;
     }
-    
+
     unsigned effColToCol(unsigned effCol) const
     {
         unsigned c = 0;
@@ -231,7 +231,7 @@
     RenderTableCell* cellBelow(const RenderTableCell*) const;
     RenderTableCell* cellBefore(const RenderTableCell*) const;
     RenderTableCell* cellAfter(const RenderTableCell*) const;
- 
+
     typedef Vector<CollapsedBorderValue> CollapsedBorderValues;
     void invalidateCollapsedBorders()
     {
@@ -239,7 +239,7 @@
         m_collapsedBorders.clear();
     }
     const CollapsedBorderValue* currentBorderValue() const { return m_currentBorder; }
-    
+
     bool hasSections() const { return m_head || m_foot || m_firstBody; }
 
     void recalcSectionsIfNeeded() const
@@ -293,7 +293,7 @@
 
     virtual RenderBlock* firstLineBlock() const;
     virtual void updateFirstLetter();
-    
+
     virtual void updateLogicalWidth() OVERRIDE;
 
     LayoutUnit convertStyleLogicalWidthToComputedWidth(const Length& styleLogicalWidth, LayoutUnit availableWidth);
diff --git a/Source/core/rendering/RenderTableCaption.h b/Source/core/rendering/RenderTableCaption.h
index 6213053..79b894d 100644
--- a/Source/core/rendering/RenderTableCaption.h
+++ b/Source/core/rendering/RenderTableCaption.h
@@ -31,7 +31,7 @@
     explicit RenderTableCaption(Element*);
     virtual ~RenderTableCaption();
     virtual LayoutUnit containingBlockLogicalWidthForContent() const OVERRIDE;
-    
+
 private:
     virtual bool isTableCaption() const OVERRIDE { return true; }
 
diff --git a/Source/core/rendering/RenderTableCell.cpp b/Source/core/rendering/RenderTableCell.cpp
index 429d521..b612c20 100644
--- a/Source/core/rendering/RenderTableCell.cpp
+++ b/Source/core/rendering/RenderTableCell.cpp
@@ -269,7 +269,7 @@
 }
 
 LayoutUnit RenderTableCell::paddingRight() const
-{   
+{
     int result = computedCSSPaddingRight();
     if (isHorizontalWritingMode())
         return result;
@@ -402,16 +402,16 @@
 
 // The following rules apply for resolving conflicts and figuring out which border
 // to use.
-// (1) Borders with the 'border-style' of 'hidden' take precedence over all other conflicting 
+// (1) Borders with the 'border-style' of 'hidden' take precedence over all other conflicting
 // borders. Any border with this value suppresses all borders at this location.
-// (2) Borders with a style of 'none' have the lowest priority. Only if the border properties of all 
-// the elements meeting at this edge are 'none' will the border be omitted (but note that 'none' is 
+// (2) Borders with a style of 'none' have the lowest priority. Only if the border properties of all
+// the elements meeting at this edge are 'none' will the border be omitted (but note that 'none' is
 // the default value for the border style.)
-// (3) If none of the styles are 'hidden' and at least one of them is not 'none', then narrow borders 
-// are discarded in favor of wider ones. If several have the same 'border-width' then styles are preferred 
+// (3) If none of the styles are 'hidden' and at least one of them is not 'none', then narrow borders
+// are discarded in favor of wider ones. If several have the same 'border-width' then styles are preferred
 // in this order: 'double', 'solid', 'dashed', 'dotted', 'ridge', 'outset', 'groove', and the lowest: 'inset'.
-// (4) If border styles differ only in color, then a style set on a cell wins over one on a row, 
-// which wins over a row group, column, column group and, lastly, table. It is undefined which color 
+// (4) If border styles differ only in color, then a style set on a cell wins over one on a row,
+// which wins over a row group, column, column group and, lastly, table. It is undefined which color
 // is used when two elements of the same type disagree.
 static int compareBorders(const CollapsedBorderValue& border1, const CollapsedBorderValue& border2)
 {
@@ -432,7 +432,7 @@
     }
     if (border1.style() == BHIDDEN)
         return 1;
-    
+
     // Rule #2 above.  A style of 'none' has lowest priority and always loses to any other border.
     if (border2.style() == BNONE) {
         if (border1.style() == BNONE)
@@ -445,11 +445,11 @@
     // The first part of rule #3 above. Wider borders win.
     if (border1.width() != border2.width())
         return border1.width() < border2.width() ? -1 : 1;
-    
+
     // The borders have equal width.  Sort by border style.
     if (border1.style() != border2.style())
         return border1.style() < border2.style() ? -1 : 1;
-    
+
     // The border have the same width and style.  Rely on precedence (cell over row over row group, etc.)
     if (border1.precedence() == border2.precedence())
         return 0;
@@ -524,7 +524,7 @@
         if (!result.exists())
             return result;
     }
-    
+
     // (5) Our column and column group's start borders.
     bool startColEdge;
     bool endColEdge;
@@ -549,7 +549,7 @@
             }
         }
     }
-    
+
     // (6) The end border of the preceding column.
     if (cellBefore) {
         if (RenderTableCol* colElt = table->colElement(col() - 1, &startColEdge, &endColEdge)) {
@@ -580,7 +580,7 @@
         if (!result.exists())
             return result;
     }
-    
+
     return result;
 }
 
@@ -604,7 +604,7 @@
     int startColorProperty = includeColor ? CSSProperty::resolveDirectionAwareProperty(CSSPropertyWebkitBorderStartColor, styleForCellFlow()->direction(), styleForCellFlow()->writingMode()) : 0;
     int endColorProperty = includeColor ? CSSProperty::resolveDirectionAwareProperty(CSSPropertyWebkitBorderEndColor, styleForCellFlow()->direction(), styleForCellFlow()->writingMode()) : 0;
     CollapsedBorderValue result = CollapsedBorderValue(style()->borderEnd(), includeColor ? resolveColor(endColorProperty) : Color(), BCELL);
-    
+
     // (2) The start border of the following cell.
     if (!isEndColumn) {
         if (RenderTableCell* cellAfter = table->cellAfter(this)) {
@@ -621,13 +621,13 @@
         result = chooseBorder(result, CollapsedBorderValue(row()->borderAdjoiningEndCell(this), includeColor ? parent()->resolveColor(endColorProperty) : Color(), BROW));
         if (!result.exists())
             return result;
-        
+
         // (4) Our row group's end border.
         result = chooseBorder(result, CollapsedBorderValue(section()->borderAdjoiningEndCell(this), includeColor ? section()->resolveColor(endColorProperty) : Color(), BROWGROUP));
         if (!result.exists())
             return result;
     }
-    
+
     // (5) Our column and column group's end borders.
     bool startColEdge;
     bool endColEdge;
@@ -652,7 +652,7 @@
             }
         }
     }
-    
+
     // (6) The start border of the next column.
     if (!isEndColumn) {
         if (RenderTableCol* colElt = table->colElement(col() + colSpan(), &startColEdge, &endColEdge)) {
@@ -682,7 +682,7 @@
         if (!result.exists())
             return result;
     }
-    
+
     return result;
 }
 
@@ -703,7 +703,7 @@
     int beforeColorProperty = includeColor ? CSSProperty::resolveDirectionAwareProperty(CSSPropertyWebkitBorderBeforeColor, styleForCellFlow()->direction(), styleForCellFlow()->writingMode()) : 0;
     int afterColorProperty = includeColor ? CSSProperty::resolveDirectionAwareProperty(CSSPropertyWebkitBorderAfterColor, styleForCellFlow()->direction(), styleForCellFlow()->writingMode()) : 0;
     CollapsedBorderValue result = CollapsedBorderValue(style()->borderBefore(), includeColor ? resolveColor(beforeColorProperty) : Color(), BCELL);
-    
+
     RenderTableCell* prevCell = table->cellAbove(this);
     if (prevCell) {
         // (2) A before cell's after border.
@@ -711,12 +711,12 @@
         if (!result.exists())
             return result;
     }
-    
+
     // (3) Our row's before border.
     result = chooseBorder(result, CollapsedBorderValue(parent()->style()->borderBefore(), includeColor ? parent()->resolveColor(beforeColorProperty) : Color(), BROW));
     if (!result.exists())
         return result;
-    
+
     // (4) The previous row's after border.
     if (prevCell) {
         RenderObject* prevRow = 0;
@@ -724,14 +724,14 @@
             prevRow = parent()->previousSibling();
         else
             prevRow = prevCell->section()->lastChild();
-    
+
         if (prevRow) {
             result = chooseBorder(CollapsedBorderValue(prevRow->style()->borderAfter(), includeColor ? prevRow->resolveColor(afterColorProperty) : Color(), BROW), result);
             if (!result.exists())
                 return result;
         }
     }
-    
+
     // Now check row groups.
     RenderTableSection* currSection = section();
     if (!rowIndex()) {
@@ -739,7 +739,7 @@
         result = chooseBorder(result, CollapsedBorderValue(currSection->style()->borderBefore(), includeColor ? currSection->resolveColor(beforeColorProperty) : Color(), BROWGROUP));
         if (!result.exists())
             return result;
-        
+
         // (6) Previous row group's after border.
         currSection = table->sectionAbove(currSection, SkipEmptySections);
         if (currSection) {
@@ -748,7 +748,7 @@
                 return result;
         }
     }
-    
+
     if (!currSection) {
         // (8) Our column and column group's before borders.
         RenderTableCol* colElt = table->colElement(col());
@@ -762,13 +762,13 @@
                     return result;
             }
         }
-        
+
         // (9) The table's before border.
         result = chooseBorder(result, CollapsedBorderValue(table->style()->borderBefore(), includeColor ? table->resolveColor(beforeColorProperty) : Color(), BTABLE));
         if (!result.exists())
             return result;
     }
-    
+
     return result;
 }
 
@@ -789,7 +789,7 @@
     int beforeColorProperty = includeColor ? CSSProperty::resolveDirectionAwareProperty(CSSPropertyWebkitBorderBeforeColor, styleForCellFlow()->direction(), styleForCellFlow()->writingMode()) : 0;
     int afterColorProperty = includeColor ? CSSProperty::resolveDirectionAwareProperty(CSSPropertyWebkitBorderAfterColor, styleForCellFlow()->direction(), styleForCellFlow()->writingMode()) : 0;
     CollapsedBorderValue result = CollapsedBorderValue(style()->borderAfter(), includeColor ? resolveColor(afterColorProperty) : Color(), BCELL);
-    
+
     RenderTableCell* nextCell = table->cellBelow(this);
     if (nextCell) {
         // (2) An after cell's before border.
@@ -797,19 +797,19 @@
         if (!result.exists())
             return result;
     }
-    
+
     // (3) Our row's after border. (FIXME: Deal with rowspan!)
     result = chooseBorder(result, CollapsedBorderValue(parent()->style()->borderAfter(), includeColor ? parent()->resolveColor(afterColorProperty) : Color(), BROW));
     if (!result.exists())
         return result;
-    
+
     // (4) The next row's before border.
     if (nextCell) {
         result = chooseBorder(result, CollapsedBorderValue(nextCell->parent()->style()->borderBefore(), includeColor ? nextCell->parent()->resolveColor(beforeColorProperty) : Color(), BROW));
         if (!result.exists())
             return result;
     }
-    
+
     // Now check row groups.
     RenderTableSection* currSection = section();
     if (rowIndex() + rowSpan() >= currSection->numRows()) {
@@ -817,7 +817,7 @@
         result = chooseBorder(result, CollapsedBorderValue(currSection->style()->borderAfter(), includeColor ? currSection->resolveColor(afterColorProperty) : Color(), BROWGROUP));
         if (!result.exists())
             return result;
-        
+
         // (6) Following row group's before border.
         currSection = table->sectionBelow(currSection, SkipEmptySections);
         if (currSection) {
@@ -826,7 +826,7 @@
                 return result;
         }
     }
-    
+
     if (!currSection) {
         // (8) Our column and column group's after borders.
         RenderTableCol* colElt = table->colElement(col());
@@ -839,14 +839,14 @@
                     return result;
             }
         }
-        
+
         // (9) The table's after border.
         result = chooseBorder(result, CollapsedBorderValue(table->style()->borderAfter(), includeColor ? table->resolveColor(afterColorProperty) : Color(), BTABLE));
         if (!result.exists())
             return result;
     }
-    
-    return result;    
+
+    return result;
 }
 
 inline CollapsedBorderValue RenderTableCell::cachedCollapsedLeftBorder(const RenderStyle* styleForCellFlow) const
@@ -958,7 +958,7 @@
         return (border.width() + ((styleForCellFlow()->isLeftToRightDirection() ^ outer) ? 1 : 0)) / 2; // Give the extra pixel to top and left.
     return 0;
 }
-    
+
 int RenderTableCell::borderHalfEnd(bool outer) const
 {
     CollapsedBorderValue border = collapsedEndBorder(DoNotIncludeBorderColor);
@@ -1015,7 +1015,7 @@
         : m_count(0)
     {
     }
-    
+
     void addBorder(const CollapsedBorderValue& borderValue, BoxSide borderSide, bool shouldPaint,
                    int x1, int y1, int x2, int y2, EBorderStyle borderStyle)
     {
@@ -1040,10 +1040,10 @@
                 return &m_borders[i];
             }
         }
-        
+
         return 0;
     }
-    
+
     CollapsedBorder m_borders[4];
     unsigned m_count;
 };
@@ -1109,7 +1109,7 @@
     CollapsedBorderValue rightVal = cachedCollapsedRightBorder(styleForCellFlow);
     CollapsedBorderValue topVal = cachedCollapsedTopBorder(styleForCellFlow);
     CollapsedBorderValue bottomVal = cachedCollapsedBottomBorder(styleForCellFlow);
-     
+
     // Adjust our x/y/width/height so that we paint the collapsed borders at the correct location.
     int topWidth = topVal.width();
     int bottomWidth = bottomVal.width();
@@ -1125,14 +1125,14 @@
     EBorderStyle bottomStyle = collapsedBorderStyle(bottomVal.style());
     EBorderStyle leftStyle = collapsedBorderStyle(leftVal.style());
     EBorderStyle rightStyle = collapsedBorderStyle(rightVal.style());
-    
+
     bool renderTop = topStyle > BHIDDEN && !topVal.isTransparent();
     bool renderBottom = bottomStyle > BHIDDEN && !bottomVal.isTransparent();
     bool renderLeft = leftStyle > BHIDDEN && !leftVal.isTransparent();
     bool renderRight = rightStyle > BHIDDEN && !rightVal.isTransparent();
 
     // We never paint diagonals at the joins.  We simply let the border with the highest
-    // precedence paint on top of borders with lower precedence.  
+    // precedence paint on top of borders with lower precedence.
     CollapsedBorders borders;
     borders.addBorder(topVal, BSTop, renderTop, borderRect.x(), borderRect.y(), borderRect.maxX(), borderRect.y() + topWidth, topStyle);
     borders.addBorder(bottomVal, BSBottom, renderBottom, borderRect.x(), borderRect.maxY() - bottomWidth, borderRect.maxX(), borderRect.maxY(), bottomStyle);
@@ -1140,10 +1140,10 @@
     borders.addBorder(rightVal, BSRight, renderRight, borderRect.maxX() - rightWidth, borderRect.y(), borderRect.maxX(), borderRect.maxY(), rightStyle);
 
     bool antialias = shouldAntialiasLines(graphicsContext);
-    
+
     for (CollapsedBorder* border = borders.nextBorder(); border; border = borders.nextBorder()) {
         if (border->borderValue.isSameIgnoringColor(*table()->currentBorderValue())) {
-            drawLineForBoxSide(graphicsContext, border->x1, border->y1, border->x2, border->y2, border->side, 
+            drawLineForBoxSide(graphicsContext, border->x1, border->y1, border->x2, border->y2, border->side,
                 resolveColor(border->borderValue.color()), border->style, 0, 0, antialias);
         }
     }
@@ -1196,7 +1196,7 @@
 
     LayoutRect paintRect = LayoutRect(paintOffset, pixelSnappedSize());
     paintBoxShadow(paintInfo, paintRect, style(), Normal);
-    
+
     // Paint our cell background.
     paintBackgroundsBehindCell(paintInfo, paintOffset, this);
 
@@ -1216,7 +1216,7 @@
     RenderTable* tableElt = table();
     if (!tableElt->collapseBorders() && style()->emptyCells() == HIDE && !firstChild())
         return;
-   
+
     paintMaskImages(paintInfo, LayoutRect(paintOffset, pixelSnappedSize()));
 }
 
@@ -1230,7 +1230,7 @@
     LayoutUnit scrollbarHeight = scrollbarLogicalHeight();
     if (!scrollbarHeight)
         return; // Not sure if we should be doing something when a scrollbar goes away or not.
-    
+
     // We only care if the scrollbar that affects our intrinsic padding has been added.
     if ((isHorizontalWritingMode() && !horizontalScrollbarChanged) ||
         (!isHorizontalWritingMode() && !verticalScrollbarChanged))
diff --git a/Source/core/rendering/RenderTableCell.h b/Source/core/rendering/RenderTableCell.h
index 933ff4c..14dac60 100644
--- a/Source/core/rendering/RenderTableCell.h
+++ b/Source/core/rendering/RenderTableCell.h
@@ -38,7 +38,7 @@
 class RenderTableCell FINAL : public RenderBlock {
 public:
     explicit RenderTableCell(Element*);
-    
+
     unsigned colSpan() const
     {
         if (!m_hasColSpan)
@@ -125,10 +125,10 @@
     void paintBackgroundsBehindCell(PaintInfo&, const LayoutPoint&, RenderObject* backgroundObject);
 
     LayoutUnit cellBaselinePosition() const;
-    bool isBaselineAligned() const 
-    { 
+    bool isBaselineAligned() const
+    {
         EVerticalAlign va = style()->verticalAlign();
-        return va == BASELINE || va == TEXT_BOTTOM || va == TEXT_TOP || va == SUPER || va == SUB || va == LENGTH; 
+        return va == BASELINE || va == TEXT_BOTTOM || va == TEXT_TOP || va == SUPER || va == SUB || va == LENGTH;
     }
 
     void computeIntrinsicPadding(int rowHeight);
@@ -141,7 +141,7 @@
     virtual LayoutUnit paddingBottom() const OVERRIDE;
     virtual LayoutUnit paddingLeft() const OVERRIDE;
     virtual LayoutUnit paddingRight() const OVERRIDE;
-    
+
     // FIXME: For now we just assume the cell has the same block flow direction as the table. It's likely we'll
     // create an extra anonymous RenderBlock to handle mixing directionality anyway, in which case we can lock
     // the block flow directionality of the cells to the table's directionality.
diff --git a/Source/core/rendering/RenderTableRow.cpp b/Source/core/rendering/RenderTableRow.cpp
index 0e559ad..2584b37 100644
--- a/Source/core/rendering/RenderTableRow.cpp
+++ b/Source/core/rendering/RenderTableRow.cpp
@@ -76,7 +76,7 @@
         RenderTable* table = this->table();
         if (table && !table->selfNeedsLayout() && !table->normalChildNeedsLayout() && oldStyle && oldStyle->border() != style()->border())
             table->invalidateCollapsedBorders();
-        
+
         if (table && oldStyle && diff == StyleDifferenceLayout && needsLayout() && table->collapseBorders() && borderWidthChanged(oldStyle, style())) {
             // If the border width changes on a row, we need to make sure the cells in the row know to lay out again.
             // This only happens when borders are collapsed, since they end up affecting the border sides of the cell
@@ -135,10 +135,10 @@
         addChild(cell, beforeChild);
         cell->addChild(child);
         return;
-    } 
+    }
 
     if (beforeChild && beforeChild->parent() != this)
-        beforeChild = splitAnonymousBoxesAroundChild(beforeChild);    
+        beforeChild = splitAnonymousBoxesAroundChild(beforeChild);
 
     RenderTableCell* cell = toRenderTableCell(child);
 
@@ -162,7 +162,7 @@
     LayoutStateMaintainer statePusher(view(), this, LayoutSize(), style()->isFlippedBlocksWritingMode());
 
     bool paginated = view()->layoutState()->isPaginated();
-                
+
     for (RenderObject* child = firstChild(); child; child = child->nextSibling()) {
         if (child->isTableCell()) {
             RenderTableCell* cell = toRenderTableCell(child);
diff --git a/Source/core/rendering/RenderTableSection.cpp b/Source/core/rendering/RenderTableSection.cpp
index d8f632d..ac082fe 100644
--- a/Source/core/rendering/RenderTableSection.cpp
+++ b/Source/core/rendering/RenderTableSection.cpp
@@ -35,8 +35,8 @@
 #include "core/rendering/RenderTableCol.h"
 #include "core/rendering/RenderTableRow.h"
 #include "core/rendering/RenderView.h"
-#include <wtf/HashSet.h>
-#include <wtf/Vector.h>
+#include "wtf/HashSet.h"
+#include "wtf/Vector.h"
 
 using namespace std;
 
@@ -453,7 +453,7 @@
     ASSERT(!needsLayout());
 
     RenderTableCell* cell;
-    
+
     RenderView* viewRenderer = view();
     LayoutStateMaintainer statePusher(viewRenderer);
 
@@ -1114,7 +1114,7 @@
     // avoid crashing on bugs that cause us to paint with dirty layout
     if (needsLayout())
         return;
-    
+
     unsigned totalRows = m_grid.size();
     unsigned totalCols = table()->columns().size();
 
@@ -1199,7 +1199,7 @@
 
 CellSpan RenderTableSection::dirtiedRows(const LayoutRect& damageRect) const
 {
-    if (m_forceSlowPaintPathWithOverflowingCell) 
+    if (m_forceSlowPaintPathWithOverflowingCell)
         return fullTableRowSpan();
 
     CellSpan coveredRows = spannedRows(damageRect);
@@ -1216,7 +1216,7 @@
 
 CellSpan RenderTableSection::dirtiedColumns(const LayoutRect& damageRect) const
 {
-    if (m_forceSlowPaintPathWithOverflowingCell) 
+    if (m_forceSlowPaintPathWithOverflowingCell)
         return fullTableColumnSpan();
 
     CellSpan coveredColumns = spannedColumns(damageRect);
@@ -1455,7 +1455,7 @@
 unsigned RenderTableSection::numColumns() const
 {
     unsigned result = 0;
-    
+
     for (unsigned r = 0; r < m_grid.size(); ++r) {
         for (unsigned c = result; c < table()->numEffCols(); ++c) {
             const CellStruct& cell = cellAt(r, c);
@@ -1463,7 +1463,7 @@
                 result = c;
         }
     }
-    
+
     return result + 1;
 }
 
@@ -1596,7 +1596,7 @@
 {
     if (!table()->collapseBorders())
         return;
-    
+
     for (int side = CBSBefore; side <= CBSEnd; ++side)
         m_cellsCollapsedBorders.remove(make_pair(cell, side));
 }
diff --git a/Source/core/rendering/RenderTableSection.h b/Source/core/rendering/RenderTableSection.h
index 2807af6..2707d74 100644
--- a/Source/core/rendering/RenderTableSection.h
+++ b/Source/core/rendering/RenderTableSection.h
@@ -26,7 +26,7 @@
 #define RenderTableSection_h
 
 #include "core/rendering/RenderTable.h"
-#include <wtf/Vector.h>
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
@@ -86,7 +86,7 @@
     typedef Vector<RenderTableCell*, 2> SpanningRenderTableCells;
 
     struct CellStruct {
-        Vector<RenderTableCell*, 1> cells; 
+        Vector<RenderTableCell*, 1> cells;
         bool inColSpan; // true for columns after the first in a colspan
 
         CellStruct()
@@ -212,7 +212,7 @@
     {
         return createAnonymousWithParentRenderer(parent);
     }
-    
+
     virtual void paint(PaintInfo&, const LayoutPoint&) OVERRIDE;
 
 protected:
diff --git a/Source/core/rendering/RenderText.cpp b/Source/core/rendering/RenderText.cpp
index 1e1ab09..cf91399 100644
--- a/Source/core/rendering/RenderText.cpp
+++ b/Source/core/rendering/RenderText.cpp
@@ -42,8 +42,8 @@
 #include "core/rendering/RenderLayer.h"
 #include "core/rendering/RenderView.h"
 #include "core/rendering/break_lines.h"
-#include <wtf/text/StringBuffer.h>
-#include <wtf/unicode/CharacterNames.h>
+#include "wtf/text/StringBuffer.h"
+#include "wtf/unicode/CharacterNames.h"
 
 using namespace std;
 using namespace WTF;
@@ -214,7 +214,7 @@
 
     ETextTransform oldTransform = oldStyle ? oldStyle->textTransform() : TTNONE;
     ETextSecurity oldSecurity = oldStyle ? oldStyle->textSecurity() : TSNONE;
-    if (needsResetText || oldTransform != newStyle->textTransform() || oldSecurity != newStyle->textSecurity()) 
+    if (needsResetText || oldTransform != newStyle->textTransform() || oldSecurity != newStyle->textSecurity())
         transformText();
 }
 
@@ -344,15 +344,15 @@
 void RenderText::absoluteRectsForRange(Vector<IntRect>& rects, unsigned start, unsigned end, bool useSelectionHeight, bool* wasFixed)
 {
     // Work around signed/unsigned issues. This function takes unsigneds, and is often passed UINT_MAX
-    // to mean "all the way to the end". InlineTextBox coordinates are unsigneds, so changing this 
-    // function to take ints causes various internal mismatches. But selectionRect takes ints, and 
-    // passing UINT_MAX to it causes trouble. Ideally we'd change selectionRect to take unsigneds, but 
+    // to mean "all the way to the end". InlineTextBox coordinates are unsigneds, so changing this
+    // function to take ints causes various internal mismatches. But selectionRect takes ints, and
+    // passing UINT_MAX to it causes trouble. Ideally we'd change selectionRect to take unsigneds, but
     // that would cause many ripple effects, so for now we'll just clamp our unsigned parameters to INT_MAX.
     ASSERT(end == UINT_MAX || end <= INT_MAX);
     ASSERT(start <= INT_MAX);
     start = min(start, static_cast<unsigned>(INT_MAX));
     end = min(end, static_cast<unsigned>(INT_MAX));
-    
+
     for (InlineTextBox* box = firstTextBox(); box; box = box->nextTextBox()) {
         // Note: box->end() returns the index of the last character, not the index past it
         if (start <= box->start() && box->end() < end) {
@@ -381,26 +381,26 @@
 {
     if (!box)
         return IntRect();
-    
+
     unsigned short truncation = box->truncation();
     if (truncation == cNoTruncation)
         return IntRect();
-    
+
     IntRect rect;
     if (EllipsisBox* ellipsis = box->root()->ellipsisBox()) {
         int ellipsisStartPosition = max<int>(startPos - box->start(), 0);
         int ellipsisEndPosition = min<int>(endPos - box->start(), box->len());
-        
+
         // The ellipsis should be considered to be selected if the end of
         // the selection is past the beginning of the truncation and the
         // beginning of the selection is before or at the beginning of the truncation.
         if (ellipsisEndPosition >= truncation && ellipsisStartPosition <= truncation)
             return ellipsis->selectionRect();
     }
-    
+
     return IntRect();
 }
-    
+
 void RenderText::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed, ClippingOption option) const
 {
     for (InlineTextBox* box = firstTextBox(); box; box = box->nextTextBox()) {
@@ -418,7 +418,7 @@
         quads.append(localToAbsoluteQuad(boundaries, 0, wasFixed));
     }
 }
-    
+
 void RenderText::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) const
 {
     absoluteQuads(quads, wasFixed, NoClipping);
@@ -427,15 +427,15 @@
 void RenderText::absoluteQuadsForRange(Vector<FloatQuad>& quads, unsigned start, unsigned end, bool useSelectionHeight, bool* wasFixed)
 {
     // Work around signed/unsigned issues. This function takes unsigneds, and is often passed UINT_MAX
-    // to mean "all the way to the end". InlineTextBox coordinates are unsigneds, so changing this 
-    // function to take ints causes various internal mismatches. But selectionRect takes ints, and 
-    // passing UINT_MAX to it causes trouble. Ideally we'd change selectionRect to take unsigneds, but 
+    // to mean "all the way to the end". InlineTextBox coordinates are unsigneds, so changing this
+    // function to take ints causes various internal mismatches. But selectionRect takes ints, and
+    // passing UINT_MAX to it causes trouble. Ideally we'd change selectionRect to take unsigneds, but
     // that would cause many ripple effects, so for now we'll just clamp our unsigned parameters to INT_MAX.
     ASSERT(end == UINT_MAX || end <= INT_MAX);
     ASSERT(start <= INT_MAX);
     start = min(start, static_cast<unsigned>(INT_MAX));
     end = min(end, static_cast<unsigned>(INT_MAX));
-    
+
     for (InlineTextBox* box = firstTextBox(); box; box = box->nextTextBox()) {
         // Note: box->end() returns the index of the last character, not the index past it
         if (start <= box->start() && box->end() < end) {
@@ -862,7 +862,7 @@
 {
     if (preferredLogicalWidthsDirty())
         const_cast<RenderText*>(this)->computePreferredLogicalWidths(0);
-        
+
     return m_minWidth;
 }
 
@@ -870,7 +870,7 @@
 {
     if (preferredLogicalWidthsDirty())
         const_cast<RenderText*>(this)->computePreferredLogicalWidths(0);
-        
+
     return m_maxWidth;
 }
 
@@ -1199,7 +1199,7 @@
     }
     return true;
 }
-    
+
 bool RenderText::containsOnlyWhitespace(unsigned from, unsigned len) const
 {
     ASSERT(m_text);
@@ -1225,7 +1225,7 @@
 {
     return m_firstTextBox ? m_firstTextBox->y() : 0;
 }
-    
+
 void RenderText::setSelectionState(SelectionState state)
 {
     RenderObject::setSelectionState(state);
@@ -1465,7 +1465,7 @@
     setTextInternal(text);
     setNeedsLayoutAndPrefWidthsRecalc();
     m_knownToHaveNoOverflowAndNoFallbackFonts = false;
-    
+
     if (AXObjectCache* cache = document()->existingAXObjectCache())
         cache->textChanged(this);
 }
@@ -1585,7 +1585,7 @@
 IntRect RenderText::linesBoundingBox() const
 {
     IntRect result;
-    
+
     ASSERT(!firstTextBox() == !lastTextBox());  // Either both are null or both exist.
     if (firstTextBox() && lastTextBox()) {
         // Return the width of the minimal left side and the maximal right side.
@@ -1597,9 +1597,9 @@
             if (curr == firstTextBox() || curr->logicalRight() > logicalRightSide)
                 logicalRightSide = curr->logicalRight();
         }
-        
+
         bool isHorizontal = style()->isHorizontalWritingMode();
-        
+
         float x = isHorizontal ? logicalLeftSide : firstTextBox()->x();
         float y = isHorizontal ? firstTextBox()->y() : logicalLeftSide;
         float width = isHorizontal ? logicalRightSide - logicalLeftSide : lastTextBox()->logicalBottom() - x;
@@ -1622,11 +1622,11 @@
         logicalLeftSide = min(logicalLeftSide, curr->logicalLeftVisualOverflow());
         logicalRightSide = max(logicalRightSide, curr->logicalRightVisualOverflow());
     }
-    
+
     LayoutUnit logicalTop = firstTextBox()->logicalTopVisualOverflow();
     LayoutUnit logicalWidth = logicalRightSide - logicalLeftSide;
     LayoutUnit logicalHeight = lastTextBox()->logicalBottomVisualOverflow() - logicalTop;
-    
+
     LayoutRect rect(logicalLeftSide, logicalTop, logicalWidth, logicalHeight);
     if (!style()->isHorizontalWritingMode())
         rect = rect.transposedRect();
diff --git a/Source/core/rendering/RenderText.h b/Source/core/rendering/RenderText.h
index 34ce468..4aa1d4c 100644
--- a/Source/core/rendering/RenderText.h
+++ b/Source/core/rendering/RenderText.h
@@ -25,7 +25,7 @@
 
 #include "core/rendering/RenderObject.h"
 #include "core/rendering/RenderView.h"
-#include <wtf/Forward.h>
+#include "wtf/Forward.h"
 
 namespace WebCore {
 
@@ -153,14 +153,14 @@
     virtual UChar previousCharacter() const;
 
     virtual void addLayerHitTestRects(LayerHitTestRects&, const RenderLayer* currentLayer, const LayoutPoint& layerOffset) const OVERRIDE;
-    
+
     virtual InlineTextBox* createTextBox(); // Subclassed by SVG.
 
 private:
     void computePreferredLogicalWidths(float leadWidth, HashSet<const SimpleFontData*>& fallbackFonts, GlyphOverflow&);
 
     bool computeCanUseSimpleFontCodePath() const;
-    
+
     // Make length() private so that callers that have a RenderText*
     // will use the more efficient textLength() instead, while
     // callers with a RenderObject* can continue to use length().
@@ -194,7 +194,7 @@
     bool m_canUseSimpleFontCodePath : 1;
     mutable bool m_knownToHaveNoOverflowAndNoFallbackFonts : 1;
     bool m_needsTranscoding : 1;
-    
+
     float m_minWidth;
     float m_maxWidth;
     float m_firstLineMinWidth;
@@ -221,13 +221,13 @@
 }
 
 inline RenderText* toRenderText(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isText());
     return static_cast<RenderText*>(object);
 }
 
 inline const RenderText* toRenderText(const RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isText());
     return static_cast<const RenderText*>(object);
 }
diff --git a/Source/core/rendering/RenderTextControl.cpp b/Source/core/rendering/RenderTextControl.cpp
index b32c059..5ca4fd8 100644
--- a/Source/core/rendering/RenderTextControl.cpp
+++ b/Source/core/rendering/RenderTextControl.cpp
@@ -1,6 +1,6 @@
 /**
  * Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
- *           (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/)  
+ *           (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/)
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -26,7 +26,7 @@
 #include "core/platform/ScrollbarTheme.h"
 #include "core/rendering/HitTestResult.h"
 #include "core/rendering/RenderTheme.h"
-#include <wtf/unicode/CharacterNames.h>
+#include "wtf/unicode/CharacterNames.h"
 
 using namespace std;
 
diff --git a/Source/core/rendering/RenderTextControl.h b/Source/core/rendering/RenderTextControl.h
index 13b81a6..e5fd2b7 100644
--- a/Source/core/rendering/RenderTextControl.h
+++ b/Source/core/rendering/RenderTextControl.h
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
- *           (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/) 
+ *           (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/)
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -73,7 +73,7 @@
     virtual bool avoidsFloats() const { return true; }
     virtual bool canHaveGeneratedChildren() const OVERRIDE { return false; }
     virtual bool canBeReplacedWithInlineRunIn() const OVERRIDE;
-    
+
     virtual void addFocusRingRects(Vector<IntRect>&, const LayoutPoint& additionalOffset, const RenderLayerModelObject* paintContainer = 0) OVERRIDE;
 
     virtual bool canBeProgramaticallyScrolled() const { return true; }
@@ -82,13 +82,13 @@
 };
 
 inline RenderTextControl* toRenderTextControl(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isTextControl());
     return static_cast<RenderTextControl*>(object);
 }
 
 inline const RenderTextControl* toRenderTextControl(const RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isTextControl());
     return static_cast<const RenderTextControl*>(object);
 }
diff --git a/Source/core/rendering/RenderTextControlMultiLine.cpp b/Source/core/rendering/RenderTextControlMultiLine.cpp
index 8a8887d..22e9722 100644
--- a/Source/core/rendering/RenderTextControlMultiLine.cpp
+++ b/Source/core/rendering/RenderTextControlMultiLine.cpp
@@ -1,6 +1,6 @@
 /**
  * Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
- *           (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/) 
+ *           (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/)
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -106,5 +106,5 @@
     placeholderBox->setY(borderTop() + paddingTop());
     return placeholderRenderer;
 }
-    
+
 }
diff --git a/Source/core/rendering/RenderTextControlMultiLine.h b/Source/core/rendering/RenderTextControlMultiLine.h
index 50c62da..5755f23 100644
--- a/Source/core/rendering/RenderTextControlMultiLine.h
+++ b/Source/core/rendering/RenderTextControlMultiLine.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/) 
+ * Copyright (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/)
  * Copyright (C) 2009 Apple Inc. All rights reserved.
  *
  * This library is free software; you can redistribute it and/or
@@ -49,7 +49,7 @@
 };
 
 inline RenderTextControlMultiLine* toRenderTextControlMultiLine(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isTextArea());
     return static_cast<RenderTextControlMultiLine*>(object);
 }
diff --git a/Source/core/rendering/RenderTextControlSingleLine.cpp b/Source/core/rendering/RenderTextControlSingleLine.cpp
index 81ba019..4c09785 100644
--- a/Source/core/rendering/RenderTextControlSingleLine.cpp
+++ b/Source/core/rendering/RenderTextControlSingleLine.cpp
@@ -1,6 +1,6 @@
 /**
  * Copyright (C) 2006, 2007, 2010 Apple Inc. All rights reserved.
- *           (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/) 
+ *           (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmobile.com/)
  * Copyright (C) 2010 Google Inc. All rights reserved.
  * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
  *
@@ -347,7 +347,7 @@
 
 PassRefPtr<RenderStyle> RenderTextControlSingleLine::createInnerTextStyle(const RenderStyle* startStyle) const
 {
-    RefPtr<RenderStyle> textBlockStyle = RenderStyle::create();   
+    RefPtr<RenderStyle> textBlockStyle = RenderStyle::create();
     textBlockStyle->inheritFrom(startStyle);
     adjustInnerTextStyle(textBlockStyle.get());
 
diff --git a/Source/core/rendering/RenderTextControlSingleLine.h b/Source/core/rendering/RenderTextControlSingleLine.h
index 79ce710..91970d6 100644
--- a/Source/core/rendering/RenderTextControlSingleLine.h
+++ b/Source/core/rendering/RenderTextControlSingleLine.h
@@ -74,7 +74,7 @@
     virtual float getAvgCharWidth(AtomicString family);
     virtual LayoutUnit preferredContentLogicalWidth(float charWidth) const;
     virtual LayoutUnit computeControlLogicalHeight(LayoutUnit lineHeight, LayoutUnit nonContentHeight) const OVERRIDE;
-    
+
     virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle);
 
     virtual RenderStyle* textBaseStyle() const;
diff --git a/Source/core/rendering/RenderTextFragment.h b/Source/core/rendering/RenderTextFragment.h
index e2a4cae..3150616 100644
--- a/Source/core/rendering/RenderTextFragment.h
+++ b/Source/core/rendering/RenderTextFragment.h
@@ -70,13 +70,13 @@
 };
 
 inline RenderTextFragment* toRenderTextFragment(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || toRenderText(object)->isTextFragment());
     return static_cast<RenderTextFragment*>(object);
 }
 
 inline const RenderTextFragment* toRenderTextFragment(const RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || toRenderText(object)->isTextFragment());
     return static_cast<const RenderTextFragment*>(object);
 }
diff --git a/Source/core/rendering/RenderTextTrackCue.cpp b/Source/core/rendering/RenderTextTrackCue.cpp
index 694beeb..b55209c 100644
--- a/Source/core/rendering/RenderTextTrackCue.cpp
+++ b/Source/core/rendering/RenderTextTrackCue.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/rendering/RenderTextTrackCue.h b/Source/core/rendering/RenderTextTrackCue.h
index 08f106a..850ba80 100644
--- a/Source/core/rendering/RenderTextTrackCue.h
+++ b/Source/core/rendering/RenderTextTrackCue.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderTextTrackCue_h
diff --git a/Source/core/rendering/RenderTheme.cpp b/Source/core/rendering/RenderTheme.cpp
index e182a4d..0150f98 100644
--- a/Source/core/rendering/RenderTheme.cpp
+++ b/Source/core/rendering/RenderTheme.cpp
@@ -168,7 +168,7 @@
         // Whitespace
         if (m_theme->controlRequiresPreWhiteSpace(part))
             style->setWhiteSpace(PRE);
-            
+
         // Width / Height
         // The width and height here are affected by the zoom.
         // FIXME: Check is flawed, since it doesn't take min-width/max-width into account.
@@ -177,14 +177,14 @@
             style->setWidth(controlSize.width());
         if (controlSize.height() != style->height())
             style->setHeight(controlSize.height());
-                
+
         // Min-Width / Min-Height
         LengthSize minControlSize = m_theme->minimumControlSize(part, style->font(), style->effectiveZoom());
         if (minControlSize.width() != style->minWidth())
             style->setMinWidth(minControlSize.width());
         if (minControlSize.height() != style->minHeight())
             style->setMinHeight(minControlSize.height());
-                
+
         // Font
         FontDescription controlFont = m_theme->controlFont(part, style->font(), style->effectiveZoom());
         if (controlFont != style->font().fontDescription()) {
diff --git a/Source/core/rendering/RenderThemeChromiumFontProvider.cpp b/Source/core/rendering/RenderThemeChromiumFontProvider.cpp
index fc91a9c..81623a2 100644
--- a/Source/core/rendering/RenderThemeChromiumFontProvider.cpp
+++ b/Source/core/rendering/RenderThemeChromiumFontProvider.cpp
@@ -26,8 +26,8 @@
 #include "config.h"
 #include "core/rendering/RenderThemeChromiumFontProvider.h"
 
-#include <wtf/StdLibExtras.h>
-#include <wtf/text/WTFString.h>
+#include "wtf/StdLibExtras.h"
+#include "wtf/text/WTFString.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/RenderThemeChromiumFontProviderLinux.cpp b/Source/core/rendering/RenderThemeChromiumFontProviderLinux.cpp
index c09bbcd..06fec41 100644
--- a/Source/core/rendering/RenderThemeChromiumFontProviderLinux.cpp
+++ b/Source/core/rendering/RenderThemeChromiumFontProviderLinux.cpp
@@ -29,8 +29,8 @@
 #include "CSSValueKeywords.h"
 #include "core/platform/graphics/FontDescription.h"
 
-#include <wtf/StdLibExtras.h>
-#include <wtf/text/WTFString.h>
+#include "wtf/StdLibExtras.h"
+#include "wtf/text/WTFString.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/RenderThemeChromiumFontProviderWin.cpp b/Source/core/rendering/RenderThemeChromiumFontProviderWin.cpp
index a4225c2..e201d90 100644
--- a/Source/core/rendering/RenderThemeChromiumFontProviderWin.cpp
+++ b/Source/core/rendering/RenderThemeChromiumFontProviderWin.cpp
@@ -26,13 +26,13 @@
 #include "config.h"
 #include "core/rendering/RenderThemeChromiumFontProvider.h"
 
+#include <windows.h>
+
 #include "CSSValueKeywords.h"
 #include "core/platform/graphics/FontDescription.h"
 #include "core/platform/win/HWndDC.h"
 #include "core/platform/win/SystemInfo.h"
-
-#include <windows.h>
-#include <wtf/text/WTFString.h>
+#include "wtf/text/WTFString.h"
 
 #define SIZEOF_STRUCT_WITH_SPECIFIED_LAST_MEMBER(structName, member) \
     offsetof(structName, member) + \
diff --git a/Source/core/rendering/RenderThemeChromiumMac.h b/Source/core/rendering/RenderThemeChromiumMac.h
index 1475367..fbbf684 100644
--- a/Source/core/rendering/RenderThemeChromiumMac.h
+++ b/Source/core/rendering/RenderThemeChromiumMac.h
@@ -181,7 +181,7 @@
     virtual bool paintMediaMuteButton(RenderObject*, const PaintInfo&, const IntRect&);
     virtual bool paintMediaSliderTrack(RenderObject*, const PaintInfo&, const IntRect&);
     virtual String extraFullScreenStyleSheet();
-  
+
     virtual bool paintMediaSliderThumb(RenderObject*, const PaintInfo&, const IntRect&);
     virtual bool paintMediaVolumeSliderContainer(RenderObject*, const PaintInfo&, const IntRect&);
     virtual bool paintMediaVolumeSliderTrack(RenderObject*, const PaintInfo&, const IntRect&);
diff --git a/Source/core/rendering/RenderThemeChromiumSkia.cpp b/Source/core/rendering/RenderThemeChromiumSkia.cpp
index 9163e78..ee4f442 100644
--- a/Source/core/rendering/RenderThemeChromiumSkia.cpp
+++ b/Source/core/rendering/RenderThemeChromiumSkia.cpp
@@ -35,8 +35,7 @@
 #include "core/rendering/RenderObject.h"
 #include "core/rendering/RenderProgress.h"
 #include "core/rendering/RenderThemeChromiumFontProvider.h"
-
-#include <wtf/CurrentTime.h>
+#include "wtf/CurrentTime.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/RenderThemeChromiumWin.cpp b/Source/core/rendering/RenderThemeChromiumWin.cpp
index e9df8e0..913c856 100644
--- a/Source/core/rendering/RenderThemeChromiumWin.cpp
+++ b/Source/core/rendering/RenderThemeChromiumWin.cpp
@@ -48,7 +48,7 @@
 #include "public/platform/WebColor.h"
 #include "public/platform/WebRect.h"
 #include "public/platform/win/WebThemeEngine.h"
-#include <wtf/CurrentTime.h>
+#include "wtf/CurrentTime.h"
 
 
 // FIXME: This dependency should eventually be removed.
@@ -339,7 +339,7 @@
 
 static int menuListButtonWidth()
 {
-    static int width = isRunningLayoutTest() ? kStandardMenuListButtonWidth : 
+    static int width = isRunningLayoutTest() ? kStandardMenuListButtonWidth :
         IntSize(WebKit::Platform::current()->themeEngine()->getSize(SBP_ARROWBTN)).width();
     return width;
 }
diff --git a/Source/core/rendering/RenderTreeAsText.cpp b/Source/core/rendering/RenderTreeAsText.cpp
index aa917e8..fc0982c 100644
--- a/Source/core/rendering/RenderTreeAsText.cpp
+++ b/Source/core/rendering/RenderTreeAsText.cpp
@@ -79,12 +79,6 @@
     return ts << "(" << p.x() << "," << p.y() << ")";
 }
 
-TextStream& operator<<(TextStream& ts, const LayoutPoint& p)
-{
-    // FIXME: These should be printed as floats. Keeping them ints for consistency with pervious test expectations.
-    return ts << "(" << p.x().toInt() << "," << p.y().toInt() << ")";
-}
-
 TextStream& operator<<(TextStream& ts, const FloatPoint& p)
 {
     ts << "(" << TextStream::FormatNumberRespectingIntegers(p.x());
@@ -190,7 +184,7 @@
                 result.append('\\');
                 result.append('x');
                 result.append('{');
-                appendUnsignedAsHex(c, result); 
+                appendUnsignedAsHex(c, result);
                 result.append('}');
             }
         }
@@ -222,7 +216,7 @@
                 ts << " *empty or unstyled AppleStyleSpan*";
         }
     }
-    
+
     RenderBlock* cb = o.containingBlock();
     bool adjustForTableCells = cb ? cb->isTableCell() : false;
 
@@ -253,9 +247,7 @@
     if (adjustForTableCells)
         r.move(0, -toRenderTableCell(o.containingBlock())->intrinsicPaddingBefore());
 
-    // FIXME: Convert layout test results to report sub-pixel values, in the meantime using enclosingIntRect
-    // for consistency with old results.
-    ts << " " << enclosingIntRect(r);
+    ts << " " << r;
 
     if (!(o.isText() && !o.isBR())) {
         if (o.isFileUploadControl())
@@ -271,7 +263,7 @@
             if (o.parent()->resolveColor(CSSPropertyBackgroundColor) != backgroundColor
                 && backgroundColor.rgb())
                 ts << " [bgcolor=" << backgroundColor.nameForRenderTreeAsText() << "]";
-            
+
             Color textFillColor = o.resolveColor(CSSPropertyWebkitTextFillColor);
             if (o.parent()->resolveColor(CSSPropertyWebkitTextFillColor) != textFillColor
                 && textFillColor != color && textFillColor.rgb())
@@ -389,7 +381,7 @@
             ts << ": " << text;
         }
     }
-    
+
     if (behavior & RenderAsTextShowIDAndClass) {
         if (Node* node = o.node()) {
             if (node->hasID())
@@ -407,12 +399,12 @@
             }
         }
     }
-    
+
     if (behavior & RenderAsTextShowLayoutState) {
         bool needsLayout = o.selfNeedsLayout() || o.needsPositionedMovementLayout() || o.posChildNeedsLayout() || o.normalChildNeedsLayout();
         if (needsLayout)
             ts << " (needs layout:";
-        
+
         bool havePrevious = false;
         if (o.selfNeedsLayout()) {
             ts << " self";
@@ -455,7 +447,7 @@
     // FIXME: Table cell adjustment is temporary until results can be updated.
     if (o.containingBlock()->isTableCell())
         y -= toRenderTableCell(o.containingBlock())->intrinsicPaddingBefore();
-        
+
     ts << "text run at (" << x << "," << y << ") width " << logicalWidth;
     if (!run.isLeftToRightDirection() || run.dirOverride()) {
         ts << (!run.isLeftToRightDirection() ? " RTL" : " LTR");
@@ -556,10 +548,10 @@
     writeIndent(ts, indent);
 
     ts << "layer ";
-    
+
     if (behavior & RenderAsTextShowAddresses)
         ts << static_cast<const void*>(&l) << " ";
-      
+
     ts << adjustedLayoutBounds;
 
     if (!adjustedLayoutBounds.isEmpty()) {
@@ -586,7 +578,7 @@
         ts << " layerType: background only";
     else if (paintPhase == LayerPaintPhaseForeground)
         ts << " layerType: foreground only";
-    
+
     if (behavior & RenderAsTextShowCompositedLayers) {
         if (l.isComposited())
             ts << " (composited, bounds=" << l.backing()->compositedBounds() << ", drawsContent=" << l.backing()->graphicsLayer()->drawsContent() << ", paints into ancestor=" << l.backing()->paintsIntoCompositedAncestor() << ")";
@@ -665,7 +657,7 @@
         paintDirtyRect.setHeight(max<LayoutUnit>(paintDirtyRect.height(), rootLayer->renderBox()->layoutOverflowRect().maxY()));
         l->setSize(l->size().expandedTo(pixelSnappedIntSize(l->renderBox()->maxLayoutOverflow(), LayoutPoint(0, 0))));
     }
-    
+
     // Calculate the clip rects we should use.
     LayoutRect layerBounds;
     ClipRect damageRect, clipRectToApply, outlineRect;
@@ -715,7 +707,7 @@
         for (unsigned i = 0; i != posList->size(); ++i)
             writeLayers(ts, rootLayer, posList->at(i), paintDirtyRect, currIndent, behavior);
     }
-    
+
     // Altough the RenderFlowThread requires a layer, it is not collected by its parent,
     // so we have to treat it as a special case.
     if (l->renderer()->isRenderView()) {
@@ -785,7 +777,7 @@
     TextStream ts;
     if (!renderer->hasLayer())
         return ts.release();
-        
+
     RenderLayer* layer = renderer->layer();
     writeLayers(ts, layer, layer, layer->rect(), 0, behavior);
     writeSelection(ts, renderer);
@@ -816,7 +808,7 @@
     ASSERT(!(behavior & RenderAsTextPrintingMode));
     if (!(behavior & RenderAsTextDontUpdateLayout) && element->document())
         element->document()->updateLayout();
-    
+
     return externalRepresentation(toRenderBox(renderer), behavior | RenderAsTextShowAllLayers);
 }
 
diff --git a/Source/core/rendering/RenderTreeAsText.h b/Source/core/rendering/RenderTreeAsText.h
index 8a24ccd..61bbadb 100644
--- a/Source/core/rendering/RenderTreeAsText.h
+++ b/Source/core/rendering/RenderTreeAsText.h
@@ -27,7 +27,7 @@
 #define RenderTreeAsText_h
 #include "core/platform/text/TextStream.h"
 
-#include <wtf/Forward.h>
+#include "wtf/Forward.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/RenderVideo.cpp b/Source/core/rendering/RenderVideo.cpp
index 6c604cf..580bbf3 100644
--- a/Source/core/rendering/RenderVideo.cpp
+++ b/Source/core/rendering/RenderVideo.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -64,7 +64,7 @@
 {
     if (videoElement()->shouldDisplayPosterImage())
         RenderMedia::intrinsicSizeChanged();
-    updateIntrinsicSize(); 
+    updateIntrinsicSize();
 }
 
 void RenderVideo::updateIntrinsicSize()
@@ -83,19 +83,19 @@
     setPreferredLogicalWidthsDirty(true);
     setNeedsLayout(true);
 }
-    
+
 LayoutSize RenderVideo::calculateIntrinsicSize()
 {
     HTMLVideoElement* video = videoElement();
-    
+
     // Spec text from 4.8.6
     //
-    // The intrinsic width of a video element's playback area is the intrinsic width 
-    // of the video resource, if that is available; otherwise it is the intrinsic 
+    // The intrinsic width of a video element's playback area is the intrinsic width
+    // of the video resource, if that is available; otherwise it is the intrinsic
     // width of the poster frame, if that is available; otherwise it is 300 CSS pixels.
     //
-    // The intrinsic height of a video element's playback area is the intrinsic height 
-    // of the video resource, if that is available; otherwise it is the intrinsic 
+    // The intrinsic height of a video element's playback area is the intrinsic height
+    // of the video resource, if that is available; otherwise it is the intrinsic
     // height of the poster frame, if that is available; otherwise it is 150 CSS pixels.
     MediaPlayer* player = mediaElement()->player();
     if (player && video->readyState() >= HTMLVideoElement::HAVE_METADATA) {
@@ -109,7 +109,7 @@
 
     // When the natural size of the video is unavailable, we use the provided
     // width and height attributes of the video element as the intrinsic size until
-    // better values become available. 
+    // better values become available.
     if (video->hasAttribute(widthAttr) && video->hasAttribute(heightAttr))
         return LayoutSize(video->width(), video->height());
 
@@ -253,9 +253,9 @@
     return RenderReplaced::computeReplacedLogicalHeight();
 }
 
-LayoutUnit RenderVideo::minimumReplacedHeight() const 
+LayoutUnit RenderVideo::minimumReplacedHeight() const
 {
-    return RenderReplaced::minimumReplacedHeight(); 
+    return RenderReplaced::minimumReplacedHeight();
 }
 
 bool RenderVideo::supportsAcceleratedRendering() const
@@ -272,11 +272,11 @@
     RenderObject* parent = renderer->parent();
     if (!parent)
         return 0;
-    
+
     RenderFullScreen* fullScreen = parent->isRenderFullScreen() ? toRenderFullScreen(parent) : 0;
     if (!fullScreen)
         return 0;
-    
+
     return fullScreen->placeholder();
 }
 
diff --git a/Source/core/rendering/RenderVideo.h b/Source/core/rendering/RenderVideo.h
index 53b7380..03eeb2c 100644
--- a/Source/core/rendering/RenderVideo.h
+++ b/Source/core/rendering/RenderVideo.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef RenderVideo_h
@@ -29,7 +29,7 @@
 #include "core/rendering/RenderMedia.h"
 
 namespace WebCore {
-    
+
 class HTMLMediaElement;
 class HTMLVideoElement;
 
diff --git a/Source/core/rendering/RenderView.cpp b/Source/core/rendering/RenderView.cpp
index 89e7169..8bfcbf2 100644
--- a/Source/core/rendering/RenderView.cpp
+++ b/Source/core/rendering/RenderView.cpp
@@ -63,12 +63,12 @@
 {
     // init RenderObject attributes
     setInline(false);
-    
+
     m_minPreferredLogicalWidth = 0;
     m_maxPreferredLogicalWidth = 0;
 
     setPreferredLogicalWidthsDirty(true, MarkOnlyThis);
-    
+
     setPositionState(AbsolutePosition); // to 0,0 :)
 }
 
@@ -172,13 +172,13 @@
 
     // FIXME: May be better to push a clip and avoid issuing offscreen repaints.
     state.m_clipped = false;
-    
+
     // Check the writing mode of the seamless ancestor. It has to match our document's writing mode, or we won't inherit any
     // pagination information.
     RenderBox* seamlessAncestor = enclosingSeamlessRenderer(document());
     LayoutState* seamlessLayoutState = seamlessAncestor ? seamlessAncestor->view()->layoutState() : 0;
     bool shouldInheritPagination = seamlessLayoutState && !m_pageLogicalHeight && seamlessAncestor->style()->writingMode() == style()->writingMode();
-    
+
     state.m_pageLogicalHeight = shouldInheritPagination ? seamlessLayoutState->m_pageLogicalHeight : m_pageLogicalHeight;
     state.m_pageLogicalHeightChanged = shouldInheritPagination ? seamlessLayoutState->m_pageLogicalHeightChanged : m_pageLogicalHeightChanged;
     state.m_isPaginated = state.m_pageLogicalHeight;
@@ -192,10 +192,10 @@
             seamlessAncestor->borderRight() + seamlessAncestor->paddingRight()),
             layoutOffset.height() + seamlessAncestor->y() + (!isFlipped ? seamlessAncestor->borderTop() + seamlessAncestor->paddingTop() :
             seamlessAncestor->borderBottom() + seamlessAncestor->paddingBottom()));
-        
+
         LayoutSize offsetDelta = seamlessLayoutState->m_pageOffset - iFrameOffset;
         state.m_pageOffset = offsetDelta;
-        
+
         // Set the current render flow thread to point to our ancestor. This will allow the seamless document to locate the correct
         // regions when doing a layout.
         if (seamlessAncestor->flowThreadContainingBlock()) {
@@ -212,7 +212,7 @@
 // The algorithm below assumes this is a full layout. In case there are previously computed values for regions, supplemental steps are taken
 // to ensure the results are the same as those obtained from a full layout (i.e. the auto-height regions from all the flows are marked as needing
 // layout).
-// 1. The flows are laid out from the outer flow to the inner flow. This successfully computes the outer non-auto-height regions size so the 
+// 1. The flows are laid out from the outer flow to the inner flow. This successfully computes the outer non-auto-height regions size so the
 // inner flows have the necessary information to correctly fragment the content.
 // 2. The flows are laid out from the inner flow to the outer flow. After an inner flow is laid out it goes into the constrained layout phase
 // and marks the auto-height regions they need layout. This means the outer flows will relayout if they depend on regions with auto-height regions
@@ -294,7 +294,7 @@
 #endif
     m_layoutState = 0;
     setNeedsLayout(false);
-    
+
     if (isSeamlessAncestorInFlowThread)
         flowThreadController()->setCurrentRenderFlowThread(0);
 }
@@ -308,7 +308,7 @@
         getTransformFromContainer(0, LayoutSize(), t);
         transformState.applyTransform(t);
     }
-    
+
     if (mode & IsFixed && m_frameView)
         transformState.move(m_frameView->scrollOffsetForFixedPosition());
 
@@ -422,13 +422,13 @@
 {
     if (!rootObject)
         return false;
-    
+
     RenderStyle* style = rootObject->style();
     if (style->visibility() != VISIBLE
         || style->opacity() != 1
         || style->hasTransform())
         return false;
-    
+
     if (isComposited(rootObject))
         return false;
 
@@ -475,7 +475,7 @@
         rootFillsViewport = rootBox && !rootBox->x() && !rootBox->y() && rootBox->width() >= width() && rootBox->height() >= height();
         rootObscuresBackground = rendererObscuresBackground(rootRenderer);
     }
-    
+
     Page* page = document()->page();
     float pageScaleFactor = page ? page->pageScaleFactor() : 1;
 
@@ -485,7 +485,7 @@
 
     // This code typically only executes if the root element's visibility has been set to hidden,
     // if there is a transform on the <html>, or if there is a page scale factor less than 1.
-    // Only fill with the base background color (typically white) if we're the root document, 
+    // Only fill with the base background color (typically white) if we're the root document,
     // since iframes/frames with no background in the child document should show the parent's background.
     if (frameView()->isTransparent()) // FIXME: This needs to be dynamic.  We should be able to go back to blitting if we ever stop being transparent.
         frameView()->setCannotBlitToWindow(); // The parent must show behind the child.
@@ -528,7 +528,7 @@
     else if (RenderBox* obj = elt->renderBox()) {
         LayoutRect vr = viewRect();
         LayoutRect r = intersection(ur, vr);
-        
+
         // Subtract out the contentsX and contentsY offsets to get our coords within the viewing
         // rectangle.
         r.moveBy(-vr.location());
@@ -545,7 +545,7 @@
         return;
 
     repaintViewRectangle(ur);
-    
+
     if (compositor()->inCompositingMode()) {
         IntRect repaintRect = pixelSnappedIntRect(ur);
         compositor()->repaintCompositedLayers(&repaintRect);
@@ -555,7 +555,7 @@
 void RenderView::repaintViewAndCompositedLayers()
 {
     repaint();
-    
+
     if (compositor()->inCompositingMode())
         compositor()->repaintCompositedLayers();
 }
@@ -580,7 +580,7 @@
 
     if (fixed && m_frameView)
         rect.move(m_frameView->scrollOffsetForFixedPosition());
-        
+
     // Apply our transform if we have one (because of full page zooming).
     if (!repaintContainer && layer() && layer()->transform())
         rect = layer()->transform()->mapRect(rect);
@@ -642,7 +642,7 @@
         LayoutRect currRect = info->rect();
         if (RenderLayerModelObject* repaintContainer = info->repaintContainer()) {
             FloatQuad absQuad = repaintContainer->localToAbsoluteQuad(FloatRect(currRect));
-            currRect = absQuad.enclosingBoundingBox(); 
+            currRect = absQuad.enclosingBoundingBox();
         }
         selRect.unite(currRect);
     }
@@ -884,7 +884,7 @@
         renderWidgets.uncheckedAppend(*it);
         (*it)->ref();
     }
-    
+
     return size;
 }
 
@@ -900,11 +900,11 @@
 {
     // updateWidgetPosition() can possibly cause layout to be re-entered (via plug-ins running
     // scripts in response to NPP_SetWindow, for example), so we need to keep the Widgets
-    // alive during enumeration.    
+    // alive during enumeration.
 
     Vector<RenderWidget*> renderWidgets;
     size_t size = getRetainedWidgets(renderWidgets);
-    
+
     for (size_t i = 0; i < size; ++i)
         renderWidgets[i]->updateWidgetPosition();
 
@@ -1132,7 +1132,7 @@
 
     if (layoutState)
         layoutState->m_isPaginated = false;
-        
+
     if (m_flowThreadState != RenderObject::NotInsideFlowThread)
         m_root->setFlowThreadStateIncludingDescendants(RenderObject::NotInsideFlowThread);
 }
@@ -1149,7 +1149,7 @@
 
     if (layoutState)
         layoutState->m_isPaginated = m_fragmenting;
-        
+
     if (m_flowThreadState != RenderObject::NotInsideFlowThread)
         m_root->setFlowThreadStateIncludingDescendants(m_flowThreadState);
 }
diff --git a/Source/core/rendering/RenderView.h b/Source/core/rendering/RenderView.h
index cc36421..33846ef 100644
--- a/Source/core/rendering/RenderView.h
+++ b/Source/core/rendering/RenderView.h
@@ -26,7 +26,7 @@
 #include "core/platform/PODFreeListArena.h"
 #include "core/rendering/LayoutState.h"
 #include "core/rendering/RenderBlock.h"
-#include <wtf/OwnPtr.h>
+#include "wtf/OwnPtr.h"
 
 namespace WebCore {
 
@@ -105,7 +105,7 @@
     void updateWidgetPositions();
     void addWidget(RenderWidget*);
     void removeWidget(RenderWidget*);
-    
+
     // layoutDelta is used transiently during layout to store how far an object has moved from its
     // last layout location, in order to repaint correctly.
     // If we're doing a full repaint m_layoutState will be 0, but in that case layoutDelta doesn't matter.
@@ -113,7 +113,7 @@
     {
         return m_layoutState ? m_layoutState->m_layoutDelta : LayoutSize();
     }
-    void addLayoutDelta(const LayoutSize& delta) 
+    void addLayoutDelta(const LayoutSize& delta)
     {
         if (m_layoutState) {
             m_layoutState->m_layoutDelta += delta;
@@ -123,7 +123,7 @@
 #endif
         }
     }
-    
+
 #if !ASSERT_DISABLED
     bool layoutDeltaMatches(const LayoutSize& delta)
     {
@@ -171,7 +171,7 @@
 
     // Renderer that paints the root background has background-images which all have background-attachment: fixed.
     bool rootBackgroundIsEntirelyFixed() const;
-    
+
     bool hasRenderNamedFlowThreads() const;
     bool checkTwoPassLayoutForAutoHeightRegions() const;
     FlowThreadController* flowThreadController();
@@ -196,7 +196,7 @@
     void addRenderCounter() { m_renderCounterCount++; }
     void removeRenderCounter() { ASSERT(m_renderCounterCount > 0); m_renderCounterCount--; }
     bool hasRenderCounters() { return m_renderCounterCount; }
-    
+
     virtual void addChild(RenderObject* newChild, RenderObject* beforeChild = 0) OVERRIDE;
 
     virtual bool backgroundIsKnownToBeOpaqueInRect(const LayoutRect& localRect) const OVERRIDE FINAL;
@@ -207,7 +207,7 @@
     virtual void mapAbsoluteToLocalPoint(MapCoordinatesFlags, TransformState&) const;
     virtual bool requiresColumns(int desiredColumnCount) const OVERRIDE;
     virtual void computeSelfHitTestRects(Vector<LayoutRect>&, const LayoutPoint& layerOffset) const OVERRIDE;
-    
+
 private:
     bool initializeLayoutState(LayoutState&);
 
@@ -254,7 +254,7 @@
 
     size_t getRetainedWidgets(Vector<RenderWidget*>&);
     void releaseWidgets(Vector<RenderWidget*>&);
-    
+
     friend class LayoutStateMaintainer;
     friend class LayoutStateDisabler;
 
@@ -322,7 +322,7 @@
     {
         push(root, offset, pageHeight, pageHeightChanged, colInfo);
     }
-    
+
     // ctor to maybe push later
     LayoutStateMaintainer(RenderView* view)
         : m_view(view)
@@ -357,7 +357,7 @@
                 if (m_disabled)
                     m_view->enableLayoutState();
             }
-            
+
             m_didEnd = true;
         }
     }
diff --git a/Source/core/rendering/RenderWidget.cpp b/Source/core/rendering/RenderWidget.cpp
index 2d76543..99e30dd 100644
--- a/Source/core/rendering/RenderWidget.cpp
+++ b/Source/core/rendering/RenderWidget.cpp
@@ -97,7 +97,7 @@
 {
     if (RenderView* v = view())
         v->removeWidget(this);
-    
+
     if (AXObjectCache* cache = document()->existingAXObjectCache()) {
         cache->childrenChanged(this->parent());
         cache->remove(this);
@@ -154,7 +154,7 @@
 
     if (clipChanged && !boundsChanged)
         m_widget->clipRectChanged();
-    
+
     if (hasLayer() && layer()->isComposited())
         layer()->backing()->updateAfterWidgetResize();
 
@@ -330,7 +330,7 @@
         return;
 
     bool boundsChanged = updateWidgetGeometry();
-    
+
     // if the frame bounds got changed, or if view needs layout (possibly indicating
     // content size is wrong) we have to do a layout to set the right widget size
     if (m_widget && m_widget->isFrameView()) {
diff --git a/Source/core/rendering/RenderWidget.h b/Source/core/rendering/RenderWidget.h
index 3e6d1a3..3f4e572 100644
--- a/Source/core/rendering/RenderWidget.h
+++ b/Source/core/rendering/RenderWidget.h
@@ -53,7 +53,7 @@
 
     static unsigned s_widgetHierarchyUpdateSuspendCount;
 };
-    
+
 class RenderWidget : public RenderReplaced, private OverlapTestRequestClient {
 public:
     virtual ~RenderWidget();
diff --git a/Source/core/rendering/RenderWordBreak.cpp b/Source/core/rendering/RenderWordBreak.cpp
index 297c4d6..e852822 100644
--- a/Source/core/rendering/RenderWordBreak.cpp
+++ b/Source/core/rendering/RenderWordBreak.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/rendering/RenderWordBreak.h b/Source/core/rendering/RenderWordBreak.h
index 24f3773..acf3c60 100644
--- a/Source/core/rendering/RenderWordBreak.h
+++ b/Source/core/rendering/RenderWordBreak.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/rendering/RootInlineBox.cpp b/Source/core/rendering/RootInlineBox.cpp
index b2e5a31..fa1def2 100644
--- a/Source/core/rendering/RootInlineBox.cpp
+++ b/Source/core/rendering/RootInlineBox.cpp
@@ -36,12 +36,12 @@
 #include "core/rendering/RenderFlowThread.h"
 #include "core/rendering/RenderView.h"
 #include "core/rendering/VerticalPositionCache.h"
-#include <wtf/unicode/Unicode.h>
+#include "wtf/unicode/Unicode.h"
 
 using namespace std;
 
 namespace WebCore {
-    
+
 struct SameSizeAsRootInlineBox : public InlineFlowBox {
     unsigned variables[5];
     void* pointers[4];
@@ -135,7 +135,7 @@
     EllipsisBox* ellipsisBox = new (renderer()->renderArena()) EllipsisBox(renderer(), ellipsisStr, this,
                                                               ellipsisWidth - (markupBox ? markupBox->logicalWidth() : 0), logicalHeight(),
                                                               y(), !prevRootBox(), isHorizontal(), markupBox);
-    
+
     if (!gEllipsisBoxMap)
         gEllipsisBoxMap = new EllipsisBoxMap();
     gEllipsisBoxMap->add(this, ellipsisBox);
@@ -273,7 +273,7 @@
                                lineTopIncludingMargins, lineBottomIncludingMargins, hasAnnotationsBefore, hasAnnotationsAfter, baselineType());
     m_hasAnnotationsBefore = hasAnnotationsBefore;
     m_hasAnnotationsAfter = hasAnnotationsAfter;
-    
+
     maxHeight = max<LayoutUnit>(0, maxHeight); // FIXME: Is this really necessary?
 
     setLineTopBottomPositions(lineTop, lineBottom, heightOfBlock, heightOfBlock + maxHeight);
@@ -354,7 +354,7 @@
     RootInlineBox* lineGridBox = lineGrid->lineGridBox();
     if (!lineGridBox)
         return 0;
-    
+
     LayoutUnit lineGridBlockOffset = lineGrid->isHorizontalWritingMode() ? lineGridOffset.height() : lineGridOffset.width();
     LayoutUnit blockOffset = block()->isHorizontalWritingMode() ? layoutState->layoutOffset().height() : layoutState->layoutOffset().width();
 
@@ -417,17 +417,17 @@
     // If we aren't paginated we can return the result.
     if (!layoutState->isPaginated() || !layoutState->pageLogicalHeight() || result == delta)
         return result;
-    
+
     // We may end up shifted to a new page. We need to do a re-snap when that happens.
     LayoutUnit newPageLogicalTop = block()->pageLogicalTopForOffset(lineBottomWithLeading() + result);
     if (newPageLogicalTop == pageLogicalTop)
         return result;
-    
+
     // Put ourselves at the top of the next page to force a snap onto the new grid established by that page.
     return lineSnapAdjustment(newPageLogicalTop - (blockOffset + lineTopWithLeading()));
 }
 
-GapRects RootInlineBox::lineSelectionGap(RenderBlock* rootBlock, const LayoutPoint& rootBlockPhysicalPosition, const LayoutSize& offsetFromRootBlock, 
+GapRects RootInlineBox::lineSelectionGap(RenderBlock* rootBlock, const LayoutPoint& rootBlockPhysicalPosition, const LayoutSize& offsetFromRootBlock,
                                          LayoutUnit selTop, LayoutUnit selHeight, const PaintInfo* paintInfo)
 {
     RenderObject::SelectionState lineState = selectionState();
@@ -659,7 +659,7 @@
 }
 
 BidiStatus RootInlineBox::lineBreakBidiStatus() const
-{ 
+{
     return BidiStatus(static_cast<WTF::Unicode::Direction>(m_lineBreakBidiStatusEor), static_cast<WTF::Unicode::Direction>(m_lineBreakBidiStatusLastStrong), static_cast<WTF::Unicode::Direction>(m_lineBreakBidiStatusLast), m_lineBreakContext);
 }
 
@@ -700,7 +700,7 @@
     LayoutRect lineLayoutOverflow = layoutOverflowRect(lineTop(), lineBottom());
     if (!endPadding)
         return lineLayoutOverflow;
-    
+
     // FIXME: Audit whether to use pixel snapped values when not using integers for layout: https://bugs.webkit.org/show_bug.cgi?id=63656
     if (isHorizontal()) {
         if (isLeftToRightDirection())
@@ -713,7 +713,7 @@
         else
             lineLayoutOverflow.shiftYEdgeTo(min<LayoutUnit>(lineLayoutOverflow.y(), pixelSnappedLogicalLeft() - endPadding));
     }
-    
+
     return lineLayoutOverflow;
 }
 
@@ -740,7 +740,7 @@
         if (renderer()->style(isFirstLineStyle())->lineBoxContain() & LineBoxContainReplaced) {
             ascent = box->baselinePosition(baselineType());
             descent = box->lineHeight() - ascent;
-            
+
             // Replaced elements always affect both the ascent and descent.
             affectsAscent = true;
             affectsDescent = true;
@@ -755,10 +755,10 @@
         usedFonts = it == textBoxDataMap.end() ? 0 : &it->value.first;
         glyphOverflow = it == textBoxDataMap.end() ? 0 : &it->value.second;
     }
-        
+
     bool includeLeading = includeLeadingForBox(box);
     bool includeFont = includeFontForBox(box);
-    
+
     bool setUsedFont = false;
     bool setUsedFontWithLeading = false;
 
@@ -791,27 +791,27 @@
         int ascentWithLeading = box->baselinePosition(baselineType());
         int descentWithLeading = box->lineHeight() - ascentWithLeading;
         setAscentAndDescent(ascent, descent, ascentWithLeading, descentWithLeading, ascentDescentSet);
-        
+
         // Examine the font box for inline flows and text boxes to see if any part of it is above the baseline.
         // If the top of our font box relative to the root box baseline is above the root box baseline, then
         // we are contributing to the maxAscent value. Descent is similar. If any part of our font box is below
         // the root box's baseline, then we contribute to the maxDescent value.
         affectsAscent = ascentWithLeading - box->logicalTop() > 0;
-        affectsDescent = descentWithLeading + box->logicalTop() > 0; 
+        affectsDescent = descentWithLeading + box->logicalTop() > 0;
     }
-    
+
     if (includeFontForBox(box) && !setUsedFont) {
         int fontAscent = box->renderer()->style(isFirstLineStyle())->fontMetrics().ascent(baselineType());
         int fontDescent = box->renderer()->style(isFirstLineStyle())->fontMetrics().descent(baselineType());
         setAscentAndDescent(ascent, descent, fontAscent, fontDescent, ascentDescentSet);
         affectsAscent = fontAscent - box->logicalTop() > 0;
-        affectsDescent = fontDescent + box->logicalTop() > 0; 
+        affectsDescent = fontDescent + box->logicalTop() > 0;
     }
 
     if (includeGlyphsForBox(box) && glyphOverflow && glyphOverflow->computeBounds) {
         setAscentAndDescent(ascent, descent, glyphOverflow->top, glyphOverflow->bottom, ascentDescentSet);
         affectsAscent = glyphOverflow->top - box->logicalTop() > 0;
-        affectsDescent = glyphOverflow->bottom + box->logicalTop() > 0; 
+        affectsDescent = glyphOverflow->bottom + box->logicalTop() > 0;
         glyphOverflow->top = min(glyphOverflow->top, max(0, glyphOverflow->top - box->renderer()->style(isFirstLineStyle())->fontMetrics().ascent(baselineType())));
         glyphOverflow->bottom = min(glyphOverflow->bottom, max(0, glyphOverflow->bottom - box->renderer()->style(isFirstLineStyle())->fontMetrics().descent(baselineType())));
     }
@@ -824,7 +824,7 @@
             descentWithMargin += box->boxModelObject()->borderAfter() + box->boxModelObject()->paddingAfter() + box->boxModelObject()->marginAfter();
         }
         setAscentAndDescent(ascent, descent, ascentWithMargin, descentWithMargin, ascentDescentSet);
-        
+
         // Treat like a replaced element, since we're using the margin box.
         affectsAscent = true;
         affectsDescent = true;
@@ -835,7 +835,7 @@
 {
     if (box->renderer()->isText())
         return box->parent()->logicalTop();
-    
+
     RenderBoxModelObject* renderer = box->boxModelObject();
     ASSERT(renderer->isInline());
     if (!renderer->isInline())
@@ -858,11 +858,11 @@
     EVerticalAlign verticalAlign = renderer->style()->verticalAlign();
     if (verticalAlign == TOP || verticalAlign == BOTTOM)
         return 0;
-   
+
     RenderObject* parent = renderer->parent();
     if (parent->isRenderInline() && parent->style()->verticalAlign() != TOP && parent->style()->verticalAlign() != BOTTOM)
         verticalPosition = box->parent()->logicalTop();
-    
+
     if (verticalAlign != BASELINE) {
         const Font& font = parent->style(firstLine)->font();
         const FontMetrics& fontMetrics = font.fontMetrics();
@@ -916,7 +916,7 @@
 {
     if (box->renderer()->isReplaced() || (box->renderer()->isText() && !box->isText()))
         return false;
-    
+
     if (!box->isText() && box->isInlineFlowBox() && !toInlineFlowBox(box)->hasTextChildren())
         return false;
 
@@ -929,7 +929,7 @@
 {
     if (box->renderer()->isReplaced() || (box->renderer()->isText() && !box->isText()))
         return false;
-    
+
     if (!box->isText() && box->isInlineFlowBox() && !toInlineFlowBox(box)->hasTextChildren())
         return false;
 
@@ -974,12 +974,12 @@
     startBox = 0;
     return 0;
 }
-    
+
 Node* RootInlineBox::getLogicalEndBoxWithNode(InlineBox*& endBox) const
 {
     Vector<InlineBox*> leafBoxesInLogicalOrder;
     collectLeafBoxesInLogicalOrder(leafBoxesInLogicalOrder);
-    for (size_t i = leafBoxesInLogicalOrder.size(); i > 0; --i) { 
+    for (size_t i = leafBoxesInLogicalOrder.size(); i > 0; --i) {
         if (leafBoxesInLogicalOrder[i - 1]->renderer()->node()) {
             endBox = leafBoxesInLogicalOrder[i - 1];
             return endBox->renderer()->node();
diff --git a/Source/core/rendering/RootInlineBox.h b/Source/core/rendering/RootInlineBox.h
index 130744c..5cf5e68 100644
--- a/Source/core/rendering/RootInlineBox.h
+++ b/Source/core/rendering/RootInlineBox.h
@@ -53,7 +53,7 @@
 
     LayoutUnit lineTopWithLeading() const { return m_lineTopWithLeading; }
     LayoutUnit lineBottomWithLeading() const { return m_lineBottomWithLeading; }
-    
+
     LayoutUnit paginationStrut() const { return m_fragmentationData ? m_fragmentationData->m_paginationStrut : LayoutUnit(0); }
     void setPaginationStrut(LayoutUnit strut) { ensureLineFragmentationData()->m_paginationStrut = strut; }
 
@@ -77,8 +77,8 @@
 
     LayoutUnit alignBoxesInBlockDirection(LayoutUnit heightOfBlock, GlyphOverflowAndFallbackFontsMap&, VerticalPositionCache&);
     void setLineTopBottomPositions(LayoutUnit top, LayoutUnit bottom, LayoutUnit topWithLeading, LayoutUnit bottomWithLeading)
-    { 
-        m_lineTop = top; 
+    {
+        m_lineTop = top;
         m_lineBottom = bottom;
         m_lineTopWithLeading = topWithLeading;
         m_lineBottomWithLeading = bottomWithLeading;
@@ -147,7 +147,7 @@
     virtual void extractLineBoxFromRenderObject() OVERRIDE FINAL;
     virtual void attachLineBoxToRenderObject() OVERRIDE FINAL;
     virtual void removeLineBoxFromRenderObject() OVERRIDE FINAL;
-    
+
     FontBaseline baselineType() const { return static_cast<FontBaseline>(m_baselineType); }
 
     bool hasAnnotationsBefore() const { return m_hasAnnotationsBefore; }
@@ -163,7 +163,7 @@
     bool includeMarginForBox(InlineBox*) const;
     bool fitsToGlyphs() const;
     bool includesRootLineBoxFontOrLeading() const;
-    
+
     LayoutUnit logicalTopVisualOverflow() const
     {
         return InlineFlowBox::logicalTopVisualOverflow(lineTop());
diff --git a/Source/core/rendering/ScrollBehavior.h b/Source/core/rendering/ScrollBehavior.h
index 390c68a..5988f62 100644
--- a/Source/core/rendering/ScrollBehavior.h
+++ b/Source/core/rendering/ScrollBehavior.h
@@ -50,7 +50,7 @@
     noScroll,
     alignCenter,
     alignTop,
-    alignBottom, 
+    alignBottom,
     alignLeft,
     alignRight,
     alignToClosestEdge
diff --git a/Source/core/rendering/TableLayout.h b/Source/core/rendering/TableLayout.h
index 9b6e1e2..42be53d 100644
--- a/Source/core/rendering/TableLayout.h
+++ b/Source/core/rendering/TableLayout.h
@@ -21,8 +21,8 @@
 #ifndef TableLayout_h
 #define TableLayout_h
 
-#include <wtf/FastAllocBase.h>
-#include <wtf/Noncopyable.h>
+#include "wtf/FastAllocBase.h"
+#include "wtf/Noncopyable.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/TextAutosizer.cpp b/Source/core/rendering/TextAutosizer.cpp
index d14ba17..c26dfbd 100644
--- a/Source/core/rendering/TextAutosizer.cpp
+++ b/Source/core/rendering/TextAutosizer.cpp
@@ -19,9 +19,10 @@
  */
 
 #include "config.h"
-
 #include "core/rendering/TextAutosizer.h"
 
+#include <algorithm>
+
 #include "core/dom/Document.h"
 #include "core/html/HTMLElement.h"
 #include "core/inspector/InspectorInstrumentation.h"
@@ -34,10 +35,8 @@
 #include "core/rendering/RenderView.h"
 #include "core/rendering/style/RenderStyle.h"
 #include "core/rendering/style/StyleInheritedData.h"
-
-#include <algorithm>
-#include <wtf/StdLibExtras.h>
-#include <wtf/Vector.h>
+#include "wtf/StdLibExtras.h"
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/TextAutosizer.h b/Source/core/rendering/TextAutosizer.h
index d1beecd..7adcbc5 100644
--- a/Source/core/rendering/TextAutosizer.h
+++ b/Source/core/rendering/TextAutosizer.h
@@ -28,8 +28,8 @@
 
 #include "HTMLNames.h"
 #include "core/platform/text/WritingMode.h"
-#include <wtf/Noncopyable.h>
-#include <wtf/PassOwnPtr.h>
+#include "wtf/Noncopyable.h"
+#include "wtf/PassOwnPtr.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/VerticalPositionCache.h b/Source/core/rendering/VerticalPositionCache.h
index d853ca8..9b65ed9 100644
--- a/Source/core/rendering/VerticalPositionCache.h
+++ b/Source/core/rendering/VerticalPositionCache.h
@@ -27,7 +27,7 @@
 #define VerticalPositionCache_h
 
 #include "core/platform/graphics/FontBaseline.h"
-#include <wtf/HashMap.h>
+#include "wtf/HashMap.h"
 
 namespace WebCore {
 
@@ -41,7 +41,7 @@
 public:
     VerticalPositionCache()
     { }
-    
+
     int get(RenderObject* renderer, FontBaseline baselineType) const
     {
         const HashMap<RenderObject*, int>& mapToCheck = baselineType == AlphabeticBaseline ? m_alphabeticPositions : m_ideographicPositions;
@@ -50,7 +50,7 @@
             return PositionUndefined;
         return it->value;
     }
-    
+
     void set(RenderObject* renderer, FontBaseline baselineType, int position)
     {
         if (baselineType == AlphabeticBaseline)
diff --git a/Source/core/rendering/break_lines.cpp b/Source/core/rendering/break_lines.cpp
index 471e58b..d1ab913 100644
--- a/Source/core/rendering/break_lines.cpp
+++ b/Source/core/rendering/break_lines.cpp
@@ -28,9 +28,9 @@
 #include "core/rendering/break_lines.h"
 
 #include "core/platform/text/TextBreakIterator.h"
-#include <wtf/ASCIICType.h>
-#include <wtf/StdLibExtras.h>
-#include <wtf/unicode/CharacterNames.h>
+#include "wtf/ASCIICType.h"
+#include "wtf/StdLibExtras.h"
+#include "wtf/unicode/CharacterNames.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/break_lines.h b/Source/core/rendering/break_lines.h
index 072bc8d..3e0b131 100644
--- a/Source/core/rendering/break_lines.h
+++ b/Source/core/rendering/break_lines.h
@@ -21,7 +21,7 @@
 #ifndef break_lines_h
 #define break_lines_h
 
-#include <wtf/unicode/Unicode.h>
+#include "wtf/unicode/Unicode.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/shapes/ShapeOutsideInfo.cpp b/Source/core/rendering/shapes/ShapeOutsideInfo.cpp
index a3a004e..76f52dd 100644
--- a/Source/core/rendering/shapes/ShapeOutsideInfo.cpp
+++ b/Source/core/rendering/shapes/ShapeOutsideInfo.cpp
@@ -39,6 +39,12 @@
     return box->isFloatingWithShapeOutside() && value->type() == ShapeValue::Shape && value->shape();
 }
 
+bool ShapeOutsideInfo::computeSegmentsForContainingBlockLine(LayoutUnit lineTop, LayoutUnit floatTop, LayoutUnit lineHeight)
+{
+    LayoutUnit lineTopInShapeCoordinates = lineTop - floatTop + logicalTopOffset();
+    return computeSegmentsForLine(lineTopInShapeCoordinates, lineHeight);
+}
+
 bool ShapeOutsideInfo::computeSegmentsForLine(LayoutUnit lineTop, LayoutUnit lineHeight)
 {
     if (shapeSizeDirty() || m_lineTop != lineTop || m_lineHeight != lineHeight) {
diff --git a/Source/core/rendering/shapes/ShapeOutsideInfo.h b/Source/core/rendering/shapes/ShapeOutsideInfo.h
index 9bc3dcc..21e8380 100644
--- a/Source/core/rendering/shapes/ShapeOutsideInfo.h
+++ b/Source/core/rendering/shapes/ShapeOutsideInfo.h
@@ -42,6 +42,7 @@
     LayoutUnit leftSegmentMarginBoxDelta() const { return m_leftSegmentMarginBoxDelta; }
     LayoutUnit rightSegmentMarginBoxDelta() const { return m_rightSegmentMarginBoxDelta; }
 
+    bool computeSegmentsForContainingBlockLine(LayoutUnit lineTop, LayoutUnit floatTop, LayoutUnit lineHeight);
     virtual bool computeSegmentsForLine(LayoutUnit lineTop, LayoutUnit lineHeight) OVERRIDE;
 
     static PassOwnPtr<ShapeOutsideInfo> createInfo(const RenderBox* renderer) { return adoptPtr(new ShapeOutsideInfo(renderer)); }
diff --git a/Source/core/rendering/style/BasicShapes.cpp b/Source/core/rendering/style/BasicShapes.cpp
index 1f3ce3e..559bfe6 100644
--- a/Source/core/rendering/style/BasicShapes.cpp
+++ b/Source/core/rendering/style/BasicShapes.cpp
@@ -142,7 +142,7 @@
     ASSERT(path.isEmpty());
     ASSERT(!(m_values.size() % 2));
     size_t length = m_values.size();
-    
+
     if (!length)
         return;
 
diff --git a/Source/core/rendering/style/BasicShapes.h b/Source/core/rendering/style/BasicShapes.h
index 0f69c52..3cf6301 100644
--- a/Source/core/rendering/style/BasicShapes.h
+++ b/Source/core/rendering/style/BasicShapes.h
@@ -32,9 +32,9 @@
 
 #include "core/platform/Length.h"
 #include "core/platform/graphics/WindRule.h"
-#include <wtf/RefCounted.h>
-#include <wtf/RefPtr.h>
-#include <wtf/Vector.h>
+#include "wtf/RefCounted.h"
+#include "wtf/RefPtr.h"
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/BorderData.h b/Source/core/rendering/style/BorderData.h
index 4ae8ee4..6c47601 100644
--- a/Source/core/rendering/style/BorderData.h
+++ b/Source/core/rendering/style/BorderData.h
@@ -59,53 +59,53 @@
             return true;
         return false;
     }
-    
+
     unsigned borderLeftWidth() const
     {
         if (!m_image.hasImage() && (m_left.style() == BNONE || m_left.style() == BHIDDEN))
-            return 0; 
+            return 0;
         return m_left.width();
     }
-    
+
     unsigned borderRightWidth() const
     {
         if (!m_image.hasImage() && (m_right.style() == BNONE || m_right.style() == BHIDDEN))
             return 0;
         return m_right.width();
     }
-    
+
     unsigned borderTopWidth() const
     {
         if (!m_image.hasImage() && (m_top.style() == BNONE || m_top.style() == BHIDDEN))
             return 0;
         return m_top.width();
     }
-    
+
     unsigned borderBottomWidth() const
     {
         if (!m_image.hasImage() && (m_bottom.style() == BNONE || m_bottom.style() == BHIDDEN))
             return 0;
         return m_bottom.width();
     }
-    
+
     bool operator==(const BorderData& o) const
     {
         return m_left == o.m_left && m_right == o.m_right && m_top == o.m_top && m_bottom == o.m_bottom && m_image == o.m_image
                && m_topLeft == o.m_topLeft && m_topRight == o.m_topRight && m_bottomLeft == o.m_bottomLeft && m_bottomRight == o.m_bottomRight;
     }
-    
+
     bool operator!=(const BorderData& o) const
     {
         return !(*this == o);
     }
-    
+
     const BorderValue& left() const { return m_left; }
     const BorderValue& right() const { return m_right; }
     const BorderValue& top() const { return m_top; }
     const BorderValue& bottom() const { return m_bottom; }
-    
+
     const NinePieceImage& image() const { return m_image; }
-    
+
     const LengthSize& topLeft() const { return m_topLeft; }
     const LengthSize& topRight() const { return m_topRight; }
     const LengthSize& bottomLeft() const { return m_bottomLeft; }
diff --git a/Source/core/rendering/style/ContentData.cpp b/Source/core/rendering/style/ContentData.cpp
index a11d0aa..dd052ba 100644
--- a/Source/core/rendering/style/ContentData.cpp
+++ b/Source/core/rendering/style/ContentData.cpp
@@ -55,14 +55,14 @@
 PassOwnPtr<ContentData> ContentData::clone() const
 {
     OwnPtr<ContentData> result = cloneInternal();
-    
+
     ContentData* lastNewData = result.get();
     for (const ContentData* contentData = next(); contentData; contentData = contentData->next()) {
         OwnPtr<ContentData> newData = contentData->cloneInternal();
         lastNewData->setNext(newData.release());
         lastNewData = lastNewData->next();
     }
-        
+
     return result.release();
 }
 
diff --git a/Source/core/rendering/style/ContentData.h b/Source/core/rendering/style/ContentData.h
index e93bff3..00053a7 100644
--- a/Source/core/rendering/style/ContentData.h
+++ b/Source/core/rendering/style/ContentData.h
@@ -27,8 +27,8 @@
 
 #include "core/rendering/style/CounterContent.h"
 #include "core/rendering/style/StyleImage.h"
-#include <wtf/OwnPtr.h>
-#include <wtf/PassOwnPtr.h>
+#include "wtf/OwnPtr.h"
+#include "wtf/PassOwnPtr.h"
 
 namespace WebCore {
 
@@ -43,7 +43,7 @@
     static PassOwnPtr<ContentData> create(const String&);
     static PassOwnPtr<ContentData> create(PassOwnPtr<CounterContent>);
     static PassOwnPtr<ContentData> create(QuoteType);
-    
+
     virtual ~ContentData() { }
 
     virtual bool isCounter() const { return false; }
diff --git a/Source/core/rendering/style/CounterContent.h b/Source/core/rendering/style/CounterContent.h
index 571956e..d47056c 100644
--- a/Source/core/rendering/style/CounterContent.h
+++ b/Source/core/rendering/style/CounterContent.h
@@ -26,7 +26,7 @@
 #define CounterContent_h
 
 #include "core/rendering/style/RenderStyleConstants.h"
-#include <wtf/text/AtomicString.h>
+#include "wtf/text/AtomicString.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/CounterDirectives.cpp b/Source/core/rendering/style/CounterDirectives.cpp
index a2913be..f2097dc 100644
--- a/Source/core/rendering/style/CounterDirectives.cpp
+++ b/Source/core/rendering/style/CounterDirectives.cpp
@@ -21,7 +21,7 @@
 
 #include "config.h"
 #include "core/rendering/style/CounterDirectives.h"
-#include <wtf/PassOwnPtr.h>
+#include "wtf/PassOwnPtr.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/CounterDirectives.h b/Source/core/rendering/style/CounterDirectives.h
index cf793bb..f8035ab 100644
--- a/Source/core/rendering/style/CounterDirectives.h
+++ b/Source/core/rendering/style/CounterDirectives.h
@@ -25,11 +25,11 @@
 #ifndef CounterDirectives_h
 #define CounterDirectives_h
 
-#include <wtf/HashMap.h>
-#include <wtf/MathExtras.h>
-#include <wtf/RefPtr.h>
-#include <wtf/text/AtomicString.h>
-#include <wtf/text/AtomicStringHash.h>
+#include "wtf/HashMap.h"
+#include "wtf/MathExtras.h"
+#include "wtf/RefPtr.h"
+#include "wtf/text/AtomicString.h"
+#include "wtf/text/AtomicStringHash.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/CursorData.h b/Source/core/rendering/style/CursorData.h
index e2f2ea0..b5ec096 100644
--- a/Source/core/rendering/style/CursorData.h
+++ b/Source/core/rendering/style/CursorData.h
@@ -48,12 +48,12 @@
         return !(*this == o);
     }
 
-    StyleImage* image() const { return m_image.get(); }    
-    void setImage(PassRefPtr<StyleImage> image) { m_image = image; }    
+    StyleImage* image() const { return m_image.get(); }
+    void setImage(PassRefPtr<StyleImage> image) { m_image = image; }
 
     // Hot spot in the image in logical pixels.
     const IntPoint& hotSpot() const { return m_hotSpot; }
-    
+
 private:
     RefPtr<StyleImage> m_image;
     IntPoint m_hotSpot; // for CSS3 support
diff --git a/Source/core/rendering/style/CursorList.h b/Source/core/rendering/style/CursorList.h
index fe7cfb6..90bd00c 100644
--- a/Source/core/rendering/style/CursorList.h
+++ b/Source/core/rendering/style/CursorList.h
@@ -26,8 +26,8 @@
 #define CursorList_h
 
 #include "core/rendering/style/CursorData.h"
-#include <wtf/RefCounted.h>
-#include <wtf/Vector.h>
+#include "wtf/RefCounted.h"
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/DataRef.h b/Source/core/rendering/style/DataRef.h
index c8d8072..9425695 100644
--- a/Source/core/rendering/style/DataRef.h
+++ b/Source/core/rendering/style/DataRef.h
@@ -24,7 +24,7 @@
 #ifndef DataRef_h
 #define DataRef_h
 
-#include <wtf/RefPtr.h>
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
@@ -54,7 +54,7 @@
         ASSERT(o.m_data);
         return m_data == o.m_data || *m_data == *o.m_data;
     }
-    
+
     bool operator!=(const DataRef<T>& o) const
     {
         ASSERT(m_data);
diff --git a/Source/core/rendering/style/FillLayer.cpp b/Source/core/rendering/style/FillLayer.cpp
index 2a71b5f..0a3cf36 100644
--- a/Source/core/rendering/style/FillLayer.cpp
+++ b/Source/core/rendering/style/FillLayer.cpp
@@ -140,7 +140,7 @@
     m_repeatYSet = o.m_repeatYSet;
     m_xPosSet = o.m_xPosSet;
     m_yPosSet = o.m_yPosSet;
-    
+
     m_type = o.m_type;
 
     return *this;
@@ -175,7 +175,7 @@
                 pattern = this;
         }
     }
-    
+
     for (curr = this; curr && curr->isYPositionSet(); curr = curr->next()) { }
     if (curr && curr != this) {
         // We need to fill in the remaining values with the pattern specified.
@@ -201,7 +201,7 @@
                 pattern = this;
         }
     }
-    
+
     for (curr = this; curr && curr->isClipSet(); curr = curr->next()) { }
     if (curr && curr != this) {
         // We need to fill in the remaining values with the pattern specified.
@@ -267,7 +267,7 @@
                 pattern = this;
         }
     }
-    
+
     for (curr = this; curr && curr->isSizeSet(); curr = curr->next()) { }
     if (curr && curr != this) {
         // We need to fill in the remaining values with the pattern specified.
diff --git a/Source/core/rendering/style/FillLayer.h b/Source/core/rendering/style/FillLayer.h
index a3b0092..003572f 100644
--- a/Source/core/rendering/style/FillLayer.h
+++ b/Source/core/rendering/style/FillLayer.h
@@ -30,7 +30,7 @@
 #include "core/platform/graphics/GraphicsTypes.h"
 #include "core/rendering/style/RenderStyleConstants.h"
 #include "core/rendering/style/StyleImage.h"
-#include <wtf/RefPtr.h>
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
@@ -96,7 +96,7 @@
     bool isCompositeSet() const { return m_compositeSet; }
     bool isBlendModeSet() const { return m_blendModeSet; }
     bool isSizeSet() const { return m_sizeType != SizeNone; }
-    
+
     void setImage(PassRefPtr<StyleImage> i) { m_image = i; m_imageSet = true; }
     void setXPosition(Length l) { m_xPosition = l; m_xPosSet = true; }
     void setYPosition(Length l) { m_yPosition = l; m_yPosSet = true; }
@@ -112,7 +112,7 @@
     void setSizeType(EFillSizeType b) { m_sizeType = b; }
     void setSizeLength(LengthSize l) { m_sizeLength = l; }
     void setSize(FillSize f) { m_sizeType = f.type; m_sizeLength = f.size; }
-    
+
     void clearImage() { m_image.clear(); m_imageSet = false; }
     void clearXPosition()
     {
@@ -136,7 +136,7 @@
 
     void setNext(FillLayer* n) { if (m_next != n) { delete m_next; m_next = n; } }
 
-    FillLayer& operator=(const FillLayer& o);    
+    FillLayer& operator=(const FillLayer& o);
     FillLayer(const FillLayer& o);
 
     bool operator==(const FillLayer& o) const;
@@ -209,7 +209,7 @@
     unsigned m_composite : 4; // CompositeOperator
     unsigned m_sizeType : 2; // EFillSizeType
     unsigned m_blendMode : 5; // BlendMode
-    
+
     unsigned m_imageSet : 1;
     unsigned m_attachmentSet : 1;
     unsigned m_clipSet : 1;
@@ -223,7 +223,7 @@
     unsigned m_backgroundYOrigin : 2; // BackgroundEdgeOrigin
     unsigned m_compositeSet : 1;
     unsigned m_blendModeSet : 1;
-    
+
     unsigned m_type : 1; // EFillLayerType
 
     mutable unsigned m_clipMax : 2; // EFillBox, maximum m_clip value from this to bottom layer
diff --git a/Source/core/rendering/style/KeyframeList.cpp b/Source/core/rendering/style/KeyframeList.cpp
index 241be06..634699e 100644
--- a/Source/core/rendering/style/KeyframeList.cpp
+++ b/Source/core/rendering/style/KeyframeList.cpp
@@ -76,7 +76,7 @@
             break;
         }
     }
-    
+
     if (!replaced && !inserted)
         m_keyframes.append(keyframe);
 
diff --git a/Source/core/rendering/style/KeyframeList.h b/Source/core/rendering/style/KeyframeList.h
index 37eb316..adab92f 100644
--- a/Source/core/rendering/style/KeyframeList.h
+++ b/Source/core/rendering/style/KeyframeList.h
@@ -27,10 +27,10 @@
 
 #include "CSSPropertyNames.h"
 #include "core/rendering/style/StyleInheritedData.h"
-#include <wtf/HashSet.h>
-#include <wtf/RefPtr.h>
-#include <wtf/text/AtomicString.h>
-#include <wtf/Vector.h>
+#include "wtf/HashSet.h"
+#include "wtf/RefPtr.h"
+#include "wtf/Vector.h"
+#include "wtf/text/AtomicString.h"
 
 namespace WebCore {
 
@@ -70,19 +70,19 @@
         insert(KeyframeValue(1, 0));
     }
     ~KeyframeList();
-        
+
     bool operator==(const KeyframeList& o) const;
     bool operator!=(const KeyframeList& o) const { return !(*this == o); }
-    
+
     const AtomicString& animationName() const { return m_animationName; }
-    
+
     void insert(const KeyframeValue& keyframe);
-    
+
     void addProperty(CSSPropertyID prop) { m_properties.add(prop); }
     bool containsProperty(CSSPropertyID prop) const { return m_properties.contains(prop); }
     HashSet<CSSPropertyID>::const_iterator beginProperties() const { return m_properties.begin(); }
     HashSet<CSSPropertyID>::const_iterator endProperties() const { return m_properties.end(); }
-    
+
     void clear();
     bool isEmpty() const { return m_keyframes.isEmpty(); }
     size_t size() const { return m_keyframes.size(); }
diff --git a/Source/core/rendering/style/LineClampValue.h b/Source/core/rendering/style/LineClampValue.h
index e4b6249..356f2e0 100644
--- a/Source/core/rendering/style/LineClampValue.h
+++ b/Source/core/rendering/style/LineClampValue.h
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 2009 Apple Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
@@ -9,7 +9,7 @@
  * 2.  Redistributions in binary form must reproduce the above copyright
  * notice, this list of conditions and the following disclaimer in the
  * documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
@@ -28,7 +28,7 @@
 #include "core/rendering/style/RenderStyleConstants.h"
 
 namespace WebCore {
-    
+
 class LineClampValue {
 public:
     LineClampValue()
@@ -36,15 +36,15 @@
         , m_value(-1)
     {
     }
-    
+
     LineClampValue(int value, ELineClampType type)
         : m_type(type)
         , m_value(value)
     {
     }
-    
+
     int value() const { return m_value; }
-    
+
     bool isPercentage() const { return m_type == LineClampPercentage; }
 
     bool isNone() const { return m_value == -1; }
@@ -53,17 +53,17 @@
     {
         return value() == o.value() && isPercentage() == o.isPercentage();
     }
-    
+
     bool operator!=(const LineClampValue& o) const
     {
         return !(*this == o);
     }
-    
+
 private:
     ELineClampType m_type;
     int m_value;
 };
-    
+
 } // namespace WebCore
 
 #endif // LineClampValue_h
diff --git a/Source/core/rendering/style/NinePieceImage.h b/Source/core/rendering/style/NinePieceImage.h
index f3cd38d..d4d10c9 100644
--- a/Source/core/rendering/style/NinePieceImage.h
+++ b/Source/core/rendering/style/NinePieceImage.h
@@ -67,7 +67,7 @@
     bool hasImage() const { return m_data->image; }
     StyleImage* image() const { return m_data->image.get(); }
     void setImage(PassRefPtr<StyleImage> image) { m_data.access()->image = image; }
-    
+
     const LengthBox& imageSlices() const { return m_data->imageSlices; }
     void setImageSlices(const LengthBox& slices) { m_data.access()->imageSlices = slices; }
 
@@ -82,7 +82,7 @@
 
     ENinePieceImageRule horizontalRule() const { return static_cast<ENinePieceImageRule>(m_data->horizontalRule); }
     void setHorizontalRule(ENinePieceImageRule rule) { m_data.access()->horizontalRule = rule; }
-    
+
     ENinePieceImageRule verticalRule() const { return static_cast<ENinePieceImageRule>(m_data->verticalRule); }
     void setVerticalRule(ENinePieceImageRule rule) { m_data.access()->verticalRule = rule; }
 
@@ -96,7 +96,7 @@
     {
         m_data.access()->borderSlices = other.m_data->borderSlices;
     }
-    
+
     void copyOutsetFrom(const NinePieceImage& other)
     {
         m_data.access()->outset = other.m_data->outset;
diff --git a/Source/core/rendering/style/OutlineValue.h b/Source/core/rendering/style/OutlineValue.h
index df7775b..ccf3c27 100644
--- a/Source/core/rendering/style/OutlineValue.h
+++ b/Source/core/rendering/style/OutlineValue.h
@@ -36,17 +36,17 @@
         : m_offset(0)
     {
     }
-    
+
     bool operator==(const OutlineValue& o) const
     {
         return m_width == o.m_width && m_style == o.m_style && m_color == o.m_color && m_colorIsValid == o.m_colorIsValid && m_offset == o.m_offset && m_isAuto == o.m_isAuto;
     }
-    
+
     bool operator!=(const OutlineValue& o) const
     {
         return !(*this == o);
     }
-    
+
     int offset() const { return m_offset; }
     OutlineIsAuto isAuto() const { return static_cast<OutlineIsAuto>(m_isAuto); }
 
diff --git a/Source/core/rendering/style/QuotesData.h b/Source/core/rendering/style/QuotesData.h
index c6053ca..94e89e3 100644
--- a/Source/core/rendering/style/QuotesData.h
+++ b/Source/core/rendering/style/QuotesData.h
@@ -22,10 +22,10 @@
 #ifndef QuotesData_h
 #define QuotesData_h
 
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
-#include <wtf/Vector.h>
-#include <wtf/text/WTFString.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
+#include "wtf/Vector.h"
+#include "wtf/text/WTFString.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/RenderStyle.cpp b/Source/core/rendering/style/RenderStyle.cpp
index 53979e2..2e89c6a 100644
--- a/Source/core/rendering/style/RenderStyle.cpp
+++ b/Source/core/rendering/style/RenderStyle.cpp
@@ -37,8 +37,8 @@
 #include "core/rendering/style/ShadowData.h"
 #include "core/rendering/style/StyleImage.h"
 #include "core/rendering/style/StyleInheritedData.h"
-#include <wtf/MathExtras.h>
-#include <wtf/StdLibExtras.h>
+#include "wtf/MathExtras.h"
+#include "wtf/StdLibExtras.h"
 
 using namespace std;
 
@@ -254,7 +254,7 @@
     if (!m_cachedPseudoStyles || !m_cachedPseudoStyles->size())
         return 0;
 
-    if (styleType() != NOPSEUDO) 
+    if (styleType() != NOPSEUDO)
         return 0;
 
     for (size_t i = 0; i < m_cachedPseudoStyles->size(); ++i) {
@@ -330,7 +330,7 @@
         return false;
     if (!a.top().isIntrinsicOrAuto() && !a.bottom().isIntrinsicOrAuto())
         return false;
-    // If our width is auto and left or right is specified then this 
+    // If our width is auto and left or right is specified then this
     // is not just a movement - we need to resize to our container.
     if ((!a.left().isIntrinsicOrAuto() || !a.right().isIntrinsicOrAuto()) && width.isIntrinsicOrAuto())
         return false;
@@ -372,7 +372,7 @@
         return StyleDifferenceLayout;
 
     if (rareNonInheritedData.get() != other->rareNonInheritedData.get()) {
-        if (rareNonInheritedData->m_appearance != other->rareNonInheritedData->m_appearance 
+        if (rareNonInheritedData->m_appearance != other->rareNonInheritedData->m_appearance
             || rareNonInheritedData->marginBeforeCollapse != other->rareNonInheritedData->marginBeforeCollapse
             || rareNonInheritedData->marginAfterCollapse != other->rareNonInheritedData->marginAfterCollapse
             || rareNonInheritedData->lineClamp != other->rareNonInheritedData->lineClamp
@@ -582,7 +582,7 @@
                  || visual->clip != other->visual->clip || visual->hasClip != other->visual->hasClip)
             return StyleDifferenceRepaintLayer;
     }
-    
+
     if (RuntimeEnabledFeatures::cssCompositingEnabled())
         if (rareNonInheritedData->m_effectiveBlendMode != other->rareNonInheritedData->m_effectiveBlendMode)
             return StyleDifferenceRepaintLayer;
@@ -615,10 +615,10 @@
         || rareNonInheritedData->m_borderFit != other->rareNonInheritedData->m_borderFit
         || rareInheritedData->m_imageRendering != other->rareInheritedData->m_imageRendering)
         return StyleDifferenceRepaint;
-        
-        // FIXME: The current spec is being reworked to remove dependencies between exclusions and affected 
-        // content. There's a proposal to use floats instead. In that case, wrap-shape should actually relayout 
-        // the parent container. For sure, I will have to revisit this code, but for now I've added this in order 
+
+        // FIXME: The current spec is being reworked to remove dependencies between exclusions and affected
+        // content. There's a proposal to use floats instead. In that case, wrap-shape should actually relayout
+        // the parent container. For sure, I will have to revisit this code, but for now I've added this in order
         // to avoid having diff() == StyleDifferenceEqual where wrap-shapes actually differ.
         // Tracking bug: https://bugs.webkit.org/show_bug.cgi?id=62991
         if (rareNonInheritedData->m_shapeOutside != other->rareNonInheritedData->m_shapeOutside)
@@ -712,7 +712,7 @@
 {
     if (!image)
         return;
-        
+
     if (add) {
         appendContent(ContentData::create(image));
         return;
@@ -800,12 +800,12 @@
         TransformOperation::OperationType type = transformOperations[i]->getOperationType();
         if (type != TransformOperation::TRANSLATE_X
             && type != TransformOperation::TRANSLATE_Y
-            && type != TransformOperation::TRANSLATE 
+            && type != TransformOperation::TRANSLATE
             && type != TransformOperation::TRANSLATE_Z
             && type != TransformOperation::TRANSLATE_3D)
             return true;
     }
-    
+
     return false;
 }
 
@@ -818,20 +818,20 @@
 {
     const Vector<RefPtr<TransformOperation> >& transformOperations = rareNonInheritedData->m_transform->m_operations.operations();
     bool applyTransformOrigin = requireTransformOrigin(transformOperations, applyOrigin);
-    
+
     float offsetX = transformOriginX().type() == Percent ? boundingBox.x() : 0;
     float offsetY = transformOriginY().type() == Percent ? boundingBox.y() : 0;
-    
+
     if (applyTransformOrigin) {
         transform.translate3d(floatValueForLength(transformOriginX(), boundingBox.width()) + offsetX,
                               floatValueForLength(transformOriginY(), boundingBox.height()) + offsetY,
                               transformOriginZ());
     }
-    
+
     unsigned size = transformOperations.size();
     for (unsigned i = 0; i < size; ++i)
         transformOperations[i]->apply(transform, boundingBox.size());
-    
+
     if (applyTransformOrigin) {
         transform.translate3d(-floatValueForLength(transformOriginX(), boundingBox.width()) - offsetX,
                               -floatValueForLength(transformOriginY(), boundingBox.height()) - offsetY,
@@ -868,13 +868,13 @@
 static RoundedRect::Radii calcRadiiFor(const BorderData& border, IntSize size, RenderView* renderView)
 {
     return RoundedRect::Radii(
-        IntSize(valueForLength(border.topLeft().width(), size.width(), renderView), 
+        IntSize(valueForLength(border.topLeft().width(), size.width(), renderView),
                 valueForLength(border.topLeft().height(), size.height(), renderView)),
         IntSize(valueForLength(border.topRight().width(), size.width(), renderView),
                 valueForLength(border.topRight().height(), size.height(), renderView)),
-        IntSize(valueForLength(border.bottomLeft().width(), size.width(), renderView), 
+        IntSize(valueForLength(border.bottomLeft().width(), size.width(), renderView),
                 valueForLength(border.bottomLeft().height(), size.height(), renderView)),
-        IntSize(valueForLength(border.bottomRight().width(), size.width(), renderView), 
+        IntSize(valueForLength(border.bottomRight().width(), size.width(), renderView),
                 valueForLength(border.bottomRight().height(), size.height(), renderView)));
 }
 
@@ -882,7 +882,7 @@
 {
     // Constrain corner radii using CSS3 rules:
     // http://www.w3.org/TR/css3-background/#the-border-radius
-    
+
     float factor = 1;
     unsigned radiiSum;
 
@@ -895,17 +895,17 @@
     radiiSum = static_cast<unsigned>(radii.bottomLeft().width()) + static_cast<unsigned>(radii.bottomRight().width());
     if (radiiSum > static_cast<unsigned>(rect.width()))
         factor = min(static_cast<float>(rect.width()) / radiiSum, factor);
-    
+
     // left
     radiiSum = static_cast<unsigned>(radii.topLeft().height()) + static_cast<unsigned>(radii.bottomLeft().height());
     if (radiiSum > static_cast<unsigned>(rect.height()))
         factor = min(static_cast<float>(rect.height()) / radiiSum, factor);
-    
+
     // right
     radiiSum = static_cast<unsigned>(radii.topRight().height()) + static_cast<unsigned>(radii.bottomRight().height());
     if (radiiSum > static_cast<unsigned>(rect.height()))
         factor = min(static_cast<float>(rect.height()) / radiiSum, factor);
-    
+
     ASSERT(factor <= 1);
     return factor;
 }
@@ -954,9 +954,9 @@
 RoundedRect RenderStyle::getRoundedInnerBorderFor(const LayoutRect& borderRect,
     int topWidth, int bottomWidth, int leftWidth, int rightWidth, bool includeLogicalLeftEdge, bool includeLogicalRightEdge) const
 {
-    LayoutRect innerRect(borderRect.x() + leftWidth, 
-               borderRect.y() + topWidth, 
-               borderRect.width() - leftWidth - rightWidth, 
+    LayoutRect innerRect(borderRect.x() + leftWidth,
+               borderRect.y() + topWidth,
+               borderRect.width() - leftWidth - rightWidth,
                borderRect.height() - topWidth - bottomWidth);
 
     RoundedRect roundedRect(pixelSnappedIntRect(innerRect));
@@ -972,7 +972,7 @@
 static bool allLayersAreFixed(const FillLayer* layer)
 {
     bool allFixed = true;
-    
+
     for (const FillLayer* currLayer = layer; currLayer; currLayer = currLayer->next())
         allFixed &= (currLayer->image() && currLayer->attachment() == FixedBackgroundAttachment);
 
diff --git a/Source/core/rendering/style/RenderStyle.h b/Source/core/rendering/style/RenderStyle.h
index dc21479..286ea49 100644
--- a/Source/core/rendering/style/RenderStyle.h
+++ b/Source/core/rendering/style/RenderStyle.h
@@ -366,9 +366,9 @@
 
     bool hasBackgroundImage() const { return m_background->background().hasImage(); }
     bool hasFixedBackgroundImage() const { return m_background->background().hasFixedImage(); }
-    
+
     bool hasEntirelyFixedBackground() const;
-    
+
     bool hasAppearance() const { return appearance() != NoControlPart; }
 
     bool hasBackground() const
@@ -378,7 +378,7 @@
             return true;
         return hasBackgroundImage();
     }
-    
+
     LayoutBoxExtent imageOutsets(const NinePieceImage&) const;
     bool hasBorderImageOutsets() const
     {
@@ -442,7 +442,7 @@
     Length maxWidth() const { return m_box->maxWidth(); }
     Length minHeight() const { return m_box->minHeight(); }
     Length maxHeight() const { return m_box->maxHeight(); }
-    
+
     Length logicalWidth() const { return isHorizontalWritingMode() ? width() : height(); }
     Length logicalHeight() const { return isHorizontalWritingMode() ? height() : width(); }
     Length logicalMinWidth() const { return isHorizontalWritingMode() ? minWidth() : minHeight(); }
@@ -485,7 +485,7 @@
     unsigned borderBottomWidth() const { return surround->border.borderBottomWidth(); }
     EBorderStyle borderBottomStyle() const { return surround->border.bottom().style(); }
     bool borderBottomIsTransparent() const { return surround->border.bottom().isTransparent(); }
-    
+
     unsigned short borderBeforeWidth() const;
     unsigned short borderAfterWidth() const;
     unsigned short borderStartWidth() const;
@@ -501,7 +501,7 @@
     bool hasOutline() const { return outlineWidth() > 0 && outlineStyle() > BHIDDEN; }
     EBorderStyle outlineStyle() const { return m_background->outline().style(); }
     OutlineIsAuto outlineStyleIsAuto() const { return static_cast<OutlineIsAuto>(m_background->outline().isAuto()); }
-    
+
     EOverflow overflowX() const { return static_cast<EOverflow>(noninherited_flags._overflowX); }
     EOverflow overflowY() const { return static_cast<EOverflow>(noninherited_flags._overflowY); }
 
@@ -639,7 +639,7 @@
     const FillLayer* maskLayers() const { return &(rareNonInheritedData->m_mask); }
     const NinePieceImage& maskBoxImage() const { return rareNonInheritedData->m_maskBoxImage; }
     StyleImage* maskBoxImageSource() const { return rareNonInheritedData->m_maskBoxImage.image(); }
- 
+
     EBorderCollapse borderCollapse() const { return static_cast<EBorderCollapse>(inherited_flags._border_collapse); }
     short horizontalBorderSpacing() const;
     short verticalBorderSpacing() const;
@@ -818,8 +818,8 @@
     RubyPosition rubyPosition() const { return static_cast<RubyPosition>(rareInheritedData->m_rubyPosition); }
 
     TextOrientation textOrientation() const { return static_cast<TextOrientation>(rareInheritedData->m_textOrientation); }
-    
-    // Return true if any transform related property (currently transform, transformStyle3D or perspective) 
+
+    // Return true if any transform related property (currently transform, transformStyle3D or perspective)
     // indicates that we are transforming
     bool hasTransformRelatedProperty() const { return hasTransform() || preserves3D() || hasPerspective(); }
 
@@ -870,7 +870,7 @@
     Length perspectiveOriginY() const { return rareNonInheritedData->m_perspectiveOriginY; }
     LengthSize pageSize() const { return rareNonInheritedData->m_pageSize; }
     PageSizeType pageSizeType() const { return static_cast<PageSizeType>(rareNonInheritedData->m_pageSizeType); }
-    
+
     // When set, this ensures that styles compare as different. Used during accelerated animations.
     bool isRunningAcceleratedAnimation() const { return rareNonInheritedData->m_runningAcceleratedAnimation; }
 
@@ -959,7 +959,7 @@
     void setBackgroundYPosition(Length length) { SET_VAR(m_background, m_background.m_yPosition, length); }
     void setBackgroundSize(EFillSizeType b) { SET_VAR(m_background, m_background.m_sizeType, b); }
     void setBackgroundSizeLength(LengthSize s) { SET_VAR(m_background, m_background.m_sizeLength, s); }
-    
+
     void setBorderImage(const NinePieceImage& b) { SET_VAR(surround, border.m_image, b); }
     void setBorderImageSource(PassRefPtr<StyleImage>);
     void setBorderImageSlices(LengthBox);
@@ -982,7 +982,7 @@
     {
         setBorderRadius(LengthSize(Length(s.width(), Fixed), Length(s.height(), Fixed)));
     }
-    
+
     RoundedRect getRoundedBorderFor(const LayoutRect& borderRect, RenderView* = 0, bool includeLogicalLeftEdge = true, bool includeLogicalRightEdge = true) const;
     RoundedRect getRoundedInnerBorderFor(const LayoutRect& borderRect, bool includeLogicalLeftEdge = true, bool includeLogicalRightEdge = true) const;
 
@@ -1707,7 +1707,7 @@
     if (zoomFactor > 1) {
         if (value < 0)
             value--;
-        else 
+        else
             value++;
     }
 
diff --git a/Source/core/rendering/style/RenderStyleConstants.h b/Source/core/rendering/style/RenderStyleConstants.h
index 52f8182..178b93a 100644
--- a/Source/core/rendering/style/RenderStyleConstants.h
+++ b/Source/core/rendering/style/RenderStyleConstants.h
@@ -438,7 +438,7 @@
 enum EInsideLink {
     NotInsideLink, InsideUnvisitedLink, InsideVisitedLink
 };
-    
+
 enum EPointerEvents {
     PE_NONE, PE_AUTO, PE_STROKE, PE_FILL, PE_PAINTED, PE_VISIBLE,
     PE_VISIBLE_STROKE, PE_VISIBLE_FILL, PE_VISIBLE_PAINTED, PE_ALL
@@ -451,7 +451,7 @@
 enum EBackfaceVisibility {
     BackfaceVisibilityVisible, BackfaceVisibilityHidden
 };
-    
+
 enum ELineClampType { LineClampLineCount, LineClampPercentage };
 
 enum Hyphens { HyphensNone, HyphensManual, HyphensAuto };
diff --git a/Source/core/rendering/style/SVGRenderStyle.cpp b/Source/core/rendering/style/SVGRenderStyle.cpp
index 635c849..b839bd0 100644
--- a/Source/core/rendering/style/SVGRenderStyle.cpp
+++ b/Source/core/rendering/style/SVGRenderStyle.cpp
@@ -192,7 +192,7 @@
 
     // NOTE: All comparisions below may only return StyleDifferenceRepaint
 
-    // Painting related properties only need repaints. 
+    // Painting related properties only need repaints.
     if (miscNotEqual) {
         if (misc->floodColor != other->misc->floodColor
             || misc->floodOpacity != other->misc->floodOpacity
diff --git a/Source/core/rendering/style/SVGRenderStyle.h b/Source/core/rendering/style/SVGRenderStyle.h
index 625e33f..76c981d 100644
--- a/Source/core/rendering/style/SVGRenderStyle.h
+++ b/Source/core/rendering/style/SVGRenderStyle.h
@@ -38,7 +38,7 @@
 class IntRect;
 class RenderObject;
 
-class SVGRenderStyle : public RefCounted<SVGRenderStyle> {    
+class SVGRenderStyle : public RefCounted<SVGRenderStyle> {
 public:
     static PassRefPtr<SVGRenderStyle> create() { return adoptRef(new SVGRenderStyle); }
     PassRefPtr<SVGRenderStyle> copy() const { return adoptRef(new SVGRenderStyle(*this));}
@@ -322,7 +322,7 @@
     float fillOpacity() const { return fill->opacity; }
     const SVGPaint::SVGPaintType& fillPaintType() const { return fill->paintType; }
     const Color& fillPaintColor() const { return fill->paintColor; }
-    const String& fillPaintUri() const { return fill->paintUri; }    
+    const String& fillPaintUri() const { return fill->paintUri; }
     float strokeOpacity() const { return stroke->opacity; }
     const SVGPaint::SVGPaintType& strokePaintType() const { return stroke->paintType; }
     const Color& strokePaintColor() const { return stroke->paintColor; }
@@ -389,7 +389,7 @@
         }
 
         unsigned _colorRendering : 2; // EColorRendering
-        unsigned _shapeRendering : 2; // EShapeRendering 
+        unsigned _shapeRendering : 2; // EShapeRendering
         unsigned _clipRule : 1; // WindRule
         unsigned _fillRule : 1; // WindRule
         unsigned _capStyle : 2; // LineCap
@@ -410,7 +410,7 @@
 
         union {
             struct {
-                unsigned _alignmentBaseline : 4; // EAlignmentBaseline 
+                unsigned _alignmentBaseline : 4; // EAlignmentBaseline
                 unsigned _dominantBaseline : 4; // EDominantBaseline
                 unsigned _baselineShift : 2; // EBaselineShift
                 unsigned _vectorEffect: 1; // EVectorEffect
@@ -436,7 +436,7 @@
 
 private:
     enum CreateDefaultType { CreateDefault };
-        
+
     SVGRenderStyle();
     SVGRenderStyle(const SVGRenderStyle&);
     SVGRenderStyle(CreateDefaultType); // Used to create the default style.
diff --git a/Source/core/rendering/style/SVGRenderStyleDefs.cpp b/Source/core/rendering/style/SVGRenderStyleDefs.cpp
index d9a7208..8e93166 100644
--- a/Source/core/rendering/style/SVGRenderStyleDefs.cpp
+++ b/Source/core/rendering/style/SVGRenderStyleDefs.cpp
@@ -58,7 +58,7 @@
 
 bool StyleFillData::operator==(const StyleFillData& other) const
 {
-    return opacity == other.opacity 
+    return opacity == other.opacity
         && paintType == other.paintType
         && paintColor == other.paintColor
         && paintUri == other.paintUri
diff --git a/Source/core/rendering/style/SVGRenderStyleDefs.h b/Source/core/rendering/style/SVGRenderStyleDefs.h
index 4f9d706..60477d4 100644
--- a/Source/core/rendering/style/SVGRenderStyleDefs.h
+++ b/Source/core/rendering/style/SVGRenderStyleDefs.h
@@ -31,10 +31,10 @@
 #include "core/rendering/style/ShadowData.h"
 #include "core/svg/SVGLength.h"
 #include "core/svg/SVGPaint.h"
-#include <wtf/OwnPtr.h>
-#include <wtf/PassOwnPtr.h>
-#include <wtf/RefCounted.h>
-#include <wtf/RefPtr.h>
+#include "wtf/OwnPtr.h"
+#include "wtf/PassOwnPtr.h"
+#include "wtf/RefCounted.h"
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
@@ -76,7 +76,7 @@
         DB_IDEOGRAPHIC, DB_ALPHABETIC, DB_HANGING, DB_MATHEMATICAL,
         DB_CENTRAL, DB_MIDDLE, DB_TEXT_AFTER_EDGE, DB_TEXT_BEFORE_EDGE
     };
-    
+
     enum EVectorEffect {
         VE_NONE,
         VE_NON_SCALING_STROKE
@@ -147,7 +147,7 @@
         Color visitedLinkPaintColor;
         String visitedLinkPaintUri;
 
-    private:        
+    private:
         StyleStrokeData();
         StyleStrokeData(const StyleStrokeData&);
     };
@@ -166,7 +166,7 @@
         float opacity;
         Color color;
 
-    private:        
+    private:
         StyleStopData();
         StyleStopData(const StyleStopData&);
     };
@@ -175,7 +175,7 @@
     public:
         static PassRefPtr<StyleTextData> create() { return adoptRef(new StyleTextData); }
         PassRefPtr<StyleTextData> copy() const { return adoptRef(new StyleTextData(*this)); }
-        
+
         bool operator==(const StyleTextData& other) const;
         bool operator!=(const StyleTextData& other) const
         {
diff --git a/Source/core/rendering/style/ShadowData.cpp b/Source/core/rendering/style/ShadowData.cpp
index 1723b19..52e391b 100644
--- a/Source/core/rendering/style/ShadowData.cpp
+++ b/Source/core/rendering/style/ShadowData.cpp
@@ -43,7 +43,7 @@
     if ((m_next && !o.m_next) || (!m_next && o.m_next)
         || (m_next && o.m_next && *m_next != *o.m_next))
         return false;
-    
+
     return m_location == o.m_location
         && m_blur == o.m_blur
         && m_spread == o.m_spread
diff --git a/Source/core/rendering/style/ShadowData.h b/Source/core/rendering/style/ShadowData.h
index bd6bf3c..30a981f 100644
--- a/Source/core/rendering/style/ShadowData.h
+++ b/Source/core/rendering/style/ShadowData.h
@@ -28,8 +28,8 @@
 #include "core/css/StyleColor.h"
 #include "core/platform/graphics/FloatRect.h"
 #include "core/platform/graphics/LayoutRect.h"
-#include <wtf/OwnPtr.h>
-#include <wtf/PassOwnPtr.h>
+#include "wtf/OwnPtr.h"
+#include "wtf/PassOwnPtr.h"
 
 namespace WebCore {
 
@@ -52,7 +52,7 @@
 
     bool operator==(const ShadowData&) const;
     bool operator!=(const ShadowData& o) const { return !(*this == o); }
-    
+
     int x() const { return m_location.x(); }
     int y() const { return m_location.y(); }
     IntPoint location() const { return m_location; }
diff --git a/Source/core/rendering/style/StyleBackgroundData.h b/Source/core/rendering/style/StyleBackgroundData.h
index 6c58b02..cbc668d 100644
--- a/Source/core/rendering/style/StyleBackgroundData.h
+++ b/Source/core/rendering/style/StyleBackgroundData.h
@@ -28,8 +28,8 @@
 #include "core/css/StyleColor.h"
 #include "core/rendering/style/FillLayer.h"
 #include "core/rendering/style/OutlineValue.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
@@ -53,7 +53,7 @@
     friend class RenderStyle;
 
     StyleBackgroundData();
-    StyleBackgroundData(const StyleBackgroundData&); 
+    StyleBackgroundData(const StyleBackgroundData&);
 
     FillLayer m_background;
     StyleColor m_color;
diff --git a/Source/core/rendering/style/StyleBoxData.h b/Source/core/rendering/style/StyleBoxData.h
index 7f4bd71..ff9b543 100644
--- a/Source/core/rendering/style/StyleBoxData.h
+++ b/Source/core/rendering/style/StyleBoxData.h
@@ -27,8 +27,8 @@
 
 #include "core/platform/Length.h"
 #include "core/rendering/style/RenderStyleConstants.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
@@ -45,18 +45,18 @@
 
     Length width() const { return m_width; }
     Length height() const { return m_height; }
-    
+
     Length minWidth() const { return m_minWidth; }
     Length minHeight() const { return m_minHeight; }
-    
+
     Length maxWidth() const { return m_maxWidth; }
     Length maxHeight() const { return m_maxHeight; }
-    
+
     Length verticalAlign() const { return m_verticalAlign; }
-    
+
     int zIndex() const { return m_zIndex; }
     bool hasAutoZIndex() const { return m_hasAutoZIndex; }
-    
+
     EBoxSizing boxSizing() const { return static_cast<EBoxSizing>(m_boxSizing); }
     EBoxDecorationBreak boxDecorationBreak() const { return static_cast<EBoxDecorationBreak>(m_boxDecorationBreak); }
 
diff --git a/Source/core/rendering/style/StyleCachedImage.h b/Source/core/rendering/style/StyleCachedImage.h
index f0d445c..de81fed 100644
--- a/Source/core/rendering/style/StyleCachedImage.h
+++ b/Source/core/rendering/style/StyleCachedImage.h
@@ -41,7 +41,7 @@
     virtual WrappedImagePtr data() const { return m_image.get(); }
 
     virtual PassRefPtr<CSSValue> cssValue() const;
-    
+
     virtual bool canRender(const RenderObject*, float multiplier) const;
     virtual bool isLoaded() const;
     virtual bool errorOccurred() const;
@@ -56,10 +56,10 @@
     virtual PassRefPtr<Image> image(RenderObject*, const IntSize&) const;
     virtual bool knownToBeOpaque(const RenderObject*) const OVERRIDE;
     virtual CachedImage* cachedImage() const OVERRIDE { return m_image.get(); }
-    
+
 private:
     explicit StyleCachedImage(CachedImage*);
-    
+
     CachedResourceHandle<CachedImage> m_image;
 };
 
diff --git a/Source/core/rendering/style/StyleCachedShader.h b/Source/core/rendering/style/StyleCachedShader.h
index bc79519..645bf12 100644
--- a/Source/core/rendering/style/StyleCachedShader.h
+++ b/Source/core/rendering/style/StyleCachedShader.h
@@ -41,14 +41,14 @@
 public:
     // FIXME: Keep a reference to the actual CachedShader in this class.
     static PassRefPtr<StyleCachedShader> create(CachedShader* shader) { return adoptRef(new StyleCachedShader(shader)); }
-    
+
     virtual PassRefPtr<CSSValue> cssValue() const;
-    
+
     virtual CachedShader* cachedShader() const { return m_shader.get(); }
-    
+
 private:
     StyleCachedShader(CachedShader*);
-    
+
     CachedResourceHandle<CachedShader> m_shader;
 };
 
diff --git a/Source/core/rendering/style/StyleCustomFilterProgram.h b/Source/core/rendering/style/StyleCustomFilterProgram.h
index 7ef768f..40e7760 100644
--- a/Source/core/rendering/style/StyleCustomFilterProgram.h
+++ b/Source/core/rendering/style/StyleCustomFilterProgram.h
@@ -47,35 +47,35 @@
 class StyleCustomFilterProgram : public CustomFilterProgram, public CachedResourceClient {
     WTF_MAKE_FAST_ALLOCATED;
 public:
-    static PassRefPtr<StyleCustomFilterProgram> create(KURL vertexShaderURL, PassRefPtr<StyleShader> vertexShader, 
+    static PassRefPtr<StyleCustomFilterProgram> create(KURL vertexShaderURL, PassRefPtr<StyleShader> vertexShader,
         KURL fragmentShaderURL, PassRefPtr<StyleShader> fragmentShader, CustomFilterProgramType programType,
         const CustomFilterProgramMixSettings& mixSettings, CustomFilterMeshType meshType)
     {
         return adoptRef(new StyleCustomFilterProgram(vertexShaderURL, vertexShader, fragmentShaderURL, fragmentShader, programType, mixSettings, meshType));
     }
-    
+
     void setVertexShader(PassRefPtr<StyleShader> shader)
     {
         // The shader is immutable while in the cache.
         ASSERT(!m_cache);
-        m_vertexShader = shader; 
+        m_vertexShader = shader;
     }
     StyleShader* vertexShader() const { return m_vertexShader.get(); }
-    
+
     void setFragmentShader(PassRefPtr<StyleShader> shader)
     {
         // The shader is immutable while in the cache.
         ASSERT(!m_cache);
-        m_fragmentShader = shader; 
+        m_fragmentShader = shader;
     }
     StyleShader* fragmentShader() const { return m_fragmentShader.get(); }
-    
+
     virtual String vertexShaderString() const
     {
         ASSERT(isLoaded());
         return m_cachedVertexShader.get() ? m_cachedVertexShader->shaderString() : String();
     }
-    
+
     virtual String fragmentShaderString() const
     {
         ASSERT(isLoaded());
@@ -104,7 +104,7 @@
             m_cachedFragmentShader->addClient(this);
         }
     }
-    
+
     virtual void didRemoveLastClient()
     {
         if (m_cachedVertexShader.get()) {
@@ -118,7 +118,7 @@
             m_isFragmentShaderLoaded = false;
         }
     }
-    
+
     virtual void notifyFinished(CachedResource* resource)
     {
         if (resource->errorOccurred())
@@ -134,19 +134,19 @@
 
     bool hasPendingShaders() const
     {
-        return (m_vertexShader && m_vertexShader->isPendingShader()) 
+        return (m_vertexShader && m_vertexShader->isPendingShader())
             || (m_fragmentShader && m_fragmentShader->isPendingShader());
     }
 
     // StyleCustomFilterProgramCache is responsible with updating the reference to the cache.
     void setCache(StyleCustomFilterProgramCache* cache) { m_cache = cache; }
     bool inCache() const { return m_cache; }
-    
+
     KURL vertexShaderURL() const { return m_vertexShaderURL; }
     KURL fragmentShaderURL() const { return m_fragmentShaderURL; }
 
 private:
-    StyleCustomFilterProgram(KURL vertexShaderURL, PassRefPtr<StyleShader> vertexShader, KURL fragmentShaderURL, PassRefPtr<StyleShader> fragmentShader, 
+    StyleCustomFilterProgram(KURL vertexShaderURL, PassRefPtr<StyleShader> vertexShader, KURL fragmentShaderURL, PassRefPtr<StyleShader> fragmentShader,
         CustomFilterProgramType programType, const CustomFilterProgramMixSettings& mixSettings, CustomFilterMeshType meshType)
         : CustomFilterProgram(programType, mixSettings, meshType)
         , m_vertexShader(vertexShader)
@@ -160,7 +160,7 @@
     }
 
     ~StyleCustomFilterProgram();
-    
+
     RefPtr<StyleShader> m_vertexShader;
     RefPtr<StyleShader> m_fragmentShader;
 
@@ -174,7 +174,7 @@
 
     // The Cache is responsible of invalidating this reference.
     StyleCustomFilterProgramCache* m_cache;
-    
+
     bool m_isVertexShaderLoaded;
     bool m_isFragmentShaderLoaded;
 };
diff --git a/Source/core/rendering/style/StyleCustomFilterProgramCache.cpp b/Source/core/rendering/style/StyleCustomFilterProgramCache.cpp
index be1d79a..fb4c011 100644
--- a/Source/core/rendering/style/StyleCustomFilterProgramCache.cpp
+++ b/Source/core/rendering/style/StyleCustomFilterProgramCache.cpp
@@ -36,7 +36,7 @@
 
 namespace WebCore {
 
-static CustomFilterProgramInfo programCacheKey(StyleCustomFilterProgram* program) 
+static CustomFilterProgramInfo programCacheKey(StyleCustomFilterProgram* program)
 {
     ASSERT(program->vertexShaderURL().isValid() || program->fragmentShaderURL().isValid());
     return CustomFilterProgramInfo(program->vertexShaderURL().string(), program->fragmentShaderURL().string(),
diff --git a/Source/core/rendering/style/StyleCustomFilterProgramCache.h b/Source/core/rendering/style/StyleCustomFilterProgramCache.h
index 999ecb2..bfd1610 100644
--- a/Source/core/rendering/style/StyleCustomFilterProgramCache.h
+++ b/Source/core/rendering/style/StyleCustomFilterProgramCache.h
@@ -31,8 +31,8 @@
 #define StyleCustomFilterProgramCache_h
 
 #include "core/platform/graphics/filters/custom/CustomFilterProgramInfo.h"
-#include <wtf/FastAllocBase.h>
-#include <wtf/HashMap.h>
+#include "wtf/FastAllocBase.h"
+#include "wtf/HashMap.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/StyleDeprecatedFlexibleBoxData.h b/Source/core/rendering/style/StyleDeprecatedFlexibleBoxData.h
index 33337bc..501157c 100644
--- a/Source/core/rendering/style/StyleDeprecatedFlexibleBoxData.h
+++ b/Source/core/rendering/style/StyleDeprecatedFlexibleBoxData.h
@@ -25,8 +25,8 @@
 #ifndef StyleDeprecatedFlexibleBoxData_h
 #define StyleDeprecatedFlexibleBoxData_h
 
-#include <wtf/RefCounted.h>
-#include <wtf/PassRefPtr.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/StyleFilterData.cpp b/Source/core/rendering/style/StyleFilterData.cpp
index 9ff640b..ae75334 100644
--- a/Source/core/rendering/style/StyleFilterData.cpp
+++ b/Source/core/rendering/style/StyleFilterData.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/rendering/style/StyleFilterData.h b/Source/core/rendering/style/StyleFilterData.h
index ce62c62..12a3e84 100644
--- a/Source/core/rendering/style/StyleFilterData.h
+++ b/Source/core/rendering/style/StyleFilterData.h
@@ -20,15 +20,15 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef StyleFilterData_h
 #define StyleFilterData_h
 
 #include "core/platform/graphics/filters/FilterOperations.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/StyleFlexibleBoxData.h b/Source/core/rendering/style/StyleFlexibleBoxData.h
index 04c43e7..8877558 100644
--- a/Source/core/rendering/style/StyleFlexibleBoxData.h
+++ b/Source/core/rendering/style/StyleFlexibleBoxData.h
@@ -28,8 +28,8 @@
 
 #include "core/platform/Length.h"
 
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/StyleGeneratedImage.cpp b/Source/core/rendering/style/StyleGeneratedImage.cpp
index f1fe1af..2ec1c87 100644
--- a/Source/core/rendering/style/StyleGeneratedImage.cpp
+++ b/Source/core/rendering/style/StyleGeneratedImage.cpp
@@ -29,9 +29,9 @@
 #include "core/rendering/RenderObject.h"
 
 namespace WebCore {
-    
+
 StyleGeneratedImage::StyleGeneratedImage(PassRefPtr<CSSImageGeneratorValue> value)
-    : m_imageGeneratorValue(value)  
+    : m_imageGeneratorValue(value)
     , m_fixedSize(m_imageGeneratorValue->isFixedSize())
 {
     m_isGeneratedImage = true;
@@ -61,7 +61,7 @@
 
         return LayoutSize(width, height);
     }
-    
+
     return m_containerSize;
 }
 
diff --git a/Source/core/rendering/style/StyleGeneratedImage.h b/Source/core/rendering/style/StyleGeneratedImage.h
index 30dbcb1..bf93af4 100644
--- a/Source/core/rendering/style/StyleGeneratedImage.h
+++ b/Source/core/rendering/style/StyleGeneratedImage.h
@@ -52,10 +52,10 @@
     virtual void removeClient(RenderObject*);
     virtual PassRefPtr<Image> image(RenderObject*, const IntSize&) const;
     virtual bool knownToBeOpaque(const RenderObject*) const OVERRIDE;
-    
+
 private:
     StyleGeneratedImage(PassRefPtr<CSSImageGeneratorValue>);
-    
+
     RefPtr<CSSImageGeneratorValue> m_imageGeneratorValue;
     IntSize m_containerSize;
     bool m_fixedSize;
diff --git a/Source/core/rendering/style/StyleGridData.h b/Source/core/rendering/style/StyleGridData.h
index 3b602ad..96f1ca5 100644
--- a/Source/core/rendering/style/StyleGridData.h
+++ b/Source/core/rendering/style/StyleGridData.h
@@ -28,10 +28,10 @@
 
 #include "core/rendering/style/GridTrackSize.h"
 #include "core/rendering/style/RenderStyleConstants.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
-#include <wtf/Vector.h>
-#include <wtf/text/WTFString.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
+#include "wtf/Vector.h"
+#include "wtf/text/WTFString.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/StyleGridItemData.h b/Source/core/rendering/style/StyleGridItemData.h
index 76214b5..21a5a46 100644
--- a/Source/core/rendering/style/StyleGridItemData.h
+++ b/Source/core/rendering/style/StyleGridItemData.h
@@ -33,9 +33,9 @@
 
 
 #include "core/rendering/style/GridPosition.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
-#include <wtf/Vector.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/StyleImage.h b/Source/core/rendering/style/StyleImage.h
index bea910e..58f0908 100644
--- a/Source/core/rendering/style/StyleImage.h
+++ b/Source/core/rendering/style/StyleImage.h
@@ -28,9 +28,9 @@
 #include "core/platform/graphics/Image.h"
 #include "core/platform/graphics/IntSize.h"
 #include "core/platform/graphics/LayoutSize.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
-#include <wtf/RefPtr.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
@@ -72,7 +72,7 @@
     ALWAYS_INLINE bool isPendingImage() const { return m_isPendingImage; }
     ALWAYS_INLINE bool isGeneratedImage() const { return m_isGeneratedImage; }
     ALWAYS_INLINE bool isCachedImageSet() const { return m_isCachedImageSet; }
-    
+
     static bool imagesEquivalent(const StyleImage* image1, const StyleImage* image2)
     {
         if (image1 != image2) {
diff --git a/Source/core/rendering/style/StyleInheritedData.h b/Source/core/rendering/style/StyleInheritedData.h
index 3cb6674..80bd3ec 100644
--- a/Source/core/rendering/style/StyleInheritedData.h
+++ b/Source/core/rendering/style/StyleInheritedData.h
@@ -28,9 +28,9 @@
 #include "core/css/StyleColor.h"
 #include "core/platform/Length.h"
 #include "core/platform/graphics/Font.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
-#include <wtf/RefPtr.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
+#include "wtf/RefPtr.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/StyleMarqueeData.cpp b/Source/core/rendering/style/StyleMarqueeData.cpp
index 9015d73..c0d3667 100644
--- a/Source/core/rendering/style/StyleMarqueeData.cpp
+++ b/Source/core/rendering/style/StyleMarqueeData.cpp
@@ -41,7 +41,7 @@
     , speed(o.speed)
     , loops(o.loops)
     , behavior(o.behavior)
-    , direction(o.direction) 
+    , direction(o.direction)
 {
 }
 
diff --git a/Source/core/rendering/style/StyleMarqueeData.h b/Source/core/rendering/style/StyleMarqueeData.h
index 33719c2..31de9b8 100644
--- a/Source/core/rendering/style/StyleMarqueeData.h
+++ b/Source/core/rendering/style/StyleMarqueeData.h
@@ -27,8 +27,8 @@
 
 #include "core/platform/Length.h"
 #include "core/rendering/style/RenderStyleConstants.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
@@ -48,7 +48,7 @@
 
     int loops; // -1 means infinite.
 
-    unsigned behavior : 2; // EMarqueeBehavior 
+    unsigned behavior : 2; // EMarqueeBehavior
     EMarqueeDirection direction : 3; // not unsigned because EMarqueeDirection has negative values
 
 private:
diff --git a/Source/core/rendering/style/StyleMultiColData.h b/Source/core/rendering/style/StyleMultiColData.h
index d4531b3..bc97184 100644
--- a/Source/core/rendering/style/StyleMultiColData.h
+++ b/Source/core/rendering/style/StyleMultiColData.h
@@ -29,8 +29,8 @@
 #include "core/platform/Length.h"
 #include "core/rendering/style/BorderValue.h"
 #include "core/rendering/style/RenderStyleConstants.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
@@ -40,7 +40,7 @@
 public:
     static PassRefPtr<StyleMultiColData> create() { return adoptRef(new StyleMultiColData); }
     PassRefPtr<StyleMultiColData> copy() const { return adoptRef(new StyleMultiColData(*this)); }
-    
+
     bool operator==(const StyleMultiColData& o) const;
     bool operator!=(const StyleMultiColData &o) const
     {
@@ -50,7 +50,7 @@
     unsigned short ruleWidth() const
     {
         if (m_rule.style() == BNONE || m_rule.style() == BHIDDEN)
-            return 0; 
+            return 0;
         return m_rule.width();
     }
 
diff --git a/Source/core/rendering/style/StylePendingImage.h b/Source/core/rendering/style/StylePendingImage.h
index 8b6e7f1..9f7bc2a 100644
--- a/Source/core/rendering/style/StylePendingImage.h
+++ b/Source/core/rendering/style/StylePendingImage.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef StylePendingImage_h
@@ -65,7 +65,7 @@
         return 0;
     }
     virtual bool knownToBeOpaque(const RenderObject*) const { return false; }
-    
+
 private:
     StylePendingImage(CSSValue* value)
         : m_value(value)
diff --git a/Source/core/rendering/style/StylePendingShader.h b/Source/core/rendering/style/StylePendingShader.h
index a97c66a..1158e33 100644
--- a/Source/core/rendering/style/StylePendingShader.h
+++ b/Source/core/rendering/style/StylePendingShader.h
@@ -33,7 +33,7 @@
 #include "core/css/CSSShaderValue.h"
 #include "core/css/CSSValue.h"
 #include "core/rendering/style/StyleShader.h"
-#include <wtf/PassRefPtr.h>
+#include "wtf/PassRefPtr.h"
 
 namespace WebCore {
 
@@ -42,7 +42,7 @@
 class StylePendingShader : public StyleShader {
 public:
     static PassRefPtr<StylePendingShader> create(CSSShaderValue* value) { return adoptRef(new StylePendingShader(value)); }
-    
+
     virtual PassRefPtr<CSSValue> cssValue() const { return m_value; }
     CSSShaderValue* cssShaderValue() const { return m_value; }
 private:
@@ -51,7 +51,7 @@
     {
          m_isPendingShader = true;
     }
-    
+
     CSSShaderValue* m_value; // Not retained; it owns us.
 };
 
diff --git a/Source/core/rendering/style/StyleRareInheritedData.h b/Source/core/rendering/style/StyleRareInheritedData.h
index 8d914e3..a96179f 100644
--- a/Source/core/rendering/style/StyleRareInheritedData.h
+++ b/Source/core/rendering/style/StyleRareInheritedData.h
@@ -27,9 +27,9 @@
 
 #include "core/css/StyleColor.h"
 #include "core/platform/Length.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
-#include <wtf/text/AtomicString.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
+#include "wtf/text/AtomicString.h"
 
 #include "core/rendering/style/DataRef.h"
 #include "core/rendering/style/StyleVariableData.h"
diff --git a/Source/core/rendering/style/StyleRareNonInheritedData.h b/Source/core/rendering/style/StyleRareNonInheritedData.h
index 85c0a8f..a48395e 100644
--- a/Source/core/rendering/style/StyleRareNonInheritedData.h
+++ b/Source/core/rendering/style/StyleRareNonInheritedData.h
@@ -58,7 +58,7 @@
 struct LengthSize;
 
 // Page size type.
-// StyleRareNonInheritedData::m_pageSize is meaningful only when 
+// StyleRareNonInheritedData::m_pageSize is meaningful only when
 // StyleRareNonInheritedData::m_pageSizeType is PAGE_SIZE_RESOLVED.
 enum PageSizeType {
     PAGE_SIZE_AUTO, // size: auto
@@ -75,7 +75,7 @@
     static PassRefPtr<StyleRareNonInheritedData> create() { return adoptRef(new StyleRareNonInheritedData); }
     PassRefPtr<StyleRareNonInheritedData> copy() const { return adoptRef(new StyleRareNonInheritedData(*this)); }
     ~StyleRareNonInheritedData();
-    
+
     bool operator==(const StyleRareNonInheritedData&) const;
     bool operator!=(const StyleRareNonInheritedData& o) const { return !(*this == o); }
 
@@ -113,7 +113,7 @@
     OwnPtr<CounterDirectiveMap> m_counterDirectives;
 
     OwnPtr<ShadowData> m_boxShadow;  // For box-shadow decorations.
-    
+
     RefPtr<StyleReflection> m_boxReflect;
 
     OwnPtr<CSSAnimationDataList> m_animations;
diff --git a/Source/core/rendering/style/StyleReflection.h b/Source/core/rendering/style/StyleReflection.h
index 0005a5e..76829a3 100644
--- a/Source/core/rendering/style/StyleReflection.h
+++ b/Source/core/rendering/style/StyleReflection.h
@@ -28,7 +28,7 @@
 #include "core/css/CSSReflectionDirection.h"
 #include "core/platform/Length.h"
 #include "core/rendering/style/NinePieceImage.h"
-#include <wtf/RefCounted.h>
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
@@ -60,7 +60,7 @@
     {
          m_mask.setMaskDefaults();
     }
-    
+
     CSSReflectionDirection m_direction;
     Length m_offset;
     NinePieceImage m_mask;
diff --git a/Source/core/rendering/style/StyleShader.h b/Source/core/rendering/style/StyleShader.h
index 9ca34ff..de43941 100644
--- a/Source/core/rendering/style/StyleShader.h
+++ b/Source/core/rendering/style/StyleShader.h
@@ -30,7 +30,7 @@
 #ifndef StyleShader_h
 #define StyleShader_h
 
-#include <wtf/RefCounted.h>
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
@@ -43,11 +43,11 @@
 
     ALWAYS_INLINE bool isCachedShader() const { return m_isCachedShader; }
     ALWAYS_INLINE bool isPendingShader() const { return m_isPendingShader; }
-    
+
     virtual PassRefPtr<CSSValue> cssValue() const = 0;
-    
+
     virtual CachedShader* cachedShader() const { return 0; }
-    
+
 protected:
     StyleShader()
         : m_isCachedShader(false)
diff --git a/Source/core/rendering/style/StyleSurroundData.h b/Source/core/rendering/style/StyleSurroundData.h
index c388e71..3d4913f 100644
--- a/Source/core/rendering/style/StyleSurroundData.h
+++ b/Source/core/rendering/style/StyleSurroundData.h
@@ -27,8 +27,8 @@
 
 #include "core/platform/LengthBox.h"
 #include "core/rendering/style/BorderData.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
@@ -36,7 +36,7 @@
 public:
     static PassRefPtr<StyleSurroundData> create() { return adoptRef(new StyleSurroundData); }
     PassRefPtr<StyleSurroundData> copy() const { return adoptRef(new StyleSurroundData(*this)); }
-    
+
     bool operator==(const StyleSurroundData& o) const;
     bool operator!=(const StyleSurroundData& o) const
     {
@@ -47,10 +47,10 @@
     LengthBox margin;
     LengthBox padding;
     BorderData border;
-    
+
 private:
     StyleSurroundData();
-    StyleSurroundData(const StyleSurroundData&);    
+    StyleSurroundData(const StyleSurroundData&);
 };
 
 } // namespace WebCore
diff --git a/Source/core/rendering/style/StyleTransformData.h b/Source/core/rendering/style/StyleTransformData.h
index 92fe9f9..8f59a6d 100644
--- a/Source/core/rendering/style/StyleTransformData.h
+++ b/Source/core/rendering/style/StyleTransformData.h
@@ -27,8 +27,8 @@
 
 #include "core/platform/Length.h"
 #include "core/platform/graphics/transforms/TransformOperations.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/StyleVariableData.h b/Source/core/rendering/style/StyleVariableData.h
index c2edb4f..23429f1 100644
--- a/Source/core/rendering/style/StyleVariableData.h
+++ b/Source/core/rendering/style/StyleVariableData.h
@@ -32,10 +32,10 @@
 #ifndef StyleVariableData_h
 #define StyleVariableData_h
 
-#include <wtf/Forward.h>
-#include <wtf/HashMap.h>
-#include <wtf/RefCounted.h>
-#include <wtf/text/AtomicStringHash.h>
+#include "wtf/Forward.h"
+#include "wtf/HashMap.h"
+#include "wtf/RefCounted.h"
+#include "wtf/text/AtomicStringHash.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/style/StyleVisualData.h b/Source/core/rendering/style/StyleVisualData.h
index 464cb49..9e29cb0 100644
--- a/Source/core/rendering/style/StyleVisualData.h
+++ b/Source/core/rendering/style/StyleVisualData.h
@@ -27,8 +27,8 @@
 
 #include "core/platform/LengthBox.h"
 #include "core/rendering/style/RenderStyleConstants.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefCounted.h"
 
 namespace WebCore {
 
@@ -57,7 +57,7 @@
 
 private:
     StyleVisualData();
-    StyleVisualData(const StyleVisualData&);    
+    StyleVisualData(const StyleVisualData&);
 };
 
 } // namespace WebCore
diff --git a/Source/core/rendering/svg/RenderSVGBlock.cpp b/Source/core/rendering/svg/RenderSVGBlock.cpp
index ad80432..1db2a55 100644
--- a/Source/core/rendering/svg/RenderSVGBlock.cpp
+++ b/Source/core/rendering/svg/RenderSVGBlock.cpp
@@ -43,11 +43,11 @@
     return borderRect;
 }
 
-void RenderSVGBlock::setStyle(PassRefPtr<RenderStyle> style) 
+void RenderSVGBlock::setStyle(PassRefPtr<RenderStyle> style)
 {
     RefPtr<RenderStyle> useStyle = style;
 
-    // SVG text layout code expects us to be a block-level style element.   
+    // SVG text layout code expects us to be a block-level style element.
     if (useStyle->isDisplayInlineType()) {
         RefPtr<RenderStyle> newStyle = RenderStyle::create();
         newStyle->inheritFrom(useStyle.get());
diff --git a/Source/core/rendering/svg/RenderSVGContainer.cpp b/Source/core/rendering/svg/RenderSVGContainer.cpp
index 25e5356..7b1bf66 100644
--- a/Source/core/rendering/svg/RenderSVGContainer.cpp
+++ b/Source/core/rendering/svg/RenderSVGContainer.cpp
@@ -75,7 +75,7 @@
     if (m_needsBoundariesUpdate || updatedTransform) {
         updateCachedBoundaries();
         m_needsBoundariesUpdate = false;
-    
+
         // If our bounds changed, notify the parents.
         RenderSVGModelObject::setNeedsBoundariesUpdate();
     }
@@ -140,7 +140,7 @@
                 child->paint(childPaintInfo, IntPoint());
         }
     }
-    
+
     // FIXME: This really should be drawn from local coordinates, but currently we hack it
     // to avoid our clip killing our outline rect.  Thus we translate our
     // outline rect into parent coords before drawing.
@@ -176,7 +176,7 @@
 
     if (!SVGRenderSupport::pointInClippingArea(this, localPoint))
         return false;
-                
+
     for (RenderObject* child = lastChild(); child; child = child->previousSibling()) {
         if (child->nodeAtFloatPoint(request, result, localPoint, hitTestAction)) {
             updateHitTestResult(result, roundedLayoutPoint(localPoint));
diff --git a/Source/core/rendering/svg/RenderSVGContainer.h b/Source/core/rendering/svg/RenderSVGContainer.h
index d8f3c31..f5a40fa 100644
--- a/Source/core/rendering/svg/RenderSVGContainer.h
+++ b/Source/core/rendering/svg/RenderSVGContainer.h
@@ -86,7 +86,7 @@
     FloatRect m_repaintBoundingBox;
     bool m_needsBoundariesUpdate : 1;
 };
-  
+
 inline RenderSVGContainer* toRenderSVGContainer(RenderObject* object)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isSVGContainer());
diff --git a/Source/core/rendering/svg/RenderSVGForeignObject.cpp b/Source/core/rendering/svg/RenderSVGForeignObject.cpp
index 632e805..2153235 100644
--- a/Source/core/rendering/svg/RenderSVGForeignObject.cpp
+++ b/Source/core/rendering/svg/RenderSVGForeignObject.cpp
@@ -1,7 +1,7 @@
 /*
  * Copyright (C) 2006 Apple Computer, Inc.
  * Copyright (C) 2009 Google, Inc.
- * Copyright (C) Research In Motion Limited 2010. All rights reserved. 
+ * Copyright (C) Research In Motion Limited 2010. All rights reserved.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -34,7 +34,7 @@
 
 namespace WebCore {
 
-RenderSVGForeignObject::RenderSVGForeignObject(SVGForeignObjectElement* node) 
+RenderSVGForeignObject::RenderSVGForeignObject(SVGForeignObjectElement* node)
     : RenderSVGBlock(node)
     , m_needsTransformUpdate(true)
 {
diff --git a/Source/core/rendering/svg/RenderSVGGradientStop.cpp b/Source/core/rendering/svg/RenderSVGGradientStop.cpp
index 274e3a6..f490629 100644
--- a/Source/core/rendering/svg/RenderSVGGradientStop.cpp
+++ b/Source/core/rendering/svg/RenderSVGGradientStop.cpp
@@ -27,7 +27,7 @@
 #include "core/svg/SVGStopElement.h"
 
 namespace WebCore {
-    
+
 using namespace SVGNames;
 
 RenderSVGGradientStop::RenderSVGGradientStop(SVGStopElement* element)
diff --git a/Source/core/rendering/svg/RenderSVGGradientStop.h b/Source/core/rendering/svg/RenderSVGGradientStop.h
index b082bab..4899a14 100644
--- a/Source/core/rendering/svg/RenderSVGGradientStop.h
+++ b/Source/core/rendering/svg/RenderSVGGradientStop.h
@@ -24,7 +24,7 @@
 #include "core/rendering/RenderObject.h"
 
 namespace WebCore {
-    
+
 class SVGGradientElement;
 class SVGStopElement;
 
diff --git a/Source/core/rendering/svg/RenderSVGHiddenContainer.cpp b/Source/core/rendering/svg/RenderSVGHiddenContainer.cpp
index 819b3a9..7f02252 100644
--- a/Source/core/rendering/svg/RenderSVGHiddenContainer.cpp
+++ b/Source/core/rendering/svg/RenderSVGHiddenContainer.cpp
@@ -32,8 +32,8 @@
 {
     StackStats::LayoutCheckPoint layoutCheckPoint;
     ASSERT(needsLayout());
-    SVGRenderSupport::layoutChildren(this, selfNeedsLayout()); 
-    setNeedsLayout(false);    
+    SVGRenderSupport::layoutChildren(this, selfNeedsLayout());
+    setNeedsLayout(false);
 }
 
 void RenderSVGHiddenContainer::paint(PaintInfo&, const LayoutPoint&)
diff --git a/Source/core/rendering/svg/RenderSVGHiddenContainer.h b/Source/core/rendering/svg/RenderSVGHiddenContainer.h
index 99ebaec..ee2b992 100644
--- a/Source/core/rendering/svg/RenderSVGHiddenContainer.h
+++ b/Source/core/rendering/svg/RenderSVGHiddenContainer.h
@@ -23,7 +23,7 @@
 #include "core/rendering/svg/RenderSVGContainer.h"
 
 namespace WebCore {
-    
+
 class SVGStyledElement;
 
 // This class is for containers which are never drawn, but do need to support style
@@ -41,7 +41,7 @@
     virtual bool isSVGHiddenContainer() const OVERRIDE FINAL { return true; }
 
     virtual void paint(PaintInfo&, const LayoutPoint&) OVERRIDE FINAL;
-    
+
     virtual LayoutRect clippedOverflowRectForRepaint(const RenderLayerModelObject*) const OVERRIDE FINAL { return LayoutRect(); }
     virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const OVERRIDE FINAL;
 
diff --git a/Source/core/rendering/svg/RenderSVGImage.cpp b/Source/core/rendering/svg/RenderSVGImage.cpp
index 2d37048..752a4b5 100644
--- a/Source/core/rendering/svg/RenderSVGImage.cpp
+++ b/Source/core/rendering/svg/RenderSVGImage.cpp
@@ -187,7 +187,7 @@
     bool isVisible = (style()->visibility() == VISIBLE);
     if (isVisible || !hitRules.requireVisible) {
         FloatPoint localPoint = localToParentTransform().inverse().mapPoint(pointInParent);
-            
+
         if (!SVGRenderSupport::pointInClippingArea(this, localPoint))
             return false;
 
diff --git a/Source/core/rendering/svg/RenderSVGInline.cpp b/Source/core/rendering/svg/RenderSVGInline.cpp
index 3791d29..bec0c50 100644
--- a/Source/core/rendering/svg/RenderSVGInline.cpp
+++ b/Source/core/rendering/svg/RenderSVGInline.cpp
@@ -29,7 +29,7 @@
 #include "core/rendering/svg/SVGResourcesCache.h"
 
 namespace WebCore {
-    
+
 RenderSVGInline::RenderSVGInline(Element* element)
     : RenderInline(element)
 {
diff --git a/Source/core/rendering/svg/RenderSVGInlineText.cpp b/Source/core/rendering/svg/RenderSVGInlineText.cpp
index 626bdc7..f81b3e1 100644
--- a/Source/core/rendering/svg/RenderSVGInlineText.cpp
+++ b/Source/core/rendering/svg/RenderSVGInlineText.cpp
@@ -221,7 +221,7 @@
 
     Document* document = renderer->document();
     ASSERT(document);
-    
+
     StyleResolver* styleResolver = document->styleResolver();
     ASSERT(styleResolver);
 
diff --git a/Source/core/rendering/svg/RenderSVGModelObject.cpp b/Source/core/rendering/svg/RenderSVGModelObject.cpp
index f3e5ca8..f3a3d28 100644
--- a/Source/core/rendering/svg/RenderSVGModelObject.cpp
+++ b/Source/core/rendering/svg/RenderSVGModelObject.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -181,7 +181,7 @@
 {
     quads.append(localToAbsoluteQuad(FloatQuad(repaintRectInLocalCoordinates())));
 }
-    
+
 bool RenderSVGModelObject::checkIntersection(RenderObject* renderer, const SVGRect& rect)
 {
     if (!renderer || renderer->style()->pointerEvents() == PE_NONE)
diff --git a/Source/core/rendering/svg/RenderSVGModelObject.h b/Source/core/rendering/svg/RenderSVGModelObject.h
index 5499d02..a6f3886 100644
--- a/Source/core/rendering/svg/RenderSVGModelObject.h
+++ b/Source/core/rendering/svg/RenderSVGModelObject.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (c) 2009, Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/rendering/svg/RenderSVGRect.cpp b/Source/core/rendering/svg/RenderSVGRect.cpp
index 6ad7ff9..9d1457e 100644
--- a/Source/core/rendering/svg/RenderSVGRect.cpp
+++ b/Source/core/rendering/svg/RenderSVGRect.cpp
@@ -50,7 +50,7 @@
     m_fillBoundingBox = FloatRect();
     m_innerStrokeRect = FloatRect();
     m_outerStrokeRect = FloatRect();
-    SVGRectElement* rect = static_cast<SVGRectElement*>(node());
+    SVGRectElement* rect = toSVGRectElement(node());
     ASSERT(rect);
 
     SVGLengthContext lengthContext(rect);
diff --git a/Source/core/rendering/svg/RenderSVGResourceClipper.cpp b/Source/core/rendering/svg/RenderSVGResourceClipper.cpp
index 65ed669..a1875ff 100644
--- a/Source/core/rendering/svg/RenderSVGResourceClipper.cpp
+++ b/Source/core/rendering/svg/RenderSVGResourceClipper.cpp
@@ -316,7 +316,7 @@
     // Resource was not layouted yet. Give back the boundingBox of the object.
     if (selfNeedsLayout())
         return object->objectBoundingBox();
-    
+
     if (m_clipBoundaries.isEmpty())
         calculateClipContentRepaintRect();
 
diff --git a/Source/core/rendering/svg/RenderSVGResourceClipper.h b/Source/core/rendering/svg/RenderSVGResourceClipper.h
index b464f2b..32e4971 100644
--- a/Source/core/rendering/svg/RenderSVGResourceClipper.h
+++ b/Source/core/rendering/svg/RenderSVGResourceClipper.h
@@ -49,7 +49,7 @@
     virtual FloatRect resourceBoundingBox(RenderObject*);
 
     virtual RenderSVGResourceType resourceType() const { return ClipperResourceType; }
-    
+
     bool hitTestClipContent(const FloatRect&, const FloatPoint&);
 
     SVGUnitTypes::SVGUnitType clipPathUnits() const { return static_cast<SVGClipPathElement*>(node())->clipPathUnitsCurrentValue(); }
diff --git a/Source/core/rendering/svg/RenderSVGResourceFilter.cpp b/Source/core/rendering/svg/RenderSVGResourceFilter.cpp
index 9342e7b..4b83d6f 100644
--- a/Source/core/rendering/svg/RenderSVGResourceFilter.cpp
+++ b/Source/core/rendering/svg/RenderSVGResourceFilter.cpp
@@ -144,7 +144,7 @@
     if (filterData->boundaries.isEmpty())
         return false;
 
-    // Determine absolute transformation matrix for filter. 
+    // Determine absolute transformation matrix for filter.
     AffineTransform absoluteTransform;
     SVGRenderingContext::calculateTransformationToOutermostCoordinateSystem(object, absoluteTransform);
     if (!absoluteTransform.isInvertible())
@@ -222,13 +222,13 @@
         m_filter.set(object, filterData.leakPtr());
         return false;
     }
-    
+
     // Set the rendering mode from the page's settings.
     filterData->filter->setRenderingMode(renderingMode);
 
     GraphicsContext* sourceGraphicContext = sourceGraphic->context();
     ASSERT(sourceGraphicContext);
-  
+
     filterData->sourceGraphicBuffer = sourceGraphic.release();
     filterData->savedContext = context;
 
diff --git a/Source/core/rendering/svg/RenderSVGResourceGradient.cpp b/Source/core/rendering/svg/RenderSVGResourceGradient.cpp
index f7c3abd..a23c163 100644
--- a/Source/core/rendering/svg/RenderSVGResourceGradient.cpp
+++ b/Source/core/rendering/svg/RenderSVGResourceGradient.cpp
@@ -27,7 +27,7 @@
 #include "core/platform/graphics/GraphicsContext.h"
 #include "core/rendering/svg/RenderSVGShape.h"
 #include "core/rendering/svg/SVGRenderSupport.h"
-#include <wtf/UnusedParam.h>
+#include "wtf/UnusedParam.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/RenderSVGResourceGradient.h b/Source/core/rendering/svg/RenderSVGResourceGradient.h
index 343989c..fe04469 100644
--- a/Source/core/rendering/svg/RenderSVGResourceGradient.h
+++ b/Source/core/rendering/svg/RenderSVGResourceGradient.h
@@ -29,7 +29,7 @@
 #include "core/rendering/svg/RenderSVGResourceContainer.h"
 #include "core/svg/SVGGradientElement.h"
 
-#include <wtf/HashMap.h>
+#include "wtf/HashMap.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/RenderSVGResourceMarker.cpp b/Source/core/rendering/svg/RenderSVGResourceMarker.cpp
index b33cc50..3a9cead 100644
--- a/Source/core/rendering/svg/RenderSVGResourceMarker.cpp
+++ b/Source/core/rendering/svg/RenderSVGResourceMarker.cpp
@@ -170,7 +170,7 @@
 
     SVGMarkerElement* marker = toSVGMarkerElement(node());
     ASSERT(marker);
-    
+
     SVGLengthContext lengthContext(marker);
     float w = marker->markerWidthCurrentValue().value(lengthContext);
     float h = marker->markerHeightCurrentValue().value(lengthContext);
diff --git a/Source/core/rendering/svg/RenderSVGResourceMarker.h b/Source/core/rendering/svg/RenderSVGResourceMarker.h
index 409c65d..7e83c53 100644
--- a/Source/core/rendering/svg/RenderSVGResourceMarker.h
+++ b/Source/core/rendering/svg/RenderSVGResourceMarker.h
@@ -25,7 +25,7 @@
 #include "core/svg/SVGMarkerElement.h"
 #include "core/svg/SVGStyledElement.h"
 
-#include <wtf/HashSet.h>
+#include "wtf/HashSet.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/RenderSVGResourceMasker.cpp b/Source/core/rendering/svg/RenderSVGResourceMasker.cpp
index 6d5f46d..b4790e4 100644
--- a/Source/core/rendering/svg/RenderSVGResourceMasker.cpp
+++ b/Source/core/rendering/svg/RenderSVGResourceMasker.cpp
@@ -31,8 +31,8 @@
 #include "core/svg/SVGMaskElement.h"
 #include "core/svg/SVGUnitTypes.h"
 
-#include <wtf/UnusedParam.h>
-#include <wtf/Vector.h>
+#include "wtf/UnusedParam.h"
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/RenderSVGResourceMasker.h b/Source/core/rendering/svg/RenderSVGResourceMasker.h
index d159e1f..66a34c6 100644
--- a/Source/core/rendering/svg/RenderSVGResourceMasker.h
+++ b/Source/core/rendering/svg/RenderSVGResourceMasker.h
@@ -28,8 +28,8 @@
 #include "core/svg/SVGMaskElement.h"
 #include "core/svg/SVGUnitTypes.h"
 
-#include <wtf/HashMap.h>
-#include <wtf/OwnPtr.h>
+#include "wtf/HashMap.h"
+#include "wtf/OwnPtr.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/RenderSVGResourcePattern.cpp b/Source/core/rendering/svg/RenderSVGResourcePattern.cpp
index 9f09fe9..ff4f87b 100644
--- a/Source/core/rendering/svg/RenderSVGResourcePattern.cpp
+++ b/Source/core/rendering/svg/RenderSVGResourcePattern.cpp
@@ -216,7 +216,7 @@
     ASSERT(patternElement);
 
     FloatRect objectBoundingBox = renderer->objectBoundingBox();
-    patternBoundaries = calculatePatternBoundaries(attributes, objectBoundingBox, patternElement); 
+    patternBoundaries = calculatePatternBoundaries(attributes, objectBoundingBox, patternElement);
     if (patternBoundaries.width() <= 0 || patternBoundaries.height() <= 0)
         return false;
 
diff --git a/Source/core/rendering/svg/RenderSVGResourcePattern.h b/Source/core/rendering/svg/RenderSVGResourcePattern.h
index e18bdea..acd7ae6 100644
--- a/Source/core/rendering/svg/RenderSVGResourcePattern.h
+++ b/Source/core/rendering/svg/RenderSVGResourcePattern.h
@@ -30,8 +30,8 @@
 #include "core/svg/SVGPatternElement.h"
 #include "core/svg/SVGUnitTypes.h"
 
-#include <wtf/HashMap.h>
-#include <wtf/OwnPtr.h>
+#include "wtf/HashMap.h"
+#include "wtf/OwnPtr.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/RenderSVGRoot.cpp b/Source/core/rendering/svg/RenderSVGRoot.cpp
index 1021b51..dc531b2 100644
--- a/Source/core/rendering/svg/RenderSVGRoot.cpp
+++ b/Source/core/rendering/svg/RenderSVGRoot.cpp
@@ -384,7 +384,7 @@
 
 void RenderSVGRoot::computeFloatRectForRepaint(const RenderLayerModelObject* repaintContainer, FloatRect& repaintRect, bool fixed) const
 {
-    // Apply our local transforms (except for x/y translation), then our shadow, 
+    // Apply our local transforms (except for x/y translation), then our shadow,
     // and then call RenderBox's method to handle all the normal CSS Box model bits
     repaintRect = m_localToBorderBoxTransform.mapRect(repaintRect);
 
@@ -450,7 +450,7 @@
     if (hitTestAction == HitTestBlockBackground && visibleToHitTestRequest(request)) {
         // Only return true here, if the last hit testing phase 'BlockBackground' is executed. If we'd return true in the 'Foreground' phase,
         // hit testing would stop immediately. For SVG only trees this doesn't matter. Though when we have a <foreignObject> subtree we need
-        // to be able to detect hits on the background of a <div> element. If we'd return true here in the 'Foreground' phase, we are not able 
+        // to be able to detect hits on the background of a <div> element. If we'd return true here in the 'Foreground' phase, we are not able
         // to detect these hits anymore.
         LayoutRect boundsRect(accumulatedOffset + location(), size());
         if (locationInContainer.intersects(boundsRect)) {
diff --git a/Source/core/rendering/svg/RenderSVGRoot.h b/Source/core/rendering/svg/RenderSVGRoot.h
index 405c664..e0b0998 100644
--- a/Source/core/rendering/svg/RenderSVGRoot.h
+++ b/Source/core/rendering/svg/RenderSVGRoot.h
@@ -60,7 +60,7 @@
     virtual bool hasRelativeIntrinsicLogicalWidth() const OVERRIDE;
     virtual bool hasRelativeLogicalHeight() const OVERRIDE;
 
-    // localToBorderBoxTransform maps local SVG viewport coordinates to local CSS box coordinates.  
+    // localToBorderBoxTransform maps local SVG viewport coordinates to local CSS box coordinates.
     const AffineTransform& localToBorderBoxTransform() const { return m_localToBorderBoxTransform; }
 
     // The flag is cleared at the beginning of each layout() pass. Elements then call this
@@ -128,13 +128,13 @@
 };
 
 inline RenderSVGRoot* toRenderSVGRoot(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isSVGRoot());
     return static_cast<RenderSVGRoot*>(object);
 }
 
 inline const RenderSVGRoot* toRenderSVGRoot(const RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isSVGRoot());
     return static_cast<const RenderSVGRoot*>(object);
 }
diff --git a/Source/core/rendering/svg/RenderSVGShape.cpp b/Source/core/rendering/svg/RenderSVGShape.cpp
index 5272fdf..e4f3131 100644
--- a/Source/core/rendering/svg/RenderSVGShape.cpp
+++ b/Source/core/rendering/svg/RenderSVGShape.cpp
@@ -41,7 +41,7 @@
 #include "core/rendering/svg/SVGResources.h"
 #include "core/rendering/svg/SVGResourcesCache.h"
 #include "core/svg/SVGGraphicsElement.h"
-#include <wtf/MathExtras.h>
+#include "wtf/MathExtras.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/RenderSVGShape.h b/Source/core/rendering/svg/RenderSVGShape.h
index 5c01796..386ff9c 100644
--- a/Source/core/rendering/svg/RenderSVGShape.h
+++ b/Source/core/rendering/svg/RenderSVGShape.h
@@ -30,8 +30,8 @@
 #include "core/platform/graphics/transforms/AffineTransform.h"
 #include "core/rendering/svg/RenderSVGModelObject.h"
 #include "core/rendering/svg/SVGMarkerData.h"
-#include <wtf/OwnPtr.h>
-#include <wtf/Vector.h>
+#include "wtf/OwnPtr.h"
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/RenderSVGText.cpp b/Source/core/rendering/svg/RenderSVGText.cpp
index 1720601..4f79c74 100644
--- a/Source/core/rendering/svg/RenderSVGText.cpp
+++ b/Source/core/rendering/svg/RenderSVGText.cpp
@@ -54,7 +54,7 @@
 
 namespace WebCore {
 
-RenderSVGText::RenderSVGText(SVGTextElement* node) 
+RenderSVGText::RenderSVGText(SVGTextElement* node)
     : RenderSVGBlock(node)
     , m_needsReordering(false)
     , m_needsPositioningValuesUpdate(false)
@@ -432,7 +432,7 @@
     setNeedsLayout(false);
 }
 
-RootInlineBox* RenderSVGText::createRootInlineBox() 
+RootInlineBox* RenderSVGText::createRootInlineBox()
 {
     RootInlineBox* box = new (renderArena()) SVGRootInlineBox(this);
     box->setHasVirtualLogicalHeight();
@@ -449,7 +449,7 @@
             FloatPoint localPoint = localToParentTransform().inverse().mapPoint(pointInParent);
 
             if (!SVGRenderSupport::pointInClippingArea(this, localPoint))
-                return false;       
+                return false;
 
             HitTestLocation hitTestLocation(LayoutPoint(flooredIntPoint(localPoint)));
             return RenderBlock::nodeAtPoint(request, result, hitTestLocation, LayoutPoint(), hitTestAction);
diff --git a/Source/core/rendering/svg/RenderSVGTextPath.cpp b/Source/core/rendering/svg/RenderSVGTextPath.cpp
index 022afad..a1fbae3 100644
--- a/Source/core/rendering/svg/RenderSVGTextPath.cpp
+++ b/Source/core/rendering/svg/RenderSVGTextPath.cpp
@@ -39,9 +39,9 @@
     Element* targetElement = SVGURIReference::targetElementFromIRIString(textPathElement->hrefCurrentValue(), textPathElement->document());
     if (!targetElement || !targetElement->hasTagName(SVGNames::pathTag))
         return Path();
-    
+
     SVGPathElement* pathElement = toSVGPathElement(targetElement);
-    
+
     Path pathData;
     updatePathFromGraphicsElement(pathElement, pathData);
 
diff --git a/Source/core/rendering/svg/RenderSVGTextPath.h b/Source/core/rendering/svg/RenderSVGTextPath.h
index 930b9da..3990a90 100644
--- a/Source/core/rendering/svg/RenderSVGTextPath.h
+++ b/Source/core/rendering/svg/RenderSVGTextPath.h
@@ -43,7 +43,7 @@
 };
 
 inline RenderSVGTextPath* toRenderSVGTextPath(RenderObject* object)
-{ 
+{
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isSVGTextPath());
     return static_cast<RenderSVGTextPath*>(object);
 }
diff --git a/Source/core/rendering/svg/RenderSVGTransformableContainer.cpp b/Source/core/rendering/svg/RenderSVGTransformableContainer.cpp
index d53d892..4b7bb9f 100644
--- a/Source/core/rendering/svg/RenderSVGTransformableContainer.cpp
+++ b/Source/core/rendering/svg/RenderSVGTransformableContainer.cpp
@@ -29,7 +29,7 @@
 #include "core/svg/SVGUseElement.h"
 
 namespace WebCore {
-    
+
 RenderSVGTransformableContainer::RenderSVGTransformableContainer(SVGGraphicsElement* node)
     : RenderSVGContainer(node)
     , m_needsTransformUpdate(true)
diff --git a/Source/core/rendering/svg/RenderSVGTransformableContainer.h b/Source/core/rendering/svg/RenderSVGTransformableContainer.h
index e6f8ef4..6aa752a 100644
--- a/Source/core/rendering/svg/RenderSVGTransformableContainer.h
+++ b/Source/core/rendering/svg/RenderSVGTransformableContainer.h
@@ -24,7 +24,7 @@
 #include "core/rendering/svg/RenderSVGContainer.h"
 
 namespace WebCore {
-    
+
 class SVGGraphicsElement;
 class RenderSVGTransformableContainer FINAL : public RenderSVGContainer {
 public:
diff --git a/Source/core/rendering/svg/RenderSVGViewportContainer.cpp b/Source/core/rendering/svg/RenderSVGViewportContainer.cpp
index 8cb7ee8..67c82e5 100644
--- a/Source/core/rendering/svg/RenderSVGViewportContainer.cpp
+++ b/Source/core/rendering/svg/RenderSVGViewportContainer.cpp
@@ -117,12 +117,12 @@
     }
 }
 
-bool RenderSVGViewportContainer::calculateLocalTransform() 
+bool RenderSVGViewportContainer::calculateLocalTransform()
 {
     m_didTransformToRootUpdate = m_needsTransformUpdate || SVGRenderSupport::transformToRootChanged(parent());
     if (!m_needsTransformUpdate)
         return false;
-    
+
     m_localToParentTransform = AffineTransform::translation(m_viewport.x(), m_viewport.y()) * viewportTransform();
     m_needsTransformUpdate = false;
     return true;
@@ -143,7 +143,7 @@
     // Respect the viewport clip (which is in parent coords)
     if (!SVGRenderSupport::isOverflowHidden(this))
         return true;
-    
+
     return m_viewport.contains(pointInParent);
 }
 
diff --git a/Source/core/rendering/svg/RenderSVGViewportContainer.h b/Source/core/rendering/svg/RenderSVGViewportContainer.h
index a1183e9..3416ede 100644
--- a/Source/core/rendering/svg/RenderSVGViewportContainer.h
+++ b/Source/core/rendering/svg/RenderSVGViewportContainer.h
@@ -61,7 +61,7 @@
     bool m_isLayoutSizeChanged : 1;
     bool m_needsTransformUpdate : 1;
 };
-  
+
 inline RenderSVGViewportContainer* toRenderSVGViewportContainer(RenderObject* object)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!object || object->isSVGViewportContainer());
diff --git a/Source/core/rendering/svg/SVGInlineTextBox.cpp b/Source/core/rendering/svg/SVGInlineTextBox.cpp
index 0b94074..cb54b01 100644
--- a/Source/core/rendering/svg/SVGInlineTextBox.cpp
+++ b/Source/core/rendering/svg/SVGInlineTextBox.cpp
@@ -106,7 +106,7 @@
 
 float SVGInlineTextBox::positionForOffset(int) const
 {
-    // SVG doesn't use the offset <-> position selection system. 
+    // SVG doesn't use the offset <-> position selection system.
     ASSERT_NOT_REACHED();
     return 0;
 }
diff --git a/Source/core/rendering/svg/SVGMarkerData.h b/Source/core/rendering/svg/SVGMarkerData.h
index 04be518..61f90a3 100644
--- a/Source/core/rendering/svg/SVGMarkerData.h
+++ b/Source/core/rendering/svg/SVGMarkerData.h
@@ -22,7 +22,7 @@
 
 #include "core/platform/FloatConversion.h"
 #include "core/platform/graphics/Path.h"
-#include <wtf/MathExtras.h>
+#include "wtf/MathExtras.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/SVGPathData.cpp b/Source/core/rendering/svg/SVGPathData.cpp
index b15fe3d..707f548 100644
--- a/Source/core/rendering/svg/SVGPathData.cpp
+++ b/Source/core/rendering/svg/SVGPathData.cpp
@@ -30,7 +30,7 @@
 #include "core/svg/SVGPolygonElement.h"
 #include "core/svg/SVGPolylineElement.h"
 #include "core/svg/SVGRectElement.h"
-#include <wtf/HashMap.h>
+#include "wtf/HashMap.h"
 
 namespace WebCore {
 
@@ -111,8 +111,7 @@
 
 static void updatePathFromRectElement(SVGElement* element, Path& path)
 {
-    ASSERT(element->hasTagName(SVGNames::rectTag));
-    SVGRectElement* rect = static_cast<SVGRectElement*>(element);
+    SVGRectElement* rect = toSVGRectElement(element);
 
     SVGLengthContext lengthContext(element);
     float width = rect->widthCurrentValue().value(lengthContext);
diff --git a/Source/core/rendering/svg/SVGRenderSupport.cpp b/Source/core/rendering/svg/SVGRenderSupport.cpp
index 7b0bf85..b87001c 100644
--- a/Source/core/rendering/svg/SVGRenderSupport.cpp
+++ b/Source/core/rendering/svg/SVGRenderSupport.cpp
@@ -38,7 +38,7 @@
 #include "core/rendering/svg/SVGResources.h"
 #include "core/rendering/svg/SVGResourcesCache.h"
 #include "core/svg/SVGStyledElement.h"
-#include <wtf/UnusedParam.h>
+#include "wtf/UnusedParam.h"
 
 namespace WebCore {
 
@@ -86,8 +86,8 @@
     transformState.applyTransform(object->localToParentTransform());
 
     RenderObject* parent = object->parent();
-    
-    // At the SVG/HTML boundary (aka RenderSVGRoot), we apply the localToBorderBoxTransform 
+
+    // At the SVG/HTML boundary (aka RenderSVGRoot), we apply the localToBorderBoxTransform
     // to map an element from SVG viewport coordinates to CSS box coordinates.
     // RenderSVGRoot's mapLocalToContainer method expects CSS box coordinates.
     if (parent->isSVGRoot())
@@ -103,7 +103,7 @@
 
     RenderObject* parent = object->parent();
 
-    // At the SVG/HTML boundary (aka RenderSVGRoot), we apply the localToBorderBoxTransform 
+    // At the SVG/HTML boundary (aka RenderSVGRoot), we apply the localToBorderBoxTransform
     // to map an element from SVG viewport coordinates to CSS box coordinates.
     // RenderSVGRoot's mapLocalToContainer method expects CSS box coordinates.
     if (parent->isSVGRoot()) {
diff --git a/Source/core/rendering/svg/SVGRenderTreeAsText.cpp b/Source/core/rendering/svg/SVGRenderTreeAsText.cpp
index fc5b9a6..f6b6dde 100644
--- a/Source/core/rendering/svg/SVGRenderTreeAsText.cpp
+++ b/Source/core/rendering/svg/SVGRenderTreeAsText.cpp
@@ -331,7 +331,7 @@
     SVGLengthContext lengthContext(svgElement);
 
     if (svgElement->hasTagName(SVGNames::rectTag)) {
-        SVGRectElement* element = static_cast<SVGRectElement*>(svgElement);
+        SVGRectElement* element = toSVGRectElement(svgElement);
         writeNameValuePair(ts, "x", element->xCurrentValue().value(lengthContext));
         writeNameValuePair(ts, "y", element->yCurrentValue().value(lengthContext));
         writeNameValuePair(ts, "width", element->widthCurrentValue().value(lengthContext));
@@ -379,7 +379,7 @@
         return;
 
     ts << " " << enclosingIntRect(FloatRect(text.location(), FloatSize(box->logicalWidth(), box->logicalHeight())));
-    
+
     // FIXME: Remove this hack, once the new text layout engine is completly landed. We want to preserve the old layout test results for now.
     ts << " contains 1 chunk(s)";
 
@@ -486,7 +486,7 @@
 
     Element* element = toElement(object.node());
     const AtomicString& id = element->getIdAttribute();
-    writeNameAndQuotedValue(ts, "id", id);    
+    writeNameAndQuotedValue(ts, "id", id);
 
     RenderSVGResourceContainer* resource = const_cast<RenderObject&>(object).toRenderSVGResourceContainer();
     ASSERT(resource);
diff --git a/Source/core/rendering/svg/SVGRenderingContext.h b/Source/core/rendering/svg/SVGRenderingContext.h
index 254aad8..2393106 100644
--- a/Source/core/rendering/svg/SVGRenderingContext.h
+++ b/Source/core/rendering/svg/SVGRenderingContext.h
@@ -35,7 +35,7 @@
 class FloatRect;
 class RenderSVGResourceFilter;
 
-// SVGRenderingContext 
+// SVGRenderingContext
 class SVGRenderingContext {
 public:
     enum NeedsGraphicsContextSave {
diff --git a/Source/core/rendering/svg/SVGResources.cpp b/Source/core/rendering/svg/SVGResources.cpp
index ce31a0b..c0d955b 100644
--- a/Source/core/rendering/svg/SVGResources.cpp
+++ b/Source/core/rendering/svg/SVGResources.cpp
@@ -384,7 +384,7 @@
         break;
     case ClipperResourceType:
         if (!m_clipperFilterMaskerData)
-            break; 
+            break;
         if (m_clipperFilterMaskerData->clipper == resource) {
             m_clipperFilterMaskerData->clipper->removeAllClientsFromCache();
             m_clipperFilterMaskerData->clipper = 0;
diff --git a/Source/core/rendering/svg/SVGResources.h b/Source/core/rendering/svg/SVGResources.h
index 06dd57f..b432208 100644
--- a/Source/core/rendering/svg/SVGResources.h
+++ b/Source/core/rendering/svg/SVGResources.h
@@ -20,10 +20,10 @@
 #ifndef SVGResources_h
 #define SVGResources_h
 
-#include <wtf/HashSet.h>
-#include <wtf/Noncopyable.h>
-#include <wtf/OwnPtr.h>
-#include <wtf/PassOwnPtr.h>
+#include "wtf/HashSet.h"
+#include "wtf/Noncopyable.h"
+#include "wtf/OwnPtr.h"
+#include "wtf/PassOwnPtr.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/SVGResourcesCycleSolver.cpp b/Source/core/rendering/svg/SVGResourcesCycleSolver.cpp
index 2d1fff3..aad9086 100644
--- a/Source/core/rendering/svg/SVGResourcesCycleSolver.cpp
+++ b/Source/core/rendering/svg/SVGResourcesCycleSolver.cpp
@@ -73,8 +73,8 @@
         SVGResources* childResources = SVGResourcesCache::cachedResourcesForRenderObject(child);
         if (!childResources)
             continue;
-        
-        // A child of the given 'resource' contains resources. 
+
+        // A child of the given 'resource' contains resources.
         HashSet<RenderSVGResourceContainer*> childSet;
         childResources->buildSetOfResources(childSet);
 
diff --git a/Source/core/rendering/svg/SVGResourcesCycleSolver.h b/Source/core/rendering/svg/SVGResourcesCycleSolver.h
index 07d50ae..cadaa5a 100644
--- a/Source/core/rendering/svg/SVGResourcesCycleSolver.h
+++ b/Source/core/rendering/svg/SVGResourcesCycleSolver.h
@@ -20,8 +20,8 @@
 #ifndef SVGResourcesCycleSolver_h
 #define SVGResourcesCycleSolver_h
 
-#include <wtf/HashSet.h>
-#include <wtf/Noncopyable.h>
+#include "wtf/HashSet.h"
+#include "wtf/Noncopyable.h"
 
 namespace WebCore {
 
@@ -43,7 +43,7 @@
 
     RenderObject* m_renderer;
     SVGResources* m_resources;
-    HashSet<RenderSVGResourceContainer*> m_allResources; 
+    HashSet<RenderSVGResourceContainer*> m_allResources;
 };
 
 }
diff --git a/Source/core/rendering/svg/SVGSubpathData.h b/Source/core/rendering/svg/SVGSubpathData.h
index 026e1ad..1ab5294 100644
--- a/Source/core/rendering/svg/SVGSubpathData.h
+++ b/Source/core/rendering/svg/SVGSubpathData.h
@@ -21,7 +21,7 @@
 #define SVGSubpathData_h
 
 #include "core/platform/graphics/Path.h"
-#include <wtf/Vector.h>
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/SVGTextChunkBuilder.h b/Source/core/rendering/svg/SVGTextChunkBuilder.h
index c7ac484..1830b2a 100644
--- a/Source/core/rendering/svg/SVGTextChunkBuilder.h
+++ b/Source/core/rendering/svg/SVGTextChunkBuilder.h
@@ -21,7 +21,7 @@
 #define SVGTextChunkBuilder_h
 
 #include "core/rendering/svg/SVGTextChunk.h"
-#include <wtf/Vector.h>
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/SVGTextLayoutAttributes.cpp b/Source/core/rendering/svg/SVGTextLayoutAttributes.cpp
index 06e1857..ddf5ba9 100644
--- a/Source/core/rendering/svg/SVGTextLayoutAttributes.cpp
+++ b/Source/core/rendering/svg/SVGTextLayoutAttributes.cpp
@@ -18,11 +18,11 @@
  */
 
 #include "config.h"
-
 #include "core/rendering/svg/SVGTextLayoutAttributes.h"
 
 #include <stdio.h>
-#include <wtf/text/CString.h>
+
+#include "wtf/text/CString.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/SVGTextLayoutAttributes.h b/Source/core/rendering/svg/SVGTextLayoutAttributes.h
index 0e2f530..924a98e 100644
--- a/Source/core/rendering/svg/SVGTextLayoutAttributes.h
+++ b/Source/core/rendering/svg/SVGTextLayoutAttributes.h
@@ -21,10 +21,10 @@
 #define SVGTextLayoutAttributes_h
 
 #include "core/rendering/svg/SVGTextMetrics.h"
-#include <wtf/HashMap.h>
-#include <wtf/Noncopyable.h>
-#include <wtf/text/WTFString.h>
-#include <wtf/Vector.h>
+#include "wtf/HashMap.h"
+#include "wtf/Noncopyable.h"
+#include "wtf/Vector.h"
+#include "wtf/text/WTFString.h"
 
 namespace WebCore {
 
@@ -52,7 +52,7 @@
     static float emptyValue();
 
     RenderSVGInlineText* context() const { return m_context; }
-    
+
     SVGCharacterDataMap& characterDataMap() { return m_characterDataMap; }
     const SVGCharacterDataMap& characterDataMap() const { return m_characterDataMap; }
 
diff --git a/Source/core/rendering/svg/SVGTextLayoutAttributesBuilder.cpp b/Source/core/rendering/svg/SVGTextLayoutAttributesBuilder.cpp
index e7bb42b..7c65a7e 100644
--- a/Source/core/rendering/svg/SVGTextLayoutAttributesBuilder.cpp
+++ b/Source/core/rendering/svg/SVGTextLayoutAttributesBuilder.cpp
@@ -89,7 +89,7 @@
         return;
     }
 
-    unsigned textLength = text->textLength();    
+    unsigned textLength = text->textLength();
     for (unsigned textPosition = 0; textPosition < textLength; ++textPosition) {
         UChar currentCharacter = text->characterAt(textPosition);
         if (currentCharacter == ' ' && lastCharacter == ' ')
@@ -104,7 +104,7 @@
 {
     ASSERT(!start->isSVGText() || m_textPositions.isEmpty());
 
-    for (RenderObject* child = start->firstChild(); child; child = child->nextSibling()) { 
+    for (RenderObject* child = start->firstChild(); child; child = child->nextSibling()) {
         if (child->isSVGInlineText()) {
             processRenderSVGInlineText(toRenderSVGInlineText(child), m_textLength, lastCharacter);
             continue;
@@ -154,7 +154,7 @@
             data.y = 0;
     }
 
-    // Fill character data map using child text positioning elements in top-down order. 
+    // Fill character data map using child text positioning elements in top-down order.
     unsigned size = m_textPositions.size();
     for (unsigned i = 0; i < size; ++i)
         fillCharacterDataMap(m_textPositions[i]);
diff --git a/Source/core/rendering/svg/SVGTextLayoutAttributesBuilder.h b/Source/core/rendering/svg/SVGTextLayoutAttributesBuilder.h
index f0e6fb0..d92c125 100644
--- a/Source/core/rendering/svg/SVGTextLayoutAttributesBuilder.h
+++ b/Source/core/rendering/svg/SVGTextLayoutAttributesBuilder.h
@@ -21,7 +21,7 @@
 #define SVGTextLayoutAttributesBuilder_h
 
 #include "core/rendering/svg/SVGTextMetricsBuilder.h"
-#include <wtf/Vector.h>
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/SVGTextLayoutEngine.cpp b/Source/core/rendering/svg/SVGTextLayoutEngine.cpp
index 793d14b..2fca5c2 100644
--- a/Source/core/rendering/svg/SVGTextLayoutEngine.cpp
+++ b/Source/core/rendering/svg/SVGTextLayoutEngine.cpp
@@ -62,7 +62,7 @@
 
     // Replace characters x/y position, with the current text position plus any
     // relative adjustments, if it doesn't specify an absolute position itself.
-    if (x == SVGTextLayoutAttributes::emptyValue()) 
+    if (x == SVGTextLayoutAttributes::emptyValue())
         x = m_x + m_dx;
 
     if (y == SVGTextLayoutAttributes::emptyValue())
@@ -428,7 +428,7 @@
         return;
 
     SVGElement* lengthContext = toSVGElement(text->parent()->node());
-    
+
     RenderObject* textParent = text->parent();
     bool definesTextLength = textParent ? parentDefinesTextLength(textParent) : false;
 
diff --git a/Source/core/rendering/svg/SVGTextLayoutEngine.h b/Source/core/rendering/svg/SVGTextLayoutEngine.h
index a68813d..3c6feca 100644
--- a/Source/core/rendering/svg/SVGTextLayoutEngine.h
+++ b/Source/core/rendering/svg/SVGTextLayoutEngine.h
@@ -25,7 +25,7 @@
 #include "core/rendering/svg/SVGTextFragment.h"
 #include "core/rendering/svg/SVGTextLayoutAttributes.h"
 #include "core/rendering/svg/SVGTextMetrics.h"
-#include <wtf/Vector.h>
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/SVGTextLayoutEngineBaseline.h b/Source/core/rendering/svg/SVGTextLayoutEngineBaseline.h
index db23b7c..f483464 100644
--- a/Source/core/rendering/svg/SVGTextLayoutEngineBaseline.h
+++ b/Source/core/rendering/svg/SVGTextLayoutEngineBaseline.h
@@ -21,7 +21,7 @@
 #define SVGTextLayoutEngineBaseline_h
 
 #include "core/rendering/style/SVGRenderStyleDefs.h"
-#include <wtf/Noncopyable.h>
+#include "wtf/Noncopyable.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/SVGTextLayoutEngineSpacing.cpp b/Source/core/rendering/svg/SVGTextLayoutEngineSpacing.cpp
index b2360f0..5eb5530 100644
--- a/Source/core/rendering/svg/SVGTextLayoutEngineSpacing.cpp
+++ b/Source/core/rendering/svg/SVGTextLayoutEngineSpacing.cpp
@@ -30,7 +30,7 @@
 #include "core/svg/SVGFontElement.h"
 #include "core/svg/SVGFontFaceElement.h"
 #else
-#include <wtf/UnusedParam.h>
+#include "wtf/UnusedParam.h"
 #endif
 
 namespace WebCore {
diff --git a/Source/core/rendering/svg/SVGTextMetrics.h b/Source/core/rendering/svg/SVGTextMetrics.h
index 227bb1b..3f1ddea 100644
--- a/Source/core/rendering/svg/SVGTextMetrics.h
+++ b/Source/core/rendering/svg/SVGTextMetrics.h
@@ -20,7 +20,7 @@
 #ifndef SVGTextMetrics_h
 #define SVGTextMetrics_h
 
-#include <wtf/text/WTFString.h>
+#include "wtf/text/WTFString.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/SVGTextMetricsBuilder.h b/Source/core/rendering/svg/SVGTextMetricsBuilder.h
index cf0b070..6c3148a 100644
--- a/Source/core/rendering/svg/SVGTextMetricsBuilder.h
+++ b/Source/core/rendering/svg/SVGTextMetricsBuilder.h
@@ -24,7 +24,7 @@
 #include "core/platform/graphics/WidthIterator.h"
 #include "core/rendering/svg/SVGTextLayoutAttributes.h"
 #include "core/rendering/svg/SVGTextMetrics.h"
-#include <wtf/Vector.h>
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/SVGTextQuery.cpp b/Source/core/rendering/svg/SVGTextQuery.cpp
index 27c7170..c04fcf5 100644
--- a/Source/core/rendering/svg/SVGTextQuery.cpp
+++ b/Source/core/rendering/svg/SVGTextQuery.cpp
@@ -28,7 +28,7 @@
 #include "core/rendering/svg/SVGInlineTextBox.h"
 #include "core/rendering/svg/SVGTextMetrics.h"
 
-#include <wtf/MathExtras.h>
+#include "wtf/MathExtras.h"
 
 namespace WebCore {
 
@@ -120,7 +120,7 @@
 
         queryData->isVerticalText = queryData->textRenderer->style()->svgStyle()->isVerticalWritingMode();
         const Vector<SVGTextFragment>& fragments = queryData->textBox->textFragments();
-    
+
         // Loop over all text fragments in this text box, firing a callback for each.
         unsigned fragmentCount = fragments.size();
         for (unsigned i = 0; i < fragmentCount; ++i) {
diff --git a/Source/core/rendering/svg/SVGTextQuery.h b/Source/core/rendering/svg/SVGTextQuery.h
index 1a99cd3..652d751 100644
--- a/Source/core/rendering/svg/SVGTextQuery.h
+++ b/Source/core/rendering/svg/SVGTextQuery.h
@@ -23,7 +23,7 @@
 #include "core/rendering/svg/SVGTextFragment.h"
 #include "core/svg/SVGPoint.h"
 #include "core/svg/SVGRect.h"
-#include <wtf/Vector.h>
+#include "wtf/Vector.h"
 
 namespace WebCore {
 
diff --git a/Source/core/rendering/svg/SVGTextRunRenderingContext.cpp b/Source/core/rendering/svg/SVGTextRunRenderingContext.cpp
index 9c962a5..eaf0196 100644
--- a/Source/core/rendering/svg/SVGTextRunRenderingContext.cpp
+++ b/Source/core/rendering/svg/SVGTextRunRenderingContext.cpp
@@ -81,7 +81,7 @@
     glyphName = it.lastGlyphName();
     return it.runWidthSoFar();
 }
- 
+
 void SVGTextRunRenderingContext::drawSVGGlyphs(GraphicsContext* context, const TextRun& run, const SimpleFontData* fontData, const GlyphBuffer& glyphBuffer, int from, int numGlyphs, const FloatPoint& point) const
 {
     SVGFontElement* fontElement = 0;
@@ -104,7 +104,7 @@
         solidPaintingResource->setColor(context->fillColor());
         activePaintingResource = solidPaintingResource;
     }
- 
+
     bool isVerticalText = false;
     if (parentRenderObject) {
         parentRenderObjectStyle = parentRenderObject->style();
diff --git a/Source/core/scripts/make_names.pl b/Source/core/scripts/make_names.pl
index 1682a33..7d24b4f 100755
--- a/Source/core/scripts/make_names.pl
+++ b/Source/core/scripts/make_names.pl
@@ -860,7 +860,7 @@
     if (!document)
         return 0;
 
-    if (CustomElementRegistrationContext::isCustomTagName(qName.localName())) {
+    if (CustomElementRegistrationContext::isCustomTagName(qName.localName()) && document->registrationContext()) {
         RefPtr<Element> element = document->registrationContext()->createCustomTagElement(document, qName);
         ASSERT_WITH_SECURITY_IMPLICATION(element->is$parameters{namespace}Element());
         return static_pointer_cast<$parameters{namespace}Element>(element.release());
diff --git a/Source/core/scripts/templates/StyleBuilderFunctions.cpp.tmpl b/Source/core/scripts/templates/StyleBuilderFunctions.cpp.tmpl
index 103f436..b57437e 100644
--- a/Source/core/scripts/templates/StyleBuilderFunctions.cpp.tmpl
+++ b/Source/core/scripts/templates/StyleBuilderFunctions.cpp.tmpl
@@ -153,7 +153,7 @@
     {%- if property_id == "CSSPropertyWebkitMaskBoxImage" %}
     image.setMaskDefaults();
     {%- endif %}
-    state.styleMap().mapNinePieceImage({{property_id}}, value, image);
+    state.styleMap().mapNinePieceImage(state.style(), {{property_id}}, value, image);
     {{ set_value(property) }}(image);
 }
 {%- endmacro %}
diff --git a/Source/core/storage/Storage.idl b/Source/core/storage/Storage.idl
index 89cd95a..e3b5c70 100644
--- a/Source/core/storage/Storage.idl
+++ b/Source/core/storage/Storage.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface Storage {
diff --git a/Source/core/storage/StorageEvent.idl b/Source/core/storage/StorageEvent.idl
index 8624b06..f7b4e8b 100644
--- a/Source/core/storage/StorageEvent.idl
+++ b/Source/core/storage/StorageEvent.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
@@ -32,13 +32,13 @@
     [InitializedByEventConstructor] readonly attribute DOMString url;
     [InitializedByEventConstructor] readonly attribute Storage storageArea;
 
-    void initStorageEvent([Default=Undefined] optional DOMString typeArg, 
-                          [Default=Undefined] optional boolean canBubbleArg, 
-                          [Default=Undefined] optional boolean cancelableArg, 
-                          [Default=Undefined] optional DOMString keyArg, 
-                          [Default=Undefined, TreatNullAs=NullString] optional DOMString oldValueArg, 
-                          [Default=Undefined, TreatNullAs=NullString] optional DOMString newValueArg, 
-                          [Default=Undefined] optional DOMString urlArg, 
+    void initStorageEvent([Default=Undefined] optional DOMString typeArg,
+                          [Default=Undefined] optional boolean canBubbleArg,
+                          [Default=Undefined] optional boolean cancelableArg,
+                          [Default=Undefined] optional DOMString keyArg,
+                          [Default=Undefined, TreatNullAs=NullString] optional DOMString oldValueArg,
+                          [Default=Undefined, TreatNullAs=NullString] optional DOMString newValueArg,
+                          [Default=Undefined] optional DOMString urlArg,
                           [Default=Undefined] optional Storage storageAreaArg);
 
     // Needed once we support init<blank>EventNS
diff --git a/Source/core/svg/ColorDistance.h b/Source/core/svg/ColorDistance.h
index 57dd2ad..4f8b3fd 100644
--- a/Source/core/svg/ColorDistance.h
+++ b/Source/core/svg/ColorDistance.h
@@ -21,9 +21,9 @@
 #define ColorDistance_h
 
 namespace WebCore {
-    
+
 class Color;
-    
+
 class ColorDistance {
 public:
     ColorDistance();
@@ -32,14 +32,14 @@
 
     ColorDistance scaledDistance(float scaleFactor) const;
     Color addToColor(const Color&) const;
-        
+
     static Color addColors(const Color&, const Color&);
     static Color clampColor(int red, int green, int blue, int alpha);
 
     bool isZero() const;
 
     float distance() const;
-        
+
 private:
     int m_redDiff;
     int m_greenDiff;
diff --git a/Source/core/svg/GradientAttributes.h b/Source/core/svg/GradientAttributes.h
index da09cb6..f592869 100644
--- a/Source/core/svg/GradientAttributes.h
+++ b/Source/core/svg/GradientAttributes.h
@@ -62,7 +62,7 @@
     {
         m_stops = value;
         m_stopsSet = true;
-    } 
+    }
 
     bool hasSpreadMethod() const { return m_spreadMethodSet; }
     bool hasGradientUnits() const { return m_gradientUnitsSet; }
diff --git a/Source/core/svg/PatternAttributes.h b/Source/core/svg/PatternAttributes.h
index 72716ff..1400e82 100644
--- a/Source/core/svg/PatternAttributes.h
+++ b/Source/core/svg/PatternAttributes.h
@@ -86,7 +86,7 @@
         m_height = value;
         m_heightSet = true;
     }
-    
+
     void setViewBox(const FloatRect& value)
     {
         m_viewBox = value;
diff --git a/Source/core/svg/RadialGradientAttributes.h b/Source/core/svg/RadialGradientAttributes.h
index 4e589c7..f52dd32 100644
--- a/Source/core/svg/RadialGradientAttributes.h
+++ b/Source/core/svg/RadialGradientAttributes.h
@@ -32,7 +32,7 @@
         , m_cySet(false)
         , m_rSet(false)
         , m_fxSet(false)
-        , m_fySet(false) 
+        , m_fySet(false)
         , m_frSet(false)
     {
     }
diff --git a/Source/core/svg/SVGAElement.cpp b/Source/core/svg/SVGAElement.cpp
index 0e89ba0..99e8616 100644
--- a/Source/core/svg/SVGAElement.cpp
+++ b/Source/core/svg/SVGAElement.cpp
@@ -221,11 +221,11 @@
 {
     if (!isFocusable())
         return false;
-    
+
     Page* page = document()->page();
     if (!page)
         return false;
-    
+
     return page->chrome().client()->tabsToLinks();
 }
 
diff --git a/Source/core/svg/SVGAElement.h b/Source/core/svg/SVGAElement.h
index 63d76f0..bd8b805 100644
--- a/Source/core/svg/SVGAElement.h
+++ b/Source/core/svg/SVGAElement.h
@@ -39,7 +39,7 @@
     SVGAElement(const QualifiedName&, Document*);
 
     virtual bool isValid() const { return SVGTests::isValid(); }
-    
+
     virtual String title() const;
     virtual String target() const { return svgTargetCurrentValue(); }
 
@@ -50,7 +50,7 @@
     virtual RenderObject* createRenderer(RenderStyle*);
 
     virtual void defaultEventHandler(Event*);
-    
+
     virtual bool supportsFocus() const OVERRIDE;
     virtual bool isMouseFocusable() const;
     virtual bool isKeyboardFocusable(KeyboardEvent*) const;
diff --git a/Source/core/svg/SVGAElement.idl b/Source/core/svg/SVGAElement.idl
index 7180fc0..bcbb517 100644
--- a/Source/core/svg/SVGAElement.idl
+++ b/Source/core/svg/SVGAElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGAltGlyphElement.idl b/Source/core/svg/SVGAltGlyphElement.idl
index b3fe315..999598e 100644
--- a/Source/core/svg/SVGAltGlyphElement.idl
+++ b/Source/core/svg/SVGAltGlyphElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGAngle.cpp b/Source/core/svg/SVGAngle.cpp
index c703678..6bd37ea 100644
--- a/Source/core/svg/SVGAngle.cpp
+++ b/Source/core/svg/SVGAngle.cpp
@@ -78,14 +78,14 @@
         return SVGAngle::SVG_ANGLETYPE_UNSPECIFIED;
 
     const CharType firstChar = *ptr;
-    
+
     // If the unit contains only one character, the angle type is unknown.
     ++ptr;
     if (ptr == end)
         return SVGAngle::SVG_ANGLETYPE_UNKNOWN;
 
     const CharType secondChar = *ptr;
- 
+
     // If the unit contains only two characters, the angle type is unknown.
     ++ptr;
     if (ptr == end)
diff --git a/Source/core/svg/SVGAnimateColorElement.cpp b/Source/core/svg/SVGAnimateColorElement.cpp
index 546f7ea..0b97115 100644
--- a/Source/core/svg/SVGAnimateColorElement.cpp
+++ b/Source/core/svg/SVGAnimateColorElement.cpp
@@ -25,7 +25,7 @@
 #include "core/svg/SVGAnimateColorElement.h"
 
 namespace WebCore {
-    
+
 inline SVGAnimateColorElement::SVGAnimateColorElement(const QualifiedName& tagName, Document* document)
     : SVGAnimateElement(tagName, document)
 {
diff --git a/Source/core/svg/SVGAnimateColorElement.idl b/Source/core/svg/SVGAnimateColorElement.idl
index 48fb42c..69a58eb 100644
--- a/Source/core/svg/SVGAnimateColorElement.idl
+++ b/Source/core/svg/SVGAnimateColorElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimateColorElement : SVGAnimationElement {
diff --git a/Source/core/svg/SVGAnimateElement.h b/Source/core/svg/SVGAnimateElement.h
index 1e39832..cd79857 100644
--- a/Source/core/svg/SVGAnimateElement.h
+++ b/Source/core/svg/SVGAnimateElement.h
@@ -27,7 +27,7 @@
 #include <wtf/OwnPtr.h>
 
 namespace WebCore {
-    
+
 class SVGAnimatedProperty;
 class SVGAnimatedType;
 class SVGAnimatedTypeAnimator;
@@ -38,7 +38,7 @@
     virtual ~SVGAnimateElement();
 
     AnimatedPropertyType determineAnimatedPropertyType(SVGElement*) const;
-    
+
 protected:
     SVGAnimateElement(const QualifiedName&, Document*);
 
diff --git a/Source/core/svg/SVGAnimateElement.idl b/Source/core/svg/SVGAnimateElement.idl
index eb848c4..9ee19c8d 100644
--- a/Source/core/svg/SVGAnimateElement.idl
+++ b/Source/core/svg/SVGAnimateElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimateElement : SVGAnimationElement {
diff --git a/Source/core/svg/SVGAnimateMotionElement.cpp b/Source/core/svg/SVGAnimateMotionElement.cpp
index 15ab56c..57f289a 100644
--- a/Source/core/svg/SVGAnimateMotionElement.cpp
+++ b/Source/core/svg/SVGAnimateMotionElement.cpp
@@ -37,7 +37,7 @@
 #include <wtf/StdLibExtras.h>
 
 namespace WebCore {
-    
+
 using namespace SVGNames;
 
 inline SVGAnimateMotionElement::SVGAnimateMotionElement(const QualifiedName& tagName, Document* document)
@@ -117,7 +117,7 @@
 
     ASSERT_NOT_REACHED();
 }
-    
+
 SVGAnimateMotionElement::RotateMode SVGAnimateMotionElement::rotateMode() const
 {
     DEFINE_STATIC_LOCAL(const AtomicString, autoVal, ("auto", AtomicString::ConstructFromLiteral));
@@ -158,20 +158,20 @@
 {
     const CharType* ptr = string.getCharacters<CharType>();
     const CharType* end = ptr + string.length();
-    
+
     if (!skipOptionalSVGSpaces(ptr, end))
         return false;
-    
+
     float x = 0;
     if (!parseNumber(ptr, end, x))
         return false;
-    
+
     float y = 0;
     if (!parseNumber(ptr, end, y))
         return false;
-    
+
     point = FloatPoint(x, y);
-    
+
     // disallow anything except spaces at the end
     return !skipOptionalSVGSpaces(ptr, end);
 }
@@ -218,7 +218,7 @@
     parsePoint(toString, m_toPoint);
     return true;
 }
-    
+
 bool SVGAnimateMotionElement::calculateFromAndByValues(const String& fromString, const String& byString)
 {
     m_hasToPointAtEndOfDuration = false;
diff --git a/Source/core/svg/SVGAnimateMotionElement.h b/Source/core/svg/SVGAnimateMotionElement.h
index 252e663..3f7a579 100644
--- a/Source/core/svg/SVGAnimateMotionElement.h
+++ b/Source/core/svg/SVGAnimateMotionElement.h
@@ -27,7 +27,7 @@
 namespace WebCore {
 
 class AffineTransform;
-            
+
 class SVGAnimateMotionElement FINAL : public SVGAnimationElement {
 public:
     static PassRefPtr<SVGAnimateMotionElement> create(const QualifiedName&, Document*);
@@ -70,7 +70,7 @@
     Path m_path;
     Path m_animationPath;
 };
-    
+
 } // namespace WebCore
 
 #endif // SVGAnimateMotionElement_h
diff --git a/Source/core/svg/SVGAnimateMotionElement.idl b/Source/core/svg/SVGAnimateMotionElement.idl
index 51003c6..f153f19 100644
--- a/Source/core/svg/SVGAnimateMotionElement.idl
+++ b/Source/core/svg/SVGAnimateMotionElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimateMotionElement : SVGAnimationElement {
diff --git a/Source/core/svg/SVGAnimateTransformElement.h b/Source/core/svg/SVGAnimateTransformElement.h
index 88c4b9a..cb19200 100644
--- a/Source/core/svg/SVGAnimateTransformElement.h
+++ b/Source/core/svg/SVGAnimateTransformElement.h
@@ -38,7 +38,7 @@
 
 private:
     SVGAnimateTransformElement(const QualifiedName&, Document*);
-    
+
     virtual bool hasValidAttributeType();
 
     bool isSupportedAttribute(const QualifiedName&);
diff --git a/Source/core/svg/SVGAnimateTransformElement.idl b/Source/core/svg/SVGAnimateTransformElement.idl
index eddecc3..a7364e9 100644
--- a/Source/core/svg/SVGAnimateTransformElement.idl
+++ b/Source/core/svg/SVGAnimateTransformElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimateTransformElement : SVGAnimationElement {
diff --git a/Source/core/svg/SVGAnimatedAngle.idl b/Source/core/svg/SVGAnimatedAngle.idl
index b6ede9f..9a51845 100644
--- a/Source/core/svg/SVGAnimatedAngle.idl
+++ b/Source/core/svg/SVGAnimatedAngle.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimatedAngle {
diff --git a/Source/core/svg/SVGAnimatedBoolean.h b/Source/core/svg/SVGAnimatedBoolean.h
index 917aa4b..442df07 100644
--- a/Source/core/svg/SVGAnimatedBoolean.h
+++ b/Source/core/svg/SVGAnimatedBoolean.h
@@ -40,7 +40,7 @@
 public:
     SVGAnimatedBooleanAnimator(SVGAnimationElement*, SVGElement*);
     virtual ~SVGAnimatedBooleanAnimator() { }
-    
+
     virtual PassOwnPtr<SVGAnimatedType> constructFromString(const String&);
     virtual PassOwnPtr<SVGAnimatedType> startAnimValAnimation(const SVGElementAnimatedPropertyList&);
     virtual void stopAnimValAnimation(const SVGElementAnimatedPropertyList&);
diff --git a/Source/core/svg/SVGAnimatedBoolean.idl b/Source/core/svg/SVGAnimatedBoolean.idl
index 0c5e90f..fa2ca08 100644
--- a/Source/core/svg/SVGAnimatedBoolean.idl
+++ b/Source/core/svg/SVGAnimatedBoolean.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimatedBoolean {
diff --git a/Source/core/svg/SVGAnimatedColor.h b/Source/core/svg/SVGAnimatedColor.h
index 4081d9d..aa29efc 100644
--- a/Source/core/svg/SVGAnimatedColor.h
+++ b/Source/core/svg/SVGAnimatedColor.h
@@ -23,14 +23,14 @@
 #include "core/svg/SVGAnimatedTypeAnimator.h"
 
 namespace WebCore {
-    
+
 class SVGAnimationElement;
 
 class SVGAnimatedColorAnimator : public SVGAnimatedTypeAnimator {
 public:
     SVGAnimatedColorAnimator(SVGAnimationElement*, SVGElement*);
     virtual ~SVGAnimatedColorAnimator() { }
-    
+
     virtual PassOwnPtr<SVGAnimatedType> constructFromString(const String&);
     virtual PassOwnPtr<SVGAnimatedType> startAnimValAnimation(const SVGElementAnimatedPropertyList&) { return PassOwnPtr<SVGAnimatedType>(); }
     virtual void stopAnimValAnimation(const SVGElementAnimatedPropertyList&) { }
diff --git a/Source/core/svg/SVGAnimatedEnumeration.idl b/Source/core/svg/SVGAnimatedEnumeration.idl
index e4136f8..cb04e75 100644
--- a/Source/core/svg/SVGAnimatedEnumeration.idl
+++ b/Source/core/svg/SVGAnimatedEnumeration.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimatedEnumeration {
diff --git a/Source/core/svg/SVGAnimatedInteger.cpp b/Source/core/svg/SVGAnimatedInteger.cpp
index 4df71b9..0f3356a 100644
--- a/Source/core/svg/SVGAnimatedInteger.cpp
+++ b/Source/core/svg/SVGAnimatedInteger.cpp
@@ -99,5 +99,5 @@
     int to = toString.toIntStrict();
     return abs(to - from);
 }
-    
+
 }
diff --git a/Source/core/svg/SVGAnimatedInteger.idl b/Source/core/svg/SVGAnimatedInteger.idl
index 306846e..ae72080 100644
--- a/Source/core/svg/SVGAnimatedInteger.idl
+++ b/Source/core/svg/SVGAnimatedInteger.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimatedInteger {
diff --git a/Source/core/svg/SVGAnimatedIntegerOptionalInteger.h b/Source/core/svg/SVGAnimatedIntegerOptionalInteger.h
index 6a0a604..05776be 100644
--- a/Source/core/svg/SVGAnimatedIntegerOptionalInteger.h
+++ b/Source/core/svg/SVGAnimatedIntegerOptionalInteger.h
@@ -30,7 +30,7 @@
 public:
     SVGAnimatedIntegerOptionalIntegerAnimator(SVGAnimationElement*, SVGElement*);
     virtual ~SVGAnimatedIntegerOptionalIntegerAnimator() { }
-    
+
     virtual PassOwnPtr<SVGAnimatedType> constructFromString(const String&);
     virtual PassOwnPtr<SVGAnimatedType> startAnimValAnimation(const SVGElementAnimatedPropertyList&);
     virtual void stopAnimValAnimation(const SVGElementAnimatedPropertyList&);
diff --git a/Source/core/svg/SVGAnimatedLength.idl b/Source/core/svg/SVGAnimatedLength.idl
index 999d1c7..d300347 100644
--- a/Source/core/svg/SVGAnimatedLength.idl
+++ b/Source/core/svg/SVGAnimatedLength.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimatedLength {
diff --git a/Source/core/svg/SVGAnimatedLengthList.h b/Source/core/svg/SVGAnimatedLengthList.h
index 7bc8769..805b7b1 100644
--- a/Source/core/svg/SVGAnimatedLengthList.h
+++ b/Source/core/svg/SVGAnimatedLengthList.h
@@ -41,7 +41,7 @@
 public:
     SVGAnimatedLengthListAnimator(SVGAnimationElement*, SVGElement*);
     virtual ~SVGAnimatedLengthListAnimator() { }
-    
+
     virtual PassOwnPtr<SVGAnimatedType> constructFromString(const String&);
     virtual PassOwnPtr<SVGAnimatedType> startAnimValAnimation(const SVGElementAnimatedPropertyList&);
     virtual void stopAnimValAnimation(const SVGElementAnimatedPropertyList&);
@@ -52,7 +52,7 @@
     virtual void addAnimatedTypes(SVGAnimatedType*, SVGAnimatedType*);
     virtual void calculateAnimatedValue(float percentage, unsigned repeatCount, SVGAnimatedType*, SVGAnimatedType*, SVGAnimatedType*, SVGAnimatedType*);
     virtual float calculateDistance(const String& fromString, const String& toString);
-    
+
 private:
     SVGLengthMode m_lengthMode;
 };
diff --git a/Source/core/svg/SVGAnimatedLengthList.idl b/Source/core/svg/SVGAnimatedLengthList.idl
index 0e687a5..f193b7c 100644
--- a/Source/core/svg/SVGAnimatedLengthList.idl
+++ b/Source/core/svg/SVGAnimatedLengthList.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimatedLengthList {
diff --git a/Source/core/svg/SVGAnimatedNumber.idl b/Source/core/svg/SVGAnimatedNumber.idl
index 73574d1..6e3485c 100644
--- a/Source/core/svg/SVGAnimatedNumber.idl
+++ b/Source/core/svg/SVGAnimatedNumber.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimatedNumber {
diff --git a/Source/core/svg/SVGAnimatedNumberList.h b/Source/core/svg/SVGAnimatedNumberList.h
index 22c597e..a144c3f 100644
--- a/Source/core/svg/SVGAnimatedNumberList.h
+++ b/Source/core/svg/SVGAnimatedNumberList.h
@@ -41,7 +41,7 @@
 public:
     SVGAnimatedNumberListAnimator(SVGAnimationElement*, SVGElement*);
     virtual ~SVGAnimatedNumberListAnimator() { }
-    
+
     virtual PassOwnPtr<SVGAnimatedType> constructFromString(const String&);
     virtual PassOwnPtr<SVGAnimatedType> startAnimValAnimation(const SVGElementAnimatedPropertyList&);
     virtual void stopAnimValAnimation(const SVGElementAnimatedPropertyList&);
diff --git a/Source/core/svg/SVGAnimatedNumberList.idl b/Source/core/svg/SVGAnimatedNumberList.idl
index 2f41c18..43845d3 100644
--- a/Source/core/svg/SVGAnimatedNumberList.idl
+++ b/Source/core/svg/SVGAnimatedNumberList.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimatedNumberList {
diff --git a/Source/core/svg/SVGAnimatedNumberOptionalNumber.h b/Source/core/svg/SVGAnimatedNumberOptionalNumber.h
index 74fc0a1..3e43d9a 100644
--- a/Source/core/svg/SVGAnimatedNumberOptionalNumber.h
+++ b/Source/core/svg/SVGAnimatedNumberOptionalNumber.h
@@ -30,7 +30,7 @@
 public:
     SVGAnimatedNumberOptionalNumberAnimator(SVGAnimationElement*, SVGElement*);
     virtual ~SVGAnimatedNumberOptionalNumberAnimator() { }
-    
+
     virtual PassOwnPtr<SVGAnimatedType> constructFromString(const String&);
     virtual PassOwnPtr<SVGAnimatedType> startAnimValAnimation(const SVGElementAnimatedPropertyList&);
     virtual void stopAnimValAnimation(const SVGElementAnimatedPropertyList&);
diff --git a/Source/core/svg/SVGAnimatedPath.cpp b/Source/core/svg/SVGAnimatedPath.cpp
index 689c17b..57e33dc 100644
--- a/Source/core/svg/SVGAnimatedPath.cpp
+++ b/Source/core/svg/SVGAnimatedPath.cpp
@@ -137,7 +137,7 @@
     if (m_animationElement->isAccumulated() && repeatCount)
         addToSVGPathByteStream(animatedPath, toAtEndOfDurationPath, repeatCount);
 }
-   
+
 float SVGAnimatedPathAnimator::calculateDistance(const String&, const String&)
 {
     // FIXME: Support paced animations.
diff --git a/Source/core/svg/SVGAnimatedPointList.h b/Source/core/svg/SVGAnimatedPointList.h
index ac9b3ae..8a83524 100644
--- a/Source/core/svg/SVGAnimatedPointList.h
+++ b/Source/core/svg/SVGAnimatedPointList.h
@@ -34,7 +34,7 @@
 public:
     SVGAnimatedPointListAnimator(SVGAnimationElement*, SVGElement*);
     virtual ~SVGAnimatedPointListAnimator() { }
-    
+
     virtual PassOwnPtr<SVGAnimatedType> constructFromString(const String&);
     virtual PassOwnPtr<SVGAnimatedType> startAnimValAnimation(const SVGElementAnimatedPropertyList&);
     virtual void stopAnimValAnimation(const SVGElementAnimatedPropertyList&);
diff --git a/Source/core/svg/SVGAnimatedPreserveAspectRatio.cpp b/Source/core/svg/SVGAnimatedPreserveAspectRatio.cpp
index af23147..79f0178 100644
--- a/Source/core/svg/SVGAnimatedPreserveAspectRatio.cpp
+++ b/Source/core/svg/SVGAnimatedPreserveAspectRatio.cpp
@@ -24,7 +24,7 @@
 #include "core/svg/SVGAnimateElement.h"
 
 namespace WebCore {
-    
+
 SVGAnimatedPreserveAspectRatioAnimator::SVGAnimatedPreserveAspectRatioAnimator(SVGAnimationElement* animationElement, SVGElement* contextElement)
     : SVGAnimatedTypeAnimator(AnimatedPreserveAspectRatio, animationElement, contextElement)
 {
diff --git a/Source/core/svg/SVGAnimatedPreserveAspectRatio.h b/Source/core/svg/SVGAnimatedPreserveAspectRatio.h
index 1d76b83..d08e698 100644
--- a/Source/core/svg/SVGAnimatedPreserveAspectRatio.h
+++ b/Source/core/svg/SVGAnimatedPreserveAspectRatio.h
@@ -41,7 +41,7 @@
 public:
     SVGAnimatedPreserveAspectRatioAnimator(SVGAnimationElement*, SVGElement*);
     virtual ~SVGAnimatedPreserveAspectRatioAnimator() { }
-    
+
     virtual PassOwnPtr<SVGAnimatedType> constructFromString(const String&);
     virtual PassOwnPtr<SVGAnimatedType> startAnimValAnimation(const SVGElementAnimatedPropertyList&);
     virtual void stopAnimValAnimation(const SVGElementAnimatedPropertyList&);
diff --git a/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl b/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl
index 4263cf5..b2e6c7f 100644
--- a/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl
+++ b/Source/core/svg/SVGAnimatedPreserveAspectRatio.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimatedPreserveAspectRatio {
diff --git a/Source/core/svg/SVGAnimatedRect.cpp b/Source/core/svg/SVGAnimatedRect.cpp
index 6c74641..be2b0e1 100644
--- a/Source/core/svg/SVGAnimatedRect.cpp
+++ b/Source/core/svg/SVGAnimatedRect.cpp
@@ -98,5 +98,5 @@
     // FIXME: Distance calculation is not possible for SVGRect right now. We need the distance of for every single value.
     return -1;
 }
-    
+
 }
diff --git a/Source/core/svg/SVGAnimatedRect.idl b/Source/core/svg/SVGAnimatedRect.idl
index 6f55b0d..6bce556 100644
--- a/Source/core/svg/SVGAnimatedRect.idl
+++ b/Source/core/svg/SVGAnimatedRect.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimatedRect {
diff --git a/Source/core/svg/SVGAnimatedString.idl b/Source/core/svg/SVGAnimatedString.idl
index 1f66bd6..27e27dc 100644
--- a/Source/core/svg/SVGAnimatedString.idl
+++ b/Source/core/svg/SVGAnimatedString.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimatedString {
diff --git a/Source/core/svg/SVGAnimatedTransformList.idl b/Source/core/svg/SVGAnimatedTransformList.idl
index 1608b3c..718a2a6 100644
--- a/Source/core/svg/SVGAnimatedTransformList.idl
+++ b/Source/core/svg/SVGAnimatedTransformList.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimatedTransformList {
diff --git a/Source/core/svg/SVGAnimatedType.cpp b/Source/core/svg/SVGAnimatedType.cpp
index dbcff24..8fc2c73 100644
--- a/Source/core/svg/SVGAnimatedType.cpp
+++ b/Source/core/svg/SVGAnimatedType.cpp
@@ -301,7 +301,7 @@
         *m_data.string = value;
         break;
 
-    // These types don't appear in the table in SVGStyledElement::cssPropertyToTypeMap() and thus don't need setValueAsString() support. 
+    // These types don't appear in the table in SVGStyledElement::cssPropertyToTypeMap() and thus don't need setValueAsString() support.
     case AnimatedAngle:
     case AnimatedBoolean:
     case AnimatedEnumeration:
diff --git a/Source/core/svg/SVGAnimatedType.h b/Source/core/svg/SVGAnimatedType.h
index 53c6216..d5d6033 100644
--- a/Source/core/svg/SVGAnimatedType.h
+++ b/Source/core/svg/SVGAnimatedType.h
@@ -269,7 +269,7 @@
 
     String valueAsString();
     bool setValueAsString(const QualifiedName&, const String&);
-    
+
 private:
     SVGAnimatedType(AnimatedPropertyType);
 
@@ -300,7 +300,7 @@
         SVGTransformList* transformList;
     } m_data;
 };
-    
+
 } // namespace WebCore
 
 #endif // SVGAnimatedType_h
diff --git a/Source/core/svg/SVGAnimationElement.cpp b/Source/core/svg/SVGAnimationElement.cpp
index 0717ce7..03d80dd 100644
--- a/Source/core/svg/SVGAnimationElement.cpp
+++ b/Source/core/svg/SVGAnimationElement.cpp
@@ -193,7 +193,7 @@
 
     if (name == SVGNames::keyPointsAttr) {
         if (hasTagName(SVGNames::animateMotionTag)) {
-            // This is specified to be an animateMotion attribute only but it is simpler to put it here 
+            // This is specified to be an animateMotion attribute only but it is simpler to put it here
             // where the other timing calculatations are.
             parseKeyTimes(value, m_keyPoints, false);
         }
@@ -258,8 +258,8 @@
 float SVGAnimationElement::getSimpleDuration() const
 {
     return narrowPrecisionToFloat(simpleDuration().value());
-}    
-    
+}
+
 void SVGAnimationElement::beginElement()
 {
     beginElementAt(0);
@@ -331,17 +331,17 @@
 }
 
 String SVGAnimationElement::toValue() const
-{    
+{
     return fastGetAttribute(SVGNames::toAttr);
 }
 
 String SVGAnimationElement::byValue() const
-{    
+{
     return fastGetAttribute(SVGNames::byAttr);
 }
 
 String SVGAnimationElement::fromValue() const
-{    
+{
     return fastGetAttribute(SVGNames::fromAttr);
 }
 
@@ -462,12 +462,12 @@
     float toPercent = m_keyTimes[index + 1];
     float fromKeyPoint = m_keyPoints[index];
     float toKeyPoint = m_keyPoints[index + 1];
-    
+
     if (calcMode() == CalcModeDiscrete)
         return fromKeyPoint;
-    
+
     float keyPointPercent = (percent - fromPercent) / (toPercent - fromPercent);
-    
+
     if (calcMode() == CalcModeSpline) {
         ASSERT(m_keySplines.size() == m_keyPoints.size() - 1);
         keyPointPercent = calculatePercentForSpline(keyPointPercent, index);
@@ -482,7 +482,7 @@
 
     return percent;
 }
-    
+
 void SVGAnimationElement::currentValuesFromKeyPoints(float percent, float& effectivePercent, String& from, String& to) const
 {
     ASSERT(!m_keyPoints.isEmpty());
@@ -493,7 +493,7 @@
     from = m_values[index];
     to = m_values[index + 1];
 }
-    
+
 void SVGAnimationElement::currentValuesForValuesAnimation(float percent, float& effectivePercent, String& from, String& to)
 {
     unsigned valuesCount = m_values.size();
@@ -520,32 +520,32 @@
     }
     if (!m_keyPoints.isEmpty() && calcMode != CalcModePaced)
         return currentValuesFromKeyPoints(percent, effectivePercent, from, to);
-    
+
     unsigned keyTimesCount = m_keyTimes.size();
     ASSERT(!keyTimesCount || valuesCount == keyTimesCount);
     ASSERT(!keyTimesCount || (keyTimesCount > 1 && !m_keyTimes[0]));
 
     unsigned index = calculateKeyTimesIndex(percent);
     if (calcMode == CalcModeDiscrete) {
-        if (!keyTimesCount) 
+        if (!keyTimesCount)
             index = static_cast<unsigned>(percent * valuesCount);
         from = m_values[index];
         to = m_values[index];
         effectivePercent = 0;
         return;
     }
-    
+
     float fromPercent;
     float toPercent;
     if (keyTimesCount) {
         fromPercent = m_keyTimes[index];
         toPercent = m_keyTimes[index + 1];
-    } else {        
+    } else {
         index = static_cast<unsigned>(floorf(percent * (valuesCount - 1)));
         fromPercent =  static_cast<float>(index) / (valuesCount - 1);
         toPercent =  static_cast<float>(index + 1) / (valuesCount - 1);
     }
-    
+
     if (index == valuesCount - 1)
         --index;
     from = m_values[index];
@@ -558,7 +558,7 @@
         effectivePercent = calculatePercentForSpline(effectivePercent, index);
     }
 }
-    
+
 void SVGAnimationElement::startedActiveInterval()
 {
     m_animationValid = false;
@@ -610,7 +610,7 @@
 }
 
 void SVGAnimationElement::updateAnimation(float percent, unsigned repeatCount, SVGSMILElement* resultElement)
-{    
+{
     if (!m_animationValid)
         return;
 
@@ -671,7 +671,7 @@
 {
     ASSERT(targetElement);
     DEFINE_STATIC_LOCAL(const AtomicString, inherit, ("inherit", AtomicString::ConstructFromLiteral));
-    
+
     if (value.isEmpty() || value != inherit || !targetElement->isSVGStyledElement())
         return false;
     return SVGStyledElement::isAnimatableCSSProperty(attributeName);
diff --git a/Source/core/svg/SVGAnimationElement.idl b/Source/core/svg/SVGAnimationElement.idl
index d18998c..9e11278 100644
--- a/Source/core/svg/SVGAnimationElement.idl
+++ b/Source/core/svg/SVGAnimationElement.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGAnimationElement : SVGElement {
diff --git a/Source/core/svg/SVGAnimatorFactory.h b/Source/core/svg/SVGAnimatorFactory.h
index 9cc77fa..9ff3837 100644
--- a/Source/core/svg/SVGAnimatorFactory.h
+++ b/Source/core/svg/SVGAnimatorFactory.h
@@ -96,7 +96,7 @@
     SVGAnimatorFactory() { }
 
 };
-    
+
 } // namespace WebCore
 
 #endif // SVGAnimatorFactory_h
diff --git a/Source/core/svg/SVGCircleElement.idl b/Source/core/svg/SVGCircleElement.idl
index 7041246..00ef676 100644
--- a/Source/core/svg/SVGCircleElement.idl
+++ b/Source/core/svg/SVGCircleElement.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGCircleElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGClipPathElement.idl b/Source/core/svg/SVGClipPathElement.idl
index 96b5af1..0d729d2 100644
--- a/Source/core/svg/SVGClipPathElement.idl
+++ b/Source/core/svg/SVGClipPathElement.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGClipPathElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGColor.h b/Source/core/svg/SVGColor.h
index 3ea3d7e..8218ff2 100644
--- a/Source/core/svg/SVGColor.h
+++ b/Source/core/svg/SVGColor.h
@@ -77,7 +77,7 @@
     String customCssText() const;
 
     ~SVGColor() { }
-    
+
     PassRefPtr<SVGColor> cloneForCSSOM() const;
 
     bool equals(const SVGColor&) const;
diff --git a/Source/core/svg/SVGComponentTransferFunctionElement.h b/Source/core/svg/SVGComponentTransferFunctionElement.h
index 5f74b06..6ec3a09 100644
--- a/Source/core/svg/SVGComponentTransferFunctionElement.h
+++ b/Source/core/svg/SVGComponentTransferFunctionElement.h
@@ -79,7 +79,7 @@
     bool isSupportedAttribute(const QualifiedName&);
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual void svgAttributeChanged(const QualifiedName&);
-    
+
 private:
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGComponentTransferFunctionElement)
         DECLARE_ANIMATED_ENUMERATION(Type, type, ComponentTransferType)
diff --git a/Source/core/svg/SVGComponentTransferFunctionElement.idl b/Source/core/svg/SVGComponentTransferFunctionElement.idl
index a5b045d..1e42835 100644
--- a/Source/core/svg/SVGComponentTransferFunctionElement.idl
+++ b/Source/core/svg/SVGComponentTransferFunctionElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGCursorElement.cpp b/Source/core/svg/SVGCursorElement.cpp
index 3b04d6e..a016614 100644
--- a/Source/core/svg/SVGCursorElement.cpp
+++ b/Source/core/svg/SVGCursorElement.cpp
@@ -93,7 +93,7 @@
              || SVGURIReference::parseAttribute(name, value)) {
     } else
         ASSERT_NOT_REACHED();
-    
+
     reportAttributeParsingError(parseError, name, value);
 }
 
diff --git a/Source/core/svg/SVGCursorElement.idl b/Source/core/svg/SVGCursorElement.idl
index 3d76a2d..d386935 100644
--- a/Source/core/svg/SVGCursorElement.idl
+++ b/Source/core/svg/SVGCursorElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGCursorElement : SVGElement {
diff --git a/Source/core/svg/SVGDefsElement.idl b/Source/core/svg/SVGDefsElement.idl
index 3af65f3..f4e727a 100644
--- a/Source/core/svg/SVGDefsElement.idl
+++ b/Source/core/svg/SVGDefsElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGDefsElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGDescElement.idl b/Source/core/svg/SVGDescElement.idl
index 0b31c7c..70a5033 100644
--- a/Source/core/svg/SVGDescElement.idl
+++ b/Source/core/svg/SVGDescElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGDescElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGDocumentExtensions.cpp b/Source/core/svg/SVGDocumentExtensions.cpp
index d56b9d3..4a71068 100644
--- a/Source/core/svg/SVGDocumentExtensions.cpp
+++ b/Source/core/svg/SVGDocumentExtensions.cpp
@@ -92,7 +92,7 @@
     for (Vector<RefPtr<SVGSVGElement> >::iterator itr = timeContainers.begin(); itr != end; ++itr)
         (*itr)->timeContainer()->begin();
 }
-    
+
 void SVGDocumentExtensions::pauseAnimations()
 {
     HashSet<SVGSVGElement*>::iterator end = m_timeContainers.end();
diff --git a/Source/core/svg/SVGDocumentExtensions.h b/Source/core/svg/SVGDocumentExtensions.h
index 7f29f65..5dd26fe 100644
--- a/Source/core/svg/SVGDocumentExtensions.h
+++ b/Source/core/svg/SVGDocumentExtensions.h
@@ -45,7 +45,7 @@
     typedef HashSet<Element*> SVGPendingElements;
     SVGDocumentExtensions(Document*);
     ~SVGDocumentExtensions();
-    
+
     void addTimeContainer(SVGSVGElement*);
     void removeTimeContainer(SVGSVGElement*);
 
diff --git a/Source/core/svg/SVGElement.cpp b/Source/core/svg/SVGElement.cpp
index d2ce74e..085e5f6 100644
--- a/Source/core/svg/SVGElement.cpp
+++ b/Source/core/svg/SVGElement.cpp
@@ -226,7 +226,7 @@
     // global inclusion of core/dom/Document.h in SVG code.
     return document() ? document()->accessSVGExtensions() : 0;
 }
- 
+
 void SVGElement::mapInstanceToElement(SVGElementInstance* instance)
 {
     ASSERT(instance);
@@ -236,7 +236,7 @@
 
     instances.add(instance);
 }
- 
+
 void SVGElement::removeInstanceMapping(SVGElementInstance* instance)
 {
     ASSERT(instance);
@@ -277,7 +277,7 @@
     rareData->setCursorElement(cursorElement);
 }
 
-void SVGElement::cursorElementRemoved() 
+void SVGElement::cursorElementRemoved()
 {
     ASSERT(hasSVGRareData());
     svgRareData()->setCursorElement(0);
@@ -377,14 +377,14 @@
 bool SVGElement::addEventListener(const AtomicString& eventType, PassRefPtr<EventListener> prpListener, bool useCapture)
 {
     RefPtr<EventListener> listener = prpListener;
-    
+
     // Add event listener to regular DOM element
     if (!Node::addEventListener(eventType, listener, useCapture))
         return false;
 
     // Add event listener to all shadow tree DOM element instances
     HashSet<SVGElementInstance*> instances;
-    collectInstancesForSVGElement(this, instances);    
+    collectInstancesForSVGElement(this, instances);
     const HashSet<SVGElementInstance*>::const_iterator end = instances.end();
     for (HashSet<SVGElementInstance*>::const_iterator it = instances.begin(); it != end; ++it) {
         ASSERT((*it)->shadowTreeElement());
diff --git a/Source/core/svg/SVGElement.h b/Source/core/svg/SVGElement.h
index 12584f7..bb37756 100644
--- a/Source/core/svg/SVGElement.h
+++ b/Source/core/svg/SVGElement.h
@@ -93,7 +93,7 @@
     void setCorrespondingElement(SVGElement*);
 
     void synchronizeAnimatedSVGAttribute(const QualifiedName&) const;
- 
+
     virtual PassRefPtr<RenderStyle> customStyleForRenderer() OVERRIDE;
 
     static void synchronizeRequiredFeatures(SVGElement* contextElement);
@@ -129,7 +129,7 @@
     virtual void finishParsingChildren();
     virtual void attributeChanged(const QualifiedName&, const AtomicString&, AttributeModificationReason = ModifiedDirectly) OVERRIDE;
     virtual bool childShouldCreateRenderer(const NodeRenderingContext&) const OVERRIDE;
-    
+
     virtual void removedFrom(ContainerNode*) OVERRIDE;
 
     SVGElementRareData* svgRareData() const;
diff --git a/Source/core/svg/SVGElementInstance.cpp b/Source/core/svg/SVGElementInstance.cpp
index a7b6398..9f3a6e6 100644
--- a/Source/core/svg/SVGElementInstance.cpp
+++ b/Source/core/svg/SVGElementInstance.cpp
@@ -267,5 +267,5 @@
     if (m_targetElement)
         m_targetElement->setInstanceUpdatesBlocked(false);
 }
-   
+
 }
diff --git a/Source/core/svg/SVGElementInstance.idl b/Source/core/svg/SVGElementInstance.idl
index 82cf40b..3fbf3b7 100644
--- a/Source/core/svg/SVGElementInstance.idl
+++ b/Source/core/svg/SVGElementInstance.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGElementInstance : EventTarget
diff --git a/Source/core/svg/SVGElementInstanceList.idl b/Source/core/svg/SVGElementInstanceList.idl
index 6fdb983..91534bb 100644
--- a/Source/core/svg/SVGElementInstanceList.idl
+++ b/Source/core/svg/SVGElementInstanceList.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGElementInstanceList {
diff --git a/Source/core/svg/SVGEllipseElement.cpp b/Source/core/svg/SVGEllipseElement.cpp
index cda30d5..f766f25 100644
--- a/Source/core/svg/SVGEllipseElement.cpp
+++ b/Source/core/svg/SVGEllipseElement.cpp
@@ -56,7 +56,7 @@
     ASSERT(hasTagName(SVGNames::ellipseTag));
     ScriptWrappable::init(this);
     registerAnimatedPropertiesForSVGEllipseElement();
-}    
+}
 
 PassRefPtr<SVGEllipseElement> SVGEllipseElement::create(const QualifiedName& tagName, Document* document)
 {
@@ -133,7 +133,7 @@
 
     ASSERT_NOT_REACHED();
 }
- 
+
 bool SVGEllipseElement::selfHasRelativeLengths() const
 {
     return cxCurrentValue().isRelative()
diff --git a/Source/core/svg/SVGEllipseElement.h b/Source/core/svg/SVGEllipseElement.h
index e5211af..b5de223 100644
--- a/Source/core/svg/SVGEllipseElement.h
+++ b/Source/core/svg/SVGEllipseElement.h
@@ -35,7 +35,7 @@
 
 private:
     SVGEllipseElement(const QualifiedName&, Document*);
-    
+
     virtual bool isValid() const { return SVGTests::isValid(); }
     virtual bool supportsFocus() const { return true; }
 
diff --git a/Source/core/svg/SVGEllipseElement.idl b/Source/core/svg/SVGEllipseElement.idl
index 22b4e02..a9ea183 100644
--- a/Source/core/svg/SVGEllipseElement.idl
+++ b/Source/core/svg/SVGEllipseElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGEllipseElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGExternalResourcesRequired.h b/Source/core/svg/SVGExternalResourcesRequired.h
index 38e97f7..e0d304b 100644
--- a/Source/core/svg/SVGExternalResourcesRequired.h
+++ b/Source/core/svg/SVGExternalResourcesRequired.h
@@ -30,7 +30,7 @@
 class SVGElement;
 
 // Notes on a SVG 1.1 spec discrepancy:
-// The SVG DOM defines the attribute externalResourcesRequired as being of type SVGAnimatedBoolean, whereas the 
+// The SVG DOM defines the attribute externalResourcesRequired as being of type SVGAnimatedBoolean, whereas the
 // SVG language definition says that externalResourcesRequired is not animated. Because the SVG language definition
 // states that externalResourcesRequired cannot be animated, the animVal will always be the same as the baseVal.
 // FIXME: When implementing animVal support, make sure that animVal==baseVal for externalResourcesRequired
diff --git a/Source/core/svg/SVGExternalResourcesRequired.idl b/Source/core/svg/SVGExternalResourcesRequired.idl
index d80071c..efc8366 100644
--- a/Source/core/svg/SVGExternalResourcesRequired.idl
+++ b/Source/core/svg/SVGExternalResourcesRequired.idl
@@ -21,13 +21,13 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
     NoInterfaceObject,
     LegacyImplementedInBaseClass
-] interface SVGExternalResourcesRequired { 
+] interface SVGExternalResourcesRequired {
     readonly attribute SVGAnimatedBoolean externalResourcesRequired;
 };
 
diff --git a/Source/core/svg/SVGFEBlendElement.cpp b/Source/core/svg/SVGFEBlendElement.cpp
index d118b63..d943e05 100644
--- a/Source/core/svg/SVGFEBlendElement.cpp
+++ b/Source/core/svg/SVGFEBlendElement.cpp
@@ -137,7 +137,7 @@
     FilterEffectVector& inputEffects = effect->inputEffects();
     inputEffects.reserveCapacity(2);
     inputEffects.append(input1);
-    inputEffects.append(input2);    
+    inputEffects.append(input2);
     return effect.release();
 }
 
diff --git a/Source/core/svg/SVGFEBlendElement.idl b/Source/core/svg/SVGFEBlendElement.idl
index 1bad336..66925d0 100644
--- a/Source/core/svg/SVGFEBlendElement.idl
+++ b/Source/core/svg/SVGFEBlendElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFEColorMatrixElement.idl b/Source/core/svg/SVGFEColorMatrixElement.idl
index 3da5528..93d064e 100644
--- a/Source/core/svg/SVGFEColorMatrixElement.idl
+++ b/Source/core/svg/SVGFEColorMatrixElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFEComponentTransferElement.cpp b/Source/core/svg/SVGFEComponentTransferElement.cpp
index a12b9db..90408fe 100644
--- a/Source/core/svg/SVGFEComponentTransferElement.cpp
+++ b/Source/core/svg/SVGFEComponentTransferElement.cpp
@@ -79,7 +79,7 @@
 PassRefPtr<FilterEffect> SVGFEComponentTransferElement::build(SVGFilterBuilder* filterBuilder, Filter* filter)
 {
     FilterEffect* input1 = filterBuilder->getEffectById(in1CurrentValue());
-    
+
     if (!input1)
         return 0;
 
@@ -87,7 +87,7 @@
     ComponentTransferFunction green;
     ComponentTransferFunction blue;
     ComponentTransferFunction alpha;
-    
+
     for (Node* node = firstChild(); node; node = node->nextSibling()) {
         if (node->hasTagName(SVGNames::feFuncRTag))
             red = static_cast<SVGFEFuncRElement*>(node)->transferFunction();
@@ -98,7 +98,7 @@
         else if (node->hasTagName(SVGNames::feFuncATag))
             alpha = static_cast<SVGFEFuncAElement*>(node)->transferFunction();
     }
-    
+
     RefPtr<FilterEffect> effect = FEComponentTransfer::create(filter, red, green, blue, alpha);
     effect->inputEffects().append(input1);
     return effect.release();
diff --git a/Source/core/svg/SVGFEComponentTransferElement.idl b/Source/core/svg/SVGFEComponentTransferElement.idl
index b855de4..48f91da 100644
--- a/Source/core/svg/SVGFEComponentTransferElement.idl
+++ b/Source/core/svg/SVGFEComponentTransferElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEComponentTransferElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGFECompositeElement.cpp b/Source/core/svg/SVGFECompositeElement.cpp
index 198ead4..1af2fc9 100644
--- a/Source/core/svg/SVGFECompositeElement.cpp
+++ b/Source/core/svg/SVGFECompositeElement.cpp
@@ -174,7 +174,7 @@
 {
     FilterEffect* input1 = filterBuilder->getEffectById(in1CurrentValue());
     FilterEffect* input2 = filterBuilder->getEffectById(in2CurrentValue());
-    
+
     if (!input1 || !input2)
         return 0;
 
@@ -182,7 +182,7 @@
     FilterEffectVector& inputEffects = effect->inputEffects();
     inputEffects.reserveCapacity(2);
     inputEffects.append(input1);
-    inputEffects.append(input2);    
+    inputEffects.append(input2);
     return effect.release();
 }
 
diff --git a/Source/core/svg/SVGFECompositeElement.idl b/Source/core/svg/SVGFECompositeElement.idl
index 43c6bbf..264aaae 100644
--- a/Source/core/svg/SVGFECompositeElement.idl
+++ b/Source/core/svg/SVGFECompositeElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFEConvolveMatrixElement.cpp b/Source/core/svg/SVGFEConvolveMatrixElement.cpp
index 5f2cccf..59cb12f 100644
--- a/Source/core/svg/SVGFEConvolveMatrixElement.cpp
+++ b/Source/core/svg/SVGFEConvolveMatrixElement.cpp
@@ -35,7 +35,7 @@
 // Animated property definitions
 DEFINE_ANIMATED_STRING(SVGFEConvolveMatrixElement, SVGNames::inAttr, In1, in1)
 DEFINE_ANIMATED_INTEGER_MULTIPLE_WRAPPERS(SVGFEConvolveMatrixElement, SVGNames::orderAttr, orderXIdentifier(), OrderX, orderX)
-DEFINE_ANIMATED_INTEGER_MULTIPLE_WRAPPERS(SVGFEConvolveMatrixElement, SVGNames::orderAttr, orderYIdentifier(), OrderY, orderY) 
+DEFINE_ANIMATED_INTEGER_MULTIPLE_WRAPPERS(SVGFEConvolveMatrixElement, SVGNames::orderAttr, orderYIdentifier(), OrderY, orderY)
 DEFINE_ANIMATED_NUMBER_LIST(SVGFEConvolveMatrixElement, SVGNames::kernelMatrixAttr, KernelMatrix, kernelMatrix)
 DEFINE_ANIMATED_NUMBER(SVGFEConvolveMatrixElement, SVGNames::divisorAttr, Divisor, divisor)
 DEFINE_ANIMATED_NUMBER(SVGFEConvolveMatrixElement, SVGNames::biasAttr, Bias, bias)
@@ -171,7 +171,7 @@
                 + "\". Filtered element will not be displayed.");
         return;
     }
-    
+
     if (name == SVGNames::biasAttr) {
         setBiasBaseValue(value.toFloat());
         return;
diff --git a/Source/core/svg/SVGFEConvolveMatrixElement.idl b/Source/core/svg/SVGFEConvolveMatrixElement.idl
index 3196cd0..0cfcb71 100644
--- a/Source/core/svg/SVGFEConvolveMatrixElement.idl
+++ b/Source/core/svg/SVGFEConvolveMatrixElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFEDiffuseLightingElement.cpp b/Source/core/svg/SVGFEDiffuseLightingElement.cpp
index c88c8be..0166cab 100644
--- a/Source/core/svg/SVGFEDiffuseLightingElement.cpp
+++ b/Source/core/svg/SVGFEDiffuseLightingElement.cpp
@@ -175,7 +175,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::surfaceScaleAttr
         || attrName == SVGNames::diffuseConstantAttr
         || attrName == SVGNames::kernelUnitLengthAttr
@@ -215,7 +215,7 @@
     RenderObject* renderer = this->renderer();
     if (!renderer)
         return 0;
-    
+
     ASSERT(renderer->style());
     Color color = renderer->style()->svgStyle()->lightingColor();
 
diff --git a/Source/core/svg/SVGFEDiffuseLightingElement.idl b/Source/core/svg/SVGFEDiffuseLightingElement.idl
index 64ce7c6..a1f5012 100644
--- a/Source/core/svg/SVGFEDiffuseLightingElement.idl
+++ b/Source/core/svg/SVGFEDiffuseLightingElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEDiffuseLightingElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGFEDisplacementMapElement.cpp b/Source/core/svg/SVGFEDisplacementMapElement.cpp
index 172197a..c6b51e9 100644
--- a/Source/core/svg/SVGFEDisplacementMapElement.cpp
+++ b/Source/core/svg/SVGFEDisplacementMapElement.cpp
@@ -133,7 +133,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::xChannelSelectorAttr || attrName == SVGNames::yChannelSelectorAttr || attrName == SVGNames::scaleAttr) {
         primitiveAttributeChanged(attrName);
         return;
@@ -151,7 +151,7 @@
 {
     FilterEffect* input1 = filterBuilder->getEffectById(in1CurrentValue());
     FilterEffect* input2 = filterBuilder->getEffectById(in2CurrentValue());
-    
+
     if (!input1 || !input2)
         return 0;
 
@@ -159,7 +159,7 @@
     FilterEffectVector& inputEffects = effect->inputEffects();
     inputEffects.reserveCapacity(2);
     inputEffects.append(input1);
-    inputEffects.append(input2);    
+    inputEffects.append(input2);
     return effect.release();
 }
 
diff --git a/Source/core/svg/SVGFEDisplacementMapElement.h b/Source/core/svg/SVGFEDisplacementMapElement.h
index e583bca..ad03ccb 100644
--- a/Source/core/svg/SVGFEDisplacementMapElement.h
+++ b/Source/core/svg/SVGFEDisplacementMapElement.h
@@ -26,7 +26,7 @@
 #include "core/svg/SVGFilterPrimitiveStandardAttributes.h"
 
 namespace WebCore {
- 
+
 template<>
 struct SVGPropertyTraits<ChannelSelectorType> {
     static unsigned highestEnumValue() { return CHANNEL_A; }
@@ -69,10 +69,10 @@
     static PassRefPtr<SVGFEDisplacementMapElement> create(const QualifiedName&, Document*);
 
     static ChannelSelectorType stringToChannel(const String&);
-    
+
 private:
     SVGFEDisplacementMapElement(const QualifiedName& tagName, Document*);
-    
+
     bool isSupportedAttribute(const QualifiedName&);
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual bool setFilterEffectAttribute(FilterEffect*, const QualifiedName& attrName);
diff --git a/Source/core/svg/SVGFEDisplacementMapElement.idl b/Source/core/svg/SVGFEDisplacementMapElement.idl
index a578c1c..40fc6e7 100644
--- a/Source/core/svg/SVGFEDisplacementMapElement.idl
+++ b/Source/core/svg/SVGFEDisplacementMapElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFEDistantLightElement.idl b/Source/core/svg/SVGFEDistantLightElement.idl
index dd24f21..85624d9 100644
--- a/Source/core/svg/SVGFEDistantLightElement.idl
+++ b/Source/core/svg/SVGFEDistantLightElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEDistantLightElement : SVGElement {
diff --git a/Source/core/svg/SVGFEDropShadowElement.cpp b/Source/core/svg/SVGFEDropShadowElement.cpp
index 7e18c8d..946ffce 100644
--- a/Source/core/svg/SVGFEDropShadowElement.cpp
+++ b/Source/core/svg/SVGFEDropShadowElement.cpp
@@ -136,7 +136,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::inAttr
         || attrName == SVGNames::stdDeviationAttr
         || attrName == SVGNames::dxAttr
@@ -159,7 +159,7 @@
 
     ASSERT(renderer->style());
     const SVGRenderStyle* svgStyle = renderer->style()->svgStyle();
-    
+
     Color color = svgStyle->floodColor();
     float opacity = svgStyle->floodOpacity();
 
diff --git a/Source/core/svg/SVGFEDropShadowElement.h b/Source/core/svg/SVGFEDropShadowElement.h
index 26cb42e..75e7add 100644
--- a/Source/core/svg/SVGFEDropShadowElement.h
+++ b/Source/core/svg/SVGFEDropShadowElement.h
@@ -25,24 +25,24 @@
 #include "core/svg/SVGFilterPrimitiveStandardAttributes.h"
 
 namespace WebCore {
-    
+
 class SVGFEDropShadowElement FINAL : public SVGFilterPrimitiveStandardAttributes {
 public:
     static PassRefPtr<SVGFEDropShadowElement> create(const QualifiedName&, Document*);
-    
+
     void setStdDeviation(float stdDeviationX, float stdDeviationY);
-    
+
 private:
     SVGFEDropShadowElement(const QualifiedName&, Document*);
-    
+
     bool isSupportedAttribute(const QualifiedName&);
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual void svgAttributeChanged(const QualifiedName&);
     virtual PassRefPtr<FilterEffect> build(SVGFilterBuilder*, Filter*);
-    
+
     static const AtomicString& stdDeviationXIdentifier();
     static const AtomicString& stdDeviationYIdentifier();
-    
+
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGFEDropShadowElement)
         DECLARE_ANIMATED_STRING(In1, in1)
         DECLARE_ANIMATED_NUMBER(Dx, dx)
@@ -51,7 +51,7 @@
         DECLARE_ANIMATED_NUMBER(StdDeviationY, stdDeviationY)
     END_DECLARE_ANIMATED_PROPERTIES
 };
-    
+
 } // namespace WebCore
 
 #endif
diff --git a/Source/core/svg/SVGFEDropShadowElement.idl b/Source/core/svg/SVGFEDropShadowElement.idl
index 1c047a3..a3f3d85 100644
--- a/Source/core/svg/SVGFEDropShadowElement.idl
+++ b/Source/core/svg/SVGFEDropShadowElement.idl
@@ -24,7 +24,7 @@
     readonly attribute SVGAnimatedNumber stdDeviationX;
     readonly attribute SVGAnimatedNumber stdDeviationY;
 
-    void setStdDeviation([Default=Undefined] optional float stdDeviationX, 
+    void setStdDeviation([Default=Undefined] optional float stdDeviationX,
                          [Default=Undefined] optional float stdDeviationY);
 };
 
diff --git a/Source/core/svg/SVGFEFloodElement.cpp b/Source/core/svg/SVGFEFloodElement.cpp
index 2f984f0..f8cac52 100644
--- a/Source/core/svg/SVGFEFloodElement.cpp
+++ b/Source/core/svg/SVGFEFloodElement.cpp
@@ -63,7 +63,7 @@
     RenderObject* renderer = this->renderer();
     if (!renderer)
         return 0;
-    
+
     ASSERT(renderer->style());
     const SVGRenderStyle* svgStyle = renderer->style()->svgStyle();
 
diff --git a/Source/core/svg/SVGFEFloodElement.idl b/Source/core/svg/SVGFEFloodElement.idl
index 6af0bd1..3504083 100644
--- a/Source/core/svg/SVGFEFloodElement.idl
+++ b/Source/core/svg/SVGFEFloodElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEFloodElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGFEFuncAElement.idl b/Source/core/svg/SVGFEFuncAElement.idl
index faab472..c777ee4 100644
--- a/Source/core/svg/SVGFEFuncAElement.idl
+++ b/Source/core/svg/SVGFEFuncAElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEFuncAElement : SVGComponentTransferFunctionElement {
diff --git a/Source/core/svg/SVGFEFuncBElement.idl b/Source/core/svg/SVGFEFuncBElement.idl
index 69945cb..0546256 100644
--- a/Source/core/svg/SVGFEFuncBElement.idl
+++ b/Source/core/svg/SVGFEFuncBElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEFuncBElement : SVGComponentTransferFunctionElement {
diff --git a/Source/core/svg/SVGFEFuncGElement.idl b/Source/core/svg/SVGFEFuncGElement.idl
index 022e8d1..d752849 100644
--- a/Source/core/svg/SVGFEFuncGElement.idl
+++ b/Source/core/svg/SVGFEFuncGElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEFuncGElement : SVGComponentTransferFunctionElement {
diff --git a/Source/core/svg/SVGFEFuncRElement.idl b/Source/core/svg/SVGFEFuncRElement.idl
index 2391da1..4ac443a 100644
--- a/Source/core/svg/SVGFEFuncRElement.idl
+++ b/Source/core/svg/SVGFEFuncRElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEFuncRElement : SVGComponentTransferFunctionElement {
diff --git a/Source/core/svg/SVGFEGaussianBlurElement.cpp b/Source/core/svg/SVGFEGaussianBlurElement.cpp
index 39b2e0a..0028fda 100644
--- a/Source/core/svg/SVGFEGaussianBlurElement.cpp
+++ b/Source/core/svg/SVGFEGaussianBlurElement.cpp
@@ -116,7 +116,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::inAttr || attrName == SVGNames::stdDeviationAttr) {
         invalidate();
         return;
diff --git a/Source/core/svg/SVGFEGaussianBlurElement.idl b/Source/core/svg/SVGFEGaussianBlurElement.idl
index 0cbbb6d..c257049 100644
--- a/Source/core/svg/SVGFEGaussianBlurElement.idl
+++ b/Source/core/svg/SVGFEGaussianBlurElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEGaussianBlurElement : SVGStyledElement {
@@ -28,7 +28,7 @@
     readonly attribute SVGAnimatedNumber stdDeviationX;
     readonly attribute SVGAnimatedNumber stdDeviationY;
 
-    void setStdDeviation([Default=Undefined] optional float stdDeviationX, 
+    void setStdDeviation([Default=Undefined] optional float stdDeviationX,
                          [Default=Undefined] optional float stdDeviationY);
 };
 
diff --git a/Source/core/svg/SVGFEImageElement.cpp b/Source/core/svg/SVGFEImageElement.cpp
index 37e8bc4..e2a35c9 100644
--- a/Source/core/svg/SVGFEImageElement.cpp
+++ b/Source/core/svg/SVGFEImageElement.cpp
@@ -151,7 +151,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::preserveAspectRatioAttr) {
         invalidate();
         return;
diff --git a/Source/core/svg/SVGFEImageElement.idl b/Source/core/svg/SVGFEImageElement.idl
index 56eca80..9cf092e 100644
--- a/Source/core/svg/SVGFEImageElement.idl
+++ b/Source/core/svg/SVGFEImageElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEImageElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGFELightElement.cpp b/Source/core/svg/SVGFELightElement.cpp
index 56bdb8b..9cb96d9 100644
--- a/Source/core/svg/SVGFELightElement.cpp
+++ b/Source/core/svg/SVGFELightElement.cpp
@@ -170,7 +170,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::azimuthAttr
         || attrName == SVGNames::elevationAttr
         || attrName == SVGNames::xAttr
diff --git a/Source/core/svg/SVGFEMergeElement.idl b/Source/core/svg/SVGFEMergeElement.idl
index 6688e7c..91d26f6 100644
--- a/Source/core/svg/SVGFEMergeElement.idl
+++ b/Source/core/svg/SVGFEMergeElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEMergeElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGFEMergeNodeElement.idl b/Source/core/svg/SVGFEMergeNodeElement.idl
index 8595c51..f01f908 100644
--- a/Source/core/svg/SVGFEMergeNodeElement.idl
+++ b/Source/core/svg/SVGFEMergeNodeElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEMergeNodeElement : SVGElement {
diff --git a/Source/core/svg/SVGFEMorphologyElement.cpp b/Source/core/svg/SVGFEMorphologyElement.cpp
index 571474e..8af7444 100644
--- a/Source/core/svg/SVGFEMorphologyElement.cpp
+++ b/Source/core/svg/SVGFEMorphologyElement.cpp
@@ -142,7 +142,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::operatorAttr || attrName == SVGNames::radiusAttr) {
         primitiveAttributeChanged(attrName);
         return;
diff --git a/Source/core/svg/SVGFEMorphologyElement.idl b/Source/core/svg/SVGFEMorphologyElement.idl
index cb3d9e4..168b4ef 100644
--- a/Source/core/svg/SVGFEMorphologyElement.idl
+++ b/Source/core/svg/SVGFEMorphologyElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
@@ -36,7 +36,7 @@
     readonly attribute SVGAnimatedNumber      radiusX;
     readonly attribute SVGAnimatedNumber      radiusY;
 
-    void setRadius([Default=Undefined] optional float radiusX, 
+    void setRadius([Default=Undefined] optional float radiusX,
                    [Default=Undefined] optional float radiusY);
 };
 
diff --git a/Source/core/svg/SVGFEOffsetElement.cpp b/Source/core/svg/SVGFEOffsetElement.cpp
index e1a55a0..19b9424 100644
--- a/Source/core/svg/SVGFEOffsetElement.cpp
+++ b/Source/core/svg/SVGFEOffsetElement.cpp
@@ -98,7 +98,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::inAttr || attrName == SVGNames::dxAttr || attrName == SVGNames::dyAttr) {
         invalidate();
         return;
diff --git a/Source/core/svg/SVGFEOffsetElement.idl b/Source/core/svg/SVGFEOffsetElement.idl
index b159c1f..d0c6829 100644
--- a/Source/core/svg/SVGFEOffsetElement.idl
+++ b/Source/core/svg/SVGFEOffsetElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEOffsetElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGFEPointLightElement.idl b/Source/core/svg/SVGFEPointLightElement.idl
index 2ba36ed..b85cf1d 100644
--- a/Source/core/svg/SVGFEPointLightElement.idl
+++ b/Source/core/svg/SVGFEPointLightElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFEPointLightElement : SVGElement {
diff --git a/Source/core/svg/SVGFESpecularLightingElement.cpp b/Source/core/svg/SVGFESpecularLightingElement.cpp
index 3519043..4d51a63 100644
--- a/Source/core/svg/SVGFESpecularLightingElement.cpp
+++ b/Source/core/svg/SVGFESpecularLightingElement.cpp
@@ -186,7 +186,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::surfaceScaleAttr
         || attrName == SVGNames::specularConstantAttr
         || attrName == SVGNames::specularExponentAttr
@@ -226,7 +226,7 @@
     RenderObject* renderer = this->renderer();
     if (!renderer)
         return 0;
-    
+
     ASSERT(renderer->style());
     Color color = renderer->style()->svgStyle()->lightingColor();
 
diff --git a/Source/core/svg/SVGFESpecularLightingElement.h b/Source/core/svg/SVGFESpecularLightingElement.h
index c7f3749..3e10c9d 100644
--- a/Source/core/svg/SVGFESpecularLightingElement.h
+++ b/Source/core/svg/SVGFESpecularLightingElement.h
@@ -36,7 +36,7 @@
 
 private:
     SVGFESpecularLightingElement(const QualifiedName&, Document*);
-    
+
     bool isSupportedAttribute(const QualifiedName&);
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual bool setFilterEffectAttribute(FilterEffect*, const QualifiedName&);
diff --git a/Source/core/svg/SVGFESpecularLightingElement.idl b/Source/core/svg/SVGFESpecularLightingElement.idl
index 2532929..015c239 100644
--- a/Source/core/svg/SVGFESpecularLightingElement.idl
+++ b/Source/core/svg/SVGFESpecularLightingElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFESpecularLightingElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGFESpotLightElement.idl b/Source/core/svg/SVGFESpotLightElement.idl
index af52685..0b4156e 100644
--- a/Source/core/svg/SVGFESpotLightElement.idl
+++ b/Source/core/svg/SVGFESpotLightElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFESpotLightElement : SVGElement {
diff --git a/Source/core/svg/SVGFETileElement.idl b/Source/core/svg/SVGFETileElement.idl
index cdff622..a9fa454 100644
--- a/Source/core/svg/SVGFETileElement.idl
+++ b/Source/core/svg/SVGFETileElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFETileElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGFETurbulenceElement.cpp b/Source/core/svg/SVGFETurbulenceElement.cpp
index b7745e1..3c95c2c 100644
--- a/Source/core/svg/SVGFETurbulenceElement.cpp
+++ b/Source/core/svg/SVGFETurbulenceElement.cpp
@@ -159,7 +159,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::baseFrequencyAttr
         || attrName == SVGNames::numOctavesAttr
         || attrName == SVGNames::seedAttr
diff --git a/Source/core/svg/SVGFETurbulenceElement.idl b/Source/core/svg/SVGFETurbulenceElement.idl
index a95a534..d786498 100644
--- a/Source/core/svg/SVGFETurbulenceElement.idl
+++ b/Source/core/svg/SVGFETurbulenceElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFilterElement.cpp b/Source/core/svg/SVGFilterElement.cpp
index 1e65855..4925681 100644
--- a/Source/core/svg/SVGFilterElement.cpp
+++ b/Source/core/svg/SVGFilterElement.cpp
@@ -162,7 +162,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::xAttr
         || attrName == SVGNames::yAttr
         || attrName == SVGNames::widthAttr
diff --git a/Source/core/svg/SVGFilterElement.idl b/Source/core/svg/SVGFilterElement.idl
index fd417bb..d982992 100644
--- a/Source/core/svg/SVGFilterElement.idl
+++ b/Source/core/svg/SVGFilterElement.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGFilterElement : SVGStyledElement {
@@ -34,7 +34,7 @@
     readonly attribute SVGAnimatedInteger     filterResX;
     readonly attribute SVGAnimatedInteger     filterResY;
 
-    void setFilterRes([Default=Undefined] optional unsigned long filterResX, 
+    void setFilterRes([Default=Undefined] optional unsigned long filterResX,
                       [Default=Undefined] optional unsigned long filterResY);
 };
 
diff --git a/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp b/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp
index 7c4c76f..6aa2fd0 100644
--- a/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp
+++ b/Source/core/svg/SVGFilterPrimitiveStandardAttributes.cpp
@@ -109,7 +109,7 @@
         return;
     }
 
-    SVGElementInstance::InvalidationGuard invalidationGuard(this);    
+    SVGElementInstance::InvalidationGuard invalidationGuard(this);
     invalidate();
 }
 
diff --git a/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl b/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl
index 3f1e56b..9f368ee 100644
--- a/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl
+++ b/Source/core/svg/SVGFilterPrimitiveStandardAttributes.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFitToViewBox.idl b/Source/core/svg/SVGFitToViewBox.idl
index 0cd3b52..4e115fe 100644
--- a/Source/core/svg/SVGFitToViewBox.idl
+++ b/Source/core/svg/SVGFitToViewBox.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFontElement.cpp b/Source/core/svg/SVGFontElement.cpp
index 06aca0f..0f83191 100644
--- a/Source/core/svg/SVGFontElement.cpp
+++ b/Source/core/svg/SVGFontElement.cpp
@@ -43,7 +43,7 @@
 END_REGISTER_ANIMATED_PROPERTIES
 
 inline SVGFontElement::SVGFontElement(const QualifiedName& tagName, Document* document)
-    : SVGStyledElement(tagName, document) 
+    : SVGStyledElement(tagName, document)
     , m_missingGlyph(0)
     , m_isGlyphCacheValid(false)
 {
@@ -106,7 +106,7 @@
                 glyphs.clear();
                 continue;
             }
-                
+
             // This glyph is never meant to be used for rendering, only as identifier as a part of a ligature.
             SVGGlyph newGlyphPart;
             newGlyphPart.isPartOfLigature = true;
@@ -176,7 +176,7 @@
 
     if (!unicodeValues.isEmpty())
         return unicodeValues.contains(unicodeString);
-    
+
     return false;
 }
 
@@ -187,7 +187,7 @@
 
     if (!glyphValues.isEmpty())
         return glyphValues.contains(glyphName);
-    
+
     return false;
 }
 
@@ -215,7 +215,7 @@
 
     return 0;
 }
-    
+
 float SVGFontElement::horizontalKerningForPairOfStringsAndGlyphs(const String& u1, const String& g1, const String& u2, const String& g2) const
 {
     if (m_horizontalKerningPairs.isEmpty())
@@ -250,7 +250,7 @@
     ensureGlyphCache();
     return m_glyphMap.svgGlyphForGlyph(glyph);
 }
-    
+
 Glyph SVGFontElement::missingGlyph()
 {
     ensureGlyphCache();
diff --git a/Source/core/svg/SVGFontElement.h b/Source/core/svg/SVGFontElement.h
index ff9ae3a..c19156d 100644
--- a/Source/core/svg/SVGFontElement.h
+++ b/Source/core/svg/SVGFontElement.h
@@ -41,7 +41,7 @@
     HashSet<String> unicodeName2;
     HashSet<String> glyphName1;
     HashSet<String> glyphName2;
-    
+
     SVGKerningPair()
         : kerning(0)
     {
@@ -50,7 +50,7 @@
 
 typedef Vector<SVGKerningPair> KerningPairVector;
 
-class SVGMissingGlyphElement;    
+class SVGMissingGlyphElement;
 
 class SVGFontElement FINAL : public SVGStyledElement
                            , public SVGExternalResourcesRequired {
@@ -73,7 +73,7 @@
 private:
     SVGFontElement(const QualifiedName&, Document*);
 
-    virtual bool rendererIsNeeded(const NodeRenderingContext&) { return false; }  
+    virtual bool rendererIsNeeded(const NodeRenderingContext&) { return false; }
 
     void ensureGlyphCache();
     void registerLigaturesInGlyphCache(Vector<String>&);
diff --git a/Source/core/svg/SVGFontElement.idl b/Source/core/svg/SVGFontElement.idl
index 7c8b9ff..1d7b8aa 100644
--- a/Source/core/svg/SVGFontElement.idl
+++ b/Source/core/svg/SVGFontElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFontFaceElement.cpp b/Source/core/svg/SVGFontFaceElement.cpp
index 4c962b1..40c4168 100644
--- a/Source/core/svg/SVGFontFaceElement.cpp
+++ b/Source/core/svg/SVGFontFaceElement.cpp
@@ -66,7 +66,7 @@
 {
     if (!attrName.namespaceURI().isNull())
         return CSSPropertyInvalid;
-    
+
     static HashMap<StringImpl*, CSSPropertyID>* propertyNameToIdMap = 0;
     if (!propertyNameToIdMap) {
         propertyNameToIdMap = new HashMap<StringImpl*, CSSPropertyID>;
@@ -106,19 +106,19 @@
         // mapAttributeToCSSProperty(propertyNameToIdMap, widthsAttr);
         // mapAttributeToCSSProperty(propertyNameToIdMap, x_heightAttr);
     }
-    
+
     return propertyNameToIdMap->get(attrName.localName().impl());
 }
 
 void SVGFontFaceElement::parseAttribute(const QualifiedName& name, const AtomicString& value)
-{    
+{
     CSSPropertyID propId = cssPropertyIdForSVGAttributeName(name);
     if (propId > 0) {
         m_fontFaceRule->mutableProperties()->setProperty(propId, value, false);
         rebuildFontFace();
         return;
     }
-    
+
     SVGElement::parseAttribute(name, value);
 }
 
@@ -191,7 +191,7 @@
 
     // Spec: The default Y-coordinate in the font coordinate system of the origin of a glyph to be used when
     // drawing vertically oriented text. If the attribute is not specified, the effect is as if the attribute
-    // were set to the position specified by the font's ascent attribute.             
+    // were set to the position specified by the font's ascent attribute.
     const AtomicString& value = m_fontElement->fastGetAttribute(vert_origin_yAttr);
     if (value.isEmpty())
         return ascent();
@@ -205,7 +205,7 @@
         return 0.0f;
 
     // Spec: The default vertical advance after rendering a glyph in vertical orientation. If the attribute is
-    // not specified, the effect is as if a value equivalent of one em were specified (see units-per-em).                    
+    // not specified, the effect is as if a value equivalent of one em were specified (see units-per-em).
     const AtomicString& value = m_fontElement->fastGetAttribute(vert_adv_yAttr);
        if (value.isEmpty())
         return 1.0f;
@@ -304,7 +304,7 @@
     // Parse in-memory CSS rules
     m_fontFaceRule->mutableProperties()->addParsedProperty(CSSProperty(CSSPropertySrc, list));
 
-    if (describesParentFont) {    
+    if (describesParentFont) {
         // Traverse parsed CSS values and associate CSSFontFaceSrcValue elements with ourselves.
         RefPtr<CSSValue> src = m_fontFaceRule->properties()->getPropertyCSSValue(CSSPropertySrc);
         CSSValueList* srcList = static_cast<CSSValueList*>(src.get());
diff --git a/Source/core/svg/SVGFontFaceElement.h b/Source/core/svg/SVGFontFaceElement.h
index 450c255..844ac29 100644
--- a/Source/core/svg/SVGFontFaceElement.h
+++ b/Source/core/svg/SVGFontFaceElement.h
@@ -48,7 +48,7 @@
 
     SVGFontElement* associatedFontElement() const;
     void rebuildFontFace();
-    
+
     StyleRuleFontFace* fontFaceRule() const { return m_fontFaceRule.get(); }
 
 private:
diff --git a/Source/core/svg/SVGFontFaceElement.idl b/Source/core/svg/SVGFontFaceElement.idl
index 1286a4e..3cb7b69 100644
--- a/Source/core/svg/SVGFontFaceElement.idl
+++ b/Source/core/svg/SVGFontFaceElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFontFaceFormatElement.cpp b/Source/core/svg/SVGFontFaceFormatElement.cpp
index 802c22d..c3835d1 100644
--- a/Source/core/svg/SVGFontFaceFormatElement.cpp
+++ b/Source/core/svg/SVGFontFaceFormatElement.cpp
@@ -26,9 +26,9 @@
 #include "core/svg/SVGFontFaceElement.h"
 
 namespace WebCore {
-    
+
 using namespace SVGNames;
-    
+
 inline SVGFontFaceFormatElement::SVGFontFaceFormatElement(const QualifiedName& tagName, Document* document)
     : SVGElement(tagName, document)
 {
@@ -47,11 +47,11 @@
 
     if (!parentNode() || !parentNode()->hasTagName(font_face_uriTag))
         return;
-    
+
     ContainerNode* ancestor = parentNode()->parentNode();
     if (!ancestor || !ancestor->hasTagName(font_face_srcTag))
         return;
-    
+
     ancestor = ancestor->parentNode();
     if (ancestor && ancestor->hasTagName(font_faceTag))
         static_cast<SVGFontFaceElement*>(ancestor)->rebuildFontFace();
diff --git a/Source/core/svg/SVGFontFaceFormatElement.idl b/Source/core/svg/SVGFontFaceFormatElement.idl
index e468579..f2165be 100644
--- a/Source/core/svg/SVGFontFaceFormatElement.idl
+++ b/Source/core/svg/SVGFontFaceFormatElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFontFaceNameElement.cpp b/Source/core/svg/SVGFontFaceNameElement.cpp
index 5a4860b..e989e99 100644
--- a/Source/core/svg/SVGFontFaceNameElement.cpp
+++ b/Source/core/svg/SVGFontFaceNameElement.cpp
@@ -26,7 +26,7 @@
 #include "core/css/CSSFontFaceSrcValue.h"
 
 namespace WebCore {
-    
+
 inline SVGFontFaceNameElement::SVGFontFaceNameElement(const QualifiedName& tagName, Document* document)
     : SVGElement(tagName, document)
 {
diff --git a/Source/core/svg/SVGFontFaceNameElement.h b/Source/core/svg/SVGFontFaceNameElement.h
index 54f5a80..0becec8 100644
--- a/Source/core/svg/SVGFontFaceNameElement.h
+++ b/Source/core/svg/SVGFontFaceNameElement.h
@@ -30,7 +30,7 @@
 class SVGFontFaceNameElement FINAL : public SVGElement {
 public:
     static PassRefPtr<SVGFontFaceNameElement> create(const QualifiedName&, Document*);
-    
+
     PassRefPtr<CSSFontFaceSrcValue> srcValue() const;
 
 private:
diff --git a/Source/core/svg/SVGFontFaceNameElement.idl b/Source/core/svg/SVGFontFaceNameElement.idl
index 4f41fce..3729f2a 100644
--- a/Source/core/svg/SVGFontFaceNameElement.idl
+++ b/Source/core/svg/SVGFontFaceNameElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFontFaceSrcElement.cpp b/Source/core/svg/SVGFontFaceSrcElement.cpp
index 6e1321d..a658996 100644
--- a/Source/core/svg/SVGFontFaceSrcElement.cpp
+++ b/Source/core/svg/SVGFontFaceSrcElement.cpp
@@ -30,9 +30,9 @@
 #include "core/svg/SVGFontFaceUriElement.h"
 
 namespace WebCore {
-    
+
 using namespace SVGNames;
-    
+
 inline SVGFontFaceSrcElement::SVGFontFaceSrcElement(const QualifiedName& tagName, Document* document)
     : SVGElement(tagName, document)
 {
diff --git a/Source/core/svg/SVGFontFaceSrcElement.h b/Source/core/svg/SVGFontFaceSrcElement.h
index 82381c8..b099379 100644
--- a/Source/core/svg/SVGFontFaceSrcElement.h
+++ b/Source/core/svg/SVGFontFaceSrcElement.h
@@ -32,10 +32,10 @@
     static PassRefPtr<SVGFontFaceSrcElement> create(const QualifiedName&, Document*);
 
     PassRefPtr<CSSValueList> srcValue() const;
-    
+
 private:
     SVGFontFaceSrcElement(const QualifiedName&, Document*);
-    
+
     virtual void childrenChanged(bool changedByParser = false, Node* beforeChange = 0, Node* afterChange = 0, int childCountDelta = 0);
 };
 
diff --git a/Source/core/svg/SVGFontFaceSrcElement.idl b/Source/core/svg/SVGFontFaceSrcElement.idl
index e85f13a..154473f 100644
--- a/Source/core/svg/SVGFontFaceSrcElement.idl
+++ b/Source/core/svg/SVGFontFaceSrcElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGFontFaceUriElement.cpp b/Source/core/svg/SVGFontFaceUriElement.cpp
index a260715..caa59d2 100644
--- a/Source/core/svg/SVGFontFaceUriElement.cpp
+++ b/Source/core/svg/SVGFontFaceUriElement.cpp
@@ -33,9 +33,9 @@
 #include "core/svg/SVGFontFaceElement.h"
 
 namespace WebCore {
-    
+
 using namespace SVGNames;
-    
+
 inline SVGFontFaceUriElement::SVGFontFaceUriElement(const QualifiedName& tagName, Document* document)
     : SVGElement(tagName, document)
 {
@@ -76,7 +76,7 @@
 
     if (!parentNode() || !parentNode()->hasTagName(font_face_srcTag))
         return;
-    
+
     ContainerNode* grandparent = parentNode()->parentNode();
     if (grandparent && grandparent->hasTagName(font_faceTag))
         static_cast<SVGFontFaceElement*>(grandparent)->rebuildFontFace();
diff --git a/Source/core/svg/SVGFontFaceUriElement.h b/Source/core/svg/SVGFontFaceUriElement.h
index e40bad0..1daa236 100644
--- a/Source/core/svg/SVGFontFaceUriElement.h
+++ b/Source/core/svg/SVGFontFaceUriElement.h
@@ -39,7 +39,7 @@
 
 private:
     SVGFontFaceUriElement(const QualifiedName&, Document*);
-    
+
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual void childrenChanged(bool changedByParser = false, Node* beforeChange = 0, Node* afterChange = 0, int childCountDelta = 0);
     virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE;
diff --git a/Source/core/svg/SVGFontFaceUriElement.idl b/Source/core/svg/SVGFontFaceUriElement.idl
index 234c2e5..bcbcb43 100644
--- a/Source/core/svg/SVGFontFaceUriElement.idl
+++ b/Source/core/svg/SVGFontFaceUriElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGForeignObjectElement.cpp b/Source/core/svg/SVGForeignObjectElement.cpp
index ffeec99..1969ed0 100644
--- a/Source/core/svg/SVGForeignObjectElement.cpp
+++ b/Source/core/svg/SVGForeignObjectElement.cpp
@@ -110,7 +110,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     bool isLengthAttribute = attrName == SVGNames::xAttr
                           || attrName == SVGNames::yAttr
                           || attrName == SVGNames::widthAttr
diff --git a/Source/core/svg/SVGForeignObjectElement.idl b/Source/core/svg/SVGForeignObjectElement.idl
index e8a02fc..778b9f5 100644
--- a/Source/core/svg/SVGForeignObjectElement.idl
+++ b/Source/core/svg/SVGForeignObjectElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGForeignObjectElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGGElement.idl b/Source/core/svg/SVGGElement.idl
index ea12d15..060969f 100644
--- a/Source/core/svg/SVGGElement.idl
+++ b/Source/core/svg/SVGGElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGGElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGGlyphElement.cpp b/Source/core/svg/SVGGlyphElement.cpp
index 865f2a6..4a09d87 100644
--- a/Source/core/svg/SVGGlyphElement.cpp
+++ b/Source/core/svg/SVGGlyphElement.cpp
@@ -123,7 +123,7 @@
 {
     SVGGlyph identifier;
     buildPathFromString(element->fastGetAttribute(SVGNames::dAttr), identifier.pathData);
- 
+
     // Spec: The horizontal advance after rendering the glyph in horizontal orientation.
     // If the attribute is not specified, the effect is as if the attribute were set to the
     // value of the font's horiz-adv-x attribute. Glyph widths are required to be non-negative,
diff --git a/Source/core/svg/SVGGlyphElement.idl b/Source/core/svg/SVGGlyphElement.idl
index e75e2cf..1501130 100644
--- a/Source/core/svg/SVGGlyphElement.idl
+++ b/Source/core/svg/SVGGlyphElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGGlyphMap.h b/Source/core/svg/SVGGlyphMap.h
index e3ef06c..ea45597 100644
--- a/Source/core/svg/SVGGlyphMap.h
+++ b/Source/core/svg/SVGGlyphMap.h
@@ -61,7 +61,7 @@
             m_namedGlyphs.add(glyphName, glyph.tableEntry);
             return;
         }
-    
+
         unsigned length = unicodeString.length();
 
         RefPtr<GlyphMapNode> node;
@@ -80,10 +80,10 @@
         SVGGlyph& lastGlyph = node->glyphs.last();
         lastGlyph.priority = m_currentPriority++;
         lastGlyph.unicodeStringLength = length;
-    
+
         // If the glyph is named, also add it to the named glyph name, and to the glyph table in both cases.
         appendToGlyphTable(lastGlyph);
-        if (hasGlyphName)  
+        if (hasGlyphName)
             m_namedGlyphs.add(glyphName, lastGlyph.tableEntry);
     }
 
@@ -119,9 +119,9 @@
 
         std::sort(glyphs.begin(), glyphs.end(), compareGlyphPriority);
     }
-    
-    void clear() 
-    { 
+
+    void clear()
+    {
         m_rootLayer.clear();
         m_glyphTable.clear();
         m_currentPriority = 0;
diff --git a/Source/core/svg/SVGGradientElement.cpp b/Source/core/svg/SVGGradientElement.cpp
index baa9881..01cc9ed 100644
--- a/Source/core/svg/SVGGradientElement.cpp
+++ b/Source/core/svg/SVGGradientElement.cpp
@@ -52,7 +52,7 @@
     REGISTER_LOCAL_ANIMATED_PROPERTY(externalResourcesRequired)
     REGISTER_PARENT_ANIMATED_PROPERTIES(SVGStyledElement)
 END_REGISTER_ANIMATED_PROPERTIES
- 
+
 SVGGradientElement::SVGGradientElement(const QualifiedName& tagName, Document* document)
     : SVGStyledElement(tagName, document)
     , m_spreadMethod(SVGSpreadMethodPad)
@@ -120,11 +120,11 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (RenderObject* object = renderer())
         object->setNeedsLayout(true);
 }
-    
+
 void SVGGradientElement::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta)
 {
     SVGStyledElement::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta);
diff --git a/Source/core/svg/SVGGradientElement.h b/Source/core/svg/SVGGradientElement.h
index dc578af..4c23be9 100644
--- a/Source/core/svg/SVGGradientElement.h
+++ b/Source/core/svg/SVGGradientElement.h
@@ -85,7 +85,7 @@
     };
 
     Vector<Gradient::ColorStop> buildStops();
- 
+
 protected:
     SVGGradientElement(const QualifiedName&, Document*);
 
diff --git a/Source/core/svg/SVGGradientElement.idl b/Source/core/svg/SVGGradientElement.idl
index e378d7f..cba4d69 100644
--- a/Source/core/svg/SVGGradientElement.idl
+++ b/Source/core/svg/SVGGradientElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGImageElement.cpp b/Source/core/svg/SVGImageElement.cpp
index 945da4f..89b6b7f 100644
--- a/Source/core/svg/SVGImageElement.cpp
+++ b/Source/core/svg/SVGImageElement.cpp
@@ -139,7 +139,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     bool isLengthAttribute = attrName == SVGNames::xAttr
                           || attrName == SVGNames::yAttr
                           || attrName == SVGNames::widthAttr
diff --git a/Source/core/svg/SVGImageElement.h b/Source/core/svg/SVGImageElement.h
index 9f78f40..1ef658b 100644
--- a/Source/core/svg/SVGImageElement.h
+++ b/Source/core/svg/SVGImageElement.h
@@ -40,7 +40,7 @@
 
 private:
     SVGImageElement(const QualifiedName&, Document*);
-    
+
     virtual bool isValid() const { return SVGTests::isValid(); }
     virtual bool supportsFocus() const { return true; }
 
diff --git a/Source/core/svg/SVGImageElement.idl b/Source/core/svg/SVGImageElement.idl
index da33d4d..a2bc7b0 100644
--- a/Source/core/svg/SVGImageElement.idl
+++ b/Source/core/svg/SVGImageElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGImageElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGLangSpace.cpp b/Source/core/svg/SVGLangSpace.cpp
index 237ab0d..a43e685 100644
--- a/Source/core/svg/SVGLangSpace.cpp
+++ b/Source/core/svg/SVGLangSpace.cpp
@@ -65,7 +65,7 @@
 {
     return attrName.matches(XMLNames::langAttr) || attrName.matches(XMLNames::spaceAttr);
 }
-    
+
 void SVGLangSpace::addSupportedAttributes(HashSet<QualifiedName>& supportedAttributes)
 {
     DEFINE_STATIC_LOCAL(AtomicString, xmlPrefix, ("xml", AtomicString::ConstructFromLiteral));
diff --git a/Source/core/svg/SVGLength.cpp b/Source/core/svg/SVGLength.cpp
index e277a2b..726bb2b 100644
--- a/Source/core/svg/SVGLength.cpp
+++ b/Source/core/svg/SVGLength.cpp
@@ -40,7 +40,7 @@
 
 static inline SVGLengthMode extractMode(unsigned int unit)
 {
-    unsigned int mode = unit >> 4;    
+    unsigned int mode = unit >> 4;
     return static_cast<SVGLengthMode>(mode);
 }
 
@@ -56,7 +56,7 @@
     switch (type) {
     case LengthTypeUnknown:
     case LengthTypeNumber:
-        return "";    
+        return "";
     case LengthTypePercentage:
         return "%";
     case LengthTypeEMS:
@@ -281,7 +281,7 @@
     if (ec)
         return;
 
-    unsigned int originalUnitAndType = m_unit;    
+    unsigned int originalUnitAndType = m_unit;
     m_unit = storeUnit(extractMode(m_unit), static_cast<SVGLengthType>(type));
     setValue(valueInUserUnits, context, ec);
     if (!ec)
@@ -339,7 +339,7 @@
     ExceptionCode ec = 0;
     SVGLength length;
     length.newValueSpecifiedUnits(svgType, value->getFloatValue(), ec);
-    if (ec)    
+    if (ec)
         return SVGLength();
 
     return length;
@@ -390,7 +390,7 @@
 {
     typedef HashMap<QualifiedName, SVGLengthMode> LengthModeForLengthAttributeMap;
     DEFINE_STATIC_LOCAL(LengthModeForLengthAttributeMap, s_lengthModeMap, ());
-    
+
     if (s_lengthModeMap.isEmpty()) {
         s_lengthModeMap.set(SVGNames::xAttr, LengthModeWidth);
         s_lengthModeMap.set(SVGNames::yAttr, LengthModeHeight);
@@ -410,14 +410,14 @@
         s_lengthModeMap.set(SVGNames::refXAttr, LengthModeWidth);
         s_lengthModeMap.set(SVGNames::refYAttr, LengthModeHeight);
         s_lengthModeMap.set(SVGNames::markerWidthAttr, LengthModeWidth);
-        s_lengthModeMap.set(SVGNames::markerHeightAttr, LengthModeHeight);        
+        s_lengthModeMap.set(SVGNames::markerHeightAttr, LengthModeHeight);
         s_lengthModeMap.set(SVGNames::textLengthAttr, LengthModeWidth);
         s_lengthModeMap.set(SVGNames::startOffsetAttr, LengthModeWidth);
     }
-    
+
     if (s_lengthModeMap.contains(attrName))
         return s_lengthModeMap.get(attrName);
-    
+
     return LengthModeOther;
 }
 
diff --git a/Source/core/svg/SVGLength.h b/Source/core/svg/SVGLength.h
index 3d822af..413ab68 100644
--- a/Source/core/svg/SVGLength.h
+++ b/Source/core/svg/SVGLength.h
@@ -81,7 +81,7 @@
     String valueAsString() const;
     void setValueAsString(const String&, ExceptionCode&);
     void setValueAsString(const String&, SVGLengthMode, ExceptionCode&);
-    
+
     void newValueSpecifiedUnits(unsigned short, float valueInSpecifiedUnits, ExceptionCode&);
     void convertToSpecifiedUnits(unsigned short, const SVGLengthContext&, ExceptionCode&);
 
@@ -92,8 +92,8 @@
         return type == LengthTypePercentage || type == LengthTypeEMS || type == LengthTypeEXS;
     }
 
-    bool isZero() const 
-    { 
+    bool isZero() const
+    {
         return !m_valueInSpecifiedUnits;
     }
 
diff --git a/Source/core/svg/SVGLength.idl b/Source/core/svg/SVGLength.idl
index e9fd4b6..e073b1a 100644
--- a/Source/core/svg/SVGLength.idl
+++ b/Source/core/svg/SVGLength.idl
@@ -40,7 +40,7 @@
     [StrictTypeChecking] attribute float valueInSpecifiedUnits;
     [TreatNullAs=NullString, StrictTypeChecking, SetterRaisesException] attribute DOMString valueAsString;
 
-    [StrictTypeChecking, RaisesException] void newValueSpecifiedUnits(unsigned short unitType, 
+    [StrictTypeChecking, RaisesException] void newValueSpecifiedUnits(unsigned short unitType,
                                                      float valueInSpecifiedUnits);
 
     [Custom, StrictTypeChecking, RaisesException] void convertToSpecifiedUnits(unsigned short unitType);
diff --git a/Source/core/svg/SVGLengthContext.cpp b/Source/core/svg/SVGLengthContext.cpp
index b7fc72c..b6563cb 100644
--- a/Source/core/svg/SVGLengthContext.cpp
+++ b/Source/core/svg/SVGLengthContext.cpp
@@ -300,7 +300,7 @@
     SVGElement* viewportElement = m_context->viewportElement();
     if (!viewportElement || !viewportElement->isSVGSVGElement())
         return false;
-    
+
     const SVGSVGElement* svg = static_cast<const SVGSVGElement*>(viewportElement);
     FloatSize viewportSize = svg->currentViewBoxRect().size();
     if (viewportSize.isEmpty())
diff --git a/Source/core/svg/SVGLengthList.h b/Source/core/svg/SVGLengthList.h
index 1544943..44bc7ca 100644
--- a/Source/core/svg/SVGLengthList.h
+++ b/Source/core/svg/SVGLengthList.h
@@ -30,7 +30,7 @@
 public:
     SVGLengthList() { }
 
-    void parse(const String& value, SVGLengthMode); 
+    void parse(const String& value, SVGLengthMode);
     String valueAsString() const;
 
 private:
diff --git a/Source/core/svg/SVGLengthList.idl b/Source/core/svg/SVGLengthList.idl
index af3ca10..4149ab6 100644
--- a/Source/core/svg/SVGLengthList.idl
+++ b/Source/core/svg/SVGLengthList.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGLengthList {
diff --git a/Source/core/svg/SVGLineElement.cpp b/Source/core/svg/SVGLineElement.cpp
index 715f8af..c699f21 100644
--- a/Source/core/svg/SVGLineElement.cpp
+++ b/Source/core/svg/SVGLineElement.cpp
@@ -106,7 +106,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     bool isLengthAttribute = attrName == SVGNames::x1Attr
                           || attrName == SVGNames::y1Attr
                           || attrName == SVGNames::x2Attr
diff --git a/Source/core/svg/SVGLineElement.h b/Source/core/svg/SVGLineElement.h
index 110da59..2deed76 100644
--- a/Source/core/svg/SVGLineElement.h
+++ b/Source/core/svg/SVGLineElement.h
@@ -35,7 +35,7 @@
 
 private:
     SVGLineElement(const QualifiedName&, Document*);
-    
+
     virtual bool isValid() const { return SVGTests::isValid(); }
     virtual bool supportsFocus() const { return true; }
 
diff --git a/Source/core/svg/SVGLineElement.idl b/Source/core/svg/SVGLineElement.idl
index 14ae43e..9df8fe6 100644
--- a/Source/core/svg/SVGLineElement.idl
+++ b/Source/core/svg/SVGLineElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGLineElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGLinearGradientElement.cpp b/Source/core/svg/SVGLinearGradientElement.cpp
index 700b2ab..68237ed 100644
--- a/Source/core/svg/SVGLinearGradientElement.cpp
+++ b/Source/core/svg/SVGLinearGradientElement.cpp
@@ -106,7 +106,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     updateRelativeLengthsInformation();
 
     if (RenderObject* object = renderer())
diff --git a/Source/core/svg/SVGLinearGradientElement.idl b/Source/core/svg/SVGLinearGradientElement.idl
index 0d8964a..9ce3ee6 100644
--- a/Source/core/svg/SVGLinearGradientElement.idl
+++ b/Source/core/svg/SVGLinearGradientElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGLinearGradientElement : SVGGradientElement {
diff --git a/Source/core/svg/SVGLocatable.h b/Source/core/svg/SVGLocatable.h
index bac961d..b397aaf 100644
--- a/Source/core/svg/SVGLocatable.h
+++ b/Source/core/svg/SVGLocatable.h
@@ -40,7 +40,7 @@
     virtual SVGElement* farthestViewportElement() const = 0;
 
     enum StyleUpdateStrategy { AllowStyleUpdate, DisallowStyleUpdate };
-    
+
     virtual SVGRect getBBox(StyleUpdateStrategy) = 0;
     virtual AffineTransform getCTM(StyleUpdateStrategy) = 0;
     virtual AffineTransform getScreenCTM(StyleUpdateStrategy) = 0;
diff --git a/Source/core/svg/SVGMPathElement.h b/Source/core/svg/SVGMPathElement.h
index f1e83a5..813c7c1 100644
--- a/Source/core/svg/SVGMPathElement.h
+++ b/Source/core/svg/SVGMPathElement.h
@@ -27,7 +27,7 @@
 #include "core/svg/SVGURIReference.h"
 
 namespace WebCore {
-    
+
 class SVGPathElement;
 
 class SVGMPathElement FINAL : public SVGElement,
diff --git a/Source/core/svg/SVGMPathElement.idl b/Source/core/svg/SVGMPathElement.idl
index 3fb56ec..3849582 100644
--- a/Source/core/svg/SVGMPathElement.idl
+++ b/Source/core/svg/SVGMPathElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGMPathElement : SVGElement {
diff --git a/Source/core/svg/SVGMarkerElement.cpp b/Source/core/svg/SVGMarkerElement.cpp
index 1f2efeb..d6fa00b 100644
--- a/Source/core/svg/SVGMarkerElement.cpp
+++ b/Source/core/svg/SVGMarkerElement.cpp
@@ -29,7 +29,7 @@
 #include "core/svg/SVGFitToViewBox.h"
 
 namespace WebCore {
- 
+
 // Define custom animated property 'orientType'.
 const SVGPropertyInfo* SVGMarkerElement::orientTypePropertyInfo()
 {
@@ -75,7 +75,7 @@
     , m_refX(LengthModeWidth)
     , m_refY(LengthModeHeight)
     , m_markerWidth(LengthModeWidth, "3")
-    , m_markerHeight(LengthModeHeight, "3") 
+    , m_markerHeight(LengthModeHeight, "3")
     , m_markerUnits(SVGMarkerUnitsStrokeWidth)
     , m_orientType(SVGMarkerOrientAngle)
 {
@@ -164,7 +164,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::refXAttr
         || attrName == SVGNames::refYAttr
         || attrName == SVGNames::markerWidthAttr
@@ -190,7 +190,7 @@
 {
     setOrientTypeBaseValue(SVGMarkerOrientAuto);
     setOrientAngleBaseValue(SVGAngle());
- 
+
     // Mark orientAttr dirty - the next XML DOM access of that attribute kicks in synchronization.
     m_orientAngle.shouldSynchronize = true;
     m_orientType.shouldSynchronize = true;
@@ -245,7 +245,7 @@
     return SVGAnimatedProperty::lookupOrCreateWrapper<SVGMarkerElement, SVGAnimatedEnumerationPropertyTearOff<SVGMarkerOrientType>, SVGMarkerOrientType>
            (ownerType, orientTypePropertyInfo(), ownerType->m_orientType.value);
 }
-  
+
 PassRefPtr<SVGAnimatedEnumerationPropertyTearOff<SVGMarkerOrientType> > SVGMarkerElement::orientType()
 {
     m_orientType.shouldSynchronize = true;
diff --git a/Source/core/svg/SVGMarkerElement.h b/Source/core/svg/SVGMarkerElement.h
index df6a0c5..62f6476 100644
--- a/Source/core/svg/SVGMarkerElement.h
+++ b/Source/core/svg/SVGMarkerElement.h
@@ -138,7 +138,7 @@
 
     static const AtomicString& orientTypeIdentifier();
     static const AtomicString& orientAngleIdentifier();
- 
+
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGMarkerElement)
         DECLARE_ANIMATED_LENGTH(RefX, refX)
         DECLARE_ANIMATED_LENGTH(RefY, refY)
@@ -150,7 +150,7 @@
         DECLARE_ANIMATED_RECT(ViewBox, viewBox)
         DECLARE_ANIMATED_PRESERVEASPECTRATIO(PreserveAspectRatio, preserveAspectRatio)
     END_DECLARE_ANIMATED_PROPERTIES
-  
+
 public:
     // Custom 'orientType' property.
     static void synchronizeOrientType(SVGElement* contextElement);
diff --git a/Source/core/svg/SVGMarkerElement.idl b/Source/core/svg/SVGMarkerElement.idl
index f5da729..5ebd240 100644
--- a/Source/core/svg/SVGMarkerElement.idl
+++ b/Source/core/svg/SVGMarkerElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGMarkerElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGMaskElement.cpp b/Source/core/svg/SVGMaskElement.cpp
index 838cf5d..ab7fbbf 100644
--- a/Source/core/svg/SVGMaskElement.cpp
+++ b/Source/core/svg/SVGMaskElement.cpp
@@ -130,7 +130,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::xAttr
         || attrName == SVGNames::yAttr
         || attrName == SVGNames::widthAttr
diff --git a/Source/core/svg/SVGMaskElement.idl b/Source/core/svg/SVGMaskElement.idl
index 2c10a93..f24eb2e 100644
--- a/Source/core/svg/SVGMaskElement.idl
+++ b/Source/core/svg/SVGMaskElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGMaskElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGMissingGlyphElement.idl b/Source/core/svg/SVGMissingGlyphElement.idl
index f52c16b..c2b68ad 100644
--- a/Source/core/svg/SVGMissingGlyphElement.idl
+++ b/Source/core/svg/SVGMissingGlyphElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGNumberList.idl b/Source/core/svg/SVGNumberList.idl
index 78157f6..4711cc6 100644
--- a/Source/core/svg/SVGNumberList.idl
+++ b/Source/core/svg/SVGNumberList.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGNumberList {
diff --git a/Source/core/svg/SVGPaint.idl b/Source/core/svg/SVGPaint.idl
index 7735f83..8c1badb 100644
--- a/Source/core/svg/SVGPaint.idl
+++ b/Source/core/svg/SVGPaint.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPaint : SVGColor {
diff --git a/Source/core/svg/SVGParserUtilities.cpp b/Source/core/svg/SVGParserUtilities.cpp
index b0bd909..bee9c1b 100644
--- a/Source/core/svg/SVGParserUtilities.cpp
+++ b/Source/core/svg/SVGParserUtilities.cpp
@@ -38,7 +38,7 @@
     return x >= -max && x <= max;
 }
 
-// We use this generic parseNumber function to allow the Path parsing code to work 
+// We use this generic parseNumber function to allow the Path parsing code to work
 // at a higher precision internally, without any unnecessary runtime cost or code
 // complexity.
 template <typename CharType, typename FloatType>
@@ -61,8 +61,8 @@
     else if (ptr < end && *ptr == '-') {
         ptr++;
         sign = -1;
-    } 
-    
+    }
+
     if (ptr == end || ((*ptr < '0' || *ptr > '9') && *ptr != '.'))
         // The first character of a number must be one of [0-9+-.]
         return false;
@@ -86,18 +86,18 @@
 
     if (ptr < end && *ptr == '.') { // read the decimals
         ptr++;
-        
+
         // There must be a least one digit following the .
         if (ptr >= end || *ptr < '0' || *ptr > '9')
             return false;
-        
+
         while (ptr < end && *ptr >= '0' && *ptr <= '9')
             decimal += (*(ptr++) - '0') * (frac *= static_cast<FloatType>(0.1));
     }
 
     // read the exponent part
-    if (ptr != start && ptr + 1 < end && (*ptr == 'e' || *ptr == 'E') 
-        && (ptr[1] != 'x' && ptr[1] != 'm')) { 
+    if (ptr != start && ptr + 1 < end && (*ptr == 'e' || *ptr == 'E')
+        && (ptr[1] != 'x' && ptr[1] != 'm')) {
         ptr++;
 
         // read the sign of the exponent
@@ -107,7 +107,7 @@
             ptr++;
             expsign = -1;
         }
-        
+
         // There must be an exponent
         if (ptr >= end || *ptr < '0' || *ptr > '9')
             return false;
@@ -158,7 +158,7 @@
     return genericParseNumber(ptr, end, number, skip);
 }
 
-bool parseNumber(const UChar*& ptr, const UChar* end, float& number, bool skip) 
+bool parseNumber(const UChar*& ptr, const UChar* end, float& number, bool skip)
 {
     return genericParseNumber(ptr, end, number, skip);
 }
@@ -191,9 +191,9 @@
         flag = true;
     else
         return false;
-    
+
     skipOptionalSVGSpacesOrDelimiter(ptr, end);
-    
+
     return true;
 }
 
@@ -354,7 +354,7 @@
 {
     if (length < 2 || characters[0] != 'U' || characters[1] != '+')
         return false;
-    
+
     // Parse the starting hex number (or its prefix).
     unsigned startRange = 0;
     unsigned startLength = 0;
@@ -370,12 +370,12 @@
         startRange = (startRange << 4) | toASCIIHexValue(*ptr);
         ++ptr;
     }
-    
+
     // Handle the case of ranges separated by "-" sign.
     if (2 + startLength < length && *ptr == '-') {
         if (!startLength)
             return false;
-        
+
         // Parse the ending hex number (or its prefix).
         unsigned endRange = 0;
         unsigned endLength = 0;
@@ -389,15 +389,15 @@
             endRange = (endRange << 4) | toASCIIHexValue(*ptr);
             ++ptr;
         }
-        
+
         if (!endLength)
             return false;
-        
+
         range.first = startRange;
         range.second = endRange;
         return true;
     }
-    
+
     // Handle the case of a number with some optional trailing question marks.
     unsigned endRange = startRange;
     while (ptr < end) {
@@ -410,10 +410,10 @@
         endRange = (endRange << 4) | 0xF;
         ++ptr;
     }
-    
+
     if (!startLength)
         return false;
-    
+
     range.first = startRange;
     range.second = endRange;
     return true;
diff --git a/Source/core/svg/SVGPathBlender.cpp b/Source/core/svg/SVGPathBlender.cpp
index 7dce176..2e4151e 100644
--- a/Source/core/svg/SVGPathBlender.cpp
+++ b/Source/core/svg/SVGPathBlender.cpp
@@ -53,16 +53,16 @@
 
     if (m_fromMode == m_toMode)
         return blend(from, to, m_progress);
-    
+
     float fromValue = blendMode == BlendHorizontal ? m_fromCurrentPoint.x() : m_fromCurrentPoint.y();
     float toValue = blendMode == BlendHorizontal ? m_toCurrentPoint.x() : m_toCurrentPoint.y();
 
     // Transform toY to the coordinate mode of fromY
     float animValue = blend(from, m_fromMode == AbsoluteCoordinates ? to + toValue : to - toValue, m_progress);
-    
+
     if (m_isInFirstHalfOfAnimation)
         return animValue;
-    
+
     // Transform the animated point to the coordinate mode, needed for the current progress.
     float currentValue = blend(fromValue, toValue, m_progress);
     return m_toMode == AbsoluteCoordinates ? animValue + currentValue : animValue - currentValue;
diff --git a/Source/core/svg/SVGPathBlender.h b/Source/core/svg/SVGPathBlender.h
index 8990e63..541b2a6 100644
--- a/Source/core/svg/SVGPathBlender.h
+++ b/Source/core/svg/SVGPathBlender.h
@@ -60,7 +60,7 @@
 
     FloatPoint m_fromCurrentPoint;
     FloatPoint m_toCurrentPoint;
-    
+
     PathCoordinateMode m_fromMode;
     PathCoordinateMode m_toMode;
     float m_progress;
diff --git a/Source/core/svg/SVGPathBuilder.cpp b/Source/core/svg/SVGPathBuilder.cpp
index a9de7c6..a489a79 100644
--- a/Source/core/svg/SVGPathBuilder.cpp
+++ b/Source/core/svg/SVGPathBuilder.cpp
@@ -58,7 +58,7 @@
     } else {
         m_current = targetPoint;
         m_path->addBezierCurveTo(point1, point2, m_current);
-    }    
+    }
 }
 
 void SVGPathBuilder::closePath()
diff --git a/Source/core/svg/SVGPathElement.cpp b/Source/core/svg/SVGPathElement.cpp
index 2cf28ec..a06d6c6 100644
--- a/Source/core/svg/SVGPathElement.cpp
+++ b/Source/core/svg/SVGPathElement.cpp
@@ -377,7 +377,7 @@
     }
 
     invalidateSVGAttributes();
-    
+
     RenderSVGPath* renderer = toRenderSVGPath(this->renderer());
     if (!renderer)
         return;
diff --git a/Source/core/svg/SVGPathElement.h b/Source/core/svg/SVGPathElement.h
index 0ee1888..496472d 100644
--- a/Source/core/svg/SVGPathElement.h
+++ b/Source/core/svg/SVGPathElement.h
@@ -56,7 +56,7 @@
                              public SVGExternalResourcesRequired {
 public:
     static PassRefPtr<SVGPathElement> create(const QualifiedName&, Document*);
-    
+
     float getTotalLength();
     SVGPoint getPointAtLength(float distance);
     unsigned getPathSegAtLength(float distance);
diff --git a/Source/core/svg/SVGPathElement.idl b/Source/core/svg/SVGPathElement.idl
index 1bfca0a..083663b 100644
--- a/Source/core/svg/SVGPathElement.idl
+++ b/Source/core/svg/SVGPathElement.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathElement : SVGGraphicsElement {
@@ -33,51 +33,51 @@
 
     SVGPathSegClosePath createSVGPathSegClosePath();
 
-    SVGPathSegMovetoAbs createSVGPathSegMovetoAbs([Default=Undefined] optional float x, 
+    SVGPathSegMovetoAbs createSVGPathSegMovetoAbs([Default=Undefined] optional float x,
                                                   [Default=Undefined] optional float y);
-    SVGPathSegMovetoRel createSVGPathSegMovetoRel([Default=Undefined] optional float x, 
+    SVGPathSegMovetoRel createSVGPathSegMovetoRel([Default=Undefined] optional float x,
                                                   [Default=Undefined] optional float y);
 
-    SVGPathSegLinetoAbs createSVGPathSegLinetoAbs([Default=Undefined] optional float x, 
+    SVGPathSegLinetoAbs createSVGPathSegLinetoAbs([Default=Undefined] optional float x,
                                                   [Default=Undefined] optional float y);
-    SVGPathSegLinetoRel createSVGPathSegLinetoRel([Default=Undefined] optional float x, 
+    SVGPathSegLinetoRel createSVGPathSegLinetoRel([Default=Undefined] optional float x,
                                                   [Default=Undefined] optional float y);
 
-    SVGPathSegCurvetoCubicAbs createSVGPathSegCurvetoCubicAbs([Default=Undefined] optional float x, 
-                                                              [Default=Undefined] optional float y, 
-                                                              [Default=Undefined] optional float x1, 
-                                                              [Default=Undefined] optional float y1, 
-                                                              [Default=Undefined] optional float x2, 
+    SVGPathSegCurvetoCubicAbs createSVGPathSegCurvetoCubicAbs([Default=Undefined] optional float x,
+                                                              [Default=Undefined] optional float y,
+                                                              [Default=Undefined] optional float x1,
+                                                              [Default=Undefined] optional float y1,
+                                                              [Default=Undefined] optional float x2,
                                                               [Default=Undefined] optional float y2);
-    SVGPathSegCurvetoCubicRel createSVGPathSegCurvetoCubicRel([Default=Undefined] optional float x, 
-                                                              [Default=Undefined] optional float y, 
-                                                              [Default=Undefined] optional float x1, 
-                                                              [Default=Undefined] optional float y1, 
-                                                              [Default=Undefined] optional float x2, 
+    SVGPathSegCurvetoCubicRel createSVGPathSegCurvetoCubicRel([Default=Undefined] optional float x,
+                                                              [Default=Undefined] optional float y,
+                                                              [Default=Undefined] optional float x1,
+                                                              [Default=Undefined] optional float y1,
+                                                              [Default=Undefined] optional float x2,
                                                               [Default=Undefined] optional float y2);
 
-    SVGPathSegCurvetoQuadraticAbs createSVGPathSegCurvetoQuadraticAbs([Default=Undefined] optional float x, 
-                                                                      [Default=Undefined] optional float y, 
-                                                                      [Default=Undefined] optional float x1, 
+    SVGPathSegCurvetoQuadraticAbs createSVGPathSegCurvetoQuadraticAbs([Default=Undefined] optional float x,
+                                                                      [Default=Undefined] optional float y,
+                                                                      [Default=Undefined] optional float x1,
                                                                       [Default=Undefined] optional float y1);
-    SVGPathSegCurvetoQuadraticRel createSVGPathSegCurvetoQuadraticRel([Default=Undefined] optional float x, 
-                                                                      [Default=Undefined] optional float y, 
-                                                                      [Default=Undefined] optional float x1, 
+    SVGPathSegCurvetoQuadraticRel createSVGPathSegCurvetoQuadraticRel([Default=Undefined] optional float x,
+                                                                      [Default=Undefined] optional float y,
+                                                                      [Default=Undefined] optional float x1,
                                                                       [Default=Undefined] optional float y1);
 
-    SVGPathSegArcAbs createSVGPathSegArcAbs([Default=Undefined] optional float x, 
-                                            [Default=Undefined] optional float y, 
-                                            [Default=Undefined] optional float r1, 
-                                            [Default=Undefined] optional float r2, 
-                                            [Default=Undefined] optional float angle, 
-                                            [Default=Undefined] optional boolean largeArcFlag, 
+    SVGPathSegArcAbs createSVGPathSegArcAbs([Default=Undefined] optional float x,
+                                            [Default=Undefined] optional float y,
+                                            [Default=Undefined] optional float r1,
+                                            [Default=Undefined] optional float r2,
+                                            [Default=Undefined] optional float angle,
+                                            [Default=Undefined] optional boolean largeArcFlag,
                                             [Default=Undefined] optional boolean sweepFlag);
-    SVGPathSegArcRel createSVGPathSegArcRel([Default=Undefined] optional float x, 
-                                            [Default=Undefined] optional float y, 
-                                            [Default=Undefined] optional float r1, 
-                                            [Default=Undefined] optional float r2, 
-                                            [Default=Undefined] optional float angle, 
-                                            [Default=Undefined] optional boolean largeArcFlag, 
+    SVGPathSegArcRel createSVGPathSegArcRel([Default=Undefined] optional float x,
+                                            [Default=Undefined] optional float y,
+                                            [Default=Undefined] optional float r1,
+                                            [Default=Undefined] optional float r2,
+                                            [Default=Undefined] optional float angle,
+                                            [Default=Undefined] optional boolean largeArcFlag,
                                             [Default=Undefined] optional boolean sweepFlag);
 
     SVGPathSegLinetoHorizontalAbs createSVGPathSegLinetoHorizontalAbs([Default=Undefined] optional float x);
@@ -86,18 +86,18 @@
     SVGPathSegLinetoVerticalAbs createSVGPathSegLinetoVerticalAbs([Default=Undefined] optional float y);
     SVGPathSegLinetoVerticalRel createSVGPathSegLinetoVerticalRel([Default=Undefined] optional float y);
 
-    SVGPathSegCurvetoCubicSmoothAbs createSVGPathSegCurvetoCubicSmoothAbs([Default=Undefined] optional float x, 
-                                                                          [Default=Undefined] optional float y, 
-                                                                          [Default=Undefined] optional float x2, 
+    SVGPathSegCurvetoCubicSmoothAbs createSVGPathSegCurvetoCubicSmoothAbs([Default=Undefined] optional float x,
+                                                                          [Default=Undefined] optional float y,
+                                                                          [Default=Undefined] optional float x2,
                                                                           [Default=Undefined] optional float y2);
-    SVGPathSegCurvetoCubicSmoothRel createSVGPathSegCurvetoCubicSmoothRel([Default=Undefined] optional float x, 
-                                                                          [Default=Undefined] optional float y, 
-                                                                          [Default=Undefined] optional float x2, 
+    SVGPathSegCurvetoCubicSmoothRel createSVGPathSegCurvetoCubicSmoothRel([Default=Undefined] optional float x,
+                                                                          [Default=Undefined] optional float y,
+                                                                          [Default=Undefined] optional float x2,
                                                                           [Default=Undefined] optional float y2);
 
-    SVGPathSegCurvetoQuadraticSmoothAbs createSVGPathSegCurvetoQuadraticSmoothAbs([Default=Undefined] optional float x, 
+    SVGPathSegCurvetoQuadraticSmoothAbs createSVGPathSegCurvetoQuadraticSmoothAbs([Default=Undefined] optional float x,
                                                                                   [Default=Undefined] optional float y);
-    SVGPathSegCurvetoQuadraticSmoothRel createSVGPathSegCurvetoQuadraticSmoothRel([Default=Undefined] optional float x, 
+    SVGPathSegCurvetoQuadraticSmoothRel createSVGPathSegCurvetoQuadraticSmoothRel([Default=Undefined] optional float x,
                                                                                   [Default=Undefined] optional float y);
 
     readonly attribute SVGPathSegList pathSegList;
diff --git a/Source/core/svg/SVGPathSeg.idl b/Source/core/svg/SVGPathSeg.idl
index f5b1ae5..4ca8a2c 100644
--- a/Source/core/svg/SVGPathSeg.idl
+++ b/Source/core/svg/SVGPathSeg.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGPathSegArcAbs.idl b/Source/core/svg/SVGPathSegArcAbs.idl
index 90bda4c..a50286f 100644
--- a/Source/core/svg/SVGPathSegArcAbs.idl
+++ b/Source/core/svg/SVGPathSegArcAbs.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegArcAbs : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegArcRel.idl b/Source/core/svg/SVGPathSegArcRel.idl
index de46704..d682c2c 100644
--- a/Source/core/svg/SVGPathSegArcRel.idl
+++ b/Source/core/svg/SVGPathSegArcRel.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegArcRel : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegClosePath.idl b/Source/core/svg/SVGPathSegClosePath.idl
index f3eff1e..e05ca79 100644
--- a/Source/core/svg/SVGPathSegClosePath.idl
+++ b/Source/core/svg/SVGPathSegClosePath.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegClosePath : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl b/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl
index 4d35573..982cb68 100644
--- a/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl
+++ b/Source/core/svg/SVGPathSegCurvetoCubicAbs.idl
@@ -21,8 +21,8 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */ 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
 
 interface SVGPathSegCurvetoCubicAbs : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
diff --git a/Source/core/svg/SVGPathSegCurvetoCubicRel.idl b/Source/core/svg/SVGPathSegCurvetoCubicRel.idl
index 1dcbe2d..352bb42 100644
--- a/Source/core/svg/SVGPathSegCurvetoCubicRel.idl
+++ b/Source/core/svg/SVGPathSegCurvetoCubicRel.idl
@@ -21,8 +21,8 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */ 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
 
 interface SVGPathSegCurvetoCubicRel : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
diff --git a/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl b/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl
index 40a5c68..050926a 100644
--- a/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl
+++ b/Source/core/svg/SVGPathSegCurvetoCubicSmoothAbs.idl
@@ -21,8 +21,8 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */ 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
 
 interface SVGPathSegCurvetoCubicSmoothAbs : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
diff --git a/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl b/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl
index 58056a4..85605de 100644
--- a/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl
+++ b/Source/core/svg/SVGPathSegCurvetoCubicSmoothRel.idl
@@ -21,8 +21,8 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */ 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
 
 interface SVGPathSegCurvetoCubicSmoothRel : SVGPathSeg {
     [StrictTypeChecking] attribute float x;
diff --git a/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl b/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl
index 086998a..7549e8e 100644
--- a/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl
+++ b/Source/core/svg/SVGPathSegCurvetoQuadraticAbs.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegCurvetoQuadraticAbs : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl b/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl
index 49d2d02..cfd7e87 100644
--- a/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl
+++ b/Source/core/svg/SVGPathSegCurvetoQuadraticRel.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegCurvetoQuadraticRel : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl b/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl
index 8f1aea0..b5c5d3d 100644
--- a/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl
+++ b/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegCurvetoQuadraticSmoothAbs : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl b/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl
index 56d1a48..d464af0 100644
--- a/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl
+++ b/Source/core/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegCurvetoQuadraticSmoothRel : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegLinetoAbs.idl b/Source/core/svg/SVGPathSegLinetoAbs.idl
index d32db20..1f9dd98 100644
--- a/Source/core/svg/SVGPathSegLinetoAbs.idl
+++ b/Source/core/svg/SVGPathSegLinetoAbs.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegLinetoAbs : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl b/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl
index f5f3a81..f36159d 100644
--- a/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl
+++ b/Source/core/svg/SVGPathSegLinetoHorizontalAbs.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegLinetoHorizontalAbs : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl b/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl
index 853da9e..fdbb1c8 100644
--- a/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl
+++ b/Source/core/svg/SVGPathSegLinetoHorizontalRel.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegLinetoHorizontalRel : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegLinetoRel.idl b/Source/core/svg/SVGPathSegLinetoRel.idl
index 9246e95..4d24898 100644
--- a/Source/core/svg/SVGPathSegLinetoRel.idl
+++ b/Source/core/svg/SVGPathSegLinetoRel.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegLinetoRel : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl b/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl
index a4a924a..db7dc1c 100644
--- a/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl
+++ b/Source/core/svg/SVGPathSegLinetoVerticalAbs.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegLinetoVerticalAbs : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegLinetoVerticalRel.idl b/Source/core/svg/SVGPathSegLinetoVerticalRel.idl
index c4da6dc..24cf7ff 100644
--- a/Source/core/svg/SVGPathSegLinetoVerticalRel.idl
+++ b/Source/core/svg/SVGPathSegLinetoVerticalRel.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegLinetoVerticalRel : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegList.idl b/Source/core/svg/SVGPathSegList.idl
index 996e518..33f734e 100644
--- a/Source/core/svg/SVGPathSegList.idl
+++ b/Source/core/svg/SVGPathSegList.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegList {
diff --git a/Source/core/svg/SVGPathSegMovetoAbs.idl b/Source/core/svg/SVGPathSegMovetoAbs.idl
index b01e795..220401e 100644
--- a/Source/core/svg/SVGPathSegMovetoAbs.idl
+++ b/Source/core/svg/SVGPathSegMovetoAbs.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegMovetoAbs : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegMovetoRel.idl b/Source/core/svg/SVGPathSegMovetoRel.idl
index 850efd4..5868685 100644
--- a/Source/core/svg/SVGPathSegMovetoRel.idl
+++ b/Source/core/svg/SVGPathSegMovetoRel.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPathSegMovetoRel : SVGPathSeg {
diff --git a/Source/core/svg/SVGPathSegWithContext.h b/Source/core/svg/SVGPathSegWithContext.h
index 421b75c..e2fbe84 100644
--- a/Source/core/svg/SVGPathSegWithContext.h
+++ b/Source/core/svg/SVGPathSegWithContext.h
@@ -73,7 +73,7 @@
     RefPtr<SVGPathElement> m_element;
 };
 
-class SVGPathSegSingleCoordinate : public SVGPathSegWithContext { 
+class SVGPathSegSingleCoordinate : public SVGPathSegWithContext {
 public:
     float x() const { return m_x; }
     void setX(float x)
diff --git a/Source/core/svg/SVGPathTraversalStateBuilder.cpp b/Source/core/svg/SVGPathTraversalStateBuilder.cpp
index 2a467e5..99d9363 100644
--- a/Source/core/svg/SVGPathTraversalStateBuilder.cpp
+++ b/Source/core/svg/SVGPathTraversalStateBuilder.cpp
@@ -64,7 +64,7 @@
 
 bool SVGPathTraversalStateBuilder::continueConsuming()
 {
-    ASSERT(m_traversalState);    
+    ASSERT(m_traversalState);
     m_traversalState->processSegment();
     return !m_traversalState->m_success;
 }
diff --git a/Source/core/svg/SVGPathUtilities.cpp b/Source/core/svg/SVGPathUtilities.cpp
index 36950a6..2d93800 100644
--- a/Source/core/svg/SVGPathUtilities.cpp
+++ b/Source/core/svg/SVGPathUtilities.cpp
@@ -178,7 +178,7 @@
 {
     ASSERT(stream);
     if (stream->isEmpty())
-        return false; 
+        return false;
 
     SVGPathSegListBuilder* builder = globalSVGPathSegListBuilder(element, parsingMode == NormalizedParsing ? PathSegNormalizedRole : PathSegUnalteredRole, result);
 
@@ -193,7 +193,7 @@
 {
     ASSERT(stream);
     if (stream->isEmpty())
-        return false; 
+        return false;
 
     SVGPathStringBuilder* builder = globalSVGPathStringBuilder();
 
@@ -300,10 +300,10 @@
     ASSERT(stream);
     if (stream->isEmpty())
         return false;
-    
+
     PathTraversalState traversalState(PathTraversalState::TraversalTotalLength);
     SVGPathTraversalStateBuilder* builder = globalSVGPathTraversalStateBuilder(traversalState, 0);
-    
+
     OwnPtr<SVGPathByteStreamSource> source = SVGPathByteStreamSource::create(stream);
     SVGPathParser* parser = globalSVGPathParser(source.get(), builder);
     bool ok = parser->parsePathDataFromSource(NormalizedParsing);
@@ -317,10 +317,10 @@
     ASSERT(stream);
     if (stream->isEmpty())
         return false;
-    
+
     PathTraversalState traversalState(PathTraversalState::TraversalPointAtLength);
     SVGPathTraversalStateBuilder* builder = globalSVGPathTraversalStateBuilder(traversalState, length);
-    
+
     OwnPtr<SVGPathByteStreamSource> source = SVGPathByteStreamSource::create(stream);
     SVGPathParser* parser = globalSVGPathParser(source.get(), builder);
     bool ok = parser->parsePathDataFromSource(NormalizedParsing);
diff --git a/Source/core/svg/SVGPatternElement.cpp b/Source/core/svg/SVGPatternElement.cpp
index b38307f..a43d5c5 100644
--- a/Source/core/svg/SVGPatternElement.cpp
+++ b/Source/core/svg/SVGPatternElement.cpp
@@ -40,11 +40,11 @@
 DEFINE_ANIMATED_LENGTH(SVGPatternElement, SVGNames::heightAttr, Height, height)
 DEFINE_ANIMATED_ENUMERATION(SVGPatternElement, SVGNames::patternUnitsAttr, PatternUnits, patternUnits, SVGUnitTypes::SVGUnitType)
 DEFINE_ANIMATED_ENUMERATION(SVGPatternElement, SVGNames::patternContentUnitsAttr, PatternContentUnits, patternContentUnits, SVGUnitTypes::SVGUnitType)
-DEFINE_ANIMATED_TRANSFORM_LIST(SVGPatternElement, SVGNames::patternTransformAttr, PatternTransform, patternTransform) 
+DEFINE_ANIMATED_TRANSFORM_LIST(SVGPatternElement, SVGNames::patternTransformAttr, PatternTransform, patternTransform)
 DEFINE_ANIMATED_STRING(SVGPatternElement, XLinkNames::hrefAttr, Href, href)
 DEFINE_ANIMATED_BOOLEAN(SVGPatternElement, SVGNames::externalResourcesRequiredAttr, ExternalResourcesRequired, externalResourcesRequired)
 DEFINE_ANIMATED_RECT(SVGPatternElement, SVGNames::viewBoxAttr, ViewBox, viewBox)
-DEFINE_ANIMATED_PRESERVEASPECTRATIO(SVGPatternElement, SVGNames::preserveAspectRatioAttr, PreserveAspectRatio, preserveAspectRatio) 
+DEFINE_ANIMATED_PRESERVEASPECTRATIO(SVGPatternElement, SVGNames::preserveAspectRatioAttr, PreserveAspectRatio, preserveAspectRatio)
 
 BEGIN_REGISTER_ANIMATED_PROPERTIES(SVGPatternElement)
     REGISTER_LOCAL_ANIMATED_PROPERTY(x)
@@ -57,7 +57,7 @@
     REGISTER_LOCAL_ANIMATED_PROPERTY(href)
     REGISTER_LOCAL_ANIMATED_PROPERTY(externalResourcesRequired)
     REGISTER_LOCAL_ANIMATED_PROPERTY(viewBox)
-    REGISTER_LOCAL_ANIMATED_PROPERTY(preserveAspectRatio) 
+    REGISTER_LOCAL_ANIMATED_PROPERTY(preserveAspectRatio)
     REGISTER_PARENT_ANIMATED_PROPERTIES(SVGStyledElement)
     REGISTER_PARENT_ANIMATED_PROPERTIES(SVGTests)
 END_REGISTER_ANIMATED_PROPERTIES
@@ -148,7 +148,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     if (attrName == SVGNames::xAttr
         || attrName == SVGNames::yAttr
         || attrName == SVGNames::widthAttr
diff --git a/Source/core/svg/SVGPatternElement.h b/Source/core/svg/SVGPatternElement.h
index 8d09168..0bd4193 100644
--- a/Source/core/svg/SVGPatternElement.h
+++ b/Source/core/svg/SVGPatternElement.h
@@ -38,7 +38,7 @@
 namespace WebCore {
 
 struct PatternAttributes;
- 
+
 class SVGPatternElement FINAL : public SVGStyledElement,
                                 public SVGURIReference,
                                 public SVGTests,
@@ -53,7 +53,7 @@
 
 private:
     SVGPatternElement(const QualifiedName&, Document*);
-    
+
     virtual bool isValid() const { return SVGTests::isValid(); }
     virtual bool needsPendingResourceHandling() const { return false; }
 
@@ -77,7 +77,7 @@
         DECLARE_ANIMATED_STRING(Href, href)
         DECLARE_ANIMATED_BOOLEAN(ExternalResourcesRequired, externalResourcesRequired)
         DECLARE_ANIMATED_RECT(ViewBox, viewBox)
-        DECLARE_ANIMATED_PRESERVEASPECTRATIO(PreserveAspectRatio, preserveAspectRatio) 
+        DECLARE_ANIMATED_PRESERVEASPECTRATIO(PreserveAspectRatio, preserveAspectRatio)
     END_DECLARE_ANIMATED_PROPERTIES
 
     // SVGTests
diff --git a/Source/core/svg/SVGPatternElement.idl b/Source/core/svg/SVGPatternElement.idl
index da1c7a3..390fcb6 100644
--- a/Source/core/svg/SVGPatternElement.idl
+++ b/Source/core/svg/SVGPatternElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPatternElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGPointList.idl b/Source/core/svg/SVGPointList.idl
index 6cc212e..f65d302 100644
--- a/Source/core/svg/SVGPointList.idl
+++ b/Source/core/svg/SVGPointList.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPointList {
diff --git a/Source/core/svg/SVGPolyElement.cpp b/Source/core/svg/SVGPolyElement.cpp
index df81eb9..78c95aa 100644
--- a/Source/core/svg/SVGPolyElement.cpp
+++ b/Source/core/svg/SVGPolyElement.cpp
@@ -58,7 +58,7 @@
 SVGPolyElement::SVGPolyElement(const QualifiedName& tagName, Document* document)
     : SVGGraphicsElement(tagName, document)
 {
-    registerAnimatedPropertiesForSVGPolyElement();    
+    registerAnimatedPropertiesForSVGPolyElement();
 }
 
 bool SVGPolyElement::isSupportedAttribute(const QualifiedName& attrName)
diff --git a/Source/core/svg/SVGPolyElement.h b/Source/core/svg/SVGPolyElement.h
index 7a031d3..5f735be 100644
--- a/Source/core/svg/SVGPolyElement.h
+++ b/Source/core/svg/SVGPolyElement.h
@@ -47,7 +47,7 @@
     virtual bool supportsFocus() const { return true; }
 
     bool isSupportedAttribute(const QualifiedName&);
-    virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE; 
+    virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
     virtual void svgAttributeChanged(const QualifiedName&);
 
     virtual bool supportsMarkers() const { return true; }
diff --git a/Source/core/svg/SVGPolygonElement.idl b/Source/core/svg/SVGPolygonElement.idl
index 8158365..735067b 100644
--- a/Source/core/svg/SVGPolygonElement.idl
+++ b/Source/core/svg/SVGPolygonElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPolygonElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGPolylineElement.idl b/Source/core/svg/SVGPolylineElement.idl
index c3e284f..a7eefed 100644
--- a/Source/core/svg/SVGPolylineElement.idl
+++ b/Source/core/svg/SVGPolylineElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPolylineElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGPreserveAspectRatio.cpp b/Source/core/svg/SVGPreserveAspectRatio.cpp
index 0b0e966..5156336 100644
--- a/Source/core/svg/SVGPreserveAspectRatio.cpp
+++ b/Source/core/svg/SVGPreserveAspectRatio.cpp
@@ -305,7 +305,7 @@
             transform.translate(-extendedLogicalX - (extendedLogicalWidth - extendedPhysicalWidth * extendedLogicalHeight / extendedPhysicalHeight) / 2, -extendedLogicalY);
         else
             transform.translate(-extendedLogicalX - (extendedLogicalWidth - extendedPhysicalWidth * extendedLogicalHeight / extendedPhysicalHeight), -extendedLogicalY);
-        
+
         return transform;
     }
 
diff --git a/Source/core/svg/SVGPreserveAspectRatio.idl b/Source/core/svg/SVGPreserveAspectRatio.idl
index ec2c796..178f1a0 100644
--- a/Source/core/svg/SVGPreserveAspectRatio.idl
+++ b/Source/core/svg/SVGPreserveAspectRatio.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGPreserveAspectRatio {
diff --git a/Source/core/svg/SVGRadialGradientElement.cpp b/Source/core/svg/SVGRadialGradientElement.cpp
index d20683d..dc14c64 100644
--- a/Source/core/svg/SVGRadialGradientElement.cpp
+++ b/Source/core/svg/SVGRadialGradientElement.cpp
@@ -117,9 +117,9 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     updateRelativeLengthsInformation();
-        
+
     if (RenderObject* object = renderer())
         object->setNeedsLayout(true);
 }
diff --git a/Source/core/svg/SVGRadialGradientElement.idl b/Source/core/svg/SVGRadialGradientElement.idl
index 1342c75..dfae5fd 100644
--- a/Source/core/svg/SVGRadialGradientElement.idl
+++ b/Source/core/svg/SVGRadialGradientElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGRadialGradientElement : SVGGradientElement {
diff --git a/Source/core/svg/SVGRectElement.cpp b/Source/core/svg/SVGRectElement.cpp
index 8d01fcc..85b4a4f 100644
--- a/Source/core/svg/SVGRectElement.cpp
+++ b/Source/core/svg/SVGRectElement.cpp
@@ -119,7 +119,7 @@
     }
 
     SVGElementInstance::InvalidationGuard invalidationGuard(this);
-    
+
     bool isLengthAttribute = attrName == SVGNames::xAttr
                           || attrName == SVGNames::yAttr
                           || attrName == SVGNames::widthAttr
diff --git a/Source/core/svg/SVGRectElement.h b/Source/core/svg/SVGRectElement.h
index cd5b85c..e3a7118 100644
--- a/Source/core/svg/SVGRectElement.h
+++ b/Source/core/svg/SVGRectElement.h
@@ -21,6 +21,7 @@
 #ifndef SVGRectElement_h
 #define SVGRectElement_h
 
+#include "SVGNames.h"
 #include "core/svg/SVGAnimatedBoolean.h"
 #include "core/svg/SVGAnimatedLength.h"
 #include "core/svg/SVGExternalResourcesRequired.h"
@@ -35,7 +36,7 @@
 
 private:
     SVGRectElement(const QualifiedName&, Document*);
-    
+
     virtual bool isValid() const { return SVGTests::isValid(); }
     virtual bool supportsFocus() const { return true; }
 
@@ -58,6 +59,12 @@
     END_DECLARE_ANIMATED_PROPERTIES
 };
 
+inline SVGRectElement* toSVGRectElement(Node* node)
+{
+    ASSERT_WITH_SECURITY_IMPLICATION(!node || node->hasTagName(SVGNames::rectTag));
+    return static_cast<SVGRectElement*>(node);
+}
+
 } // namespace WebCore
 
 #endif
diff --git a/Source/core/svg/SVGRectElement.idl b/Source/core/svg/SVGRectElement.idl
index 4de40f2..42fe063 100644
--- a/Source/core/svg/SVGRectElement.idl
+++ b/Source/core/svg/SVGRectElement.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGRectElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGRenderingIntent.idl b/Source/core/svg/SVGRenderingIntent.idl
index d3f254f..5c08153 100644
--- a/Source/core/svg/SVGRenderingIntent.idl
+++ b/Source/core/svg/SVGRenderingIntent.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGSVGElement.cpp b/Source/core/svg/SVGSVGElement.cpp
index 4b8be97..c4e17b1 100644
--- a/Source/core/svg/SVGSVGElement.cpp
+++ b/Source/core/svg/SVGSVGElement.cpp
@@ -83,7 +83,7 @@
     , m_x(LengthModeWidth)
     , m_y(LengthModeHeight)
     , m_width(LengthModeWidth, "100%")
-    , m_height(LengthModeHeight, "100%") 
+    , m_height(LengthModeHeight, "100%")
     , m_useCurrentView(false)
     , m_zoomAndPan(SVGZoomAndPanMagnify)
     , m_timeContainer(SMILTimeContainer::create(this))
@@ -239,7 +239,7 @@
             document()->setWindowAttributeEventListener(eventNames().zoomEvent, createAttributeEventListener(document()->frame(), name, value));
         else
             setListener = false;
- 
+
         if (setListener)
             return;
     }
@@ -287,7 +287,7 @@
     }
 
     if (SVGFitToViewBox::isKnownAttribute(attrName)) {
-        updateRelativeLengthsOrViewBox = true; 
+        updateRelativeLengthsOrViewBox = true;
         if (RenderObject* object = renderer())
             object->setNeedsTransformUpdate();
     }
@@ -332,7 +332,7 @@
     Vector<RefPtr<Node> > nodes;
     Element* element = ElementTraversal::next(referenceElement ? referenceElement : this);
     while (element) {
-        if (element->isSVGElement()) { 
+        if (element->isSVGElement()) {
             SVGElement* svgElement = toSVGElement(element);
             if (collect == CollectIntersectionList) {
                 if (checkIntersection(svgElement, rect))
@@ -435,7 +435,7 @@
             FloatPoint location;
             float zoomFactor = 1;
 
-            // At the SVG/HTML boundary (aka RenderSVGRoot), we apply the localToBorderBoxTransform 
+            // At the SVG/HTML boundary (aka RenderSVGRoot), we apply the localToBorderBoxTransform
             // to map an element from SVG viewport coordinates to CSS box coordinates.
             // RenderSVGRoot's localToAbsolute method expects CSS box coordinates.
             // We also need to adjust for the zoom level factored into CSS coordinates (bug #96361).
@@ -563,7 +563,7 @@
         return SVGRect();
 
     // If no viewBox is specified but non-relative width/height values, then we
-    // should always synthesize a viewBox if we're embedded through a SVGImage.    
+    // should always synthesize a viewBox if we're embedded through a SVGImage.
     return SVGRect(FloatPoint(), FloatSize(floatValueForLength(intrinsicWidth, 0), floatValueForLength(intrinsicHeight, 0)));
 }
 
diff --git a/Source/core/svg/SVGSVGElement.h b/Source/core/svg/SVGSVGElement.h
index b0c0a3b..d7532d8 100644
--- a/Source/core/svg/SVGSVGElement.h
+++ b/Source/core/svg/SVGSVGElement.h
@@ -90,7 +90,7 @@
     void updateCurrentTranslate();
 
     SMILTimeContainer* timeContainer() const { return m_timeContainer.get(); }
-    
+
     void pauseAnimations();
     void unpauseAnimations();
     bool animationsPaused() const;
@@ -137,7 +137,7 @@
     virtual ~SVGSVGElement();
 
     virtual bool isSVGSVGElement() const OVERRIDE { return true; }
-    
+
     virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
 
     virtual bool rendererIsNeeded(const NodeRenderingContext&) OVERRIDE;
diff --git a/Source/core/svg/SVGSVGElement.idl b/Source/core/svg/SVGSVGElement.idl
index c2d6852..0edfc9a 100644
--- a/Source/core/svg/SVGSVGElement.idl
+++ b/Source/core/svg/SVGSVGElement.idl
@@ -48,13 +48,13 @@
     boolean animationsPaused();
     float getCurrentTime();
     void setCurrentTime([Default=Undefined] optional float seconds);
-    NodeList getIntersectionList([Default=Undefined] optional SVGRect rect, 
+    NodeList getIntersectionList([Default=Undefined] optional SVGRect rect,
                                  [Default=Undefined] optional SVGElement referenceElement);
-    NodeList getEnclosureList([Default=Undefined] optional SVGRect rect, 
+    NodeList getEnclosureList([Default=Undefined] optional SVGRect rect,
                               [Default=Undefined] optional SVGElement referenceElement);
-    boolean checkIntersection([Default=Undefined] optional SVGElement element, 
+    boolean checkIntersection([Default=Undefined] optional SVGElement element,
                               [Default=Undefined] optional SVGRect rect);
-    boolean checkEnclosure([Default=Undefined] optional SVGElement element, 
+    boolean checkEnclosure([Default=Undefined] optional SVGElement element,
                            [Default=Undefined] optional SVGRect rect);
     void deselectAll();
 
diff --git a/Source/core/svg/SVGScriptElement.idl b/Source/core/svg/SVGScriptElement.idl
index dea339f..abaa80b 100644
--- a/Source/core/svg/SVGScriptElement.idl
+++ b/Source/core/svg/SVGScriptElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGScriptElement : SVGElement {
diff --git a/Source/core/svg/SVGSetElement.cpp b/Source/core/svg/SVGSetElement.cpp
index 6c22ead..af88be9 100644
--- a/Source/core/svg/SVGSetElement.cpp
+++ b/Source/core/svg/SVGSetElement.cpp
@@ -23,7 +23,7 @@
 #include "core/svg/SVGSetElement.h"
 
 namespace WebCore {
-    
+
 inline SVGSetElement::SVGSetElement(const QualifiedName& tagName, Document* document)
     : SVGAnimateElement(tagName, document)
 {
diff --git a/Source/core/svg/SVGSetElement.idl b/Source/core/svg/SVGSetElement.idl
index 322ed53..5bf7adb 100644
--- a/Source/core/svg/SVGSetElement.idl
+++ b/Source/core/svg/SVGSetElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGSetElement : SVGAnimationElement {
diff --git a/Source/core/svg/SVGStopElement.idl b/Source/core/svg/SVGStopElement.idl
index 1a2bad1..63f6411 100644
--- a/Source/core/svg/SVGStopElement.idl
+++ b/Source/core/svg/SVGStopElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGStopElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGStringList.idl b/Source/core/svg/SVGStringList.idl
index d3c1923..020b754 100644
--- a/Source/core/svg/SVGStringList.idl
+++ b/Source/core/svg/SVGStringList.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGStringList {
diff --git a/Source/core/svg/SVGStyleElement.cpp b/Source/core/svg/SVGStyleElement.cpp
index 2a704a4..8da1dc8 100644
--- a/Source/core/svg/SVGStyleElement.cpp
+++ b/Source/core/svg/SVGStyleElement.cpp
@@ -53,7 +53,7 @@
 {
     if (!m_sheet)
         return false;
-    
+
     return m_sheet->disabled();
 }
 
diff --git a/Source/core/svg/SVGStyleElement.h b/Source/core/svg/SVGStyleElement.h
index 84d7a0e..788110d 100644
--- a/Source/core/svg/SVGStyleElement.h
+++ b/Source/core/svg/SVGStyleElement.h
@@ -36,7 +36,7 @@
 
     bool disabled() const;
     void setDisabled(bool);
-                          
+
     virtual const AtomicString& type() const;
     void setType(const AtomicString&);
 
diff --git a/Source/core/svg/SVGStyleElement.idl b/Source/core/svg/SVGStyleElement.idl
index 431061d..a80a727 100644
--- a/Source/core/svg/SVGStyleElement.idl
+++ b/Source/core/svg/SVGStyleElement.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGStyleElement : SVGElement {
diff --git a/Source/core/svg/SVGStyledElement.cpp b/Source/core/svg/SVGStyledElement.cpp
index 28805ab..5f57599 100644
--- a/Source/core/svg/SVGStyledElement.cpp
+++ b/Source/core/svg/SVGStyledElement.cpp
@@ -91,7 +91,7 @@
         ASSERT(!shadowHostElement || shadowHostElement->hasTagName(SVGNames::useTag));
         if (shadowHostElement && shadowHostElement->hasTagName(SVGNames::useTag)) {
             SVGUseElement* useElement = toSVGUseElement(shadowHostElement);
- 
+
             // If the <use> title is not empty we found the title to use.
             String useTitle(useElement->title());
             if (!useTitle.isEmpty())
@@ -110,7 +110,7 @@
     // If a title child was found, return the text contents.
     if (titleElement)
         return titleElement->innerText();
-    
+
     // Otherwise return a null/empty string.
     return String();
 }
@@ -121,7 +121,7 @@
     // Prevent anything other than SVG renderers from appearing in our render tree
     // Spec: SVG allows inclusion of elements from foreign namespaces anywhere
     // with the SVG content. In general, the SVG user agent will include the unknown
-    // elements in the DOM but will otherwise ignore unknown elements. 
+    // elements in the DOM but will otherwise ignore unknown elements.
     if (!parentOrShadowHostElement() || parentOrShadowHostElement()->isSVGElement())
         return Element::rendererIsNeeded(context);
 
@@ -132,7 +132,7 @@
 {
     if (!attrName.namespaceURI().isNull())
         return CSSPropertyInvalid;
-    
+
     static HashMap<StringImpl*, CSSPropertyID>* propertyNameToIdMap = 0;
     if (!propertyNameToIdMap) {
         propertyNameToIdMap = new HashMap<StringImpl*, CSSPropertyID>;
@@ -147,7 +147,7 @@
         mapAttributeToCSSProperty(propertyNameToIdMap, color_interpolationAttr);
         mapAttributeToCSSProperty(propertyNameToIdMap, color_interpolation_filtersAttr);
         mapAttributeToCSSProperty(propertyNameToIdMap, color_profileAttr);
-        mapAttributeToCSSProperty(propertyNameToIdMap, color_renderingAttr); 
+        mapAttributeToCSSProperty(propertyNameToIdMap, color_renderingAttr);
         mapAttributeToCSSProperty(propertyNameToIdMap, cursorAttr);
         mapAttributeToCSSProperty(propertyNameToIdMap, SVGNames::directionAttr);
         mapAttributeToCSSProperty(propertyNameToIdMap, displayAttr);
@@ -200,7 +200,7 @@
         mapAttributeToCSSProperty(propertyNameToIdMap, word_spacingAttr);
         mapAttributeToCSSProperty(propertyNameToIdMap, writing_modeAttr);
     }
-    
+
     return propertyNameToIdMap->get(attrName.localName().impl());
 }
 
@@ -223,7 +223,7 @@
     s_cssPropertyMap.set(color_interpolationAttr, AnimatedString);
     s_cssPropertyMap.set(color_interpolation_filtersAttr, AnimatedString);
     s_cssPropertyMap.set(color_profileAttr, AnimatedString);
-    s_cssPropertyMap.set(color_renderingAttr, AnimatedString); 
+    s_cssPropertyMap.set(color_renderingAttr, AnimatedString);
     s_cssPropertyMap.set(cursorAttr, AnimatedString);
     s_cssPropertyMap.set(displayAttr, AnimatedString);
     s_cssPropertyMap.set(dominant_baselineAttr, AnimatedString);
diff --git a/Source/core/svg/SVGStyledElement.h b/Source/core/svg/SVGStyledElement.h
index 15d170f..56fc504 100644
--- a/Source/core/svg/SVGStyledElement.h
+++ b/Source/core/svg/SVGStyledElement.h
@@ -58,7 +58,7 @@
 
     virtual bool needsPendingResourceHandling() const { return true; }
 
-protected: 
+protected:
     SVGStyledElement(const QualifiedName&, Document*, ConstructionType = CreateSVGElement);
     virtual bool rendererIsNeeded(const NodeRenderingContext&);
 
diff --git a/Source/core/svg/SVGStyledElement.idl b/Source/core/svg/SVGStyledElement.idl
index 12d2e2c..3b7ee61 100644
--- a/Source/core/svg/SVGStyledElement.idl
+++ b/Source/core/svg/SVGStyledElement.idl
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGSwitchElement.h b/Source/core/svg/SVGSwitchElement.h
index f629b29..7b82311 100644
--- a/Source/core/svg/SVGSwitchElement.h
+++ b/Source/core/svg/SVGSwitchElement.h
@@ -34,7 +34,7 @@
 
 private:
     SVGSwitchElement(const QualifiedName&, Document*);
-    
+
     virtual bool isValid() const { return SVGTests::isValid(); }
     virtual bool supportsFocus() const { return true; }
 
diff --git a/Source/core/svg/SVGSwitchElement.idl b/Source/core/svg/SVGSwitchElement.idl
index cc801c9..619855a 100644
--- a/Source/core/svg/SVGSwitchElement.idl
+++ b/Source/core/svg/SVGSwitchElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGSwitchElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGSymbolElement.cpp b/Source/core/svg/SVGSymbolElement.cpp
index 02975cf..fb63821 100644
--- a/Source/core/svg/SVGSymbolElement.cpp
+++ b/Source/core/svg/SVGSymbolElement.cpp
@@ -31,13 +31,13 @@
 
 // Animated property definitions
 DEFINE_ANIMATED_BOOLEAN(SVGSymbolElement, SVGNames::externalResourcesRequiredAttr, ExternalResourcesRequired, externalResourcesRequired)
-DEFINE_ANIMATED_PRESERVEASPECTRATIO(SVGSymbolElement, SVGNames::preserveAspectRatioAttr, PreserveAspectRatio, preserveAspectRatio) 
+DEFINE_ANIMATED_PRESERVEASPECTRATIO(SVGSymbolElement, SVGNames::preserveAspectRatioAttr, PreserveAspectRatio, preserveAspectRatio)
 DEFINE_ANIMATED_RECT(SVGSymbolElement, SVGNames::viewBoxAttr, ViewBox, viewBox)
 
 BEGIN_REGISTER_ANIMATED_PROPERTIES(SVGSymbolElement)
     REGISTER_LOCAL_ANIMATED_PROPERTY(externalResourcesRequired)
     REGISTER_LOCAL_ANIMATED_PROPERTY(viewBox)
-    REGISTER_LOCAL_ANIMATED_PROPERTY(preserveAspectRatio) 
+    REGISTER_LOCAL_ANIMATED_PROPERTY(preserveAspectRatio)
     REGISTER_PARENT_ANIMATED_PROPERTIES(SVGStyledElement)
 END_REGISTER_ANIMATED_PROPERTIES
 
diff --git a/Source/core/svg/SVGSymbolElement.h b/Source/core/svg/SVGSymbolElement.h
index 3619708..4319213 100644
--- a/Source/core/svg/SVGSymbolElement.h
+++ b/Source/core/svg/SVGSymbolElement.h
@@ -51,7 +51,7 @@
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGSymbolElement)
         DECLARE_ANIMATED_BOOLEAN(ExternalResourcesRequired, externalResourcesRequired)
         DECLARE_ANIMATED_RECT(ViewBox, viewBox)
-        DECLARE_ANIMATED_PRESERVEASPECTRATIO(PreserveAspectRatio, preserveAspectRatio) 
+        DECLARE_ANIMATED_PRESERVEASPECTRATIO(PreserveAspectRatio, preserveAspectRatio)
     END_DECLARE_ANIMATED_PROPERTIES
 };
 
diff --git a/Source/core/svg/SVGSymbolElement.idl b/Source/core/svg/SVGSymbolElement.idl
index d866ab2..4a69122 100644
--- a/Source/core/svg/SVGSymbolElement.idl
+++ b/Source/core/svg/SVGSymbolElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGSymbolElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGTRefElement.idl b/Source/core/svg/SVGTRefElement.idl
index 27eef02..4fb97b0 100644
--- a/Source/core/svg/SVGTRefElement.idl
+++ b/Source/core/svg/SVGTRefElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGTRefElement : SVGTextPositioningElement {
diff --git a/Source/core/svg/SVGTSpanElement.h b/Source/core/svg/SVGTSpanElement.h
index 8ba3c23..05236fe 100644
--- a/Source/core/svg/SVGTSpanElement.h
+++ b/Source/core/svg/SVGTSpanElement.h
@@ -31,7 +31,7 @@
 
 private:
     SVGTSpanElement(const QualifiedName&, Document*);
-            
+
     virtual RenderObject* createRenderer(RenderStyle*);
     virtual bool childShouldCreateRenderer(const NodeRenderingContext&) const;
     virtual bool rendererIsNeeded(const NodeRenderingContext&);
diff --git a/Source/core/svg/SVGTSpanElement.idl b/Source/core/svg/SVGTSpanElement.idl
index 92d9754..e8d4232 100644
--- a/Source/core/svg/SVGTSpanElement.idl
+++ b/Source/core/svg/SVGTSpanElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGTSpanElement : SVGTextPositioningElement {
diff --git a/Source/core/svg/SVGTests.cpp b/Source/core/svg/SVGTests.cpp
index 05fb988..2c30955 100644
--- a/Source/core/svg/SVGTests.cpp
+++ b/Source/core/svg/SVGTests.cpp
@@ -135,7 +135,7 @@
         m_systemLanguage.value.reset(value);
         return true;
     }
-    
+
     return false;
 }
 
@@ -205,7 +205,7 @@
 
 SVGStringList& SVGTests::requiredExtensions()
 {
-    m_requiredExtensions.shouldSynchronize = true;    
+    m_requiredExtensions.shouldSynchronize = true;
     return m_requiredExtensions.value;
 }
 
diff --git a/Source/core/svg/SVGTests.idl b/Source/core/svg/SVGTests.idl
index 7a25e46..0842cc1 100644
--- a/Source/core/svg/SVGTests.idl
+++ b/Source/core/svg/SVGTests.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGTextContentElement.cpp b/Source/core/svg/SVGTextContentElement.cpp
index 590a7f4..1886df5 100644
--- a/Source/core/svg/SVGTextContentElement.cpp
+++ b/Source/core/svg/SVGTextContentElement.cpp
@@ -34,7 +34,7 @@
 #include "core/svg/SVGElementInstance.h"
 
 namespace WebCore {
- 
+
 // Define custom animated property 'textLength'.
 const SVGPropertyInfo* SVGTextContentElement::textLengthPropertyInfo()
 {
diff --git a/Source/core/svg/SVGTextContentElement.h b/Source/core/svg/SVGTextContentElement.h
index f937bd1..8004c68 100644
--- a/Source/core/svg/SVGTextContentElement.h
+++ b/Source/core/svg/SVGTextContentElement.h
@@ -113,10 +113,10 @@
     static PassRefPtr<SVGAnimatedProperty> lookupOrCreateTextLengthWrapper(SVGElement* contextElement);
     mutable SVGSynchronizableAnimatedProperty<SVGLength> m_textLength;
     SVGLength m_specifiedTextLength;
-  
+
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGTextContentElement)
         DECLARE_ANIMATED_ENUMERATION(LengthAdjust, lengthAdjust, SVGLengthAdjustType)
-        DECLARE_ANIMATED_BOOLEAN(ExternalResourcesRequired, externalResourcesRequired) 
+        DECLARE_ANIMATED_BOOLEAN(ExternalResourcesRequired, externalResourcesRequired)
     END_DECLARE_ANIMATED_PROPERTIES
 };
 
diff --git a/Source/core/svg/SVGTextContentElement.idl b/Source/core/svg/SVGTextContentElement.idl
index 689c7bd..4d69375 100644
--- a/Source/core/svg/SVGTextContentElement.idl
+++ b/Source/core/svg/SVGTextContentElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGTextContentElement : SVGGraphicsElement {
@@ -34,14 +34,14 @@
 
     long getNumberOfChars();
     float getComputedTextLength();
-    [RaisesException] float getSubStringLength([Default=Undefined,IsIndex] optional unsigned long offset, 
+    [RaisesException] float getSubStringLength([Default=Undefined,IsIndex] optional unsigned long offset,
                              [Default=Undefined,IsIndex] optional unsigned long length);
     [RaisesException] SVGPoint getStartPositionOfChar([Default=Undefined,IsIndex] optional unsigned long offset);
     [RaisesException] SVGPoint getEndPositionOfChar([Default=Undefined,IsIndex] optional unsigned long offset);
     [RaisesException] SVGRect getExtentOfChar([Default=Undefined,IsIndex] optional unsigned long offset);
     [RaisesException] float getRotationOfChar([Default=Undefined,IsIndex] optional unsigned long offset);
     long getCharNumAtPosition([Default=Undefined] optional SVGPoint point);
-    [RaisesException] void selectSubString([Default=Undefined,IsIndex] optional unsigned long offset, 
+    [RaisesException] void selectSubString([Default=Undefined,IsIndex] optional unsigned long offset,
                          [Default=Undefined,IsIndex] optional unsigned long length);
 };
 
diff --git a/Source/core/svg/SVGTextElement.idl b/Source/core/svg/SVGTextElement.idl
index ce82c08..618aa35 100644
--- a/Source/core/svg/SVGTextElement.idl
+++ b/Source/core/svg/SVGTextElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGTextElement : SVGTextPositioningElement {
diff --git a/Source/core/svg/SVGTextPathElement.h b/Source/core/svg/SVGTextPathElement.h
index f1d939f..ab6bcb9 100644
--- a/Source/core/svg/SVGTextPathElement.h
+++ b/Source/core/svg/SVGTextPathElement.h
@@ -52,7 +52,7 @@
         case SVGTextPathMethodStretch:
             return "stretch";
         }
-    
+
         ASSERT_NOT_REACHED();
         return emptyString();
     }
@@ -110,7 +110,7 @@
     };
 
     static PassRefPtr<SVGTextPathElement> create(const QualifiedName&, Document*);
- 
+
 private:
     SVGTextPathElement(const QualifiedName&, Document*);
 
@@ -131,7 +131,7 @@
     virtual bool rendererIsNeeded(const NodeRenderingContext&);
 
     virtual bool selfHasRelativeLengths() const;
- 
+
     BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGTextPathElement)
         DECLARE_ANIMATED_LENGTH(StartOffset, startOffset)
         DECLARE_ANIMATED_ENUMERATION(Method, method, SVGTextPathMethodType)
diff --git a/Source/core/svg/SVGTextPathElement.idl b/Source/core/svg/SVGTextPathElement.idl
index d21292a..028c069 100644
--- a/Source/core/svg/SVGTextPathElement.idl
+++ b/Source/core/svg/SVGTextPathElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGTextPathElement : SVGTextContentElement {
diff --git a/Source/core/svg/SVGTextPositioningElement.idl b/Source/core/svg/SVGTextPositioningElement.idl
index 2a01864..b55a93c 100644
--- a/Source/core/svg/SVGTextPositioningElement.idl
+++ b/Source/core/svg/SVGTextPositioningElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGTextPositioningElement : SVGTextContentElement {
diff --git a/Source/core/svg/SVGTitleElement.idl b/Source/core/svg/SVGTitleElement.idl
index c3bb47c..cd3adf9 100644
--- a/Source/core/svg/SVGTitleElement.idl
+++ b/Source/core/svg/SVGTitleElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGTitleElement : SVGStyledElement {
diff --git a/Source/core/svg/SVGTransform.cpp b/Source/core/svg/SVGTransform.cpp
index 23f7255..f12ec47 100644
--- a/Source/core/svg/SVGTransform.cpp
+++ b/Source/core/svg/SVGTransform.cpp
@@ -148,7 +148,7 @@
     case SVG_TRANSFORM_ROTATE: {
         DEFINE_STATIC_LOCAL(String, rotateString, (ASCIILiteral("rotate(")));
         return rotateString;
-    }    
+    }
     case SVG_TRANSFORM_SKEWX: {
         DEFINE_STATIC_LOCAL(String, skewXString, (ASCIILiteral("skewX(")));
         return skewXString;
diff --git a/Source/core/svg/SVGTransform.h b/Source/core/svg/SVGTransform.h
index 5e0dd32..3053d4f 100644
--- a/Source/core/svg/SVGTransform.h
+++ b/Source/core/svg/SVGTransform.h
@@ -65,7 +65,7 @@
     void setRotate(float angle, float cx, float cy);
     void setSkewX(float angle);
     void setSkewY(float angle);
-    
+
     // Internal use only (animation system)
     FloatPoint translate() const;
     FloatSize scale() const;
diff --git a/Source/core/svg/SVGTransformDistance.cpp b/Source/core/svg/SVGTransformDistance.cpp
index 100c168..47a5443 100644
--- a/Source/core/svg/SVGTransformDistance.cpp
+++ b/Source/core/svg/SVGTransformDistance.cpp
@@ -28,7 +28,7 @@
 #include <math.h>
 
 namespace WebCore {
-    
+
 SVGTransformDistance::SVGTransformDistance()
     : m_type(SVGTransform::SVG_TRANSFORM_UNKNOWN)
     , m_angle(0)
@@ -53,7 +53,7 @@
     , m_cy(0)
 {
     ASSERT(m_type == toSVGTransform.type());
-    
+
     switch (m_type) {
     case SVGTransform::SVG_TRANSFORM_MATRIX:
         ASSERT_NOT_REACHED();
@@ -72,7 +72,7 @@
         break;
     }
     case SVGTransform::SVG_TRANSFORM_SCALE: {
-        float scaleX = toSVGTransform.scale().width() - fromSVGTransform.scale().width();        
+        float scaleX = toSVGTransform.scale().width() - fromSVGTransform.scale().width();
         float scaleY = toSVGTransform.scale().height() - fromSVGTransform.scale().height();
         m_transform.scaleNonUniform(scaleX, scaleY);
         break;
@@ -105,7 +105,7 @@
     case SVGTransform::SVG_TRANSFORM_SKEWY:
         return SVGTransformDistance(m_type, m_angle * scaleFactor, m_cx * scaleFactor, m_cy * scaleFactor, AffineTransform());
     }
-    
+
     ASSERT_NOT_REACHED();
     return SVGTransformDistance();
 }
@@ -113,9 +113,9 @@
 SVGTransform SVGTransformDistance::addSVGTransforms(const SVGTransform& first, const SVGTransform& second, unsigned repeatCount)
 {
     ASSERT(first.type() == second.type());
-    
+
     SVGTransform transform;
-    
+
     switch (first.type()) {
     case SVGTransform::SVG_TRANSFORM_MATRIX:
         ASSERT_NOT_REACHED();
@@ -152,9 +152,9 @@
 SVGTransform SVGTransformDistance::addToSVGTransform(const SVGTransform& transform) const
 {
     ASSERT(m_type == transform.type() || transform == SVGTransform());
-    
+
     SVGTransform newTransform(transform);
-    
+
     switch (m_type) {
     case SVGTransform::SVG_TRANSFORM_MATRIX:
         ASSERT_NOT_REACHED();
@@ -184,7 +184,7 @@
         newTransform.setSkewY(transform.angle() + m_angle);
         return newTransform;
     }
-    
+
     ASSERT_NOT_REACHED();
     return SVGTransform();
 }
diff --git a/Source/core/svg/SVGTransformDistance.h b/Source/core/svg/SVGTransformDistance.h
index db1846d..32dd5d0 100644
--- a/Source/core/svg/SVGTransformDistance.h
+++ b/Source/core/svg/SVGTransformDistance.h
@@ -23,25 +23,25 @@
 #include "core/svg/SVGTransform.h"
 
 namespace WebCore {
-    
+
 class AffineTransform;
-    
+
 class SVGTransformDistance {
 public:
     SVGTransformDistance();
     SVGTransformDistance(const SVGTransform& fromTransform, const SVGTransform& toTransform);
-    
+
     SVGTransformDistance scaledDistance(float scaleFactor) const;
     SVGTransform addToSVGTransform(const SVGTransform&) const;
 
     static SVGTransform addSVGTransforms(const SVGTransform&, const SVGTransform&, unsigned repeatCount = 1);
-    
+
     bool isZero() const;
-    
+
     float distance() const;
 private:
     SVGTransformDistance(SVGTransform::SVGTransformType, float angle, float cx, float cy, const AffineTransform&);
-        
+
     SVGTransform::SVGTransformType m_type;
     float m_angle;
     float m_cx;
diff --git a/Source/core/svg/SVGTransformList.h b/Source/core/svg/SVGTransformList.h
index d67ffc1..0669871 100644
--- a/Source/core/svg/SVGTransformList.h
+++ b/Source/core/svg/SVGTransformList.h
@@ -36,7 +36,7 @@
 
     // Internal use only
     bool concatenate(AffineTransform& result) const;
- 
+
     String valueAsString() const;
     void parse(const String&);
 };
diff --git a/Source/core/svg/SVGTransformList.idl b/Source/core/svg/SVGTransformList.idl
index f17b479..bb6f659 100644
--- a/Source/core/svg/SVGTransformList.idl
+++ b/Source/core/svg/SVGTransformList.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGTransformList {
diff --git a/Source/core/svg/SVGTransformable.cpp b/Source/core/svg/SVGTransformable.cpp
index ca1f9dc..9c35dc3 100644
--- a/Source/core/svg/SVGTransformable.cpp
+++ b/Source/core/svg/SVGTransformable.cpp
@@ -33,12 +33,12 @@
 static int parseTransformParamList(const CharType*& ptr, const CharType* end, float* values, int required, int optional)
 {
     int optionalParams = 0, requiredParams = 0;
-    
+
     if (!skipOptionalSVGSpaces(ptr, end) || *ptr != '(')
         return -1;
-    
+
     ptr++;
-   
+
     skipOptionalSVGSpaces(ptr, end);
 
     while (requiredParams < required) {
@@ -50,12 +50,12 @@
     }
     if (!skipOptionalSVGSpaces(ptr, end))
         return -1;
-    
+
     bool delimParsed = skipOptionalSVGSpacesOrDelimiter(ptr, end);
 
     if (ptr >= end)
         return -1;
-    
+
     if (*ptr == ')') { // skip optionals
         ptr++;
         if (delimParsed)
@@ -68,12 +68,12 @@
             if (optionalParams < optional)
                 skipOptionalSVGSpacesOrDelimiter(ptr, end);
         }
-        
+
         if (!skipOptionalSVGSpaces(ptr, end))
             return -1;
-        
+
         delimParsed = skipOptionalSVGSpacesOrDelimiter(ptr, end);
-        
+
         if (ptr >= end || *ptr != ')' || delimParsed)
             return -1;
         ptr++;
diff --git a/Source/core/svg/SVGTransformable.h b/Source/core/svg/SVGTransformable.h
index cafc4ba..53fd361 100644
--- a/Source/core/svg/SVGTransformable.h
+++ b/Source/core/svg/SVGTransformable.h
@@ -26,7 +26,7 @@
 #include <wtf/text/WTFString.h>
 
 namespace WebCore {
-    
+
 class AffineTransform;
 class SVGTransformList;
 
diff --git a/Source/core/svg/SVGURIReference.idl b/Source/core/svg/SVGURIReference.idl
index d7aceff..bcc0efa 100644
--- a/Source/core/svg/SVGURIReference.idl
+++ b/Source/core/svg/SVGURIReference.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGUnitTypes.idl b/Source/core/svg/SVGUnitTypes.idl
index d53ee8d..22817c2 100644
--- a/Source/core/svg/SVGUnitTypes.idl
+++ b/Source/core/svg/SVGUnitTypes.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGUseElement.h b/Source/core/svg/SVGUseElement.h
index 942a3e5..7dbe3aa 100644
--- a/Source/core/svg/SVGUseElement.h
+++ b/Source/core/svg/SVGUseElement.h
@@ -88,7 +88,7 @@
     void expandUseElementsInShadowTree(Node* element);
     void expandSymbolElementsInShadowTree(Node* element);
 
-    // "Tree connector" 
+    // "Tree connector"
     void associateInstancesWithShadowTreeElements(Node* target, SVGElementInstance* targetInstance);
     SVGElementInstance* instanceForShadowTreeElement(Node* element, SVGElementInstance* instance) const;
 
diff --git a/Source/core/svg/SVGUseElement.idl b/Source/core/svg/SVGUseElement.idl
index e348103..752daa9 100644
--- a/Source/core/svg/SVGUseElement.idl
+++ b/Source/core/svg/SVGUseElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGUseElement : SVGGraphicsElement {
diff --git a/Source/core/svg/SVGViewElement.idl b/Source/core/svg/SVGViewElement.idl
index 296c410..4b7a25d 100644
--- a/Source/core/svg/SVGViewElement.idl
+++ b/Source/core/svg/SVGViewElement.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGViewElement : SVGElement {
diff --git a/Source/core/svg/SVGViewSpec.cpp b/Source/core/svg/SVGViewSpec.cpp
index 9f3c344..17da037 100644
--- a/Source/core/svg/SVGViewSpec.cpp
+++ b/Source/core/svg/SVGViewSpec.cpp
@@ -282,7 +282,7 @@
         if (ptr < end && *ptr == ';')
             ptr++;
     }
-    
+
     if (ptr >= end || *ptr != ')')
         return false;
 
diff --git a/Source/core/svg/SVGViewSpec.idl b/Source/core/svg/SVGViewSpec.idl
index 40ac152..ab57e7e 100644
--- a/Source/core/svg/SVGViewSpec.idl
+++ b/Source/core/svg/SVGViewSpec.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGViewSpec {
diff --git a/Source/core/svg/SVGZoomAndPan.idl b/Source/core/svg/SVGZoomAndPan.idl
index 24dc1c4..42149bd 100644
--- a/Source/core/svg/SVGZoomAndPan.idl
+++ b/Source/core/svg/SVGZoomAndPan.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/core/svg/SVGZoomEvent.h b/Source/core/svg/SVGZoomEvent.h
index 3d2ea73..9aecc4d 100644
--- a/Source/core/svg/SVGZoomEvent.h
+++ b/Source/core/svg/SVGZoomEvent.h
@@ -18,7 +18,7 @@
  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
  * Boston, MA 02110-1301, USA.
  */
- 
+
 #ifndef SVGZoomEvent_h
 #define SVGZoomEvent_h
 
diff --git a/Source/core/svg/SVGZoomEvent.idl b/Source/core/svg/SVGZoomEvent.idl
index 424fc6a..48bb357 100644
--- a/Source/core/svg/SVGZoomEvent.idl
+++ b/Source/core/svg/SVGZoomEvent.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 interface SVGZoomEvent : UIEvent {
diff --git a/Source/core/svg/animation/SMILTime.cpp b/Source/core/svg/animation/SMILTime.cpp
index 70f6569..e6a1503 100644
--- a/Source/core/svg/animation/SMILTime.cpp
+++ b/Source/core/svg/animation/SMILTime.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -33,7 +33,7 @@
 
 const double SMILTime::unresolvedValue = DBL_MAX;
 // Just a big value smaller than DBL_MAX. Our times are relative to 0, we don't really need the full range.
-const double SMILTime::indefiniteValue = FLT_MAX;    
+const double SMILTime::indefiniteValue = FLT_MAX;
 
 SMILTime WebCore::operator+(const SMILTime& a, const SMILTime& b)
 {
diff --git a/Source/core/svg/animation/SMILTime.h b/Source/core/svg/animation/SMILTime.h
index 65378b4..4ae410b 100644
--- a/Source/core/svg/animation/SMILTime.h
+++ b/Source/core/svg/animation/SMILTime.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SMILTime_h
@@ -36,17 +36,17 @@
     SMILTime() : m_time(0) { }
     SMILTime(double time) : m_time(time) { ASSERT(!std::isnan(time)); }
     SMILTime(const SMILTime& o) : m_time(o.m_time) { }
-    
+
     static SMILTime unresolved() { return unresolvedValue; }
     static SMILTime indefinite() { return indefiniteValue; }
-    
+
     SMILTime& operator=(const SMILTime& o) { m_time = o.m_time; return *this; }
     double value() const { return m_time; }
-    
+
     bool isFinite() const { return m_time < indefiniteValue; }
     bool isIndefinite() const { return m_time == indefiniteValue; }
     bool isUnresolved() const { return m_time == unresolvedValue; }
-    
+
 private:
     static const double unresolvedValue;
     static const double indefiniteValue;
diff --git a/Source/core/svg/animation/SMILTimeContainer.cpp b/Source/core/svg/animation/SMILTimeContainer.cpp
index b29e12d..b4ab6a2 100644
--- a/Source/core/svg/animation/SMILTimeContainer.cpp
+++ b/Source/core/svg/animation/SMILTimeContainer.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -37,7 +37,7 @@
 
 static const double animationFrameDelay = 0.025;
 
-SMILTimeContainer::SMILTimeContainer(SVGSVGElement* owner) 
+SMILTimeContainer::SMILTimeContainer(SVGSVGElement* owner)
     : m_beginTime(0)
     , m_pauseTime(0)
     , m_resumeTime(0)
@@ -275,7 +275,7 @@
         AnimationsVector* scheduled = it->value.get();
 
         // Sort according to priority. Elements with later begin time have higher priority.
-        // In case of a tie, document order decides. 
+        // In case of a tie, document order decides.
         // FIXME: This should also consider timing relationships between the elements. Dependents
         // have higher priority.
         sortByPriority(*scheduled, elapsed);
diff --git a/Source/core/svg/animation/SMILTimeContainer.h b/Source/core/svg/animation/SMILTimeContainer.h
index 7c59c57..d48868a 100644
--- a/Source/core/svg/animation/SMILTimeContainer.h
+++ b/Source/core/svg/animation/SMILTimeContainer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SMILTimeContainer_h
@@ -37,7 +37,7 @@
 #include <wtf/text/WTFString.h>
 
 namespace WebCore {
-    
+
 class SVGElement;
 class SVGSMILElement;
 class SVGSVGElement;
@@ -70,7 +70,7 @@
     void timerFired(Timer<SMILTimeContainer>*);
     void startTimer(SMILTime fireTime, SMILTime minimumDelay = 0);
     void updateAnimations(SMILTime elapsed, bool seekToTime = false);
-    
+
     void updateDocumentOrderIndexes();
     void sortByPriority(Vector<SVGSMILElement*>& smilElements, SMILTime elapsed);
     double lastResumeTime() const { return m_resumeTime ? m_resumeTime : m_beginTime; }
@@ -82,7 +82,7 @@
     double m_presetStartTime;
 
     bool m_documentOrderIndexesDirty;
-    
+
     Timer<SMILTimeContainer> m_timer;
 
     typedef pair<SVGElement*, QualifiedName> ElementAttributePair;
diff --git a/Source/core/svg/animation/SVGSMILElement.cpp b/Source/core/svg/animation/SVGSMILElement.cpp
index b84205a..71f0925 100644
--- a/Source/core/svg/animation/SVGSMILElement.cpp
+++ b/Source/core/svg/animation/SVGSMILElement.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -43,10 +43,10 @@
 using namespace std;
 
 namespace WebCore {
-    
+
 // This is used for duration type time values that can't be negative.
 static const double invalidCachedTime = -1.;
-    
+
 class ConditionEventListener : public EventListener {
 public:
     static PassRefPtr<ConditionEventListener> create(SVGSMILElement* animation, SVGSMILElement::Condition* condition)
@@ -62,17 +62,17 @@
     }
 
     virtual bool operator==(const EventListener& other);
-    
+
     void disconnectAnimation()
     {
         m_animation = 0;
     }
 
 private:
-    ConditionEventListener(SVGSMILElement* animation, SVGSMILElement::Condition* condition) 
+    ConditionEventListener(SVGSMILElement* animation, SVGSMILElement::Condition* condition)
         : EventListener(ConditionEventListenerType)
         , m_animation(animation)
-        , m_condition(condition) 
+        , m_condition(condition)
     {
     }
 
@@ -89,7 +89,7 @@
     return false;
 }
 
-void ConditionEventListener::handleEvent(ScriptExecutionContext*, Event* event) 
+void ConditionEventListener::handleEvent(ScriptExecutionContext*, Event* event)
 {
     if (!m_animation)
         return;
@@ -102,10 +102,10 @@
     , m_baseID(baseID)
     , m_name(name)
     , m_offset(offset)
-    , m_repeats(repeats) 
+    , m_repeats(repeats)
 {
 }
-    
+
 SVGSMILElement::SVGSMILElement(const QualifiedName& tagName, Document* doc)
     : SVGElement(tagName, doc)
     , m_attributeName(anyQName())
@@ -192,16 +192,16 @@
         return anyQName();
     if (!attributeName.contains(':'))
         return QualifiedName(nullAtom, attributeName, nullAtom);
-    
+
     String prefix;
     String localName;
     if (!Document::parseQualifiedName(attributeName, prefix, localName, ASSERT_NO_EXCEPTION))
         return anyQName();
-    
-    String namespaceURI = svgElement->lookupNamespaceURI(prefix);    
+
+    String namespaceURI = svgElement->lookupNamespaceURI(prefix);
     if (namespaceURI.isEmpty())
         return anyQName();
-    
+
     return QualifiedName(nullAtom, localName, namespaceURI);
 }
 
@@ -299,12 +299,12 @@
         return SMILTime::unresolved();
     return result;
 }
-    
+
 SMILTime SVGSMILElement::parseClockValue(const String& data)
 {
     if (data.isNull())
         return SMILTime::unresolved();
-    
+
     String parse = data.stripWhiteSpace();
 
     DEFINE_STATIC_LOCAL(const AtomicString, indefiniteValue, ("indefinite", AtomicString::ConstructFromLiteral));
@@ -315,7 +315,7 @@
     bool ok;
     size_t doublePointOne = parse.find(':');
     size_t doublePointTwo = parse.find(':', doublePointOne + 1);
-    if (doublePointOne == 2 && doublePointTwo == 5 && parse.length() >= 8) { 
+    if (doublePointOne == 2 && doublePointTwo == 5 && parse.length() >= 8) {
         result += parse.substring(0, 2).toUIntStrict(&ok) * 60 * 60;
         if (!ok)
             return SMILTime::unresolved();
@@ -323,7 +323,7 @@
         if (!ok)
             return SMILTime::unresolved();
         result += parse.substring(6).toDouble(&ok);
-    } else if (doublePointOne == 2 && doublePointTwo == notFound && parse.length() >= 5) { 
+    } else if (doublePointOne == 2 && doublePointTwo == notFound && parse.length() >= 5) {
         result += parse.substring(0, 2).toUIntStrict(&ok) * 60;
         if (!ok)
             return SMILTime::unresolved();
@@ -335,16 +335,16 @@
         return SMILTime::unresolved();
     return result;
 }
-    
+
 static void sortTimeList(Vector<SMILTimeWithOrigin>& timeList)
 {
     std::sort(timeList.begin(), timeList.end());
 }
-    
+
 bool SVGSMILElement::parseCondition(const String& value, BeginOrEnd beginOrEnd)
 {
     String parseString = value.stripWhiteSpace();
-    
+
     double sign = 1.;
     bool ok;
     size_t pos = parseString.find('+');
@@ -368,7 +368,7 @@
     if (conditionString.isEmpty())
         return false;
     pos = conditionString.find('.');
-    
+
     String baseID;
     String nameString;
     if (pos == notFound)
@@ -383,7 +383,7 @@
     Condition::Type type;
     int repeats = -1;
     if (nameString.startsWith("repeat(") && nameString.endsWith(')')) {
-        // FIXME: For repeat events we just need to add the data carrying TimeEvent class and 
+        // FIXME: For repeat events we just need to add the data carrying TimeEvent class and
         // fire the events at appropiate times.
         repeats = nameString.substring(7, nameString.length() - 8).toUIntStrict(&ok);
         if (!ok)
@@ -399,7 +399,7 @@
         type = Condition::AccessKey;
     } else
         type = Condition::EventBase;
-    
+
     m_conditions.append(Condition(type, beginOrEnd, baseID, nameString, offset, repeats));
 
     if (type == Condition::EventBase && beginOrEnd == End)
@@ -415,7 +415,7 @@
     return node->hasTagName(SVGNames::setTag) || node->hasTagName(SVGNames::animateTag) || node->hasTagName(SVGNames::animateMotionTag)
             || node->hasTagName(SVGNames::animateTransformTag) || node->hasTagName(SVGNames::animateColorTag);
 }
-    
+
 void SVGSMILElement::parseBeginOrEnd(const String& parseString, BeginOrEnd beginOrEnd)
 {
     Vector<SMILTimeWithOrigin>& timeList = beginOrEnd == Begin ? m_beginTimes : m_endTimes;
@@ -625,9 +625,9 @@
 {
     return m_activeState == Frozen;
 }
-    
+
 SVGSMILElement::Restart SVGSMILElement::restart() const
-{    
+{
     DEFINE_STATIC_LOCAL(const AtomicString, never, ("never", AtomicString::ConstructFromLiteral));
     DEFINE_STATIC_LOCAL(const AtomicString, whenNotActive, ("whenNotActive", AtomicString::ConstructFromLiteral));
     const AtomicString& value = fastGetAttribute(SVGNames::restartAttr);
@@ -637,16 +637,16 @@
         return RestartWhenNotActive;
     return RestartAlways;
 }
-    
+
 SVGSMILElement::FillMode SVGSMILElement::fill() const
-{   
+{
     DEFINE_STATIC_LOCAL(const AtomicString, freeze, ("freeze", AtomicString::ConstructFromLiteral));
     const AtomicString& value = fastGetAttribute(SVGNames::fillAttr);
     return value == freeze ? FillFreeze : FillRemove;
 }
-    
+
 SMILTime SVGSMILElement::dur() const
-{   
+{
     if (m_cachedDur != invalidCachedTime)
         return m_cachedDur;
     const AtomicString& value = fastGetAttribute(SVGNames::durAttr);
@@ -655,7 +655,7 @@
 }
 
 SMILTime SVGSMILElement::repeatDur() const
-{    
+{
     if (m_cachedRepeatDur != invalidCachedTime)
         return m_cachedRepeatDur;
     const AtomicString& value = fastGetAttribute(SVGNames::repeatDurAttr);
@@ -663,10 +663,10 @@
     m_cachedRepeatDur = clockValue <= 0 ? SMILTime::unresolved() : clockValue;
     return m_cachedRepeatDur;
 }
-    
+
 // So a count is not really a time but let just all pretend we did not notice.
 SMILTime SVGSMILElement::repeatCount() const
-{    
+{
     if (m_cachedRepeatCount != invalidCachedTime)
         return m_cachedRepeatCount;
     const AtomicString& value = fastGetAttribute(SVGNames::repeatCountAttr);
@@ -682,23 +682,23 @@
 }
 
 SMILTime SVGSMILElement::maxValue() const
-{    
+{
     if (m_cachedMax != invalidCachedTime)
         return m_cachedMax;
     const AtomicString& value = fastGetAttribute(SVGNames::maxAttr);
     SMILTime result = parseClockValue(value);
     return m_cachedMax = (result.isUnresolved() || result < 0) ? SMILTime::indefinite() : result;
 }
-    
+
 SMILTime SVGSMILElement::minValue() const
-{    
+{
     if (m_cachedMin != invalidCachedTime)
         return m_cachedMin;
     const AtomicString& value = fastGetAttribute(SVGNames::minAttr);
     SMILTime result = parseClockValue(value);
     return m_cachedMin = (result.isUnresolved() || result < 0) ? 0 : result;
 }
-                 
+
 SMILTime SVGSMILElement::simpleDuration() const
 {
     return min(dur(), SMILTime::indefinite());
@@ -791,7 +791,7 @@
         preliminaryActiveDuration = repeatingDuration();
     else
         preliminaryActiveDuration = min(repeatingDuration(), resolvedEnd - resolvedBegin);
-    
+
     SMILTime minValue = this->minValue();
     SMILTime maxValue = this->maxValue();
     if (minValue > maxValue) {
@@ -818,8 +818,8 @@
             tempEnd = resolveActiveEnd(tempBegin, SMILTime::indefinite());
         else {
             tempEnd = findInstanceTime(End, tempBegin, true);
-            if ((first && tempBegin == tempEnd && tempEnd == lastIntervalTempEnd) || (!first && tempEnd == m_intervalEnd)) 
-                tempEnd = findInstanceTime(End, tempBegin, false);    
+            if ((first && tempBegin == tempEnd && tempEnd == lastIntervalTempEnd) || (!first && tempEnd == m_intervalEnd))
+                tempEnd = findInstanceTime(End, tempBegin, false);
             if (tempEnd.isUnresolved()) {
                 if (!m_endTimes.isEmpty() && !m_hasEndEventConditions)
                     break;
@@ -838,7 +838,7 @@
     beginResult = SMILTime::unresolved();
     endResult = SMILTime::unresolved();
 }
-    
+
 void SVGSMILElement::resolveFirstInterval()
 {
     SMILTime begin;
@@ -846,7 +846,7 @@
     resolveInterval(true, begin, end);
     ASSERT(!begin.isIndefinite());
 
-    if (!begin.isUnresolved() && (begin != m_intervalBegin || end != m_intervalEnd)) {   
+    if (!begin.isUnresolved() && (begin != m_intervalBegin || end != m_intervalEnd)) {
         bool wasUnresolved = m_intervalBegin.isUnresolved();
         m_intervalBegin = begin;
         m_intervalEnd = end;
@@ -864,7 +864,7 @@
     SMILTime end;
     resolveInterval(false, begin, end);
     ASSERT(!begin.isIndefinite());
-    
+
     if (!begin.isUnresolved() && begin != m_intervalBegin) {
         m_intervalBegin = begin;
         m_intervalEnd = end;
@@ -878,7 +878,7 @@
 {
     return m_nextProgressTime;
 }
-    
+
 void SVGSMILElement::beginListChanged(SMILTime eventTime)
 {
     if (m_isWaitingForFirstInterval)
@@ -889,7 +889,7 @@
             // Begin time changed, re-resolve the interval.
             SMILTime oldBegin = m_intervalBegin;
             m_intervalEnd = eventTime;
-            resolveInterval(false, m_intervalBegin, m_intervalEnd);  
+            resolveInterval(false, m_intervalBegin, m_intervalEnd);
             ASSERT(!m_intervalBegin.isUnresolved());
             if (m_intervalBegin != oldBegin) {
                 if (m_activeState == Active && m_intervalBegin > eventTime) {
@@ -941,7 +941,7 @@
         if (restart != RestartAlways)
             return;
         SMILTime nextBegin = findInstanceTime(Begin, m_intervalBegin, false);
-        if (nextBegin < m_intervalEnd) { 
+        if (nextBegin < m_intervalEnd) {
             m_intervalEnd = nextBegin;
             notifyDependentsIntervalChanged(ExistingInterval);
         }
@@ -1015,7 +1015,7 @@
     SMILTime simpleTime = fmod(activeTime.value(), simpleDuration.value());
     return narrowPrecisionToFloat(simpleTime.value() / simpleDuration.value());
 }
-    
+
 SMILTime SVGSMILElement::calculateNextProgressTime(SMILTime elapsed) const
 {
     if (m_activeState == Active) {
@@ -1023,17 +1023,17 @@
         SMILTime simpleDuration = this->simpleDuration();
         if (simpleDuration.isIndefinite() || hasTagName(SVGNames::setTag)) {
             SMILTime repeatingDurationEnd = m_intervalBegin + repeatingDuration();
-            // We are supposed to do freeze semantics when repeating ends, even if the element is still active. 
+            // We are supposed to do freeze semantics when repeating ends, even if the element is still active.
             // Take care that we get a timer callback at that point.
             if (elapsed < repeatingDurationEnd && repeatingDurationEnd < m_intervalEnd && repeatingDurationEnd.isFinite())
                 return repeatingDurationEnd;
             return m_intervalEnd;
-        } 
+        }
         return elapsed + 0.025;
     }
     return m_intervalBegin >= elapsed ? m_intervalBegin : SMILTime::unresolved();
 }
-    
+
 SVGSMILElement::ActiveState SVGSMILElement::determineActiveState(SMILTime elapsed) const
 {
     if (elapsed >= m_intervalBegin && elapsed < m_intervalEnd)
@@ -1041,13 +1041,13 @@
 
     return fill() == FillFreeze ? Frozen : Inactive;
 }
-    
-bool SVGSMILElement::isContributing(SMILTime elapsed) const 
-{ 
+
+bool SVGSMILElement::isContributing(SMILTime elapsed) const
+{
     // Animation does not contribute during the active time if it is past its repeating duration and has fill=remove.
     return (m_activeState == Active && (fill() == FillFreeze || elapsed <= m_intervalBegin + repeatingDuration())) || m_activeState == Frozen;
 }
-    
+
 bool SVGSMILElement::progress(SMILTime elapsed, SVGSMILElement* resultElement, bool seekToTime)
 {
     ASSERT(resultElement);
@@ -1121,14 +1121,14 @@
     m_nextProgressTime = calculateNextProgressTime(elapsed);
     return animationIsContributing;
 }
-    
+
 void SVGSMILElement::notifyDependentsIntervalChanged(NewOrExistingInterval newOrExisting)
 {
     ASSERT(m_intervalBegin.isFinite());
     DEFINE_STATIC_LOCAL(HashSet<SVGSMILElement*>, loopBreaker, ());
     if (!loopBreaker.add(this).isNewEntry)
         return;
-    
+
     TimeDependentSet::iterator end = m_timeDependents.end();
     for (TimeDependentSet::iterator it = m_timeDependents.begin(); it != end; ++it) {
         SVGSMILElement* dependent = *it;
@@ -1137,10 +1137,10 @@
 
     loopBreaker.remove(this);
 }
-    
+
 void SVGSMILElement::createInstanceTimesFromSyncbase(SVGSMILElement* syncbase, NewOrExistingInterval)
 {
-    // FIXME: To be really correct, this should handle updating exising interval by changing 
+    // FIXME: To be really correct, this should handle updating exising interval by changing
     // the associated times instead of creating new ones.
     for (unsigned n = 0; n < m_conditions.size(); ++n) {
         Condition& condition = m_conditions[n];
@@ -1160,19 +1160,19 @@
         }
     }
 }
-    
+
 void SVGSMILElement::addTimeDependent(SVGSMILElement* animation)
 {
     m_timeDependents.add(animation);
     if (m_intervalBegin.isFinite())
         animation->createInstanceTimesFromSyncbase(this, NewInterval);
 }
-    
+
 void SVGSMILElement::removeTimeDependent(SVGSMILElement* animation)
 {
     m_timeDependents.remove(animation);
 }
-    
+
 void SVGSMILElement::handleConditionEvent(Event*, Condition* condition)
 {
     SMILTime elapsed = this->elapsed();
diff --git a/Source/core/svg/animation/SVGSMILElement.h b/Source/core/svg/animation/SVGSMILElement.h
index 320e9cd..8b6df54 100644
--- a/Source/core/svg/animation/SVGSMILElement.h
+++ b/Source/core/svg/animation/SVGSMILElement.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SVGSMILElement_h
@@ -49,7 +49,7 @@
     virtual void svgAttributeChanged(const QualifiedName&) OVERRIDE;
     virtual InsertionNotificationRequest insertedInto(ContainerNode*) OVERRIDE;
     virtual void removedFrom(ContainerNode*) OVERRIDE;
-    
+
     virtual bool hasValidAttributeType() = 0;
     virtual bool hasValidAttributeName();
     virtual void animationAttributeChanged() = 0;
@@ -82,7 +82,7 @@
     SMILTime maxValue() const;
     SMILTime minValue() const;
 
-    SMILTime elapsed() const; 
+    SMILTime elapsed() const;
 
     SMILTime intervalBegin() const { return m_intervalBegin; }
     SMILTime intervalEnd() const { return m_intervalEnd; }
@@ -132,7 +132,7 @@
         Begin,
         End
     };
-    
+
     SMILTime findInstanceTime(BeginOrEnd, SMILTime minimumTime, bool equalsMinimumOK) const;
     void resolveFirstInterval();
     void resolveNextInterval(bool notifyDependents);
@@ -199,7 +199,7 @@
 
     Vector<Condition> m_conditions;
     bool m_conditionsConnected;
-    bool m_hasEndEventConditions;     
+    bool m_hasEndEventConditions;
 
     bool m_isWaitingForFirstInterval;
 
diff --git a/Source/core/svg/graphics/SVGImage.cpp b/Source/core/svg/graphics/SVGImage.cpp
index 8ca01dd..4abc9fa 100644
--- a/Source/core/svg/graphics/SVGImage.cpp
+++ b/Source/core/svg/graphics/SVGImage.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/svg/graphics/SVGImage.h b/Source/core/svg/graphics/SVGImage.h
index 95c6885..d4d9af4 100644
--- a/Source/core/svg/graphics/SVGImage.h
+++ b/Source/core/svg/graphics/SVGImage.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SVGImage_h
diff --git a/Source/core/svg/graphics/SVGImageChromeClient.h b/Source/core/svg/graphics/SVGImageChromeClient.h
index f640188..b17ca84 100644
--- a/Source/core/svg/graphics/SVGImageChromeClient.h
+++ b/Source/core/svg/graphics/SVGImageChromeClient.h
@@ -41,23 +41,23 @@
         : m_image(image)
     {
     }
-    
+
     virtual bool isSVGImageChromeClient() const { return true; }
     SVGImage* image() const { return m_image; }
-    
+
 private:
     virtual void chromeDestroyed()
     {
         m_image = 0;
     }
-    
+
     virtual void invalidateContentsAndRootView(const IntRect& r)
     {
         // If m_image->m_page is null, we're being destructed, don't fire changedInRect() in that case.
         if (m_image && m_image->imageObserver() && m_image->m_page)
             m_image->imageObserver()->changedInRect(m_image, r);
     }
-    
+
     SVGImage* m_image;
 };
 
@@ -66,7 +66,7 @@
     ASSERT_WITH_SECURITY_IMPLICATION(!client || client->isSVGImageChromeClient());
     return static_cast<SVGImageChromeClient*>(client);
 }
-    
-} 
+
+}
 
 #endif // SVGImageChromeClient_h
diff --git a/Source/core/svg/graphics/SVGImageForContainer.h b/Source/core/svg/graphics/SVGImageForContainer.h
index f56e39f..a174124 100644
--- a/Source/core/svg/graphics/SVGImageForContainer.h
+++ b/Source/core/svg/graphics/SVGImageForContainer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SVGImageForContainer_h
diff --git a/Source/core/svg/graphics/filters/SVGFEImage.h b/Source/core/svg/graphics/filters/SVGFEImage.h
index 249d2fc..50486d0 100644
--- a/Source/core/svg/graphics/filters/SVGFEImage.h
+++ b/Source/core/svg/graphics/filters/SVGFEImage.h
@@ -44,7 +44,7 @@
 
     virtual TextStream& externalRepresentation(TextStream&, int indention) const;
     virtual SkImageFilter* createImageFilter(SkiaImageFilterBuilder*);
-    
+
 private:
     virtual ~FEImage() { }
     FEImage(Filter*, PassRefPtr<Image>, const SVGPreserveAspectRatio&);
diff --git a/Source/core/svg/graphics/filters/SVGFilterBuilder.h b/Source/core/svg/graphics/filters/SVGFilterBuilder.h
index 3bd349f..c30fc57 100644
--- a/Source/core/svg/graphics/filters/SVGFilterBuilder.h
+++ b/Source/core/svg/graphics/filters/SVGFilterBuilder.h
@@ -78,7 +78,7 @@
 
     RefPtr<FilterEffect> m_lastEffect;
 };
-    
+
 } // namespace WebCore
 
 #endif // SVGFilterBuilder_h
diff --git a/Source/core/svg/properties/SVGAnimatedPropertyDescription.h b/Source/core/svg/properties/SVGAnimatedPropertyDescription.h
index c149a9b..55f1a8f 100644
--- a/Source/core/svg/properties/SVGAnimatedPropertyDescription.h
+++ b/Source/core/svg/properties/SVGAnimatedPropertyDescription.h
@@ -30,7 +30,7 @@
 
 class SVGElement;
 
-struct SVGAnimatedPropertyDescription {            
+struct SVGAnimatedPropertyDescription {
     // Empty value
     SVGAnimatedPropertyDescription()
         : m_element(0)
@@ -81,7 +81,7 @@
 };
 
 struct SVGAnimatedPropertyDescriptionHashTraits : WTF::SimpleClassHashTraits<SVGAnimatedPropertyDescription> { };
- 
+
 }
 
 #endif // SVGAnimatedPropertyDescription_h
diff --git a/Source/core/svg/properties/SVGAnimatedPropertyMacros.h b/Source/core/svg/properties/SVGAnimatedPropertyMacros.h
index 4d2d36e..dc083da 100644
--- a/Source/core/svg/properties/SVGAnimatedPropertyMacros.h
+++ b/Source/core/svg/properties/SVGAnimatedPropertyMacros.h
@@ -182,7 +182,7 @@
 \
     mutable SVGSynchronizableAnimatedProperty<PropertyType> m_##LowerProperty;
 
-#define END_DECLARE_ANIMATED_PROPERTIES 
+#define END_DECLARE_ANIMATED_PROPERTIES
 
 // List specific definition/declaration helpers
 #define DECLARE_ANIMATED_LIST_PROPERTY(TearOffType, PropertyType, UpperProperty, LowerProperty) \
diff --git a/Source/core/svg/properties/SVGAttributeToPropertyMap.cpp b/Source/core/svg/properties/SVGAttributeToPropertyMap.cpp
index 18a1079..cabeb22 100644
--- a/Source/core/svg/properties/SVGAttributeToPropertyMap.cpp
+++ b/Source/core/svg/properties/SVGAttributeToPropertyMap.cpp
@@ -97,7 +97,7 @@
         const PropertiesVector::iterator vectorEnd = vector->end();
         for (PropertiesVector::iterator vectorIt = vector->begin(); vectorIt != vectorEnd; ++vectorIt)
             synchronizeProperty(contextElement, it->key, *vectorIt);
-    } 
+    }
 }
 
 bool SVGAttributeToPropertyMap::synchronizeProperty(SVGElement* contextElement, const QualifiedName& attributeName)
diff --git a/Source/core/svg/properties/SVGListProperty.h b/Source/core/svg/properties/SVGListProperty.h
index a6ab46f..de9c656 100644
--- a/Source/core/svg/properties/SVGListProperty.h
+++ b/Source/core/svg/properties/SVGListProperty.h
@@ -298,7 +298,7 @@
             return ListItemType();
         }
 
-        // Update the value at the desired position 'index'. 
+        // Update the value at the desired position 'index'.
         m_values->at(index) = newItem;
 
         commitChange();
@@ -337,7 +337,7 @@
         if (oldItem)
             oldItem->detachWrapper();
 
-        // Update the value and the wrapper at the desired position 'index'. 
+        // Update the value and the wrapper at the desired position 'index'.
         m_values->at(index) = newItem->propertyReference();
         m_wrappers->at(index) = newItem;
 
diff --git a/Source/core/testing/InternalSettings.cpp b/Source/core/testing/InternalSettings.cpp
index f847a0d..4d213d1 100644
--- a/Source/core/testing/InternalSettings.cpp
+++ b/Source/core/testing/InternalSettings.cpp
@@ -58,7 +58,6 @@
 InternalSettings::Backup::Backup(Settings* settings)
     : m_originalCSSExclusionsEnabled(RuntimeEnabledFeatures::cssExclusionsEnabled())
     , m_originalAuthorShadowDOMForAnyElementEnabled(RuntimeEnabledFeatures::authorShadowDOMForAnyElementEnabled())
-    , m_originalExperimentalShadowDOMEnabled(RuntimeEnabledFeatures::experimentalShadowDOMEnabled())
     , m_originalExperimentalWebSocketEnabled(settings->experimentalWebSocketEnabled())
     , m_originalStyleScoped(RuntimeEnabledFeatures::styleScopedEnabled())
     , m_originalEditingBehavior(settings->editingBehaviorType())
@@ -81,7 +80,6 @@
 {
     RuntimeEnabledFeatures::setCSSExclusionsEnabled(m_originalCSSExclusionsEnabled);
     RuntimeEnabledFeatures::setAuthorShadowDOMForAnyElementEnabled(m_originalAuthorShadowDOMForAnyElementEnabled);
-    RuntimeEnabledFeatures::setExperimentalShadowDOMEnabled(m_originalExperimentalShadowDOMEnabled);
     settings->setExperimentalWebSocketEnabled(m_originalExperimentalWebSocketEnabled);
     RuntimeEnabledFeatures::setStyleScopedEnabled(m_originalStyleScoped);
     settings->setEditingBehaviorType(m_originalEditingBehavior);
@@ -167,11 +165,6 @@
     RuntimeEnabledFeatures::setAuthorShadowDOMForAnyElementEnabled(isEnabled);
 }
 
-void InternalSettings::setExperimentalShadowDOMEnabled(bool isEnabled)
-{
-    RuntimeEnabledFeatures::setExperimentalShadowDOMEnabled(isEnabled);
-}
-
 void InternalSettings::setExperimentalWebSocketEnabled(bool isEnabled)
 {
     settings()->setExperimentalWebSocketEnabled(isEnabled);
diff --git a/Source/core/testing/InternalSettings.h b/Source/core/testing/InternalSettings.h
index 44c8559..b77e01b 100644
--- a/Source/core/testing/InternalSettings.h
+++ b/Source/core/testing/InternalSettings.h
@@ -52,7 +52,6 @@
 
         bool m_originalCSSExclusionsEnabled;
         bool m_originalAuthorShadowDOMForAnyElementEnabled;
-        bool m_originalExperimentalShadowDOMEnabled;
         bool m_originalExperimentalWebSocketEnabled;
         bool m_originalStyleScoped;
         EditingBehaviorType m_originalEditingBehavior;
@@ -109,7 +108,6 @@
     // be removed or moved onto internals.runtimeFlags:
     void setAuthorShadowDOMForAnyElementEnabled(bool);
     void setCSSExclusionsEnabled(bool);
-    void setExperimentalShadowDOMEnabled(bool);
     void setExperimentalWebSocketEnabled(bool);
     void setLangAttributeAwareFormControlUIEnabled(bool);
     void setLazyLayoutEnabled(bool);
diff --git a/Source/core/testing/InternalSettings.idl b/Source/core/testing/InternalSettings.idl
index 8243d29..9d98511 100644
--- a/Source/core/testing/InternalSettings.idl
+++ b/Source/core/testing/InternalSettings.idl
@@ -54,7 +54,6 @@
     // be removed or moved onto internals.runtimeFlags:
     void setAuthorShadowDOMForAnyElementEnabled(boolean enabled);
     void setCSSExclusionsEnabled(boolean enabled);
-    void setExperimentalShadowDOMEnabled(boolean enabled);
     void setExperimentalWebSocketEnabled(boolean enabled);
     void setLangAttributeAwareFormControlUIEnabled(boolean enabled);
     void setLazyLayoutEnabled(boolean enabled);
diff --git a/Source/core/testing/LayerRect.idl b/Source/core/testing/LayerRect.idl
index 78910b5..50994ab 100644
--- a/Source/core/testing/LayerRect.idl
+++ b/Source/core/testing/LayerRect.idl
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2013 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/testing/LayerRectList.idl b/Source/core/testing/LayerRectList.idl
index 7551667..ee608cf 100644
--- a/Source/core/testing/LayerRectList.idl
+++ b/Source/core/testing/LayerRectList.idl
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2013 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/core/webcore_dom.target.darwin-arm.mk b/Source/core/webcore_dom.target.darwin-arm.mk
index 9579a1c..2f35a08 100644
--- a/Source/core/webcore_dom.target.darwin-arm.mk
+++ b/Source/core/webcore_dom.target.darwin-arm.mk
@@ -154,6 +154,7 @@
 	third_party/WebKit/Source/core/dom/StringCallback.cpp \
 	third_party/WebKit/Source/core/dom/StyleElement.cpp \
 	third_party/WebKit/Source/core/dom/StyleSheetCollection.cpp \
+	third_party/WebKit/Source/core/dom/StyleSheetScopingNodeList.cpp \
 	third_party/WebKit/Source/core/dom/TagNodeList.cpp \
 	third_party/WebKit/Source/core/dom/Text.cpp \
 	third_party/WebKit/Source/core/dom/TextEvent.cpp \
diff --git a/Source/core/webcore_dom.target.darwin-mips.mk b/Source/core/webcore_dom.target.darwin-mips.mk
index dd5179f..31a2edd 100644
--- a/Source/core/webcore_dom.target.darwin-mips.mk
+++ b/Source/core/webcore_dom.target.darwin-mips.mk
@@ -154,6 +154,7 @@
 	third_party/WebKit/Source/core/dom/StringCallback.cpp \
 	third_party/WebKit/Source/core/dom/StyleElement.cpp \
 	third_party/WebKit/Source/core/dom/StyleSheetCollection.cpp \
+	third_party/WebKit/Source/core/dom/StyleSheetScopingNodeList.cpp \
 	third_party/WebKit/Source/core/dom/TagNodeList.cpp \
 	third_party/WebKit/Source/core/dom/Text.cpp \
 	third_party/WebKit/Source/core/dom/TextEvent.cpp \
diff --git a/Source/core/webcore_dom.target.darwin-x86.mk b/Source/core/webcore_dom.target.darwin-x86.mk
index 73e93d4..1eda919 100644
--- a/Source/core/webcore_dom.target.darwin-x86.mk
+++ b/Source/core/webcore_dom.target.darwin-x86.mk
@@ -154,6 +154,7 @@
 	third_party/WebKit/Source/core/dom/StringCallback.cpp \
 	third_party/WebKit/Source/core/dom/StyleElement.cpp \
 	third_party/WebKit/Source/core/dom/StyleSheetCollection.cpp \
+	third_party/WebKit/Source/core/dom/StyleSheetScopingNodeList.cpp \
 	third_party/WebKit/Source/core/dom/TagNodeList.cpp \
 	third_party/WebKit/Source/core/dom/Text.cpp \
 	third_party/WebKit/Source/core/dom/TextEvent.cpp \
diff --git a/Source/core/webcore_dom.target.linux-arm.mk b/Source/core/webcore_dom.target.linux-arm.mk
index 9579a1c..2f35a08 100644
--- a/Source/core/webcore_dom.target.linux-arm.mk
+++ b/Source/core/webcore_dom.target.linux-arm.mk
@@ -154,6 +154,7 @@
 	third_party/WebKit/Source/core/dom/StringCallback.cpp \
 	third_party/WebKit/Source/core/dom/StyleElement.cpp \
 	third_party/WebKit/Source/core/dom/StyleSheetCollection.cpp \
+	third_party/WebKit/Source/core/dom/StyleSheetScopingNodeList.cpp \
 	third_party/WebKit/Source/core/dom/TagNodeList.cpp \
 	third_party/WebKit/Source/core/dom/Text.cpp \
 	third_party/WebKit/Source/core/dom/TextEvent.cpp \
diff --git a/Source/core/webcore_dom.target.linux-mips.mk b/Source/core/webcore_dom.target.linux-mips.mk
index dd5179f..31a2edd 100644
--- a/Source/core/webcore_dom.target.linux-mips.mk
+++ b/Source/core/webcore_dom.target.linux-mips.mk
@@ -154,6 +154,7 @@
 	third_party/WebKit/Source/core/dom/StringCallback.cpp \
 	third_party/WebKit/Source/core/dom/StyleElement.cpp \
 	third_party/WebKit/Source/core/dom/StyleSheetCollection.cpp \
+	third_party/WebKit/Source/core/dom/StyleSheetScopingNodeList.cpp \
 	third_party/WebKit/Source/core/dom/TagNodeList.cpp \
 	third_party/WebKit/Source/core/dom/Text.cpp \
 	third_party/WebKit/Source/core/dom/TextEvent.cpp \
diff --git a/Source/core/webcore_dom.target.linux-x86.mk b/Source/core/webcore_dom.target.linux-x86.mk
index 73e93d4..1eda919 100644
--- a/Source/core/webcore_dom.target.linux-x86.mk
+++ b/Source/core/webcore_dom.target.linux-x86.mk
@@ -154,6 +154,7 @@
 	third_party/WebKit/Source/core/dom/StringCallback.cpp \
 	third_party/WebKit/Source/core/dom/StyleElement.cpp \
 	third_party/WebKit/Source/core/dom/StyleSheetCollection.cpp \
+	third_party/WebKit/Source/core/dom/StyleSheetScopingNodeList.cpp \
 	third_party/WebKit/Source/core/dom/TagNodeList.cpp \
 	third_party/WebKit/Source/core/dom/Text.cpp \
 	third_party/WebKit/Source/core/dom/TextEvent.cpp \
diff --git a/Source/core/workers/Worker.cpp b/Source/core/workers/Worker.cpp
index 6c412d1..c94d08c 100644
--- a/Source/core/workers/Worker.cpp
+++ b/Source/core/workers/Worker.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/workers/Worker.h b/Source/core/workers/Worker.h
index 8c6f7d2..3f0eb1a 100644
--- a/Source/core/workers/Worker.h
+++ b/Source/core/workers/Worker.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/workers/Worker.idl b/Source/core/workers/Worker.idl
index ab7f280..34aa4be 100644
--- a/Source/core/workers/Worker.idl
+++ b/Source/core/workers/Worker.idl
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/workers/WorkerEventQueue.cpp b/Source/core/workers/WorkerEventQueue.cpp
index 4eac594..fef5b69 100644
--- a/Source/core/workers/WorkerEventQueue.cpp
+++ b/Source/core/workers/WorkerEventQueue.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/workers/WorkerEventQueue.h b/Source/core/workers/WorkerEventQueue.h
index 24c6b93..5eb8567 100644
--- a/Source/core/workers/WorkerEventQueue.h
+++ b/Source/core/workers/WorkerEventQueue.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/workers/WorkerGlobalScope.cpp b/Source/core/workers/WorkerGlobalScope.cpp
index 1af5495..263c9ec 100644
--- a/Source/core/workers/WorkerGlobalScope.cpp
+++ b/Source/core/workers/WorkerGlobalScope.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/workers/WorkerGlobalScope.idl b/Source/core/workers/WorkerGlobalScope.idl
index 1a65c31..e395d34 100644
--- a/Source/core/workers/WorkerGlobalScope.idl
+++ b/Source/core/workers/WorkerGlobalScope.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/workers/WorkerLocation.cpp b/Source/core/workers/WorkerLocation.cpp
index 8cdcb4b..87b5090 100644
--- a/Source/core/workers/WorkerLocation.cpp
+++ b/Source/core/workers/WorkerLocation.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/workers/WorkerLocation.h b/Source/core/workers/WorkerLocation.h
index 2da4b1d..420338a 100644
--- a/Source/core/workers/WorkerLocation.h
+++ b/Source/core/workers/WorkerLocation.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/workers/WorkerLocation.idl b/Source/core/workers/WorkerLocation.idl
index 1debf60..0d8399b 100644
--- a/Source/core/workers/WorkerLocation.idl
+++ b/Source/core/workers/WorkerLocation.idl
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/core/workers/WorkerMessagingProxy.h b/Source/core/workers/WorkerMessagingProxy.h
index 47882d8..9b2113b 100644
--- a/Source/core/workers/WorkerMessagingProxy.h
+++ b/Source/core/workers/WorkerMessagingProxy.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/workers/WorkerRunLoop.cpp b/Source/core/workers/WorkerRunLoop.cpp
index 4d0c856..ec5e897 100644
--- a/Source/core/workers/WorkerRunLoop.cpp
+++ b/Source/core/workers/WorkerRunLoop.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -27,7 +27,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #include "config.h"
 #include "core/workers/WorkerRunLoop.h"
 
diff --git a/Source/core/workers/WorkerRunLoop.h b/Source/core/workers/WorkerRunLoop.h
index f0c2b20..28a7bc5 100644
--- a/Source/core/workers/WorkerRunLoop.h
+++ b/Source/core/workers/WorkerRunLoop.h
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -46,7 +46,7 @@
     public:
         WorkerRunLoop();
         ~WorkerRunLoop();
-        
+
         // Blocking call. Waits for tasks and timers, invokes the callbacks.
         void run(WorkerGlobalScope*);
 
@@ -78,7 +78,7 @@
 
         private:
             Task(PassOwnPtr<ScriptExecutionContext::Task> task, const String& mode);
-        
+
             OwnPtr<ScriptExecutionContext::Task> m_task;
             String m_mode;
         };
diff --git a/Source/core/workers/WorkerScriptLoader.cpp b/Source/core/workers/WorkerScriptLoader.cpp
index ff40c3d..9c10f8b 100644
--- a/Source/core/workers/WorkerScriptLoader.cpp
+++ b/Source/core/workers/WorkerScriptLoader.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -74,7 +74,7 @@
 
     WorkerThreadableLoader::loadResourceSynchronously(toWorkerGlobalScope(scriptExecutionContext), *request, *this, options);
 }
-    
+
 void WorkerScriptLoader::loadAsynchronously(ScriptExecutionContext* scriptExecutionContext, const KURL& url, CrossOriginRequestPolicy crossOriginRequestPolicy, WorkerScriptLoaderClient* client)
 {
     ASSERT(client);
@@ -108,7 +108,7 @@
     request->setTargetType(m_targetType);
     return request.release();
 }
-    
+
 void WorkerScriptLoader::didReceiveResponse(unsigned long identifier, const ResourceResponse& response)
 {
     if (response.httpStatusCode() / 100 != 2 && response.httpStatusCode()) {
@@ -135,10 +135,10 @@
 
     if (!len)
         return;
-    
+
     if (len == -1)
         len = strlen(data);
-    
+
     m_script.append(m_decoder->decode(data, len));
 }
 
diff --git a/Source/core/workers/WorkerScriptLoader.h b/Source/core/workers/WorkerScriptLoader.h
index 267cbcc..ef4b655 100644
--- a/Source/core/workers/WorkerScriptLoader.h
+++ b/Source/core/workers/WorkerScriptLoader.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -83,7 +83,7 @@
 
         WorkerScriptLoaderClient* m_client;
         RefPtr<ThreadableLoader> m_threadableLoader;
-        String m_responseEncoding;        
+        String m_responseEncoding;
         RefPtr<TextResourceDecoder> m_decoder;
         StringBuilder m_script;
         KURL m_url;
diff --git a/Source/core/workers/WorkerScriptLoaderClient.h b/Source/core/workers/WorkerScriptLoaderClient.h
index 4112cf2..f32f57e 100644
--- a/Source/core/workers/WorkerScriptLoaderClient.h
+++ b/Source/core/workers/WorkerScriptLoaderClient.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/workers/WorkerThread.h b/Source/core/workers/WorkerThread.h
index 246324c..3b212bb 100644
--- a/Source/core/workers/WorkerThread.h
+++ b/Source/core/workers/WorkerThread.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/core/xml/DOMParser.idl b/Source/core/xml/DOMParser.idl
index ca9ee11..5cbe49e 100644
--- a/Source/core/xml/DOMParser.idl
+++ b/Source/core/xml/DOMParser.idl
@@ -20,6 +20,6 @@
 [
     Constructor
 ] interface DOMParser {
-    Document parseFromString([Default=Undefined] optional DOMString str, 
+    Document parseFromString([Default=Undefined] optional DOMString str,
                              [Default=Undefined] optional DOMString contentType);
 };
diff --git a/Source/core/xml/NativeXPathNSResolver.cpp b/Source/core/xml/NativeXPathNSResolver.cpp
index bc05326..e398afd 100644
--- a/Source/core/xml/NativeXPathNSResolver.cpp
+++ b/Source/core/xml/NativeXPathNSResolver.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -47,7 +47,7 @@
     // but the XPath spec says that we should do it for XPathNSResolver.
     if (prefix == "xml")
         return XMLNames::xmlNamespaceURI;
-    
+
     return m_node ? m_node->lookupNamespaceURI(prefix) : String();
 }
 
diff --git a/Source/core/xml/NativeXPathNSResolver.h b/Source/core/xml/NativeXPathNSResolver.h
index da2004e..00e04fd 100644
--- a/Source/core/xml/NativeXPathNSResolver.h
+++ b/Source/core/xml/NativeXPathNSResolver.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef NativeXPathNSResolver_h
diff --git a/Source/core/xml/XMLHttpRequest.cpp b/Source/core/xml/XMLHttpRequest.cpp
index 91c32f7..01089b1 100644
--- a/Source/core/xml/XMLHttpRequest.cpp
+++ b/Source/core/xml/XMLHttpRequest.cpp
@@ -573,7 +573,7 @@
         String body = createMarkup(document);
 
         // FIXME: This should use value of document.inputEncoding to determine the encoding to use.
-        m_requestEntityBody = FormData::create(UTF8Encoding().encode(body, WTF::EntitiesForUnencodables));
+        m_requestEntityBody = FormData::create(UTF8Encoding().normalizeAndEncode(body, WTF::EntitiesForUnencodables));
         if (m_upload)
             m_requestEntityBody->setAlwaysStream(true);
     }
@@ -595,7 +595,7 @@
             m_requestHeaders.set("Content-Type", contentType);
         }
 
-        m_requestEntityBody = FormData::create(UTF8Encoding().encode(body, WTF::EntitiesForUnencodables));
+        m_requestEntityBody = FormData::create(UTF8Encoding().normalizeAndEncode(body, WTF::EntitiesForUnencodables));
         if (m_upload)
             m_requestEntityBody->setAlwaysStream(true);
     }
diff --git a/Source/core/xml/XMLHttpRequest.h b/Source/core/xml/XMLHttpRequest.h
index 6d48451..c95fa35 100644
--- a/Source/core/xml/XMLHttpRequest.h
+++ b/Source/core/xml/XMLHttpRequest.h
@@ -62,10 +62,10 @@
         LOADING = 3,
         DONE = 4
     };
-    
+
     enum ResponseTypeCode {
         ResponseTypeDefault,
-        ResponseTypeText, 
+        ResponseTypeText,
         ResponseTypeDocument,
         ResponseTypeBlob,
         ResponseTypeArrayBuffer
@@ -119,7 +119,7 @@
     void setResponseType(const String&, ExceptionCode&);
     String responseType();
     ResponseTypeCode responseTypeCode() const { return m_responseTypeCode; }
-    
+
     // response attribute has custom getter.
     ArrayBuffer* responseArrayBuffer(ExceptionCode&);
 
@@ -205,7 +205,7 @@
     ScriptString m_responseText;
     mutable bool m_createdDocument;
     mutable RefPtr<Document> m_responseDocument;
-    
+
     RefPtr<SharedBuffer> m_binaryResponseBuilder;
     mutable RefPtr<ArrayBuffer> m_responseArrayBuffer;
 
diff --git a/Source/core/xml/XMLHttpRequestUpload.cpp b/Source/core/xml/XMLHttpRequestUpload.cpp
index 28383ad..770e495 100644
--- a/Source/core/xml/XMLHttpRequestUpload.cpp
+++ b/Source/core/xml/XMLHttpRequestUpload.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/core/xml/XMLHttpRequestUpload.h b/Source/core/xml/XMLHttpRequestUpload.h
index 1f04e29..3b83aa1 100644
--- a/Source/core/xml/XMLHttpRequestUpload.h
+++ b/Source/core/xml/XMLHttpRequestUpload.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef XMLHttpRequestUpload_h
diff --git a/Source/core/xml/XPathEvaluator.cpp b/Source/core/xml/XPathEvaluator.cpp
index 5453975..b98b814 100644
--- a/Source/core/xml/XPathEvaluator.cpp
+++ b/Source/core/xml/XPathEvaluator.cpp
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -66,7 +66,7 @@
     RefPtr<XPathExpression> expr = createExpression(expression, resolver, ec);
     if (ec)
         return 0;
-    
+
     return expr->evaluate(contextNode, type, result, ec);
 }
 
diff --git a/Source/core/xml/XPathEvaluator.h b/Source/core/xml/XPathEvaluator.h
index 834a4f5..d3906ee 100644
--- a/Source/core/xml/XPathEvaluator.h
+++ b/Source/core/xml/XPathEvaluator.h
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
diff --git a/Source/core/xml/XPathEvaluator.idl b/Source/core/xml/XPathEvaluator.idl
index 59b45fc..30e899b 100644
--- a/Source/core/xml/XPathEvaluator.idl
+++ b/Source/core/xml/XPathEvaluator.idl
@@ -26,7 +26,7 @@
     XPathNSResolver createNSResolver([Default=Undefined] optional Node nodeResolver);
 
     [RaisesException] XPathResult evaluate([Default=Undefined] optional DOMString expression,
-                         [Default=Undefined] optional Node contextNode, 
+                         [Default=Undefined] optional Node contextNode,
                          [Default=Undefined] optional XPathNSResolver resolver,
                          [Default=Undefined] optional unsigned short type,
                          [Default=Undefined] optional XPathResult inResult);
diff --git a/Source/core/xml/XPathExpression.cpp b/Source/core/xml/XPathExpression.cpp
index bc2f249..3b80c02 100644
--- a/Source/core/xml/XPathExpression.cpp
+++ b/Source/core/xml/XPathExpression.cpp
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -38,7 +38,7 @@
 namespace WebCore {
 
 using namespace XPath;
-    
+
 PassRefPtr<XPathExpression> XPathExpression::createExpression(const String& expression, XPathNSResolver* resolver, ExceptionCode& ec)
 {
     RefPtr<XPathExpression> expr = XPathExpression::create();
diff --git a/Source/core/xml/XPathExpression.idl b/Source/core/xml/XPathExpression.idl
index cf7c6cf..7b881ea 100644
--- a/Source/core/xml/XPathExpression.idl
+++ b/Source/core/xml/XPathExpression.idl
@@ -18,8 +18,8 @@
  * Boston, MA 02110-1301, USA.
  */
 interface XPathExpression {
-     [RaisesException] XPathResult evaluate([Default=Undefined] optional Node contextNode, 
-                                        [Default=Undefined] optional unsigned short type, 
+     [RaisesException] XPathResult evaluate([Default=Undefined] optional Node contextNode,
+                                        [Default=Undefined] optional unsigned short type,
                                         [Default=Undefined] optional XPathResult inResult);
 };
 
diff --git a/Source/core/xml/XPathExpressionNode.cpp b/Source/core/xml/XPathExpressionNode.cpp
index ffee2d4..a534976 100644
--- a/Source/core/xml/XPathExpressionNode.cpp
+++ b/Source/core/xml/XPathExpressionNode.cpp
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
diff --git a/Source/core/xml/XPathExpressionNode.h b/Source/core/xml/XPathExpressionNode.h
index 2256008..64a930d 100644
--- a/Source/core/xml/XPathExpressionNode.h
+++ b/Source/core/xml/XPathExpressionNode.h
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -36,7 +36,7 @@
 namespace WebCore {
 
     namespace XPath {
-        
+
         struct EvaluationContext {
             WTF_MAKE_FAST_ALLOCATED;
         public:
diff --git a/Source/core/xml/XPathFunctions.cpp b/Source/core/xml/XPathFunctions.cpp
index 7dc106e..0e9f977 100644
--- a/Source/core/xml/XPathFunctions.cpp
+++ b/Source/core/xml/XPathFunctions.cpp
@@ -6,13 +6,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -99,28 +99,28 @@
     virtual Value evaluate() const;
     virtual Value::Type resultType() const { return Value::StringValue; }
 public:
-    FunLocalName() { setIsContextNodeSensitive(true); } // local-name() with no arguments uses context node. 
+    FunLocalName() { setIsContextNodeSensitive(true); } // local-name() with no arguments uses context node.
 };
 
 class FunNamespaceURI : public Function {
     virtual Value evaluate() const;
     virtual Value::Type resultType() const { return Value::StringValue; }
 public:
-    FunNamespaceURI() { setIsContextNodeSensitive(true); } // namespace-uri() with no arguments uses context node. 
+    FunNamespaceURI() { setIsContextNodeSensitive(true); } // namespace-uri() with no arguments uses context node.
 };
 
 class FunName : public Function {
     virtual Value evaluate() const;
     virtual Value::Type resultType() const { return Value::StringValue; }
 public:
-    FunName() { setIsContextNodeSensitive(true); } // name() with no arguments uses context node. 
+    FunName() { setIsContextNodeSensitive(true); } // name() with no arguments uses context node.
 };
 
 class FunString : public Function {
     virtual Value evaluate() const;
     virtual Value::Type resultType() const { return Value::StringValue; }
 public:
-    FunString() { setIsContextNodeSensitive(true); } // string() with no arguments uses context node. 
+    FunString() { setIsContextNodeSensitive(true); } // string() with no arguments uses context node.
 };
 
 class FunConcat : public Function {
@@ -157,14 +157,14 @@
     virtual Value evaluate() const;
     virtual Value::Type resultType() const { return Value::NumberValue; }
 public:
-    FunStringLength() { setIsContextNodeSensitive(true); } // string-length() with no arguments uses context node. 
+    FunStringLength() { setIsContextNodeSensitive(true); } // string-length() with no arguments uses context node.
 };
 
 class FunNormalizeSpace : public Function {
     virtual Value evaluate() const;
     virtual Value::Type resultType() const { return Value::StringValue; }
 public:
-    FunNormalizeSpace() { setIsContextNodeSensitive(true); } // normalize-space() with no arguments uses context node. 
+    FunNormalizeSpace() { setIsContextNodeSensitive(true); } // normalize-space() with no arguments uses context node.
 };
 
 class FunTranslate : public Function {
@@ -196,14 +196,14 @@
     virtual Value evaluate() const;
     virtual Value::Type resultType() const { return Value::BooleanValue; }
 public:
-    FunLang() { setIsContextNodeSensitive(true); } // lang() always works on context node. 
+    FunLang() { setIsContextNodeSensitive(true); } // lang() always works on context node.
 };
 
 class FunNumber : public Function {
     virtual Value evaluate() const;
     virtual Value::Type resultType() const { return Value::NumberValue; }
 public:
-    FunNumber() { setIsContextNodeSensitive(true); } // number() with no arguments uses context node. 
+    FunNumber() { setIsContextNodeSensitive(true); } // number() with no arguments uses context node.
 };
 
 class FunSum : public Function {
@@ -329,7 +329,7 @@
         String str = a.toString();
         idList.append(str);
     }
-    
+
     TreeScope* contextScope = evaluationContext().node->treeScope();
     NodeSet result;
     HashSet<Node*> resultSet;
@@ -339,7 +339,7 @@
     while (true) {
         while (startPos < length && isWhitespace(idList[startPos]))
             ++startPos;
-        
+
         if (startPos == length)
             break;
 
@@ -352,12 +352,12 @@
         Node* node = contextScope->getElementById(idList.substring(startPos, endPos - startPos));
         if (node && resultSet.add(node).isNewEntry)
             result.append(node);
-        
+
         startPos = endPos;
     }
-    
+
     result.markSorted(false);
-    
+
     return Value(result, Value::adopt);
 }
 
@@ -421,7 +421,7 @@
 Value FunCount::evaluate() const
 {
     Value a = arg(0)->evaluate();
-    
+
     return double(a.toNodeSet().size());
 }
 
@@ -462,7 +462,7 @@
     String s1 = arg(0)->evaluate().toString();
     String s2 = arg(1)->evaluate().toString();
 
-    if (s2.isEmpty()) 
+    if (s2.isEmpty())
         return true;
 
     return s1.contains(s2) != 0;
@@ -512,7 +512,7 @@
         len = static_cast<long>(FunRound::round(doubleLen));
     }
 
-    if (pos > long(s.length())) 
+    if (pos > long(s.length()))
         return "";
 
     if (pos < 1) {
@@ -555,7 +555,7 @@
     for (unsigned i1 = 0; i1 < s1.length(); ++i1) {
         UChar ch = s1[i1];
         size_t i2 = s2.find(ch);
-        
+
         if (i2 == notFound)
             result.append(ch);
         else if (i2 < s3.length())
@@ -640,7 +640,7 @@
 
     for (unsigned i = 0; i < nodes.size(); i++)
         sum += Value(stringValue(nodes[i])).toNumber();
-    
+
     return sum;
 }
 
diff --git a/Source/core/xml/XPathFunctions.h b/Source/core/xml/XPathFunctions.h
index 00fa123..0482884 100644
--- a/Source/core/xml/XPathFunctions.h
+++ b/Source/core/xml/XPathFunctions.h
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
diff --git a/Source/core/xml/XPathNSResolver.cpp b/Source/core/xml/XPathNSResolver.cpp
index ecc1114..edc650c 100644
--- a/Source/core/xml/XPathNSResolver.cpp
+++ b/Source/core/xml/XPathNSResolver.cpp
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
diff --git a/Source/core/xml/XPathNSResolver.h b/Source/core/xml/XPathNSResolver.h
index 1f5c0c3..4bbb942 100644
--- a/Source/core/xml/XPathNSResolver.h
+++ b/Source/core/xml/XPathNSResolver.h
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
diff --git a/Source/core/xml/XPathNodeSet.cpp b/Source/core/xml/XPathNodeSet.cpp
index 7ead9c9..1f64ad0 100644
--- a/Source/core/xml/XPathNodeSet.cpp
+++ b/Source/core/xml/XPathNodeSet.cpp
@@ -4,13 +4,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -53,7 +53,7 @@
         if (minDepth > depth)
             minDepth = depth;
     }
-    
+
     // Find the common ancestor.
     unsigned commonAncestorDepth = minDepth;
     Node* commonAncestor;
@@ -71,7 +71,7 @@
         }
         if (allEqual)
             break;
-        
+
         --commonAncestorDepth;
     }
 
@@ -86,7 +86,7 @@
                 return;
             }
     }
-    
+
     if (mayContainAttributeNodes && commonAncestor->isElementNode()) {
         // The attribute nodes and namespace nodes of an element occur before the children of the element.
         // The namespace nodes are defined to occur before the attribute nodes.
@@ -152,7 +152,7 @@
     }
 
     bool containsAttributeNodes = false;
-    
+
     Vector<Vector<Node*> > parentMatrix(nodeCount);
     for (unsigned i = 0; i < nodeCount; ++i) {
         Vector<Node*>& parentsVector = parentMatrix[i];
@@ -167,13 +167,13 @@
             parentsVector.append(n);
     }
     sortBlock(0, nodeCount, parentMatrix, containsAttributeNodes);
-    
+
     // It is not possible to just assign the result to m_nodes, because some nodes may get dereferenced and destroyed.
     Vector<RefPtr<Node> > sortedNodes;
     sortedNodes.reserveInitialCapacity(nodeCount);
     for (unsigned i = 0; i < nodeCount; ++i)
         sortedNodes.append(parentMatrix[i][0]);
-    
+
     const_cast<Vector<RefPtr<Node> >&>(m_nodes).swap(sortedNodes);
 }
 
diff --git a/Source/core/xml/XPathNodeSet.h b/Source/core/xml/XPathNodeSet.h
index a17504b..488fe87 100644
--- a/Source/core/xml/XPathNodeSet.h
+++ b/Source/core/xml/XPathNodeSet.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef XPathNodeSet_h
@@ -39,7 +39,7 @@
             WTF_MAKE_FAST_ALLOCATED;
         public:
             NodeSet() : m_isSorted(true), m_subtreesAreDisjoint(false) { }
-            
+
             size_t size() const { return m_nodes.size(); }
             bool isEmpty() const { return !m_nodes.size(); }
             Node* operator[](unsigned i) const { return m_nodes.at(i).get(); }
@@ -69,7 +69,7 @@
             bool subtreesAreDisjoint() const { return m_subtreesAreDisjoint || m_nodes.size() < 2; }
 
             void reverse();
-        
+
         private:
             void traversalSort() const;
 
diff --git a/Source/core/xml/XPathParser.cpp b/Source/core/xml/XPathParser.cpp
index c031b15..c547edd 100644
--- a/Source/core/xml/XPathParser.cpp
+++ b/Source/core/xml/XPathParser.cpp
@@ -6,13 +6,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -347,7 +347,7 @@
         // Any chance it's an axis name?
         if (peekCurHelper() == ':') {
             m_nextPos++;
-            
+
             //It might be an axis name.
             Step::Axis axis;
             if (isAxisName(name, axis))
@@ -362,19 +362,19 @@
             m_nextPos++;
             return Token(NAMETEST, name + ":*");
         }
-        
+
         // Make a full qname.
         String n2;
         if (!lexNCName(n2))
             return Token(XPATH_ERROR);
-        
+
         name = name + ":" + n2;
     }
 
     skipWS();
     if (peekCurHelper() == '(') {
         //note: we don't swallow the (here!
-        
+
         //either node type of function name
         if (isNodeTypeName(name)) {
             if (name == "processing-instruction")
@@ -411,7 +411,7 @@
     m_nextPos = 0;
     m_data = data;
     m_lastTokenType = 0;
-    
+
     m_topExpr = 0;
     m_gotNamespaceError = false;
 }
@@ -459,7 +459,7 @@
         localName = qName.substring(colon + 1);
     } else
         localName = qName;
-    
+
     return true;
 }
 
@@ -468,7 +468,7 @@
     reset(statement);
 
     m_resolver = resolver;
-    
+
     Parser* oldParser = currentParser;
     currentParser = this;
     int parseError = xpathyyparse(this);
@@ -525,9 +525,9 @@
 {
     if (node == 0)
         return;
-    
+
     ASSERT(!m_parseNodes.contains(node));
-    
+
     m_parseNodes.add(node);
 }
 
@@ -535,7 +535,7 @@
 {
     if (node == 0)
         return;
-    
+
     ASSERT(m_parseNodes.contains(node));
 
     m_parseNodes.remove(node);
@@ -547,7 +547,7 @@
         return;
 
     ASSERT(!m_predicateVectors.contains(vector));
-    
+
     m_predicateVectors.add(vector);
 }
 
@@ -557,7 +557,7 @@
         return;
 
     ASSERT(m_predicateVectors.contains(vector));
-    
+
     m_predicateVectors.remove(vector);
     delete vector;
 }
@@ -569,8 +569,8 @@
         return;
 
     ASSERT(!m_expressionVectors.contains(vector));
-    
-    m_expressionVectors.add(vector);    
+
+    m_expressionVectors.add(vector);
 }
 
 void Parser::deleteExpressionVector(Vector<Expression*>* vector)
@@ -579,7 +579,7 @@
         return;
 
     ASSERT(m_expressionVectors.contains(vector));
-    
+
     m_expressionVectors.remove(vector);
     delete vector;
 }
@@ -588,19 +588,19 @@
 {
     if (s == 0)
         return;
-    
+
     ASSERT(!m_strings.contains(s));
-    
-    m_strings.add(s);        
+
+    m_strings.add(s);
 }
 
 void Parser::deleteString(String* s)
 {
     if (s == 0)
         return;
-    
+
     ASSERT(m_strings.contains(s));
-    
+
     m_strings.remove(s);
     delete s;
 }
@@ -609,19 +609,19 @@
 {
     if (t == 0)
         return;
-    
+
     ASSERT(!m_nodeTests.contains(t));
-    
-    m_nodeTests.add(t);        
+
+    m_nodeTests.add(t);
 }
 
 void Parser::deleteNodeTest(Step::NodeTest* t)
 {
     if (t == 0)
         return;
-    
+
     ASSERT(m_nodeTests.contains(t));
-    
+
     m_nodeTests.remove(t);
     delete t;
 }
diff --git a/Source/core/xml/XPathParser.h b/Source/core/xml/XPathParser.h
index 30bfb42..1db22b1 100644
--- a/Source/core/xml/XPathParser.h
+++ b/Source/core/xml/XPathParser.h
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -48,7 +48,7 @@
             Step::Axis axis;
             NumericOp::Opcode numop;
             EqTestOp::Opcode eqop;
-            
+
             Token(int t) : type(t) {}
             Token(int t, const String& v): type(t), str(v) {}
             Token(int t, Step::Axis v): type(t), axis(v) {}
diff --git a/Source/core/xml/XPathPath.cpp b/Source/core/xml/XPathPath.cpp
index fa92add..73b446f 100644
--- a/Source/core/xml/XPathPath.cpp
+++ b/Source/core/xml/XPathPath.cpp
@@ -6,13 +6,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -35,7 +35,7 @@
 
 namespace WebCore {
 namespace XPath {
-        
+
 Filter::Filter(Expression* expr, const Vector<Predicate*>& predicates)
     : m_expr(expr), m_predicates(predicates)
 {
@@ -53,7 +53,7 @@
 Value Filter::evaluate() const
 {
     Value v = m_expr->evaluate();
-    
+
     NodeSet& nodes = v.modifiableNodeSet();
     nodes.sort();
 
@@ -62,13 +62,13 @@
         NodeSet newNodes;
         evaluationContext.size = nodes.size();
         evaluationContext.position = 0;
-        
+
         for (unsigned j = 0; j < nodes.size(); j++) {
             Node* node = nodes[j];
-            
+
             evaluationContext.node = node;
             ++evaluationContext.position;
-            
+
             if (m_predicates[i]->evaluate())
                 newNodes.append(node);
         }
@@ -112,7 +112,7 @@
     NodeSet nodes;
     nodes.append(context);
     evaluate(nodes);
-    
+
     evaluationContext = backupContext;
     return Value(nodes, Value::adopt);
 }
@@ -149,7 +149,7 @@
                     newNodes.append(node);
             }
         }
-        
+
         nodes.swap(newNodes);
     }
 
@@ -207,7 +207,7 @@
 
     NodeSet& nodes = v.modifiableNodeSet();
     m_path->evaluate(nodes);
-    
+
     return v;
 }
 
diff --git a/Source/core/xml/XPathPath.h b/Source/core/xml/XPathPath.h
index 5a0efc2..2b18e8b 100644
--- a/Source/core/xml/XPathPath.h
+++ b/Source/core/xml/XPathPath.h
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
diff --git a/Source/core/xml/XPathPredicate.cpp b/Source/core/xml/XPathPredicate.cpp
index a9406c4..3a77f7d 100644
--- a/Source/core/xml/XPathPredicate.cpp
+++ b/Source/core/xml/XPathPredicate.cpp
@@ -6,13 +6,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -36,7 +36,7 @@
 
 namespace WebCore {
 namespace XPath {
-        
+
 Number::Number(double value)
     : m_value(value)
 {
@@ -74,7 +74,7 @@
 {
     Value lhs(subExpr(0)->evaluate());
     Value rhs(subExpr(1)->evaluate());
-    
+
     double leftVal = lhs.toNumber();
     double rightVal = rhs.toNumber();
 
@@ -160,7 +160,7 @@
             return compare(lhs, rhs.toBoolean());
         ASSERT(0);
     }
-    
+
     // Neither side is a NodeSet.
     switch (m_opcode) {
         case OP_EQ:
@@ -229,14 +229,14 @@
 {
     Value lhsResult = subExpr(0)->evaluate();
     Value rhs = subExpr(1)->evaluate();
-    
+
     NodeSet& resultSet = lhsResult.modifiableNodeSet();
     const NodeSet& rhsNodes = rhs.toNodeSet();
-    
+
     HashSet<Node*> nodes;
     for (size_t i = 0; i < resultSet.size(); ++i)
         nodes.add(resultSet[i]);
-    
+
     for (size_t i = 0; i < rhsNodes.size(); ++i) {
         Node* node = rhsNodes[i];
         if (nodes.add(node).isNewEntry)
diff --git a/Source/core/xml/XPathPredicate.h b/Source/core/xml/XPathPredicate.h
index a49c808..93eaad7 100644
--- a/Source/core/xml/XPathPredicate.h
+++ b/Source/core/xml/XPathPredicate.h
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -33,7 +33,7 @@
 namespace WebCore {
 
     namespace XPath {
-        
+
         class Number : public Expression {
         public:
             explicit Number(double);
diff --git a/Source/core/xml/XPathResult.cpp b/Source/core/xml/XPathResult.cpp
index 79290641..4a20e45 100644
--- a/Source/core/xml/XPathResult.cpp
+++ b/Source/core/xml/XPathResult.cpp
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -150,7 +150,7 @@
         ec = TypeError;
         return 0;
     }
-  
+
     const NodeSet& nodes = m_value.toNodeSet();
     if (resultType() == FIRST_ORDERED_NODE_TYPE)
         return nodes.firstNode();
@@ -183,17 +183,17 @@
         ec = TypeError;
         return 0;
     }
-    
+
     if (invalidIteratorState()) {
         ec = InvalidStateError;
         return 0;
     }
-    
+
     if (m_nodeSetPosition + 1 > m_nodeSet.size())
         return 0;
 
     Node* node = m_nodeSet[m_nodeSetPosition];
-    
+
     m_nodeSetPosition++;
 
     return node;
@@ -205,11 +205,11 @@
         ec = TypeError;
         return 0;
     }
-    
+
     const NodeSet& nodes = m_value.toNodeSet();
     if (index >= nodes.size())
         return 0;
-    
+
     return nodes[index];
 }
 
diff --git a/Source/core/xml/XPathResult.h b/Source/core/xml/XPathResult.h
index 9929d80..9bafba5 100644
--- a/Source/core/xml/XPathResult.h
+++ b/Source/core/xml/XPathResult.h
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
diff --git a/Source/core/xml/XPathResult.idl b/Source/core/xml/XPathResult.idl
index 99f62af..19cfb4c 100644
--- a/Source/core/xml/XPathResult.idl
+++ b/Source/core/xml/XPathResult.idl
@@ -32,7 +32,7 @@
 
     readonly attribute unsigned short  resultType;
     [GetterRaisesException] readonly attribute double          numberValue;
-        
+
     [GetterRaisesException] readonly attribute DOMString       stringValue;
 
     [GetterRaisesException] readonly attribute boolean         booleanValue;
@@ -41,7 +41,7 @@
 
     readonly attribute boolean         invalidIteratorState;
     [GetterRaisesException] readonly attribute unsigned long   snapshotLength;
-        
+
     [RaisesException] Node iterateNext();
     [RaisesException] Node snapshotItem([Default=Undefined] optional unsigned long index);
 };
diff --git a/Source/core/xml/XPathStep.cpp b/Source/core/xml/XPathStep.cpp
index cd6642b..dee7834 100644
--- a/Source/core/xml/XPathStep.cpp
+++ b/Source/core/xml/XPathStep.cpp
@@ -6,13 +6,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -277,9 +277,9 @@
         }
         case FollowingSiblingAxis:
             if (context->nodeType() == Node::ATTRIBUTE_NODE ||
-                 context->nodeType() == Node::XPATH_NAMESPACE_NODE) 
+                 context->nodeType() == Node::XPATH_NAMESPACE_NODE)
                 return;
-            
+
             for (Node* n = context->nextSibling(); n; n = n->nextSibling())
                 if (nodeMatches(n, FollowingSiblingAxis, m_nodeTest))
                     nodes.append(n);
@@ -288,7 +288,7 @@
             if (context->nodeType() == Node::ATTRIBUTE_NODE ||
                  context->nodeType() == Node::XPATH_NAMESPACE_NODE)
                 return;
-            
+
             for (Node* n = context->previousSibling(); n; n = n->previousSibling())
                 if (nodeMatches(n, PrecedingSiblingAxis, m_nodeTest))
                     nodes.append(n);
@@ -343,7 +343,7 @@
                 }
                 return;
             }
-            
+
             if (!contextElement->hasAttributes())
                 return;
 
diff --git a/Source/core/xml/XPathStep.h b/Source/core/xml/XPathStep.h
index fe646fa..4e9c14f 100644
--- a/Source/core/xml/XPathStep.h
+++ b/Source/core/xml/XPathStep.h
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -37,7 +37,7 @@
 namespace XPath {
 
 class Predicate;
-        
+
 class Step : public ParseNode {
     WTF_MAKE_NONCOPYABLE(Step);
     WTF_MAKE_FAST_ALLOCATED;
@@ -49,7 +49,7 @@
         ParentAxis, PrecedingAxis, PrecedingSiblingAxis,
         SelfAxis
     };
-           
+
     class NodeTest {
         WTF_MAKE_FAST_ALLOCATED;
     public:
@@ -60,13 +60,13 @@
         NodeTest(Kind kind) : m_kind(kind) { }
         NodeTest(Kind kind, const String& data) : m_kind(kind), m_data(data) { }
         NodeTest(Kind kind, const String& data, const String& namespaceURI) : m_kind(kind), m_data(data), m_namespaceURI(namespaceURI) { }
-                
+
         Kind kind() const { return m_kind; }
         const AtomicString& data() const { return m_data; }
         const AtomicString& namespaceURI() const { return m_namespaceURI; }
         Vector<Predicate*>& mergedPredicates() { return m_mergedPredicates; }
         const Vector<Predicate*>& mergedPredicates() const { return m_mergedPredicates; }
-                
+
     private:
         Kind m_kind;
         AtomicString m_data;
diff --git a/Source/core/xml/XPathUtil.cpp b/Source/core/xml/XPathUtil.cpp
index 5b3650b..9ee19c8b 100644
--- a/Source/core/xml/XPathUtil.cpp
+++ b/Source/core/xml/XPathUtil.cpp
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -33,7 +33,7 @@
 
 namespace WebCore {
 namespace XPath {
-        
+
 bool isRootDomNode(Node* node)
 {
     return node && !node->parentNode();
@@ -64,7 +64,7 @@
                 return result.toString();
             }
     }
-    
+
     return String();
 }
 
diff --git a/Source/core/xml/XPathUtil.h b/Source/core/xml/XPathUtil.h
index e0c8772..62b6599 100644
--- a/Source/core/xml/XPathUtil.h
+++ b/Source/core/xml/XPathUtil.h
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
diff --git a/Source/core/xml/XPathValue.cpp b/Source/core/xml/XPathValue.cpp
index 2f7a934..2bd56c0 100644
--- a/Source/core/xml/XPathValue.cpp
+++ b/Source/core/xml/XPathValue.cpp
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -51,7 +51,7 @@
     }
 
     return m_data->m_nodeSet;
-}    
+}
 
 NodeSet& Value::modifiableNodeSet()
 {
@@ -60,7 +60,7 @@
 
     if (!m_data)
         m_data = ValueData::create();
-    
+
     m_type = NodeSetValue;
     return m_data->m_nodeSet;
 }
@@ -116,7 +116,7 @@
 {
     switch (m_type) {
         case NodeSetValue:
-            if (m_data->m_nodeSet.isEmpty()) 
+            if (m_data->m_nodeSet.isEmpty())
                 return "";
             return stringValue(m_data->m_nodeSet.firstNode());
         case StringValue:
diff --git a/Source/core/xml/XPathValue.h b/Source/core/xml/XPathValue.h
index 97adf9b..a693e71 100644
--- a/Source/core/xml/XPathValue.h
+++ b/Source/core/xml/XPathValue.h
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -33,27 +33,27 @@
 namespace WebCore {
 
     namespace XPath {
-    
+
         class ValueData : public RefCounted<ValueData> {
-        public:            
+        public:
             static PassRefPtr<ValueData> create() { return adoptRef(new ValueData); }
             static PassRefPtr<ValueData> create(const NodeSet& nodeSet) { return adoptRef(new ValueData(nodeSet)); }
             static PassRefPtr<ValueData> create(const String& string) { return adoptRef(new ValueData(string)); }
 
             NodeSet m_nodeSet;
             String m_string;
-            
+
         private:
             ValueData() { }
             explicit ValueData(const NodeSet& nodeSet) : m_nodeSet(nodeSet) { }
-            explicit ValueData(const String& string) : m_string(string) { }            
+            explicit ValueData(const String& string) : m_string(string) { }
         };
 
         // Copying Value objects makes their data partially shared, so care has to be taken when dealing with copies.
         class Value {
         public:
             enum Type { NodeSetValue, BooleanValue, NumberValue, StringValue };
-            
+
             Value(unsigned value) : m_type(NumberValue), m_bool(false), m_number(value) {}
             Value(unsigned long value) : m_type(NumberValue), m_bool(false), m_number(value) {}
             Value(double value) : m_type(NumberValue), m_bool(false), m_number(value) {}
diff --git a/Source/core/xml/XPathVariableReference.cpp b/Source/core/xml/XPathVariableReference.cpp
index ccb2114..9d3ca1e 100644
--- a/Source/core/xml/XPathVariableReference.cpp
+++ b/Source/core/xml/XPathVariableReference.cpp
@@ -5,13 +5,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -31,7 +31,7 @@
 
 namespace WebCore {
 namespace XPath {
-    
+
 VariableReference::VariableReference(const String& name)
     : m_name(name)
 {
diff --git a/Source/core/xml/XPathVariableReference.h b/Source/core/xml/XPathVariableReference.h
index 4c1981e..e494a46 100644
--- a/Source/core/xml/XPathVariableReference.h
+++ b/Source/core/xml/XPathVariableReference.h
@@ -4,13 +4,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
diff --git a/Source/core/xml/XSLImportRule.cpp b/Source/core/xml/XSLImportRule.cpp
index 886e6d3..d70f08d 100644
--- a/Source/core/xml/XSLImportRule.cpp
+++ b/Source/core/xml/XSLImportRule.cpp
@@ -43,7 +43,7 @@
 {
     if (m_styleSheet)
         m_styleSheet->setParentStyleSheet(0);
-    
+
     if (m_cachedSheet)
         m_cachedSheet->removeClient(this);
 }
@@ -61,7 +61,7 @@
 
     m_styleSheet->parseString(sheet);
     m_loading = false;
-    
+
     if (parent)
         parent->checkLoaded();
 }
@@ -84,26 +84,26 @@
 
     if (rootSheet)
         fetcher = rootSheet->fetcher();
-    
+
     String absHref = m_strHref;
     XSLStyleSheet* parentSheet = parentStyleSheet();
     if (!parentSheet->baseURL().isNull())
         // use parent styleheet's URL as the base URL
         absHref = KURL(parentSheet->baseURL(), m_strHref).string();
-    
+
     // Check for a cycle in our import chain.  If we encounter a stylesheet
     // in our parent chain with the same URL, then just bail.
     for (XSLStyleSheet* parentSheet = parentStyleSheet(); parentSheet; parentSheet = parentSheet->parentStyleSheet()) {
         if (absHref == parentSheet->baseURL().string())
             return;
     }
-    
+
     FetchRequest request(ResourceRequest(fetcher->document()->completeURL(absHref)), CachedResourceInitiatorTypeNames::xml);
     m_cachedSheet = fetcher->requestXSLStyleSheet(request);
-    
+
     if (m_cachedSheet) {
         m_cachedSheet->addClient(this);
-        
+
         // If the imported sheet is in the cache, then setXSLStyleSheet gets called,
         // and the sheet even gets parsed (via parseString).  In this case we have
         // loaded (even if our subresources haven't), so if we have a stylesheet after
diff --git a/Source/core/xml/XSLImportRule.h b/Source/core/xml/XSLImportRule.h
index 1c5a5c1..5285edc 100644
--- a/Source/core/xml/XSLImportRule.h
+++ b/Source/core/xml/XSLImportRule.h
@@ -41,7 +41,7 @@
     }
 
     virtual ~XSLImportRule();
-    
+
     const String& href() const { return m_strHref; }
     XSLStyleSheet* styleSheet() const { return m_styleSheet.get(); }
 
@@ -50,12 +50,12 @@
 
     bool isLoading();
     void loadSheet();
-    
+
 private:
     XSLImportRule(XSLStyleSheet* parentSheet, const String& href);
 
     virtual void setXSLStyleSheet(const String& href, const KURL& baseURL, const String& sheet);
-    
+
     XSLStyleSheet* m_parentStyleSheet;
     String m_strHref;
     RefPtr<XSLStyleSheet> m_styleSheet;
diff --git a/Source/core/xml/XSLStyleSheet.h b/Source/core/xml/XSLStyleSheet.h
index 080bd83..f7b47c5 100644
--- a/Source/core/xml/XSLStyleSheet.h
+++ b/Source/core/xml/XSLStyleSheet.h
@@ -33,7 +33,7 @@
 
 class ResourceFetcher;
 class XSLImportRule;
-    
+
 class XSLStyleSheet : public StyleSheet {
 public:
     static PassRefPtr<XSLStyleSheet> create(XSLImportRule* parentImport, const String& originalURL, const KURL& finalURL)
@@ -59,9 +59,9 @@
     virtual ~XSLStyleSheet();
 
     bool parseString(const String&);
-    
+
     void checkLoaded();
-    
+
     const KURL& finalURL() const { return m_finalURL; }
 
     void loadChildSheets();
@@ -81,7 +81,7 @@
 
     void markAsProcessed();
     bool processed() const { return m_processed; }
-    
+
     virtual String type() const OVERRIDE { return "text/xml"; }
     virtual bool disabled() const OVERRIDE { return m_isDisabled; }
     virtual void setDisabled(bool b) OVERRIDE { m_isDisabled = b; }
diff --git a/Source/core/xml/XSLTExtensions.cpp b/Source/core/xml/XSLTExtensions.cpp
index 41cd55f..eea9417 100644
--- a/Source/core/xml/XSLTExtensions.cpp
+++ b/Source/core/xml/XSLTExtensions.cpp
@@ -8,17 +8,17 @@
  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  * copies of the Software, and to permit persons to whom the Software is fur-
  * nished 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, FIT-
  * NESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
  * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
  * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CON-
  * NECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- * 
+ *
  * Except as contained in this notice, the name of the authors shall not
  * be used in advertising or otherwise to promote the sale, use or other deal-
  * ings in this Software without prior written authorization from him.
@@ -56,10 +56,10 @@
     strval = xmlXPathPopString(ctxt);
     retNode = xmlNewDocText(NULL, strval);
     ret = xmlXPathNewValueTree(retNode);
-    
+
     // FIXME: It might be helpful to push any errors from xmlXPathNewValueTree
     // up to the Javascript Console.
-    if (ret != NULL) 
+    if (ret != NULL)
         ret->type = XPATH_NODESET;
 
     if (strval != NULL)
diff --git a/Source/core/xml/XSLTExtensions.h b/Source/core/xml/XSLTExtensions.h
index 7e052d7..004664f 100644
--- a/Source/core/xml/XSLTExtensions.h
+++ b/Source/core/xml/XSLTExtensions.h
@@ -4,13 +4,13 @@
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
- * 
+ *
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
diff --git a/Source/core/xml/XSLTUnicodeSort.cpp b/Source/core/xml/XSLTUnicodeSort.cpp
index 82e373b..316b5c4 100644
--- a/Source/core/xml/XSLTUnicodeSort.cpp
+++ b/Source/core/xml/XSLTUnicodeSort.cpp
@@ -53,7 +53,7 @@
     int tst;
     int depth;
     xmlNodePtr node;
-    xmlXPathObjectPtr tmp;    
+    xmlXPathObjectPtr tmp;
     int tempstype[XSLT_MAX_SORT], temporder[XSLT_MAX_SORT];
 
     if ((ctxt == NULL) || (sorts == NULL) || (nbsorts <= 0) ||
@@ -140,7 +140,7 @@
             j = i - incr;
             if (results[i] == NULL)
                 continue;
-            
+
             while (j >= 0) {
                 if (results[j] == NULL)
                     tst = 1;
@@ -158,7 +158,7 @@
                         else if (results[j]->floatval ==
                                 results[j + incr]->floatval)
                             tst = 0;
-                        else if (results[j]->floatval > 
+                        else if (results[j]->floatval >
                                 results[j + incr]->floatval)
                             tst = 1;
                         else tst = -1;
@@ -190,11 +190,11 @@
                          * Compute the result of the next level for the
                          * full set, this might be optimized ... or not
                          */
-                        if (resultsTab[depth] == NULL) 
+                        if (resultsTab[depth] == NULL)
                             resultsTab[depth] = xsltComputeSortResult(ctxt,
                                                         sorts[depth]);
                         res = resultsTab[depth];
-                        if (res == NULL) 
+                        if (res == NULL)
                             break;
                         if (res[j] == NULL) {
                             if (res[j+incr] != NULL)
@@ -215,7 +215,7 @@
                                 else if (res[j]->floatval == res[j + incr]->
                                                 floatval)
                                     tst = 0;
-                                else if (res[j]->floatval > 
+                                else if (res[j]->floatval >
                                         res[j + incr]->floatval)
                                     tst = 1;
                                 else tst = -1;
diff --git a/Source/core/xml/parser/CharacterReferenceParserInlines.h b/Source/core/xml/parser/CharacterReferenceParserInlines.h
index 9608be5..4e5ed45 100644
--- a/Source/core/xml/parser/CharacterReferenceParserInlines.h
+++ b/Source/core/xml/parser/CharacterReferenceParserInlines.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CharacterReferenceParserInlines_h
@@ -67,7 +67,7 @@
     ASSERT(!additionalAllowedCharacter || additionalAllowedCharacter == '"' || additionalAllowedCharacter == '\'' || additionalAllowedCharacter == '>');
     ASSERT(!notEnoughCharacters);
     ASSERT(decodedCharacter.isEmpty());
-    
+
     enum EntityState {
         Initial,
         Number,
@@ -80,7 +80,7 @@
     EntityState entityState = Initial;
     UChar32 result = 0;
     StringBuilder consumedCharacters;
-    
+
     while (!source.isEmpty()) {
         UChar cc = source.currentChar();
         switch (entityState) {
diff --git a/Source/devtools/protocol.json b/Source/devtools/protocol.json
index 91f4213..d042f25 100644
--- a/Source/devtools/protocol.json
+++ b/Source/devtools/protocol.json
@@ -3658,7 +3658,23 @@
     },
     {
         "domain": "Input",
-        "types": [],
+        "types": [
+            {
+                "id": "TouchPoint",
+                "type": "object",
+                "hidden": true,
+                "properties": [
+                    { "name": "state", "type": "string", "enum": ["touchPressed", "touchReleased", "touchMoved", "touchStationary", "touchCancelled"], "description": "State of the touch point." },
+                    { "name": "x", "type": "integer", "description": "X coordinate of the event relative to the main frame's viewport."},
+                    { "name": "y", "type": "integer", "description": "Y coordinate of the event relative to the main frame's viewport. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport."},
+                    { "name": "radiusX", "type": "integer", "optional": true, "description": "X radius of the touch area (default: 1)."},
+                    { "name": "radiusY", "type": "integer", "optional": true, "description": "Y radius of the touch area (default: 1)."},
+                    { "name": "rotationAngle", "type": "number", "optional": true, "description": "Rotation angle (default: 0.0)."},
+                    { "name": "force", "type": "number", "optional": true, "description": "Force (default: 1.0)."},
+                    { "name": "id", "type": "number", "optional": true, "description": "Identifier used to track touch sources between events, must be unique within an event."}
+                ]
+            }
+        ],
         "commands": [
             {
                 "name": "dispatchKeyEvent",
@@ -3690,6 +3706,17 @@
                     { "name": "clickCount", "type": "integer", "optional": true, "description": "Number of times the mouse button was clicked (default: 0)." }
                 ],
                 "description": "Dispatches a mouse event to the page."
+            },
+            {
+                "name": "dispatchTouchEvent",
+                "hidden": true,
+                "parameters": [
+                    { "name": "type", "type": "string", "enum": ["touchStart", "touchEnd", "touchMove"], "description": "Type of the touch event." },
+                    { "name": "touchPoints", "type": "array", "items": { "$ref": "TouchPoint" }, "description": "Touch points." },
+                    { "name": "modifiers", "type": "integer", "optional": true, "description": "Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0)." },
+                    { "name": "timestamp", "type": "number", "optional": true, "description": "Time at which the event occurred. Measured in UTC time in seconds since January 1, 1970 (default: current time)." }
+                ],
+                "description": "Dispatches a touch event to the page."
             }
         ],
         "events": []
diff --git a/Source/modules/crypto/Algorithm.cpp b/Source/modules/crypto/Algorithm.cpp
index 7de4d6c..f94cf30 100644
--- a/Source/modules/crypto/Algorithm.cpp
+++ b/Source/modules/crypto/Algorithm.cpp
@@ -33,6 +33,7 @@
 
 #include "modules/crypto/AesCbcParams.h"
 #include "modules/crypto/AesKeyGenParams.h"
+#include "modules/crypto/HmacParams.h"
 #include "wtf/text/WTFString.h"
 
 namespace WebCore {
@@ -46,6 +47,8 @@
         return AesCbcParams::create(algorithm);
     case WebKit::WebCryptoAlgorithmParamsTypeAesKeyGenParams:
         return AesKeyGenParams::create(algorithm);
+    case WebKit::WebCryptoAlgorithmParamsTypeHmacParams:
+        return HmacParams::create(algorithm);
     }
     ASSERT_NOT_REACHED();
     return 0;
diff --git a/Source/modules/crypto/CryptoOperation.cpp b/Source/modules/crypto/CryptoOperation.cpp
index d12ba62..74c8b7e 100644
--- a/Source/modules/crypto/CryptoOperation.cpp
+++ b/Source/modules/crypto/CryptoOperation.cpp
@@ -43,40 +43,25 @@
 
 namespace WebCore {
 
-CryptoOperation::~CryptoOperation()
-{
-    abortImpl();
-    ASSERT(!m_impl);
-}
-
-PassRefPtr<CryptoOperation> CryptoOperation::create(const WebKit::WebCryptoAlgorithm& algorithm, ExceptionState* es)
-{
-    return adoptRef(new CryptoOperation(algorithm, es));
-}
-
-CryptoOperation::CryptoOperation(const WebKit::WebCryptoAlgorithm& algorithm, ExceptionState* es)
-    : m_algorithm(algorithm)
+CryptoOperationImpl::CryptoOperationImpl()
+    : m_state(Initializing)
     , m_impl(0)
-    , m_exceptionState(es)
-    , m_state(Initializing)
+    , m_initializationError(0)
 {
-    ASSERT(es);
-    ScriptWrappable::init(this);
 }
 
-CryptoOperation* CryptoOperation::process(ArrayBuffer* data)
+bool CryptoOperationImpl::throwInitializationError(ExceptionState& es)
 {
-    process(static_cast<unsigned char*>(data->data()), data->byteLength());
-    return this;
+    ASSERT(m_state != Initializing);
+
+    if (m_initializationError) {
+        es.throwDOMException(m_initializationError);
+        return true;
+    }
+    return false;
 }
 
-CryptoOperation* CryptoOperation::process(ArrayBufferView* data)
-{
-    process(static_cast<unsigned char*>(data->baseAddress()), data->byteLength());
-    return this;
-}
-
-ScriptObject CryptoOperation::finish()
+ScriptObject CryptoOperationImpl::finish()
 {
     switch (m_state) {
     case Initializing:
@@ -99,68 +84,49 @@
     return promiseResolver()->promise();
 }
 
-ScriptObject CryptoOperation::abort()
-{
-    if (abortImpl())
-        promiseResolver()->reject(ScriptValue::createNull());
-    return promiseResolver()->promise();
-}
-
-Algorithm* CryptoOperation::algorithm()
-{
-    if (!m_algorithmNode)
-        m_algorithmNode = Algorithm::create(m_algorithm);
-    return m_algorithmNode.get();
-}
-
-void CryptoOperation::initializationFailed()
+void CryptoOperationImpl::initializationFailed()
 {
     ASSERT(m_state == Initializing);
 
-    m_exceptionState->throwDOMException(NotSupportedError);
-
-    m_exceptionState = 0;
+    m_initializationError = NotSupportedError;
     m_state = Done;
 }
 
-void CryptoOperation::initializationSucceded(WebKit::WebCryptoOperation* operationImpl)
+void CryptoOperationImpl::initializationSucceeded(WebKit::WebCryptoOperation* operationImpl)
 {
     ASSERT(m_state == Initializing);
     ASSERT(operationImpl);
     ASSERT(!m_impl);
 
-    m_exceptionState = 0;
     m_impl = operationImpl;
     m_state = Processing;
 }
 
-void CryptoOperation::completeWithError()
+void CryptoOperationImpl::completeWithError()
 {
     ASSERT(m_state == Processing || m_state == Finishing);
 
     m_impl = 0;
     m_state = Done;
-
     promiseResolver()->reject(ScriptValue::createNull());
 }
 
-void CryptoOperation::completeWithArrayBuffer(const WebKit::WebArrayBuffer& buffer)
+void CryptoOperationImpl::completeWithArrayBuffer(const WebKit::WebArrayBuffer& buffer)
 {
     ASSERT(m_state == Processing || m_state == Finishing);
 
     m_impl = 0;
     m_state = Done;
-
     promiseResolver()->fulfill(PassRefPtr<ArrayBuffer>(buffer));
 }
 
-void CryptoOperation::process(const unsigned char* bytes, size_t size)
+void CryptoOperationImpl::process(const void* bytes, size_t size)
 {
     switch (m_state) {
     case Initializing:
         ASSERT_NOT_REACHED();
     case Processing:
-        m_impl->process(bytes, size);
+        m_impl->process(reinterpret_cast<const unsigned char*>(bytes), size);
         break;
     case Finishing:
     case Done:
@@ -168,7 +134,7 @@
     }
 }
 
-bool CryptoOperation::abortImpl()
+ScriptObject CryptoOperationImpl::abort()
 {
     switch (m_state) {
     case Initializing:
@@ -180,20 +146,95 @@
         m_state = Done;
         m_impl->abort();
         m_impl = 0;
-        return true;
+        promiseResolver()->reject(ScriptValue::createNull());
     case Done:
         ASSERT(!m_impl);
         break;
     }
 
-    return false;
+    return promiseResolver()->promise();
 }
 
-ScriptPromiseResolver* CryptoOperation::promiseResolver()
+void CryptoOperationImpl::detach()
+{
+    switch (m_state) {
+    case Initializing:
+        ASSERT_NOT_REACHED();
+        break;
+    case Processing:
+        // If the operation has not been finished yet, it has no way of being
+        // finished now that the CryptoOperation is gone.
+        m_state = Done;
+        m_impl->abort();
+        m_impl = 0;
+    case Finishing:
+    case Done:
+        break;
+    }
+}
+
+void CryptoOperationImpl::ref()
+{
+    ThreadSafeRefCounted<CryptoOperationImpl>::ref();
+}
+
+void CryptoOperationImpl::deref()
+{
+    ThreadSafeRefCounted<CryptoOperationImpl>::deref();
+}
+
+ScriptPromiseResolver* CryptoOperationImpl::promiseResolver()
 {
     if (!m_promiseResolver)
         m_promiseResolver = ScriptPromiseResolver::create();
     return m_promiseResolver.get();
 }
 
+CryptoOperation::~CryptoOperation()
+{
+    m_impl->detach();
+}
+
+PassRefPtr<CryptoOperation> CryptoOperation::create(const WebKit::WebCryptoAlgorithm& algorithm, CryptoOperationImpl* impl)
+{
+    return adoptRef(new CryptoOperation(algorithm, impl));
+}
+
+CryptoOperation::CryptoOperation(const WebKit::WebCryptoAlgorithm& algorithm, CryptoOperationImpl* impl)
+    : m_algorithm(algorithm)
+    , m_impl(impl)
+{
+    ASSERT(impl);
+    ScriptWrappable::init(this);
+}
+
+CryptoOperation* CryptoOperation::process(ArrayBuffer* data)
+{
+    m_impl->process(data->data(), data->byteLength());
+    return this;
+}
+
+CryptoOperation* CryptoOperation::process(ArrayBufferView* data)
+{
+    m_impl->process(data->baseAddress(), data->byteLength());
+    return this;
+}
+
+ScriptObject CryptoOperation::finish()
+{
+    return m_impl->finish();
+}
+
+ScriptObject CryptoOperation::abort()
+{
+    return m_impl->abort();
+}
+
+Algorithm* CryptoOperation::algorithm()
+{
+    if (!m_algorithmNode)
+        m_algorithmNode = Algorithm::create(m_algorithm);
+    return m_algorithmNode.get();
+}
+
 } // namespace WebCore
diff --git a/Source/modules/crypto/CryptoOperation.h b/Source/modules/crypto/CryptoOperation.h
index 79e79a6..85446db 100644
--- a/Source/modules/crypto/CryptoOperation.h
+++ b/Source/modules/crypto/CryptoOperation.h
@@ -38,35 +38,60 @@
 #include "public/platform/WebCryptoAlgorithm.h"
 #include "wtf/Forward.h"
 #include "wtf/PassRefPtr.h"
-#include "wtf/RefCounted.h"
+#include "wtf/ThreadSafeRefCounted.h"
 
 namespace WebCore {
 
 class ScriptPromiseResolver;
 class ExceptionState;
 
-class CryptoOperation : public ScriptWrappable, public WebKit::WebCryptoOperationResult, public RefCounted<CryptoOperation> {
-public:
-    ~CryptoOperation();
-    static PassRefPtr<CryptoOperation> create(const WebKit::WebCryptoAlgorithm&, ExceptionState*);
+typedef int ExceptionCode;
 
-    CryptoOperation* process(ArrayBuffer* data);
-    CryptoOperation* process(ArrayBufferView* data);
+// CryptoOperation vs CryptoOperationImpl:
+//
+// A CryptoOperation corresponds with the request from JavaScript to start a
+// multi-part cryptographic operation. This is forwarded to the Platform layer,
+// which creates a WebCryptoOperation. When the WebCryptoOperation eventually
+// completes, it resolves a Promise.
+//
+// To avoid a reference cycle between WebCryptoOperation and CryptoOperation,
+// WebCryptoOperation's result handle holds a reference to
+// CryptoOperationImpl rather than CryptoOperation. This prevents extending the
+// lifetime of CryptoOperation beyond JavaScript garbage collection, which is
+// important since:
+//
+//   * When JavaScript garbage collects CryptoOperation and finish() has NOT
+//     been called on it, the Platform operation can no longer complete and
+//     should therefore be aborted.
+//   * The WebCryptoOperation may outlive CryptoOperation if finish() was
+//     called, as the result is delivered to a separate Promise (this is
+//     different than what the current version of the spec says).
+
+class CryptoOperationImpl : public WebKit::WebCryptoOperationResultPrivate, public ThreadSafeRefCounted<CryptoOperationImpl> {
+public:
+    static PassRefPtr<CryptoOperationImpl> create() { return adoptRef(new CryptoOperationImpl); }
+
+    bool throwInitializationError(ExceptionState&);
+
+    // The CryptoOperation which started the request is getting destroyed.
+    void detach();
+
+    void process(const void* bytes, size_t);
 
     ScriptObject finish();
     ScriptObject abort();
 
-    Algorithm* algorithm();
-
-    // Implementation of WebKit::WebCryptoOperationResult.
+    // WebCryptoOperationResultPrivate implementation.
     virtual void initializationFailed() OVERRIDE;
-    virtual void initializationSucceded(WebKit::WebCryptoOperation*) OVERRIDE;
+    virtual void initializationSucceeded(WebKit::WebCryptoOperation*) OVERRIDE;
     virtual void completeWithError() OVERRIDE;
     virtual void completeWithArrayBuffer(const WebKit::WebArrayBuffer&) OVERRIDE;
+    virtual void ref() OVERRIDE;
+    virtual void deref() OVERRIDE;
 
 private:
     enum State {
-        // Constructing the WebCryptoOperation.
+        // Constructing the WebCryptoOperationImpl.
         Initializing,
 
         // Accepting calls to process().
@@ -82,24 +107,39 @@
         Done,
     };
 
-    CryptoOperation(const WebKit::WebCryptoAlgorithm&, ExceptionState*);
-
-    void process(const unsigned char*, size_t);
-
-    // Aborts and clears m_impl. If the operation has already comleted then
-    // returns false.
-    bool abortImpl();
+    CryptoOperationImpl();
 
     ScriptPromiseResolver* promiseResolver();
 
-    WebKit::WebCryptoAlgorithm m_algorithm;
-    WebKit::WebCryptoOperation* m_impl;
-    RefPtr<Algorithm> m_algorithmNode;
     State m_state;
 
+    WebKit::WebCryptoOperation* m_impl;
     RefPtr<ScriptPromiseResolver> m_promiseResolver;
+    ExceptionCode m_initializationError;
+};
 
-    ExceptionState* m_exceptionState;
+class CryptoOperation : public ScriptWrappable, public RefCounted<CryptoOperation> {
+public:
+    ~CryptoOperation();
+    static PassRefPtr<CryptoOperation> create(const WebKit::WebCryptoAlgorithm&, CryptoOperationImpl*);
+
+    CryptoOperation* process(ArrayBuffer* data);
+    CryptoOperation* process(ArrayBufferView* data);
+
+    ScriptObject finish();
+    ScriptObject abort();
+
+    Algorithm* algorithm();
+
+    CryptoOperationImpl* impl() { return m_impl.get(); }
+
+private:
+    explicit CryptoOperation(const WebKit::WebCryptoAlgorithm&, CryptoOperationImpl*);
+
+    WebKit::WebCryptoAlgorithm m_algorithm;
+    RefPtr<Algorithm> m_algorithmNode;
+
+    RefPtr<CryptoOperationImpl> m_impl;
 };
 
 } // namespace WebCore
diff --git a/Source/modules/crypto/HmacParams.cpp b/Source/modules/crypto/HmacParams.cpp
new file mode 100644
index 0000000..c5bd9cf
--- /dev/null
+++ b/Source/modules/crypto/HmacParams.cpp
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 2013 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "modules/crypto/HmacParams.h"
+
+#include "public/platform/WebCryptoAlgorithmParams.h"
+
+namespace WebCore {
+
+Algorithm* HmacParams::hash()
+{
+    if (!m_hash)
+        m_hash = Algorithm::create(m_algorithm.hmacParams()->hash());
+    return m_hash.get();
+}
+
+HmacParams::HmacParams(const WebKit::WebCryptoAlgorithm& algorithm)
+    : Algorithm(algorithm)
+{
+    ScriptWrappable::init(this);
+}
+
+} // namespace WebCore
diff --git a/Source/modules/crypto/HmacParams.h b/Source/modules/crypto/HmacParams.h
new file mode 100644
index 0000000..45ddebd
--- /dev/null
+++ b/Source/modules/crypto/HmacParams.h
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2013 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef HmacParams_h
+#define HmacParams_h
+
+#include "modules/crypto/Algorithm.h"
+#include "wtf/RefPtr.h"
+
+namespace WebCore {
+
+class HmacParams : public Algorithm {
+public:
+    static PassRefPtr<HmacParams> create(const WebKit::WebCryptoAlgorithm& algorithm) { return adoptRef(new HmacParams(algorithm)); }
+
+    Algorithm* hash();
+
+private:
+    explicit HmacParams(const WebKit::WebCryptoAlgorithm&);
+
+    RefPtr<Algorithm> m_hash;
+};
+
+} // namespace WebCore
+
+#endif
diff --git a/Source/modules/crypto/HmacParams.idl b/Source/modules/crypto/HmacParams.idl
new file mode 100644
index 0000000..2dae1c8
--- /dev/null
+++ b/Source/modules/crypto/HmacParams.idl
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2013 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+[
+    NoInterfaceObject,
+] interface HmacParams : Algorithm {
+    readonly attribute Algorithm hash;
+};
diff --git a/Source/modules/crypto/Key.cpp b/Source/modules/crypto/Key.cpp
index d10fbd4..b0031c6 100644
--- a/Source/modules/crypto/Key.cpp
+++ b/Source/modules/crypto/Key.cpp
@@ -51,32 +51,48 @@
     return 0;
 }
 
+struct KeyUsageMapping {
+    WebKit::WebCryptoKeyUsage value;
+    const char* const name;
+};
+
+const KeyUsageMapping keyUsageMappings[] = {
+    { WebKit::WebCryptoKeyUsageEncrypt, "encrypt" },
+    { WebKit::WebCryptoKeyUsageDecrypt, "decrypt" },
+    { WebKit::WebCryptoKeyUsageSign, "sign" },
+    { WebKit::WebCryptoKeyUsageVerify, "verify" },
+    { WebKit::WebCryptoKeyUsageDeriveKey, "deriveKey" },
+    { WebKit::WebCryptoKeyUsageWrapKey, "wrapKey" },
+    { WebKit::WebCryptoKeyUsageUnwrapKey, "unwrapKey" },
+};
+
+COMPILE_ASSERT(WebKit::EndOfWebCryptoKeyUsage == (1 << 6) + 1, update_keyUsageMappings);
+
 const char* keyUsageToString(WebKit::WebCryptoKeyUsage usage)
 {
-    switch (usage) {
-    case WebKit::WebCryptoKeyUsageEncrypt:
-        return "encrypt";
-    case WebKit::WebCryptoKeyUsageDecrypt:
-        return "decrypt";
-    case WebKit::WebCryptoKeyUsageSign:
-        return "sign";
-    case WebKit::WebCryptoKeyUsageVerify:
-        return "verify";
-    case WebKit::WebCryptoKeyUsageDeriveKey:
-        return "deriveKey";
-    case WebKit::WebCryptoKeyUsageWrapKey:
-        return "wrapKey";
-    case WebKit::WebCryptoKeyUsageUnwrapKey:
-        return "unwrapKey";
-    case WebKit::EndOfWebCryptoKeyUsage:
-        break;
+    for (size_t i = 0; i < WTF_ARRAY_LENGTH(keyUsageMappings); ++i) {
+        if (keyUsageMappings[i].value == usage)
+            return keyUsageMappings[i].name;
     }
     ASSERT_NOT_REACHED();
     return 0;
 }
 
+WebKit::WebCryptoKeyUsageMask keyUsageStringToMask(const String& usageString)
+{
+    for (size_t i = 0; i < WTF_ARRAY_LENGTH(keyUsageMappings); ++i) {
+        if (keyUsageMappings[i].name == usageString)
+            return keyUsageMappings[i].value;
+    }
+    return 0;
+}
+
 } // namespace
 
+Key::~Key()
+{
+}
+
 Key::Key(const WebKit::WebCryptoKey& key)
     : m_key(key)
 {
@@ -107,14 +123,47 @@
 Vector<String> Key::usages() const
 {
     Vector<String> result;
-
-    // The WebCryptoKeyUsage values are consecutive powers of 2. Test each one in order.
-    for (int i = 0; (1 << i) < WebKit::EndOfWebCryptoKeyUsage; ++i) {
-        WebKit::WebCryptoKeyUsage usage = static_cast<WebKit::WebCryptoKeyUsage>(1 << i);
+    for (int i = 0; i < WTF_ARRAY_LENGTH(keyUsageMappings); ++i) {
+        WebKit::WebCryptoKeyUsage usage = keyUsageMappings[i].value;
         if (m_key.usages() & usage)
             result.append(ASCIILiteral(keyUsageToString(usage)));
     }
     return result;
 }
 
+bool Key::parseFormat(const String& formatString, WebKit::WebCryptoKeyFormat& format)
+{
+    // There are few enough values that testing serially is fast enough.
+    if (formatString == "raw") {
+        format = WebKit::WebCryptoKeyFormatRaw;
+        return true;
+    }
+    if (formatString == "pkcs8") {
+        format = WebKit::WebCryptoKeyFormatPkcs8;
+        return true;
+    }
+    if (formatString == "spki") {
+        format = WebKit::WebCryptoKeyFormatSpki;
+        return true;
+    }
+    if (formatString == "jwk") {
+        format = WebKit::WebCryptoKeyFormatJwk;
+        return true;
+    }
+
+    return false;
+}
+
+bool Key::parseUsageMask(const Vector<String>& usages, WebKit::WebCryptoKeyUsageMask& mask)
+{
+    mask = 0;
+    for (size_t i = 0; i < usages.size(); ++i) {
+        WebKit::WebCryptoKeyUsageMask usage = keyUsageStringToMask(usages[i]);
+        if (!usage)
+            return false;
+        mask |= usage;
+    }
+    return true;
+}
+
 } // namespace WebCore
diff --git a/Source/modules/crypto/Key.h b/Source/modules/crypto/Key.h
index 4b9c008..839aefe 100644
--- a/Source/modules/crypto/Key.h
+++ b/Source/modules/crypto/Key.h
@@ -46,11 +46,19 @@
 public:
     static PassRefPtr<Key> create(const WebKit::WebCryptoKey& key) { return adoptRef(new Key(key)); }
 
+    ~Key();
+
     String type() const;
     bool extractable() const;
     Algorithm* algorithm();
     Vector<String> usages() const;
 
+    static bool parseFormat(const String&, WebKit::WebCryptoKeyFormat&);
+
+    // Parses KeyUsage strings to a WebCryptoKeyUsageMask. If any element is
+    // unrecognized, returns false.
+    static bool parseUsageMask(const Vector<String>&, WebKit::WebCryptoKeyUsageMask&);
+
 protected:
     explicit Key(const WebKit::WebCryptoKey&);
 
diff --git a/Source/modules/crypto/Key.idl b/Source/modules/crypto/Key.idl
index ef447f0..6124a2f 100644
--- a/Source/modules/crypto/Key.idl
+++ b/Source/modules/crypto/Key.idl
@@ -28,27 +28,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-enum KeyType {
-    "secret",
-    "public",
-    "private"
-};
-
-enum KeyUsage {
-    "encrypt",
-    "decrypt",
-    "sign",
-    "verify",
-    "deriveKey",
-    "wrapKey",
-    "unwrapKey"
-};
-
 [
     NoInterfaceObject,
 ] interface Key {
-    readonly attribute KeyType type;
+    readonly attribute DOMString type;
     readonly attribute boolean extractable;
     readonly attribute Algorithm algorithm;
-    readonly attribute KeyUsage[] usages;
+    readonly attribute DOMString[] usages;
 };
diff --git a/Source/modules/crypto/KeyOperation.cpp b/Source/modules/crypto/KeyOperation.cpp
new file mode 100644
index 0000000..4fe92e8
--- /dev/null
+++ b/Source/modules/crypto/KeyOperation.cpp
@@ -0,0 +1,127 @@
+/*
+ * Copyright (C) 2013 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "modules/crypto/KeyOperation.h"
+
+#include "V8Key.h" // NOTE: This must appear before ScriptPromiseResolver to define toV8()
+#include "bindings/v8/ExceptionState.h"
+#include "bindings/v8/ScriptPromiseResolver.h"
+#include "core/dom/ExceptionCode.h"
+#include "modules/crypto/Key.h"
+
+namespace WebCore {
+
+PassRefPtr<KeyOperation> KeyOperation::create()
+{
+    return adoptRef(new KeyOperation);
+}
+
+KeyOperation::KeyOperation()
+    : m_state(Initializing)
+    , m_impl(0)
+    , m_initializationError(0)
+{
+}
+
+KeyOperation::~KeyOperation()
+{
+    ASSERT(!m_impl);
+}
+
+void KeyOperation::initializationFailed()
+{
+    ASSERT(m_state == Initializing);
+    ASSERT(!m_impl);
+
+    m_initializationError = NotSupportedError;
+    m_state = Done;
+}
+
+void KeyOperation::initializationSucceeded(WebKit::WebCryptoKeyOperation* operationImpl)
+{
+    ASSERT(m_state == Initializing);
+    ASSERT(operationImpl);
+    ASSERT(!m_impl);
+
+    m_impl = operationImpl;
+    m_state = InProgress;
+}
+
+void KeyOperation::completeWithError()
+{
+    ASSERT(m_state == Initializing || m_state == InProgress);
+
+    m_impl = 0;
+    m_state = Done;
+
+    promiseResolver()->reject(ScriptValue::createNull());
+}
+
+void KeyOperation::completeWithKey(const WebKit::WebCryptoKey& key)
+{
+    ASSERT(m_state == Initializing || m_state == InProgress);
+
+    m_impl = 0;
+    m_state = Done;
+
+    promiseResolver()->fulfill(Key::create(key));
+}
+
+void KeyOperation::ref()
+{
+    ThreadSafeRefCounted<KeyOperation>::ref();
+}
+
+void KeyOperation::deref()
+{
+    ThreadSafeRefCounted<KeyOperation>::deref();
+}
+
+ScriptObject KeyOperation::returnValue(ExceptionState& es)
+{
+    ASSERT(m_state != Initializing);
+
+    if (m_initializationError) {
+        es.throwDOMException(m_initializationError);
+        return ScriptObject();
+    }
+
+    return promiseResolver()->promise();
+}
+
+ScriptPromiseResolver* KeyOperation::promiseResolver()
+{
+    if (!m_promiseResolver)
+        m_promiseResolver = ScriptPromiseResolver::create();
+    return m_promiseResolver.get();
+}
+
+} // namespace WebCore
diff --git a/Source/modules/crypto/KeyOperation.h b/Source/modules/crypto/KeyOperation.h
new file mode 100644
index 0000000..404248a
--- /dev/null
+++ b/Source/modules/crypto/KeyOperation.h
@@ -0,0 +1,88 @@
+/*
+ * Copyright (C) 2013 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef KeyOperation_h
+#define KeyOperation_h
+
+#include "bindings/v8/ScriptObject.h"
+#include "public/platform/WebCrypto.h"
+#include "wtf/Forward.h"
+#include "wtf/PassRefPtr.h"
+#include "wtf/RefPtr.h"
+#include "wtf/ThreadSafeRefCounted.h"
+
+namespace WebKit {
+class WebCryptoKeyOperation;
+class WebCryptoKey;
+}
+
+namespace WebCore {
+
+class ExceptionState;
+class ScriptPromiseResolver;
+
+typedef int ExceptionCode;
+
+class KeyOperation : public WebKit::WebCryptoKeyOperationResultPrivate, public ThreadSafeRefCounted<KeyOperation> {
+public:
+    static PassRefPtr<KeyOperation> create();
+
+    ~KeyOperation();
+
+    // Implementation of WebCryptoKeyOperationResultPrivate.
+    virtual void initializationFailed() OVERRIDE;
+    virtual void initializationSucceeded(WebKit::WebCryptoKeyOperation*) OVERRIDE;
+    virtual void completeWithError() OVERRIDE;
+    virtual void completeWithKey(const WebKit::WebCryptoKey&) OVERRIDE;
+    virtual void ref() OVERRIDE;
+    virtual void deref() OVERRIDE;
+
+    ScriptObject returnValue(ExceptionState&);
+
+private:
+    enum State {
+        Initializing,
+        InProgress,
+        Done,
+    };
+
+    KeyOperation();
+
+    ScriptPromiseResolver* promiseResolver();
+
+    State m_state;
+    WebKit::WebCryptoKeyOperation* m_impl;
+    ExceptionCode m_initializationError;
+    RefPtr<ScriptPromiseResolver> m_promiseResolver;
+};
+
+} // namespace WebCore
+
+#endif
diff --git a/Source/modules/crypto/NormalizeAlgorithm.cpp b/Source/modules/crypto/NormalizeAlgorithm.cpp
index 7e9657b..ac6c1b8 100644
--- a/Source/modules/crypto/NormalizeAlgorithm.cpp
+++ b/Source/modules/crypto/NormalizeAlgorithm.cpp
@@ -66,6 +66,7 @@
 
 const AlgorithmNameMapping algorithmNameMappings[] = {
     {"AES-CBC", WebKit::WebCryptoAlgorithmIdAesCbc},
+    {"HMAC", WebKit::WebCryptoAlgorithmIdHmac},
     {"SHA-1", WebKit::WebCryptoAlgorithmIdSha1},
     {"SHA-224", WebKit::WebCryptoAlgorithmIdSha224},
     {"SHA-256", WebKit::WebCryptoAlgorithmIdSha256},
@@ -80,6 +81,11 @@
     {WebKit::WebCryptoAlgorithmIdAesCbc, Encrypt, WebKit::WebCryptoAlgorithmParamsTypeAesCbcParams},
     {WebKit::WebCryptoAlgorithmIdAesCbc, GenerateKey, WebKit::WebCryptoAlgorithmParamsTypeAesKeyGenParams},
 
+    // HMAC (section 18.14.)
+    {WebKit::WebCryptoAlgorithmIdHmac, Sign, WebKit::WebCryptoAlgorithmParamsTypeHmacParams},
+    {WebKit::WebCryptoAlgorithmIdHmac, Verify, WebKit::WebCryptoAlgorithmParamsTypeHmacParams},
+    {WebKit::WebCryptoAlgorithmIdHmac, GenerateKey, WebKit::WebCryptoAlgorithmParamsTypeHmacParams},
+
     // SHA-1 (section 18.16.)
     {WebKit::WebCryptoAlgorithmIdSha1, Digest, WebKit::WebCryptoAlgorithmParamsTypeNone},
 
@@ -175,6 +181,22 @@
     return adoptPtr(new WebKit::WebCryptoAesKeyGenParams(length));
 }
 
+PassOwnPtr<WebKit::WebCryptoAlgorithmParams> parseHmacParams(const Dictionary& raw)
+{
+    Dictionary rawHash;
+    if (!raw.get("hash", rawHash))
+        return nullptr;
+
+    // Normalizing the algorithm for a Digest operation means it will only
+    // match the SHA-* algorithms.
+    WebKit::WebCryptoAlgorithm hash;
+    NonThrowExceptionState es;
+    if (!normalizeAlgorithm(rawHash, Digest, hash, es))
+        return nullptr;
+
+    return adoptPtr(new WebKit::WebCryptoHmacParams(hash));
+}
+
 PassOwnPtr<WebKit::WebCryptoAlgorithmParams> parseAlgorithmParams(const Dictionary& raw, WebKit::WebCryptoAlgorithmParamsType type)
 {
     switch (type) {
@@ -184,11 +206,35 @@
         return parseAesCbcParams(raw);
     case WebKit::WebCryptoAlgorithmParamsTypeAesKeyGenParams:
         return parseAesKeyGenParams(raw);
+    case WebKit::WebCryptoAlgorithmParamsTypeHmacParams:
+        return parseHmacParams(raw);
     }
     ASSERT_NOT_REACHED();
     return nullptr;
 }
 
+const AlgorithmInfo* algorithmInfo(const Dictionary& raw, ExceptionState& es)
+{
+    String algorithmName;
+    if (!raw.get("name", algorithmName)) {
+        es.throwDOMException(NotSupportedError);
+        return 0;
+    }
+
+    if (!algorithmName.containsOnlyASCII()) {
+        es.throwDOMException(SyntaxError);
+        return 0;
+    }
+
+    const AlgorithmInfo* info = AlgorithmRegistry::lookupAlgorithmByName(algorithmName);
+    if (!info) {
+        es.throwDOMException(NotSupportedError);
+        return 0;
+    }
+
+    return info;
+}
+
 } // namespace
 
 // FIXME: Throw the correct exception types!
@@ -196,22 +242,9 @@
 // http://www.w3.org/TR/WebCryptoAPI/#algorithm-normalizing-rules
 bool normalizeAlgorithm(const Dictionary& raw, AlgorithmOperation op, WebKit::WebCryptoAlgorithm& algorithm, ExceptionState& es)
 {
-    String algorithmName;
-    if (!raw.get("name", algorithmName)) {
-        es.throwDOMException(NotSupportedError);
+    const AlgorithmInfo* info = algorithmInfo(raw, es);
+    if (!info)
         return false;
-    }
-
-    if (!algorithmName.containsOnlyASCII()) {
-        es.throwDOMException(SyntaxError);
-        return false;
-    }
-
-    const AlgorithmInfo* info = AlgorithmRegistry::lookupAlgorithmByName(algorithmName);
-    if (!info) {
-        es.throwDOMException(NotSupportedError);
-        return false;
-    }
 
     if (info->paramsForOperation[op] == UnsupportedOp) {
         es.throwDOMException(NotSupportedError);
@@ -230,4 +263,14 @@
     return true;
 }
 
+bool normalizeAlgorithmForImportKey(const Dictionary& raw, WebKit::WebCryptoAlgorithm& algorithm, ExceptionState& es)
+{
+    const AlgorithmInfo* info = algorithmInfo(raw, es);
+    if (!info)
+        return false;
+
+    algorithm = WebKit::WebCryptoAlgorithm(info->algorithmId, info->algorithmName, nullptr);
+    return true;
+}
+
 } // namespace WebCore
diff --git a/Source/modules/crypto/NormalizeAlgorithm.h b/Source/modules/crypto/NormalizeAlgorithm.h
index 93d30db..e6e1081 100644
--- a/Source/modules/crypto/NormalizeAlgorithm.h
+++ b/Source/modules/crypto/NormalizeAlgorithm.h
@@ -55,8 +55,9 @@
 };
 
 // Normalizes an algorithm identifier (dictionary) into a WebCryptoAlgorithm. If
-// normalization fails then returns false and sets |es|.
+// normalization fails then returns false and sets the ExceptionState.
 bool normalizeAlgorithm(const Dictionary&, AlgorithmOperation, WebKit::WebCryptoAlgorithm&, ExceptionState&) WARN_UNUSED_RETURN;
+bool normalizeAlgorithmForImportKey(const Dictionary&, WebKit::WebCryptoAlgorithm&, ExceptionState&) WARN_UNUSED_RETURN;
 
 } // namespace WebCore
 
diff --git a/Source/modules/crypto/SubtleCrypto.cpp b/Source/modules/crypto/SubtleCrypto.cpp
index b219eef..28a9e6d 100644
--- a/Source/modules/crypto/SubtleCrypto.cpp
+++ b/Source/modules/crypto/SubtleCrypto.cpp
@@ -34,105 +34,41 @@
 #include "bindings/v8/ExceptionState.h"
 #include "core/dom/ExceptionCode.h"
 #include "modules/crypto/CryptoOperation.h"
+#include "modules/crypto/Key.h"
+#include "modules/crypto/KeyOperation.h"
 #include "modules/crypto/NormalizeAlgorithm.h"
 #include "public/platform/Platform.h"
-#include "public/platform/WebArrayBuffer.h" // FIXME: temporary
 #include "public/platform/WebCrypto.h"
-#include "wtf/ArrayBuffer.h"
 #include "wtf/ArrayBufferView.h"
-#include "wtf/SHA1.h" // FIXME: temporary
-
 
 namespace WebCore {
 
+// FIXME: Outstanding KeyOperations and CryptoOperations should be aborted when
+// tearing down SubtleCrypto (to avoid problems completing a
+// ScriptPromiseResolver which is no longer valid).
+
 namespace {
 
-// FIXME: The following are temporary implementations of what *should* go on the
-//        embedder's side. Since SHA1 is easily implemented, this serves as
-//        a useful proof of concept to get layout tests up and running and
-//        returning correct results, until the embedder's side is implemented.
-//------------------------------------------------------------------------------
-class DummyOperation : public WebKit::WebCryptoOperation {
-public:
-    explicit DummyOperation(WebKit::WebCryptoOperationResult* result) : m_result(result) { }
-
-    virtual void process(const unsigned char* bytes, size_t size) OVERRIDE
-    {
-        m_result->completeWithError();
-        delete this;
-    }
-
-    virtual void abort() OVERRIDE
-    {
-        delete this;
-    }
-
-    virtual void finish() OVERRIDE
-    {
-        m_result->completeWithError();
-        delete this;
-    }
-
-protected:
-    WebKit::WebCryptoOperationResult* m_result;
-};
-
-class MockSha1Operation : public DummyOperation {
-public:
-    explicit MockSha1Operation(WebKit::WebCryptoOperationResult* result) : DummyOperation(result) { }
-
-    virtual void process(const unsigned char* bytes, size_t size) OVERRIDE
-    {
-        m_sha1.addBytes(bytes, size);
-    }
-
-    virtual void finish() OVERRIDE
-    {
-        Vector<uint8_t, 20> hash;
-        m_sha1.computeHash(hash);
-
-        WebKit::WebArrayBuffer buffer = WebKit::WebArrayBuffer::create(hash.size(), 1);
-        memcpy(buffer.data(), hash.data(), hash.size());
-
-        m_result->completeWithArrayBuffer(buffer);
-        delete this;
-    }
-
-private:
-    SHA1 m_sha1;
-};
-
-class MockPlatformCrypto : public WebKit::WebCrypto {
-public:
-    virtual void digest(const WebKit::WebCryptoAlgorithm& algorithm, WebKit::WebCryptoOperationResult* result) OVERRIDE
-    {
-        if (algorithm.id() == WebKit::WebCryptoAlgorithmIdSha1) {
-            result->initializationSucceded(new MockSha1Operation(result));
-        } else {
-            // Don't fail synchronously, since existing layout tests rely on
-            // digest for testing algorithm normalization.
-            result->initializationSucceded(new DummyOperation(result));
-        }
-    }
-};
-
-WebKit::WebCrypto* mockPlatformCrypto()
+// FIXME: Temporary
+PassRefPtr<CryptoOperation> dummyOperation(const Dictionary& rawAlgorithm, AlgorithmOperation operationType, ExceptionState& es)
 {
-    DEFINE_STATIC_LOCAL(MockPlatformCrypto, crypto, ());
-    return &crypto;
-}
+    WebKit::WebCrypto* platformCrypto = WebKit::Platform::current()->crypto();
+    if (!platformCrypto) {
+        es.throwDOMException(NotSupportedError);
+        return 0;
+    }
 
-PassRefPtr<CryptoOperation> doDummyOperation(const Dictionary& rawAlgorithm, AlgorithmOperation operationType, ExceptionState& es)
-{
     WebKit::WebCryptoAlgorithm algorithm;
     if (!normalizeAlgorithm(rawAlgorithm, operationType, algorithm, es))
         return 0;
 
-    RefPtr<CryptoOperation> op = CryptoOperation::create(algorithm, &es);
-    op->initializationSucceded(new DummyOperation(op.get()));
-    return op.release();
+    RefPtr<CryptoOperationImpl> opImpl = CryptoOperationImpl::create();
+    WebKit::WebCryptoOperationResult result(opImpl.get());
+    platformCrypto->digest(algorithm, result);
+    if (opImpl->throwInitializationError(es))
+        return 0;
+    return CryptoOperation::create(algorithm, opImpl.get());
 }
-//------------------------------------------------------------------------------
 
 } // namespace
 
@@ -143,27 +79,27 @@
 
 PassRefPtr<CryptoOperation> SubtleCrypto::encrypt(const Dictionary& rawAlgorithm, ExceptionState& es)
 {
-    return doDummyOperation(rawAlgorithm, Encrypt, es);
+    return dummyOperation(rawAlgorithm, Encrypt, es);
 }
 
 PassRefPtr<CryptoOperation> SubtleCrypto::decrypt(const Dictionary& rawAlgorithm, ExceptionState& es)
 {
-    return doDummyOperation(rawAlgorithm, Decrypt, es);
+    return dummyOperation(rawAlgorithm, Decrypt, es);
 }
 
 PassRefPtr<CryptoOperation> SubtleCrypto::sign(const Dictionary& rawAlgorithm, ExceptionState& es)
 {
-    return doDummyOperation(rawAlgorithm, Sign, es);
+    return dummyOperation(rawAlgorithm, Sign, es);
 }
 
 PassRefPtr<CryptoOperation> SubtleCrypto::verifySignature(const Dictionary& rawAlgorithm, ExceptionState& es)
 {
-    return doDummyOperation(rawAlgorithm, Verify, es);
+    return dummyOperation(rawAlgorithm, Verify, es);
 }
 
 PassRefPtr<CryptoOperation> SubtleCrypto::digest(const Dictionary& rawAlgorithm, ExceptionState& es)
 {
-    WebKit::WebCrypto* platformCrypto = mockPlatformCrypto();
+    WebKit::WebCrypto* platformCrypto = WebKit::Platform::current()->crypto();
     if (!platformCrypto) {
         es.throwDOMException(NotSupportedError);
         return 0;
@@ -173,9 +109,49 @@
     if (!normalizeAlgorithm(rawAlgorithm, Digest, algorithm, es))
         return 0;
 
-    RefPtr<CryptoOperation> op = CryptoOperation::create(algorithm, &es);
-    platformCrypto->digest(algorithm, op.get());
-    return op.release();
+    RefPtr<CryptoOperationImpl> opImpl = CryptoOperationImpl::create();
+    WebKit::WebCryptoOperationResult result(opImpl.get());
+    platformCrypto->digest(algorithm, result);
+    if (opImpl->throwInitializationError(es))
+        return 0;
+    return CryptoOperation::create(algorithm, opImpl.get());
+}
+
+ScriptObject SubtleCrypto::importKey(const String& rawFormat, ArrayBufferView* keyData, const Dictionary& rawAlgorithm, bool extractable, const Vector<String>& rawKeyUsages, ExceptionState& es)
+{
+    WebKit::WebCrypto* platformCrypto = WebKit::Platform::current()->crypto();
+    if (!platformCrypto) {
+        es.throwDOMException(NotSupportedError);
+        return ScriptObject();
+    }
+
+    if (!keyData) {
+        es.throwDOMException(TypeError);
+        return ScriptObject();
+    }
+
+    WebKit::WebCryptoKeyUsageMask keyUsages;
+    if (!Key::parseUsageMask(rawKeyUsages, keyUsages)) {
+        es.throwDOMException(TypeError);
+        return ScriptObject();
+    }
+
+    WebKit::WebCryptoKeyFormat format;
+    if (!Key::parseFormat(rawFormat, format)) {
+        es.throwDOMException(TypeError);
+        return ScriptObject();
+    }
+
+    WebKit::WebCryptoAlgorithm algorithm;
+    if (!normalizeAlgorithmForImportKey(rawAlgorithm, algorithm, es))
+        return ScriptObject();
+
+    const unsigned char* keyDataBytes = static_cast<unsigned char*>(keyData->baseAddress());
+
+    RefPtr<KeyOperation> keyOp = KeyOperation::create();
+    WebKit::WebCryptoKeyOperationResult result(keyOp.get());
+    platformCrypto->importKey(format, keyDataBytes, keyData->byteLength(), algorithm, extractable, keyUsages, result);
+    return keyOp->returnValue(es);
 }
 
 } // namespace WebCore
diff --git a/Source/modules/crypto/SubtleCrypto.h b/Source/modules/crypto/SubtleCrypto.h
index d3cf990..61fea3c 100644
--- a/Source/modules/crypto/SubtleCrypto.h
+++ b/Source/modules/crypto/SubtleCrypto.h
@@ -31,6 +31,7 @@
 #ifndef SubtleCrypto_h
 #define SubtleCrypto_h
 
+#include "bindings/v8/ScriptObject.h"
 #include "bindings/v8/ScriptWrappable.h"
 #include "wtf/Forward.h"
 #include "wtf/PassRefPtr.h"
@@ -53,6 +54,8 @@
     PassRefPtr<CryptoOperation> verifySignature(const Dictionary&, ExceptionState&);
     PassRefPtr<CryptoOperation> digest(const Dictionary&, ExceptionState&);
 
+    ScriptObject importKey(const String&, ArrayBufferView*, const Dictionary&, bool extractable, const Vector<String>& keyUsages, ExceptionState&);
+
 private:
     SubtleCrypto();
 };
diff --git a/Source/modules/crypto/SubtleCrypto.idl b/Source/modules/crypto/SubtleCrypto.idl
index fb5522b..d8f93f4 100644
--- a/Source/modules/crypto/SubtleCrypto.idl
+++ b/Source/modules/crypto/SubtleCrypto.idl
@@ -36,5 +36,7 @@
     [RaisesException] CryptoOperation sign(Dictionary algorithm);
     [RaisesException, ImplementedAs=verifySignature] CryptoOperation verify(Dictionary algorithm);
     [RaisesException] CryptoOperation digest(Dictionary algorithm);
+
+    [RaisesException] any importKey(DOMString format, ArrayBufferView keyData, Dictionary algorithm, boolean extractable, DOMString[] keyUsages);
 };
 
diff --git a/Source/modules/device_orientation/DeviceMotionEvent.idl b/Source/modules/device_orientation/DeviceMotionEvent.idl
index d291769..bfb130d 100644
--- a/Source/modules/device_orientation/DeviceMotionEvent.idl
+++ b/Source/modules/device_orientation/DeviceMotionEvent.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
@@ -30,11 +30,11 @@
     readonly attribute DeviceAcceleration accelerationIncludingGravity;
     readonly attribute DeviceRotationRate rotationRate;
     readonly attribute double? interval;
-    [Custom] void initDeviceMotionEvent([Default=Undefined] optional DOMString type, 
-                                        [Default=Undefined] optional boolean bubbles, 
-                                        [Default=Undefined] optional boolean cancelable, 
-                                        [Default=Undefined] optional Acceleration acceleration, 
-                                        [Default=Undefined] optional Acceleration accelerationIncludingGravity, 
-                                        [Default=Undefined] optional RotationRate rotationRate, 
+    [Custom] void initDeviceMotionEvent([Default=Undefined] optional DOMString type,
+                                        [Default=Undefined] optional boolean bubbles,
+                                        [Default=Undefined] optional boolean cancelable,
+                                        [Default=Undefined] optional Acceleration acceleration,
+                                        [Default=Undefined] optional Acceleration accelerationIncludingGravity,
+                                        [Default=Undefined] optional RotationRate rotationRate,
                                         [Default=Undefined] optional double interval);
 };
diff --git a/Source/modules/device_orientation/DeviceOrientationEvent.idl b/Source/modules/device_orientation/DeviceOrientationEvent.idl
index 286f2bb..00e9d04 100644
--- a/Source/modules/device_orientation/DeviceOrientationEvent.idl
+++ b/Source/modules/device_orientation/DeviceOrientationEvent.idl
@@ -28,11 +28,11 @@
     readonly attribute double? beta;
     readonly attribute double? gamma;
     readonly attribute boolean? absolute;
-    [Custom] void initDeviceOrientationEvent([Default=Undefined] optional DOMString type, 
-                                             [Default=Undefined] optional boolean bubbles, 
-                                             [Default=Undefined] optional boolean cancelable, 
-                                             [Default=Undefined] optional double alpha, 
-                                             [Default=Undefined] optional double beta, 
+    [Custom] void initDeviceOrientationEvent([Default=Undefined] optional DOMString type,
+                                             [Default=Undefined] optional boolean bubbles,
+                                             [Default=Undefined] optional boolean cancelable,
+                                             [Default=Undefined] optional double alpha,
+                                             [Default=Undefined] optional double beta,
                                              [Default=Undefined] optional double gamma,
                                              [Default=Undefined] optional boolean absolute);
 };
diff --git a/Source/modules/encryptedmedia/MediaKeyMessageEvent.cpp b/Source/modules/encryptedmedia/MediaKeyMessageEvent.cpp
index 8839d21..a6924d5 100644
--- a/Source/modules/encryptedmedia/MediaKeyMessageEvent.cpp
+++ b/Source/modules/encryptedmedia/MediaKeyMessageEvent.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/modules/encryptedmedia/MediaKeyMessageEvent.h b/Source/modules/encryptedmedia/MediaKeyMessageEvent.h
index 5ddbd14..20f769a 100644
--- a/Source/modules/encryptedmedia/MediaKeyMessageEvent.h
+++ b/Source/modules/encryptedmedia/MediaKeyMessageEvent.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MediaKeyMessageEvent_h
diff --git a/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl b/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl
index 513b910..4b12d9b 100644
--- a/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl
+++ b/Source/modules/encryptedmedia/MediaKeyMessageEvent.idl
@@ -20,13 +20,13 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
     Conditional=ENCRYPTED_MEDIA_V2,
     EnabledAtRuntime=encryptedMedia,
-    ConstructorTemplate=Event 
+    ConstructorTemplate=Event
 ] interface MediaKeyMessageEvent : Event {
     readonly attribute Uint8Array message;
     [InitializedByEventConstructor] readonly attribute DOMString destinationURL;
diff --git a/Source/modules/encryptedmedia/MediaKeyNeededEvent.cpp b/Source/modules/encryptedmedia/MediaKeyNeededEvent.cpp
index c426ca0..07561fa 100644
--- a/Source/modules/encryptedmedia/MediaKeyNeededEvent.cpp
+++ b/Source/modules/encryptedmedia/MediaKeyNeededEvent.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/modules/encryptedmedia/MediaKeyNeededEvent.h b/Source/modules/encryptedmedia/MediaKeyNeededEvent.h
index 6adea69..8eb372d 100644
--- a/Source/modules/encryptedmedia/MediaKeyNeededEvent.h
+++ b/Source/modules/encryptedmedia/MediaKeyNeededEvent.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef MediaKeyNeededEvent_h
diff --git a/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl b/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl
index 0c1b42b..82f72f8 100644
--- a/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl
+++ b/Source/modules/encryptedmedia/MediaKeyNeededEvent.idl
@@ -20,13 +20,13 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
     Conditional=ENCRYPTED_MEDIA_V2,
     EnabledAtRuntime=encryptedMedia,
-    ConstructorTemplate=Event 
+    ConstructorTemplate=Event
 ] interface MediaKeyNeededEvent : Event {
     readonly attribute Uint8Array initData;
 };
diff --git a/Source/modules/encryptedmedia/MediaKeySession.idl b/Source/modules/encryptedmedia/MediaKeySession.idl
index 3afc689..a353455 100644
--- a/Source/modules/encryptedmedia/MediaKeySession.idl
+++ b/Source/modules/encryptedmedia/MediaKeySession.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
      */
 
 [
@@ -37,7 +37,7 @@
     // session operations
     [RaisesException] void update(Uint8Array key);
     void close();
-    
+
     // EventListeners
     [EnabledAtRuntime=encryptedMedia] attribute EventListener onwebkitkeyadded;
     [EnabledAtRuntime=encryptedMedia] attribute EventListener onwebkitkeyerror;
diff --git a/Source/modules/encryptedmedia/MediaKeys.idl b/Source/modules/encryptedmedia/MediaKeys.idl
index e3f0d2c..63cfe05 100644
--- a/Source/modules/encryptedmedia/MediaKeys.idl
+++ b/Source/modules/encryptedmedia/MediaKeys.idl
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 [
     Conditional=ENCRYPTED_MEDIA_V2,
     EnabledAtRuntime=encryptedMedia,
diff --git a/Source/modules/filesystem/WorkerGlobalScopeFileSystem.h b/Source/modules/filesystem/WorkerGlobalScopeFileSystem.h
index 28b7cef..9c73548 100644
--- a/Source/modules/filesystem/WorkerGlobalScopeFileSystem.h
+++ b/Source/modules/filesystem/WorkerGlobalScopeFileSystem.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl b/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl
index d98cfdc..f4a25bc 100644
--- a/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl
+++ b/Source/modules/filesystem/WorkerGlobalScopeFileSystem.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/modules/geolocation/Coordinates.cpp b/Source/modules/geolocation/Coordinates.cpp
index 190a6ee..04dfe09 100644
--- a/Source/modules/geolocation/Coordinates.cpp
+++ b/Source/modules/geolocation/Coordinates.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -63,5 +63,5 @@
     isNull = true;
     return 0;
 }
-    
+
 } // namespace WebCore
diff --git a/Source/modules/geolocation/Coordinates.h b/Source/modules/geolocation/Coordinates.h
index a620649..50587db 100644
--- a/Source/modules/geolocation/Coordinates.h
+++ b/Source/modules/geolocation/Coordinates.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Coordinates_h
@@ -73,13 +73,13 @@
     double m_altitudeAccuracy;
     double m_heading;
     double m_speed;
-    
+
     bool m_canProvideAltitude;
     bool m_canProvideAltitudeAccuracy;
     bool m_canProvideHeading;
     bool m_canProvideSpeed;
 };
-    
+
 } // namespace WebCore
 
 #endif // Coordinates_h
diff --git a/Source/modules/geolocation/Coordinates.idl b/Source/modules/geolocation/Coordinates.idl
index b5a07d7..ed2b8bf 100644
--- a/Source/modules/geolocation/Coordinates.idl
+++ b/Source/modules/geolocation/Coordinates.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/modules/geolocation/Geolocation.cpp b/Source/modules/geolocation/Geolocation.cpp
index d482e55..17a7b27 100644
--- a/Source/modules/geolocation/Geolocation.cpp
+++ b/Source/modules/geolocation/Geolocation.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -50,8 +50,8 @@
 {
     if (!position)
         return 0;
-    
-    RefPtr<Coordinates> coordinates = Coordinates::create(position->latitude(), position->longitude(), position->canProvideAltitude(), position->altitude(), 
+
+    RefPtr<Coordinates> coordinates = Coordinates::create(position->latitude(), position->longitude(), position->canProvideAltitude(), position->altitude(),
                                                           position->accuracy(), position->canProvideAltitudeAccuracy(), position->altitudeAccuracy(),
                                                           position->canProvideHeading(), position->heading(), position->canProvideSpeed(), position->speed());
     return Geoposition::create(coordinates.release(), convertSecondsToDOMTimeStamp(position->timestamp()));
@@ -424,7 +424,7 @@
     if (GeoNotifier* notifier = m_watchers.find(watchID))
         m_pendingForPermissionNotifiers.remove(notifier);
     m_watchers.remove(watchID);
-    
+
     if (!hasListeners())
         stopUpdating();
 }
@@ -437,7 +437,7 @@
     // This may be due to either a new position from the service, or a cached
     // position.
     m_allowGeolocation = allowed ? Yes : No;
-    
+
     // Permission request was made during the startRequest process
     if (!m_pendingForPermissionNotifiers.isEmpty()) {
         handlePendingPermissionNotifiers();
@@ -467,7 +467,7 @@
      GeoNotifierVector::const_iterator end = notifiers.end();
      for (GeoNotifierVector::const_iterator it = notifiers.begin(); it != end; ++it) {
          RefPtr<GeoNotifier> notifier = *it;
-         
+
          notifier->runErrorCallback(error);
      }
 }
@@ -490,7 +490,7 @@
 {
     GeoNotifierVector copy;
     copyToVector(m_oneShots, copy);
-    
+
     stopTimer(copy);
 }
 
@@ -498,7 +498,7 @@
 {
     GeoNotifierVector copy;
     m_watchers.getNotifiersVector(copy);
-    
+
     stopTimer(copy);
 }
 
@@ -551,7 +551,7 @@
 void Geolocation::handleError(PositionError* error)
 {
     ASSERT(error);
-    
+
     GeoNotifierVector oneShotsCopy;
     copyToVector(m_oneShots, oneShotsCopy);
 
@@ -603,13 +603,13 @@
 {
     ASSERT(lastPosition());
     ASSERT(isAllowed());
-    
+
     GeoNotifierVector oneShotsCopy;
     copyToVector(m_oneShots, oneShotsCopy);
-    
+
     GeoNotifierVector watchersCopy;
     m_watchers.getNotifiersVector(watchersCopy);
-    
+
     // Clear the lists before we make the callbacks, to avoid clearing notifiers
     // added by calls to Geolocation methods from the callbacks, and to prevent
     // further callbacks to these notifiers.
@@ -659,7 +659,7 @@
 
 void Geolocation::handlePendingPermissionNotifiers()
 {
-    // While we iterate through the list, we need not worry about list being modified as the permission 
+    // While we iterate through the list, we need not worry about list being modified as the permission
     // is already set to Yes/No and no new listeners will be added to the pending list
     GeoNotifierSet::const_iterator end = m_pendingForPermissionNotifiers.end();
     for (GeoNotifierSet::const_iterator iter = m_pendingForPermissionNotifiers.begin(); iter != end; ++iter) {
diff --git a/Source/modules/geolocation/Geolocation.h b/Source/modules/geolocation/Geolocation.h
index 90709ec..e7f6975 100644
--- a/Source/modules/geolocation/Geolocation.h
+++ b/Source/modules/geolocation/Geolocation.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Geolocation_h
@@ -173,7 +173,7 @@
 
     GeoNotifierSet m_requestsAwaitingCachedPosition;
 };
-    
+
 } // namespace WebCore
 
 #endif // Geolocation_h
diff --git a/Source/modules/geolocation/Geolocation.idl b/Source/modules/geolocation/Geolocation.idl
index 03f478a..9c2ead1 100644
--- a/Source/modules/geolocation/Geolocation.idl
+++ b/Source/modules/geolocation/Geolocation.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 // http://www.w3.org/TR/geolocation-API/#geolocation_interface
diff --git a/Source/modules/geolocation/GeolocationController.cpp b/Source/modules/geolocation/GeolocationController.cpp
index da65c2a..80bac78 100644
--- a/Source/modules/geolocation/GeolocationController.cpp
+++ b/Source/modules/geolocation/GeolocationController.cpp
@@ -61,7 +61,7 @@
     if (enableHighAccuracy)
         m_highAccuracyObservers.add(observer);
 
-    if (m_client) {        
+    if (m_client) {
         if (enableHighAccuracy)
             m_client->setEnableHighAccuracy(true);
         if (wasEmpty)
@@ -139,5 +139,5 @@
 {
     Supplement<Page>::provideTo(page, GeolocationController::supplementName(), GeolocationController::create(page, client));
 }
-    
+
 } // namespace WebCore
diff --git a/Source/modules/geolocation/GeolocationError.h b/Source/modules/geolocation/GeolocationError.h
index 1bf97b6..23ecb71 100644
--- a/Source/modules/geolocation/GeolocationError.h
+++ b/Source/modules/geolocation/GeolocationError.h
@@ -53,7 +53,7 @@
     }
 
     ErrorCode m_code;
-    String m_message; 
+    String m_message;
 };
 
 } // namespace WebCore
diff --git a/Source/modules/geolocation/Geoposition.h b/Source/modules/geolocation/Geoposition.h
index a0d0114..ae4e819 100644
--- a/Source/modules/geolocation/Geoposition.h
+++ b/Source/modules/geolocation/Geoposition.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Geoposition_h
diff --git a/Source/modules/geolocation/Geoposition.idl b/Source/modules/geolocation/Geoposition.idl
index 34ef94e..1b5e347 100644
--- a/Source/modules/geolocation/Geoposition.idl
+++ b/Source/modules/geolocation/Geoposition.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/modules/geolocation/PositionCallback.h b/Source/modules/geolocation/PositionCallback.h
index b7ef111..7a79539 100644
--- a/Source/modules/geolocation/PositionCallback.h
+++ b/Source/modules/geolocation/PositionCallback.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PositionCallback_h
diff --git a/Source/modules/geolocation/PositionError.idl b/Source/modules/geolocation/PositionError.idl
index 56b4d41..2a673c0 100644
--- a/Source/modules/geolocation/PositionError.idl
+++ b/Source/modules/geolocation/PositionError.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/modules/geolocation/PositionErrorCallback.h b/Source/modules/geolocation/PositionErrorCallback.h
index 90d3fec..a5d7773 100644
--- a/Source/modules/geolocation/PositionErrorCallback.h
+++ b/Source/modules/geolocation/PositionErrorCallback.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PositionErrorCallback_h
diff --git a/Source/modules/geolocation/PositionOptions.h b/Source/modules/geolocation/PositionOptions.h
index 71d9118..1b1e48e 100644
--- a/Source/modules/geolocation/PositionOptions.h
+++ b/Source/modules/geolocation/PositionOptions.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PositionOptions_h
@@ -30,7 +30,7 @@
 #include "wtf/RefCounted.h"
 
 namespace WebCore {
-    
+
 class PositionOptions : public RefCounted<PositionOptions> {
 public:
     static PassRefPtr<PositionOptions> create() { return adoptRef(new PositionOptions()); }
@@ -62,7 +62,7 @@
         m_hasMaximumAge = true;
         m_maximumAge = age;
     }
-    
+
 private:
     PositionOptions()
         : m_highAccuracy(false)
@@ -70,14 +70,14 @@
     {
         setMaximumAge(0);
     }
-    
+
     bool m_highAccuracy;
     bool m_hasTimeout;
     int m_timeout;
     bool m_hasMaximumAge;
     int m_maximumAge;
 };
-    
+
 } // namespace WebCore
 
 #endif // PositionOptions_h
diff --git a/Source/modules/indexeddb/IDBEventDispatcher.cpp b/Source/modules/indexeddb/IDBEventDispatcher.cpp
index 6396eaa..c057639 100644
--- a/Source/modules/indexeddb/IDBEventDispatcher.cpp
+++ b/Source/modules/indexeddb/IDBEventDispatcher.cpp
@@ -72,9 +72,9 @@
     //        prevent the transaction from being aborted. It's purely there for
     //        error reporting and distinctly different from the event propagating to
     //        the window.
-    //        
+    //
     //        This is similar to how "error" events are handled in workers.
-    //        
+    //
     //        (I think that so far webkit hasn't implemented the window.onerror
     //        feature yet, so you probably don't want to fire the separate error
     //        event on the window until that has been implemented)." -- Jonas Sicking
diff --git a/Source/modules/mediasource/MediaSource.idl b/Source/modules/mediasource/MediaSource.idl
index 49d0fd3..8286967 100644
--- a/Source/modules/mediasource/MediaSource.idl
+++ b/Source/modules/mediasource/MediaSource.idl
@@ -27,7 +27,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 [
     EnabledAtRuntime=mediaSource,
     ActiveDOMObject,
@@ -46,7 +46,7 @@
     [RaisesException] void removeSourceBuffer(SourceBuffer buffer);
 
     readonly attribute DOMString readyState;
-    
+
     [RaisesException] void endOfStream([Default=NullString] optional DOMString error);
 
     static boolean isTypeSupported (DOMString type);
diff --git a/Source/modules/mediasource/SourceBuffer.idl b/Source/modules/mediasource/SourceBuffer.idl
index 7f368c7..5099e0d 100644
--- a/Source/modules/mediasource/SourceBuffer.idl
+++ b/Source/modules/mediasource/SourceBuffer.idl
@@ -27,7 +27,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 [
     NoInterfaceObject,
     ActiveDOMObject,
@@ -35,7 +35,7 @@
 ] interface SourceBuffer : EventTarget {
 
     readonly attribute boolean updating;
-  
+
     // Returns the time ranges buffered.
     [GetterRaisesException] readonly attribute TimeRanges buffered;
 
diff --git a/Source/modules/mediasource/SourceBufferList.idl b/Source/modules/mediasource/SourceBufferList.idl
index 80f231d..1e2f5ed 100644
--- a/Source/modules/mediasource/SourceBufferList.idl
+++ b/Source/modules/mediasource/SourceBufferList.idl
@@ -27,7 +27,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 [
     NoInterfaceObject,
     EnabledAtRuntime=mediaSource,
diff --git a/Source/modules/mediasource/WebKitMediaSource.idl b/Source/modules/mediasource/WebKitMediaSource.idl
index 61eaa1c..388e5d8 100644
--- a/Source/modules/mediasource/WebKitMediaSource.idl
+++ b/Source/modules/mediasource/WebKitMediaSource.idl
@@ -27,7 +27,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 [
     NoInterfaceObject,
     EnabledAtRuntime=webKitMediaSource,
@@ -47,7 +47,7 @@
     [RaisesException] void removeSourceBuffer(WebKitSourceBuffer buffer);
 
     readonly attribute DOMString readyState;
-    
+
     [RaisesException] void endOfStream([Default=NullString] optional DOMString error);
 
     static boolean isTypeSupported (DOMString type);
diff --git a/Source/modules/mediasource/WebKitSourceBuffer.idl b/Source/modules/mediasource/WebKitSourceBuffer.idl
index 4995de8..c682730 100644
--- a/Source/modules/mediasource/WebKitSourceBuffer.idl
+++ b/Source/modules/mediasource/WebKitSourceBuffer.idl
@@ -27,7 +27,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 [
     NoInterfaceObject,
     EnabledAtRuntime=webKitMediaSource
diff --git a/Source/modules/mediasource/WebKitSourceBufferList.idl b/Source/modules/mediasource/WebKitSourceBufferList.idl
index 5acd8ca..f33a369 100644
--- a/Source/modules/mediasource/WebKitSourceBufferList.idl
+++ b/Source/modules/mediasource/WebKitSourceBufferList.idl
@@ -27,7 +27,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 [
     NoInterfaceObject,
     EnabledAtRuntime=webKitMediaSource
diff --git a/Source/modules/modules.gypi b/Source/modules/modules.gypi
index 4d13e60..0ae16a4 100644
--- a/Source/modules/modules.gypi
+++ b/Source/modules/modules.gypi
@@ -15,6 +15,7 @@
       'crypto/Algorithm.idl',
       'crypto/Crypto.idl',
       'crypto/CryptoOperation.idl',
+      'crypto/HmacParams.idl',
       'crypto/Key.idl',
       'crypto/SubtleCrypto.idl',
       'crypto/WorkerCrypto.idl',
@@ -213,8 +214,12 @@
       'crypto/CryptoOperation.h',
       'crypto/DOMWindowCrypto.cpp',
       'crypto/DOMWindowCrypto.h',
+      'crypto/HmacParams.cpp',
+      'crypto/HmacParams.h',
       'crypto/Key.cpp',
       'crypto/Key.h',
+      'crypto/KeyOperation.cpp',
+      'crypto/KeyOperation.h',
       'crypto/NormalizeAlgorithm.cpp',
       'crypto/NormalizeAlgorithm.h',
       'crypto/SubtleCrypto.cpp',
diff --git a/Source/modules/modules.target.darwin-arm.mk b/Source/modules/modules.target.darwin-arm.mk
index e5e25e0..cfc1602 100644
--- a/Source/modules/modules.target.darwin-arm.mk
+++ b/Source/modules/modules.target.darwin-arm.mk
@@ -32,7 +32,9 @@
 	third_party/WebKit/Source/modules/crypto/Crypto.cpp \
 	third_party/WebKit/Source/modules/crypto/CryptoOperation.cpp \
 	third_party/WebKit/Source/modules/crypto/DOMWindowCrypto.cpp \
+	third_party/WebKit/Source/modules/crypto/HmacParams.cpp \
 	third_party/WebKit/Source/modules/crypto/Key.cpp \
+	third_party/WebKit/Source/modules/crypto/KeyOperation.cpp \
 	third_party/WebKit/Source/modules/crypto/NormalizeAlgorithm.cpp \
 	third_party/WebKit/Source/modules/crypto/SubtleCrypto.cpp \
 	third_party/WebKit/Source/modules/crypto/WorkerCrypto.cpp \
diff --git a/Source/modules/modules.target.darwin-mips.mk b/Source/modules/modules.target.darwin-mips.mk
index f24ff61..b485f26 100644
--- a/Source/modules/modules.target.darwin-mips.mk
+++ b/Source/modules/modules.target.darwin-mips.mk
@@ -32,7 +32,9 @@
 	third_party/WebKit/Source/modules/crypto/Crypto.cpp \
 	third_party/WebKit/Source/modules/crypto/CryptoOperation.cpp \
 	third_party/WebKit/Source/modules/crypto/DOMWindowCrypto.cpp \
+	third_party/WebKit/Source/modules/crypto/HmacParams.cpp \
 	third_party/WebKit/Source/modules/crypto/Key.cpp \
+	third_party/WebKit/Source/modules/crypto/KeyOperation.cpp \
 	third_party/WebKit/Source/modules/crypto/NormalizeAlgorithm.cpp \
 	third_party/WebKit/Source/modules/crypto/SubtleCrypto.cpp \
 	third_party/WebKit/Source/modules/crypto/WorkerCrypto.cpp \
diff --git a/Source/modules/modules.target.darwin-x86.mk b/Source/modules/modules.target.darwin-x86.mk
index c830e56..dfe916f 100644
--- a/Source/modules/modules.target.darwin-x86.mk
+++ b/Source/modules/modules.target.darwin-x86.mk
@@ -32,7 +32,9 @@
 	third_party/WebKit/Source/modules/crypto/Crypto.cpp \
 	third_party/WebKit/Source/modules/crypto/CryptoOperation.cpp \
 	third_party/WebKit/Source/modules/crypto/DOMWindowCrypto.cpp \
+	third_party/WebKit/Source/modules/crypto/HmacParams.cpp \
 	third_party/WebKit/Source/modules/crypto/Key.cpp \
+	third_party/WebKit/Source/modules/crypto/KeyOperation.cpp \
 	third_party/WebKit/Source/modules/crypto/NormalizeAlgorithm.cpp \
 	third_party/WebKit/Source/modules/crypto/SubtleCrypto.cpp \
 	third_party/WebKit/Source/modules/crypto/WorkerCrypto.cpp \
diff --git a/Source/modules/modules.target.linux-arm.mk b/Source/modules/modules.target.linux-arm.mk
index e5e25e0..cfc1602 100644
--- a/Source/modules/modules.target.linux-arm.mk
+++ b/Source/modules/modules.target.linux-arm.mk
@@ -32,7 +32,9 @@
 	third_party/WebKit/Source/modules/crypto/Crypto.cpp \
 	third_party/WebKit/Source/modules/crypto/CryptoOperation.cpp \
 	third_party/WebKit/Source/modules/crypto/DOMWindowCrypto.cpp \
+	third_party/WebKit/Source/modules/crypto/HmacParams.cpp \
 	third_party/WebKit/Source/modules/crypto/Key.cpp \
+	third_party/WebKit/Source/modules/crypto/KeyOperation.cpp \
 	third_party/WebKit/Source/modules/crypto/NormalizeAlgorithm.cpp \
 	third_party/WebKit/Source/modules/crypto/SubtleCrypto.cpp \
 	third_party/WebKit/Source/modules/crypto/WorkerCrypto.cpp \
diff --git a/Source/modules/modules.target.linux-mips.mk b/Source/modules/modules.target.linux-mips.mk
index f24ff61..b485f26 100644
--- a/Source/modules/modules.target.linux-mips.mk
+++ b/Source/modules/modules.target.linux-mips.mk
@@ -32,7 +32,9 @@
 	third_party/WebKit/Source/modules/crypto/Crypto.cpp \
 	third_party/WebKit/Source/modules/crypto/CryptoOperation.cpp \
 	third_party/WebKit/Source/modules/crypto/DOMWindowCrypto.cpp \
+	third_party/WebKit/Source/modules/crypto/HmacParams.cpp \
 	third_party/WebKit/Source/modules/crypto/Key.cpp \
+	third_party/WebKit/Source/modules/crypto/KeyOperation.cpp \
 	third_party/WebKit/Source/modules/crypto/NormalizeAlgorithm.cpp \
 	third_party/WebKit/Source/modules/crypto/SubtleCrypto.cpp \
 	third_party/WebKit/Source/modules/crypto/WorkerCrypto.cpp \
diff --git a/Source/modules/modules.target.linux-x86.mk b/Source/modules/modules.target.linux-x86.mk
index c830e56..dfe916f 100644
--- a/Source/modules/modules.target.linux-x86.mk
+++ b/Source/modules/modules.target.linux-x86.mk
@@ -32,7 +32,9 @@
 	third_party/WebKit/Source/modules/crypto/Crypto.cpp \
 	third_party/WebKit/Source/modules/crypto/CryptoOperation.cpp \
 	third_party/WebKit/Source/modules/crypto/DOMWindowCrypto.cpp \
+	third_party/WebKit/Source/modules/crypto/HmacParams.cpp \
 	third_party/WebKit/Source/modules/crypto/Key.cpp \
+	third_party/WebKit/Source/modules/crypto/KeyOperation.cpp \
 	third_party/WebKit/Source/modules/crypto/NormalizeAlgorithm.cpp \
 	third_party/WebKit/Source/modules/crypto/SubtleCrypto.cpp \
 	third_party/WebKit/Source/modules/crypto/WorkerCrypto.cpp \
diff --git a/Source/modules/navigatorcontentutils/NavigatorContentUtilsClient.h b/Source/modules/navigatorcontentutils/NavigatorContentUtilsClient.h
index 26fa088..c592978 100644
--- a/Source/modules/navigatorcontentutils/NavigatorContentUtilsClient.h
+++ b/Source/modules/navigatorcontentutils/NavigatorContentUtilsClient.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef NavigatorContentUtilsClient_h
diff --git a/Source/modules/notifications/DOMWindowNotifications.cpp b/Source/modules/notifications/DOMWindowNotifications.cpp
index 9a64fb4..4d2f569 100644
--- a/Source/modules/notifications/DOMWindowNotifications.cpp
+++ b/Source/modules/notifications/DOMWindowNotifications.cpp
@@ -90,14 +90,14 @@
     Document* document = m_window->document();
     if (!document)
         return 0;
-    
+
     Page* page = document->page();
     if (!page)
         return 0;
 
     NotificationClient* provider = NotificationController::clientFrom(page);
-    if (provider) 
-        m_notificationCenter = NotificationCenter::create(document, provider);    
+    if (provider)
+        m_notificationCenter = NotificationCenter::create(document, provider);
 
     return m_notificationCenter.get();
 }
diff --git a/Source/modules/notifications/Notification.cpp b/Source/modules/notifications/Notification.cpp
index 2fa9a0e..68c009a 100644
--- a/Source/modules/notifications/Notification.cpp
+++ b/Source/modules/notifications/Notification.cpp
@@ -115,26 +115,26 @@
 {
     ScriptWrappable::init(this);
     m_notificationCenter = DOMWindowNotifications::webkitNotifications(toDocument(context)->domWindow());
-    
+
     ASSERT(m_notificationCenter->client());
     m_taskTimer->startOneShot(0);
 }
 #endif
 
-Notification::~Notification() 
+Notification::~Notification()
 {
 }
 
 #if ENABLE(LEGACY_NOTIFICATIONS)
 PassRefPtr<Notification> Notification::create(const KURL& url, ScriptExecutionContext* context, ExceptionState& es, PassRefPtr<NotificationCenter> provider)
-{ 
+{
     RefPtr<Notification> notification(adoptRef(new Notification(url, context, es, provider)));
     notification->suspendIfNeeded();
     return notification.release();
 }
 
 PassRefPtr<Notification> Notification::create(const String& title, const String& body, const String& iconURI, ScriptExecutionContext* context, ExceptionState& es, PassRefPtr<NotificationCenter> provider)
-{ 
+{
     RefPtr<Notification> notification(adoptRef(new Notification(title, body, iconURI, context, es, provider)));
     notification->suspendIfNeeded();
     return notification.release();
@@ -170,7 +170,7 @@
     return eventNames().interfaceForNotification;
 }
 
-void Notification::show() 
+void Notification::show()
 {
     // prevent double-showing
     if (m_state == Idle && m_notificationCenter->client()) {
@@ -281,7 +281,7 @@
     case NotificationClient::PermissionNotAllowed:
         return defaultPermission;
     }
-    
+
     ASSERT_NOT_REACHED();
     return deniedPermission;
 }
diff --git a/Source/modules/notifications/NotificationClient.h b/Source/modules/notifications/NotificationClient.h
index 3fd2dca..8e21247 100644
--- a/Source/modules/notifications/NotificationClient.h
+++ b/Source/modules/notifications/NotificationClient.h
@@ -62,7 +62,7 @@
     // When the user closes a page, or quits the client application, all of the page's
     // associated notifications are cleared.
     virtual void clearNotifications(ScriptExecutionContext*) { }
-    
+
     // Informs the presenter that a Notification object has been destroyed
     // (such as by a page transition). The presenter may continue showing
     // the notification, but must not attempt to call the event handlers.
diff --git a/Source/modules/notifications/NotificationController.cpp b/Source/modules/notifications/NotificationController.cpp
index fb53b30..87bae74 100644
--- a/Source/modules/notifications/NotificationController.cpp
+++ b/Source/modules/notifications/NotificationController.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/modules/notifications/NotificationController.h b/Source/modules/notifications/NotificationController.h
index a7bf28f..a0abd63 100644
--- a/Source/modules/notifications/NotificationController.h
+++ b/Source/modules/notifications/NotificationController.h
@@ -20,7 +20,7 @@
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
 
 #ifndef NotificationController_h
@@ -47,7 +47,7 @@
     static NotificationClient* clientFrom(Page*);
 
     NotificationClient* client() { return m_client; }
-    
+
 private:
     explicit NotificationController(NotificationClient*);
 
diff --git a/Source/modules/notifications/WorkerGlobalScopeNotifications.cpp b/Source/modules/notifications/WorkerGlobalScopeNotifications.cpp
index 074fde5..f181c28 100644
--- a/Source/modules/notifications/WorkerGlobalScopeNotifications.cpp
+++ b/Source/modules/notifications/WorkerGlobalScopeNotifications.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/modules/quota/StorageInfo.idl b/Source/modules/quota/StorageInfo.idl
index 87caad2..f21070e 100644
--- a/Source/modules/quota/StorageInfo.idl
+++ b/Source/modules/quota/StorageInfo.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/modules/quota/StorageQuota.idl b/Source/modules/quota/StorageQuota.idl
index bc008dd..1c8243e 100644
--- a/Source/modules/quota/StorageQuota.idl
+++ b/Source/modules/quota/StorageQuota.idl
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 [
diff --git a/Source/modules/speech/DOMWindowSpeechSynthesis.cpp b/Source/modules/speech/DOMWindowSpeechSynthesis.cpp
index 5bee66f..b018a81 100644
--- a/Source/modules/speech/DOMWindowSpeechSynthesis.cpp
+++ b/Source/modules/speech/DOMWindowSpeechSynthesis.cpp
@@ -35,7 +35,7 @@
 #include "wtf/PassRefPtr.h"
 
 namespace WebCore {
-    
+
 DOMWindowSpeechSynthesis::DOMWindowSpeechSynthesis(DOMWindow* window)
     : DOMWindowProperty(window->frame())
 {
@@ -73,5 +73,5 @@
         m_speechSynthesis = SpeechSynthesis::create();
     return m_speechSynthesis.get();
 }
-    
+
 } // namespace WebCore
diff --git a/Source/modules/speech/DOMWindowSpeechSynthesis.h b/Source/modules/speech/DOMWindowSpeechSynthesis.h
index d4a95ac..4f2b075 100644
--- a/Source/modules/speech/DOMWindowSpeechSynthesis.h
+++ b/Source/modules/speech/DOMWindowSpeechSynthesis.h
@@ -31,22 +31,22 @@
 #include "modules/speech/SpeechSynthesis.h"
 
 namespace WebCore {
-    
+
 class DOMWindow;
 
 class DOMWindowSpeechSynthesis : public Supplement<DOMWindow>, public DOMWindowProperty {
 public:
     virtual ~DOMWindowSpeechSynthesis();
-    
+
     static SpeechSynthesis* speechSynthesis(DOMWindow*);
     static DOMWindowSpeechSynthesis* from(DOMWindow*);
-    
+
 private:
     explicit DOMWindowSpeechSynthesis(DOMWindow*);
-    
+
     SpeechSynthesis* speechSynthesis();
     static const char* supplementName();
-    
+
     RefPtr<SpeechSynthesis> m_speechSynthesis;
 };
 
diff --git a/Source/modules/speech/SpeechSynthesis.cpp b/Source/modules/speech/SpeechSynthesis.cpp
index 3ba2447..925133e 100644
--- a/Source/modules/speech/SpeechSynthesis.cpp
+++ b/Source/modules/speech/SpeechSynthesis.cpp
@@ -61,7 +61,7 @@
 {
     if (m_voiceList.size())
         return m_voiceList;
-    
+
     // If the voiceList is empty, that's the cue to get the voices from the platform again.
     const Vector<RefPtr<PlatformSpeechSynthesisVoice> >& platformVoices = m_platformSpeechSynthesizer->voiceList();
     size_t voiceCount = platformVoices.size();
@@ -102,7 +102,7 @@
 void SpeechSynthesis::speak(SpeechSynthesisUtterance* utterance)
 {
     m_utteranceQueue.append(utterance);
-    
+
     // If the queue was empty, speak this immediately and add it to the queue.
     if (m_utteranceQueue.size() == 1)
         startSpeakingImmediately(utterance);
@@ -116,7 +116,7 @@
     m_utteranceQueue.clear();
     m_platformSpeechSynthesizer->cancel();
     current = 0;
-    
+
     // The platform should have called back immediately and cleared the current utterance.
     ASSERT(!m_currentSpeechUtterance);
 }
@@ -138,7 +138,7 @@
 {
     utterance->dispatchEvent(SpeechSynthesisEvent::create(type, charIndex, (currentTime() - utterance->startTime()), name));
 }
-    
+
 void SpeechSynthesis::handleSpeakingCompleted(SpeechSynthesisUtterance* utterance, bool errorOccurred)
 {
     ASSERT(utterance);
@@ -152,13 +152,13 @@
         ASSERT(firstUtterance == utterance);
         if (firstUtterance == utterance)
             m_utteranceQueue.removeFirst();
-        
+
         // Start the next job if there is one pending.
         if (!m_utteranceQueue.isEmpty())
             startSpeakingImmediately(m_utteranceQueue.first().get());
     }
 }
-    
+
 void SpeechSynthesis::boundaryEventOccurred(PassRefPtr<PlatformSpeechSynthesisUtterance> utterance, SpeechBoundary boundary, unsigned charIndex)
 {
     DEFINE_STATIC_LOCAL(const String, wordBoundaryString, (ASCIILiteral("word")));
@@ -181,7 +181,7 @@
     if (utterance->client())
         fireEvent(eventNames().startEvent, static_cast<SpeechSynthesisUtterance*>(utterance->client()), 0, String());
 }
-    
+
 void SpeechSynthesis::didPauseSpeaking(PassRefPtr<PlatformSpeechSynthesisUtterance> utterance)
 {
     m_isPaused = true;
@@ -201,7 +201,7 @@
     if (utterance->client())
         handleSpeakingCompleted(static_cast<SpeechSynthesisUtterance*>(utterance->client()), false);
 }
-    
+
 void SpeechSynthesis::speakingErrorOccurred(PassRefPtr<PlatformSpeechSynthesisUtterance> utterance)
 {
     if (utterance->client())
diff --git a/Source/modules/speech/SpeechSynthesis.h b/Source/modules/speech/SpeechSynthesis.h
index 3110d73..f1fba77 100644
--- a/Source/modules/speech/SpeechSynthesis.h
+++ b/Source/modules/speech/SpeechSynthesis.h
@@ -37,31 +37,31 @@
 #include "wtf/RefPtr.h"
 
 namespace WebCore {
-    
+
 class PlatformSpeechSynthesizerClient;
 class SpeechSynthesisVoice;
-    
+
 class SpeechSynthesis : public PlatformSpeechSynthesizerClient, public ScriptWrappable, public RefCounted<SpeechSynthesis> {
 public:
     static PassRefPtr<SpeechSynthesis> create();
-    
+
     bool pending() const;
     bool speaking() const;
     bool paused() const;
-    
+
     void speak(SpeechSynthesisUtterance*);
     void cancel();
     void pause();
     void resume();
-    
+
     const Vector<RefPtr<SpeechSynthesisVoice> >& getVoices();
-    
+
     // Used in testing to use a mock platform synthesizer
     void setPlatformSynthesizer(PassOwnPtr<PlatformSpeechSynthesizer>);
-    
+
 private:
     SpeechSynthesis();
-    
+
     // PlatformSpeechSynthesizerClient override methods.
     virtual void voicesDidChange() OVERRIDE;
     virtual void didStartSpeaking(PassRefPtr<PlatformSpeechSynthesisUtterance>) OVERRIDE;
@@ -74,14 +74,14 @@
     void startSpeakingImmediately(SpeechSynthesisUtterance*);
     void handleSpeakingCompleted(SpeechSynthesisUtterance*, bool errorOccurred);
     void fireEvent(const AtomicString& type, SpeechSynthesisUtterance*, unsigned long charIndex, const String& name);
-    
+
     OwnPtr<PlatformSpeechSynthesizer> m_platformSpeechSynthesizer;
     Vector<RefPtr<SpeechSynthesisVoice> > m_voiceList;
     SpeechSynthesisUtterance* m_currentSpeechUtterance;
     Deque<RefPtr<SpeechSynthesisUtterance> > m_utteranceQueue;
     bool m_isPaused;
 };
-    
+
 } // namespace WebCore
 
 #endif // SpeechSynthesisEvent_h
diff --git a/Source/modules/speech/SpeechSynthesis.idl b/Source/modules/speech/SpeechSynthesis.idl
index 4078c88..8cc867f 100644
--- a/Source/modules/speech/SpeechSynthesis.idl
+++ b/Source/modules/speech/SpeechSynthesis.idl
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 [
     NoInterfaceObject,
     EnabledAtRuntime=speechSynthesis
diff --git a/Source/modules/speech/SpeechSynthesisEvent.cpp b/Source/modules/speech/SpeechSynthesisEvent.cpp
index f4a3807..10a58a2 100644
--- a/Source/modules/speech/SpeechSynthesisEvent.cpp
+++ b/Source/modules/speech/SpeechSynthesisEvent.cpp
@@ -27,7 +27,7 @@
 #include "modules/speech/SpeechSynthesisEvent.h"
 
 namespace WebCore {
-    
+
 PassRefPtr<SpeechSynthesisEvent> SpeechSynthesisEvent::create()
 {
     return adoptRef(new SpeechSynthesisEvent());
@@ -51,5 +51,5 @@
 {
     ScriptWrappable::init(this);
 }
-    
+
 } // namespace WebCore
diff --git a/Source/modules/speech/SpeechSynthesisEvent.h b/Source/modules/speech/SpeechSynthesisEvent.h
index 51b43d6..fe69a39 100644
--- a/Source/modules/speech/SpeechSynthesisEvent.h
+++ b/Source/modules/speech/SpeechSynthesisEvent.h
@@ -30,18 +30,18 @@
 #include "wtf/PassRefPtr.h"
 
 namespace WebCore {
-    
+
 class SpeechSynthesisEvent : public Event {
 public:
     static PassRefPtr<SpeechSynthesisEvent> create();
     static PassRefPtr<SpeechSynthesisEvent> create(const AtomicString& type, unsigned long charIndex, float elapsedTime, const String& name);
-    
+
     unsigned long charIndex() const { return m_charIndex; }
     float elapsedTime() const { return m_elapsedTime; }
     const String& name() const { return m_name; }
-    
+
     virtual const AtomicString& interfaceName() const { return eventNames().interfaceForSpeechSynthesisEvent; }
-    
+
 private:
     SpeechSynthesisEvent();
     SpeechSynthesisEvent(const AtomicString& type, unsigned long charIndex, float elapsedTime, const String& name);
@@ -50,7 +50,7 @@
     float m_elapsedTime;
     String m_name;
 };
-    
+
 } // namespace WebCore
 
 #endif // SpeechSynthesisEvent_h
diff --git a/Source/modules/speech/SpeechSynthesisEvent.idl b/Source/modules/speech/SpeechSynthesisEvent.idl
index a0f896e..a36ef2b 100644
--- a/Source/modules/speech/SpeechSynthesisEvent.idl
+++ b/Source/modules/speech/SpeechSynthesisEvent.idl
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 [
     EnabledAtRuntime=speechSynthesis
 ] interface SpeechSynthesisEvent : Event {
diff --git a/Source/modules/speech/SpeechSynthesisUtterance.cpp b/Source/modules/speech/SpeechSynthesisUtterance.cpp
index c394a3c..b11d046 100644
--- a/Source/modules/speech/SpeechSynthesisUtterance.cpp
+++ b/Source/modules/speech/SpeechSynthesisUtterance.cpp
@@ -27,7 +27,7 @@
 #include "modules/speech/SpeechSynthesisUtterance.h"
 
 namespace WebCore {
-    
+
 PassRefPtr<SpeechSynthesisUtterance> SpeechSynthesisUtterance::create(ScriptExecutionContext* context, const String& text)
 {
     return adoptRef(new SpeechSynthesisUtterance(context, text));
@@ -45,12 +45,12 @@
 {
     m_platformUtterance->setClient(0);
 }
-    
+
 ScriptExecutionContext* SpeechSynthesisUtterance::scriptExecutionContext() const
 {
     return ContextLifecycleObserver::scriptExecutionContext();
-}    
-    
+}
+
 const AtomicString& SpeechSynthesisUtterance::interfaceName() const
 {
     return eventNames().interfaceForSpeechSynthesisUtterance;
@@ -66,7 +66,7 @@
     // Cache our own version of the SpeechSynthesisVoice so that we don't have to do some lookup
     // to go from the platform voice back to the speech synthesis voice in the read property.
     m_voice = voice;
-    
+
     if (voice)
         m_platformUtterance->setVoice(voice->platformVoice());
 }
diff --git a/Source/modules/speech/SpeechSynthesisUtterance.idl b/Source/modules/speech/SpeechSynthesisUtterance.idl
index 61a2a7c..916d51d 100644
--- a/Source/modules/speech/SpeechSynthesisUtterance.idl
+++ b/Source/modules/speech/SpeechSynthesisUtterance.idl
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 [
     EnabledAtRuntime=speechSynthesis,
     ConstructorCallWith=ScriptExecutionContext,
diff --git a/Source/modules/speech/SpeechSynthesisVoice.h b/Source/modules/speech/SpeechSynthesisVoice.h
index 1664c1d..6d83d74 100644
--- a/Source/modules/speech/SpeechSynthesisVoice.h
+++ b/Source/modules/speech/SpeechSynthesisVoice.h
@@ -38,18 +38,18 @@
 public:
     virtual ~SpeechSynthesisVoice() { }
     static PassRefPtr<SpeechSynthesisVoice> create(PassRefPtr<PlatformSpeechSynthesisVoice>);
-    
+
     const String& voiceURI() const { return m_platformVoice->voiceURI(); }
     const String& name() const { return m_platformVoice->name(); }
     const String& lang() const { return m_platformVoice->lang(); }
     bool localService() const { return m_platformVoice->localService(); }
     bool isDefault() const { return m_platformVoice->isDefault(); }
-    
+
     PlatformSpeechSynthesisVoice* platformVoice() const { return m_platformVoice.get(); }
 
 private:
     explicit SpeechSynthesisVoice(PassRefPtr<PlatformSpeechSynthesisVoice>);
-    
+
     RefPtr<PlatformSpeechSynthesisVoice> m_platformVoice;
 };
 
diff --git a/Source/modules/speech/SpeechSynthesisVoice.idl b/Source/modules/speech/SpeechSynthesisVoice.idl
index a377631..0a634e5 100644
--- a/Source/modules/speech/SpeechSynthesisVoice.idl
+++ b/Source/modules/speech/SpeechSynthesisVoice.idl
@@ -20,9 +20,9 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 [
     NoInterfaceObject,
     EnabledAtRuntime=speechSynthesis
diff --git a/Source/modules/webaudio/AnalyserNode.cpp b/Source/modules/webaudio/AnalyserNode.cpp
index 1a831b2..d844634 100644
--- a/Source/modules/webaudio/AnalyserNode.cpp
+++ b/Source/modules/webaudio/AnalyserNode.cpp
@@ -58,7 +58,7 @@
     }
 
     AudioBus* inputBus = input(0)->bus();
-    
+
     // Give the analyser the audio which is passing through this AudioNode.
     m_analyser.writeInput(inputBus, framesToProcess);
 
diff --git a/Source/modules/webaudio/AnalyserNode.h b/Source/modules/webaudio/AnalyserNode.h
index a4b5346..95f993f 100644
--- a/Source/modules/webaudio/AnalyserNode.h
+++ b/Source/modules/webaudio/AnalyserNode.h
@@ -37,11 +37,11 @@
 public:
     static PassRefPtr<AnalyserNode> create(AudioContext* context, float sampleRate)
     {
-        return adoptRef(new AnalyserNode(context, sampleRate));      
+        return adoptRef(new AnalyserNode(context, sampleRate));
     }
 
     virtual ~AnalyserNode();
-    
+
     // AudioNode
     virtual void process(size_t framesToProcess);
     virtual void reset();
diff --git a/Source/modules/webaudio/AsyncAudioDecoder.cpp b/Source/modules/webaudio/AsyncAudioDecoder.cpp
index 765d704..ee8219e 100644
--- a/Source/modules/webaudio/AsyncAudioDecoder.cpp
+++ b/Source/modules/webaudio/AsyncAudioDecoder.cpp
@@ -47,7 +47,7 @@
 AsyncAudioDecoder::~AsyncAudioDecoder()
 {
     m_queue.kill();
-    
+
     // Stop thread.
     waitForThreadCompletion(m_threadID);
     m_threadID = 0;
@@ -110,7 +110,7 @@
 
     // Do the actual decoding and invoke the callback.
     m_audioBuffer = AudioBuffer::createFromAudioFileData(m_audioData->data(), m_audioData->byteLength(), false, sampleRate());
-    
+
     // Decoding is finished, but we need to do the callbacks on the main thread.
     callOnMainThread(notifyCompleteDispatch, this);
 }
diff --git a/Source/modules/webaudio/AsyncAudioDecoder.h b/Source/modules/webaudio/AsyncAudioDecoder.h
index fedb105..ca663ea 100644
--- a/Source/modules/webaudio/AsyncAudioDecoder.h
+++ b/Source/modules/webaudio/AsyncAudioDecoder.h
@@ -56,7 +56,7 @@
         static PassOwnPtr<DecodingTask> create(ArrayBuffer* audioData, float sampleRate, PassRefPtr<AudioBufferCallback> successCallback, PassRefPtr<AudioBufferCallback> errorCallback);
 
         void decode();
-        
+
     private:
         DecodingTask(ArrayBuffer* audioData, float sampleRate, PassRefPtr<AudioBufferCallback> successCallback, PassRefPtr<AudioBufferCallback> errorCallback);
 
@@ -75,7 +75,7 @@
         RefPtr<AudioBufferCallback> m_errorCallback;
         RefPtr<AudioBuffer> m_audioBuffer;
     };
-    
+
     static void threadEntry(void* threadData);
     void runLoop();
 
diff --git a/Source/modules/webaudio/AudioBasicProcessorNode.cpp b/Source/modules/webaudio/AudioBasicProcessorNode.cpp
index 8a6dec1..a11f46b 100644
--- a/Source/modules/webaudio/AudioBasicProcessorNode.cpp
+++ b/Source/modules/webaudio/AudioBasicProcessorNode.cpp
@@ -70,7 +70,7 @@
 void AudioBasicProcessorNode::process(size_t framesToProcess)
 {
     AudioBus* destinationBus = output(0)->bus();
-    
+
     if (!isInitialized() || !processor() || processor()->numberOfChannels() != numberOfChannels())
         destinationBus->zero();
     else {
@@ -80,7 +80,7 @@
         if (!input(0)->isConnected())
             sourceBus->zero();
 
-        processor()->process(sourceBus, destinationBus, framesToProcess);  
+        processor()->process(sourceBus, destinationBus, framesToProcess);
     }
 }
 
@@ -103,7 +103,7 @@
 void AudioBasicProcessorNode::checkNumberOfChannelsForInput(AudioNodeInput* input)
 {
     ASSERT(context()->isAudioThread() && context()->isGraphOwner());
-    
+
     ASSERT(input == this->input(0));
     if (input != this->input(0))
         return;
@@ -113,12 +113,12 @@
         return;
 
     unsigned numberOfChannels = input->numberOfChannels();
-    
+
     if (isInitialized() && numberOfChannels != output(0)->numberOfChannels()) {
         // We're already initialized but the channel count has changed.
         uninitialize();
     }
-    
+
     if (!isInitialized()) {
         // This will propagate the channel count to any nodes connected further down the chain...
         output(0)->setNumberOfChannels(numberOfChannels);
diff --git a/Source/modules/webaudio/AudioBasicProcessorNode.h b/Source/modules/webaudio/AudioBasicProcessorNode.h
index 89297c3..eb94cac 100644
--- a/Source/modules/webaudio/AudioBasicProcessorNode.h
+++ b/Source/modules/webaudio/AudioBasicProcessorNode.h
@@ -35,7 +35,7 @@
 class AudioBus;
 class AudioNodeInput;
 class AudioProcessor;
-    
+
 // AudioBasicProcessorNode is an AudioNode with one input and one output where the input and output have the same number of channels.
 class AudioBasicProcessorNode : public AudioNode {
 public:
diff --git a/Source/modules/webaudio/AudioBuffer.cpp b/Source/modules/webaudio/AudioBuffer.cpp
index d01c8c6..1efd04e 100644
--- a/Source/modules/webaudio/AudioBuffer.cpp
+++ b/Source/modules/webaudio/AudioBuffer.cpp
@@ -44,7 +44,7 @@
 {
     if (sampleRate < 22050 || sampleRate > 96000 || numberOfChannels > AudioContext::maxNumberOfChannels() || !numberOfFrames)
         return 0;
-    
+
     return adoptRef(new AudioBuffer(numberOfChannels, numberOfFrames, sampleRate));
 }
 
diff --git a/Source/modules/webaudio/AudioBuffer.h b/Source/modules/webaudio/AudioBuffer.h
index 793cfb8..fa8cd29 100644
--- a/Source/modules/webaudio/AudioBuffer.h
+++ b/Source/modules/webaudio/AudioBuffer.h
@@ -67,7 +67,7 @@
     // releaseMemory() can be called when the AudioContext goes away, so we can release the memory earlier than when the garbage collection happens.
     // Careful! Only call this when the page unloads, after the AudioContext is no longer processing.
     void releaseMemory();
-    
+
 protected:
     AudioBuffer(unsigned numberOfChannels, size_t numberOfFrames, float sampleRate);
     explicit AudioBuffer(AudioBus*);
diff --git a/Source/modules/webaudio/AudioBufferSourceNode.cpp b/Source/modules/webaudio/AudioBufferSourceNode.cpp
index 7519331..ae13166 100644
--- a/Source/modules/webaudio/AudioBufferSourceNode.cpp
+++ b/Source/modules/webaudio/AudioBufferSourceNode.cpp
@@ -116,7 +116,7 @@
                              outputBus,
                              quantumFrameOffset,
                              bufferFramesToProcess);
-                             
+
         if (!bufferFramesToProcess) {
             outputBus->zero();
             return;
@@ -150,7 +150,7 @@
         if (framesToProcess > 0) {
             // We're not looping and we've reached the end of the sample data, but we still need to provide more output,
             // so generate silence for the remaining.
-            for (unsigned i = 0; i < numberOfChannels(); ++i) 
+            for (unsigned i = 0; i < numberOfChannels(); ++i)
                 memset(m_destinationChannels[i] + index, 0, sizeof(float) * framesToProcess);
         }
 
@@ -193,7 +193,7 @@
 
     // Potentially zero out initial frames leading up to the offset.
     if (destinationFrameOffset) {
-        for (unsigned i = 0; i < numberOfChannels; ++i) 
+        for (unsigned i = 0; i < numberOfChannels; ++i)
             memset(m_destinationChannels[i], 0, sizeof(float) * destinationFrameOffset);
     }
 
@@ -206,7 +206,7 @@
     // Avoid converting from time to sample-frames twice by computing
     // the grain end time first before computing the sample frame.
     unsigned endFrame = m_isGrain ? AudioUtilities::timeToSampleFrame(m_grainOffset + m_grainDuration, bufferSampleRate) : bufferLength;
-    
+
     // This is a HACK to allow for HRTF tail-time - avoids glitch at end.
     // FIXME: implement tailTime for each AudioNode for a more general solution to this problem.
     // https://bugs.webkit.org/show_bug.cgi?id=77224
@@ -262,7 +262,7 @@
             int framesThisTime = min(framesToProcess, framesToEnd);
             framesThisTime = max(0, framesThisTime);
 
-            for (unsigned i = 0; i < numberOfChannels; ++i) 
+            for (unsigned i = 0; i < numberOfChannels; ++i)
                 memcpy(destinationChannels[i] + writeIndex, sourceChannels[i] + readIndex, sizeof(float) * framesThisTime);
 
             writeIndex += framesThisTime;
@@ -338,13 +338,13 @@
 bool AudioBufferSourceNode::setBuffer(AudioBuffer* buffer)
 {
     ASSERT(isMainThread());
-    
+
     // The context must be locked since changing the buffer can re-configure the number of channels that are output.
     AudioContext::AutoLocker contextLocker(context());
-    
+
     // This synchronizes with process().
     MutexLocker processLocker(m_processLock);
-    
+
     if (buffer) {
         // Do any necesssary re-configuration to the buffer's number of channels.
         unsigned numberOfChannels = buffer->numberOfChannels();
@@ -357,13 +357,13 @@
         m_sourceChannels = adoptArrayPtr(new const float* [numberOfChannels]);
         m_destinationChannels = adoptArrayPtr(new float* [numberOfChannels]);
 
-        for (unsigned i = 0; i < numberOfChannels; ++i) 
+        for (unsigned i = 0; i < numberOfChannels; ++i)
             m_sourceChannels[i] = buffer->getChannelData(i)->data();
     }
 
     m_virtualReadIndex = 0;
     m_buffer = buffer;
-    
+
     return true;
 }
 
@@ -387,7 +387,7 @@
 
     if (!buffer())
         return;
-        
+
     // Do sanity checking of grain parameters versus buffer size.
     double bufferDuration = buffer()->duration();
 
@@ -406,13 +406,13 @@
 
     m_isGrain = true;
     m_startTime = when;
-    
+
     // We call timeToSampleFrame here since at playbackRate == 1 we don't want to go through linear interpolation
     // at a sub-sample position since it will degrade the quality.
     // When aligned to the sample-frame the playback will be identical to the PCM data stored in the buffer.
     // Since playbackRate == 1 is very common, it's worth considering quality.
     m_virtualReadIndex = AudioUtilities::timeToSampleFrame(m_grainOffset, buffer()->sampleRate());
-    
+
     m_playbackState = SCHEDULED_STATE;
 }
 
@@ -426,13 +426,13 @@
     double dopplerRate = 1.0;
     if (m_pannerNode)
         dopplerRate = m_pannerNode->dopplerRate();
-    
+
     // Incorporate buffer's sample-rate versus AudioContext's sample-rate.
     // Normally it's not an issue because buffers are loaded at the AudioContext's sample-rate, but we can handle it in any case.
     double sampleRateFactor = 1.0;
     if (buffer())
         sampleRateFactor = buffer()->sampleRate() / sampleRate();
-    
+
     double basePitchRate = playbackRate()->value();
 
     double totalRate = dopplerRate * sampleRateFactor * basePitchRate;
@@ -442,7 +442,7 @@
     if (!totalRate)
         totalRate = 1; // zero rate is considered illegal
     totalRate = min(MaxRate, totalRate);
-    
+
     bool isTotalRateValid = !std::isnan(totalRate) && !std::isinf(totalRate);
     ASSERT(isTotalRateValid);
     if (!isTotalRateValid)
diff --git a/Source/modules/webaudio/AudioContext.cpp b/Source/modules/webaudio/AudioContext.cpp
index 699a378..fde4c4b 100644
--- a/Source/modules/webaudio/AudioContext.cpp
+++ b/Source/modules/webaudio/AudioContext.cpp
@@ -82,7 +82,7 @@
 const unsigned MaxNodesToDeletePerQuantum = 10;
 
 namespace WebCore {
-    
+
 bool AudioContext::isSampleRateRangeGood(float sampleRate)
 {
     // FIXME: It would be nice if the minimum sample-rate could be less than 44.1KHz,
@@ -93,7 +93,7 @@
 // Don't allow more than this number of simultaneous AudioContexts talking to hardware.
 const unsigned MaxHardwareContexts = 4;
 unsigned AudioContext::s_hardwareContextCount = 0;
-    
+
 PassRefPtr<AudioContext> AudioContext::create(Document* document)
 {
     ASSERT(document);
@@ -199,7 +199,7 @@
                     // Each time provideInput() is called, a portion of the audio stream is rendered. Let's call this time period a "render quantum".
                     // NOTE: for now default AudioContext does not need an explicit startRendering() call from JavaScript.
                     // We may want to consider requiring it for symmetry with OfflineAudioContext.
-                    m_destinationNode->startRendering();                    
+                    m_destinationNode->startRendering();
                     ++s_hardwareContextCount;
                 }
 
@@ -259,7 +259,7 @@
 {
     if (!isInitialized())
         return false;
-    
+
     // Check with the HRTF spatialization system to see if it's finished loading.
     return m_hrtfDatabaseLoader->isLoaded();
 }
@@ -346,16 +346,16 @@
         es.throwDOMException(InvalidStateError);
         return 0;
     }
-        
+
     ASSERT(isMainThread());
     lazyInitialize();
-    
+
     // First check if this media element already has a source node.
     if (mediaElement->audioSourceNode()) {
         es.throwDOMException(InvalidStateError);
         return 0;
     }
-        
+
     RefPtr<MediaElementAudioSourceNode> node = MediaElementAudioSourceNode::create(this, mediaElement);
 
     mediaElement->setAudioSourceNode(node.get());
@@ -557,12 +557,12 @@
 PassRefPtr<PeriodicWave> AudioContext::createPeriodicWave(Float32Array* real, Float32Array* imag, ExceptionState& es)
 {
     ASSERT(isMainThread());
-    
+
     if (!real || !imag || (real->length() != imag->length())) {
         es.throwDOMException(SyntaxError);
         return 0;
     }
-    
+
     lazyInitialize();
     return PeriodicWave::create(sampleRate(), real, imag);
 }
@@ -587,7 +587,7 @@
 {
     ASSERT(isMainThread());
     AutoLocker locker(this);
-    
+
     node->ref(AudioNode::RefTypeConnection);
     m_referencedNodes.append(node);
 }
@@ -595,7 +595,7 @@
 void AudioContext::derefNode(AudioNode* node)
 {
     ASSERT(isGraphOwner());
-    
+
     node->deref(AudioNode::RefTypeConnection);
 
     for (unsigned i = 0; i < m_referencedNodes.size(); ++i) {
@@ -640,15 +640,15 @@
 
     // Try to catch cases of using try lock on main thread - it should use regular lock.
     ASSERT(isAudioThread || isAudioThreadFinished());
-    
+
     if (!isAudioThread) {
         // In release build treat tryLock() as lock() (since above ASSERT(isAudioThread) never fires) - this is the best we can do.
         lock(mustReleaseLock);
         return true;
     }
-    
+
     bool hasLock;
-    
+
     if (thisThread == m_graphOwnerThread) {
         // Thread already has the lock.
         hasLock = true;
@@ -656,13 +656,13 @@
     } else {
         // Don't already have the lock - try to acquire it.
         hasLock = m_contextGraphMutex.tryLock();
-        
+
         if (hasLock)
             m_graphOwnerThread = thisThread;
 
         mustReleaseLock = hasLock;
     }
-    
+
     return hasLock;
 }
 
@@ -693,7 +693,7 @@
 void AudioContext::handlePreRenderTasks()
 {
     ASSERT(isAudioThread());
- 
+
     // At the beginning of every render quantum, try to update the internal rendering graph state (from main thread changes).
     // It's OK if the tryLock() fails, we'll just take slightly longer to pick up the changes.
     bool mustReleaseLock;
@@ -712,7 +712,7 @@
 void AudioContext::handlePostRenderTasks()
 {
     ASSERT(isAudioThread());
- 
+
     // Must use a tryLock() here too.  Don't worry, the lock will very rarely be contended and this method is called frequently.
     // The worst that can happen is that there will be some nodes which will take slightly longer than usual to be deleted or removed
     // from the render graph (in which case they'll render silence).
@@ -746,7 +746,7 @@
         AudioNode* node = m_deferredFinishDerefList[i];
         node->finishDeref(AudioNode::RefTypeConnection);
     }
-    
+
     m_deferredFinishDerefList.clear();
 }
 
@@ -773,7 +773,7 @@
     if (!isGood)
         return;
 
-    // Make sure to call deleteMarkedNodes() on main thread.    
+    // Make sure to call deleteMarkedNodes() on main thread.
     if (m_nodesMarkedForDeletion.size() && !m_isDeletionScheduled) {
         m_nodesToDelete.append(m_nodesMarkedForDeletion);
         m_nodesMarkedForDeletion.clear();
@@ -830,7 +830,7 @@
 
 void AudioContext::markSummingJunctionDirty(AudioSummingJunction* summingJunction)
 {
-    ASSERT(isGraphOwner());    
+    ASSERT(isGraphOwner());
     m_dirtySummingJunctions.add(summingJunction);
 }
 
@@ -843,13 +843,13 @@
 
 void AudioContext::markAudioNodeOutputDirty(AudioNodeOutput* output)
 {
-    ASSERT(isGraphOwner());    
+    ASSERT(isGraphOwner());
     m_dirtyAudioNodeOutputs.add(output);
 }
 
 void AudioContext::handleDirtyAudioSummingJunctions()
 {
-    ASSERT(isGraphOwner());    
+    ASSERT(isGraphOwner());
 
     for (HashSet<AudioSummingJunction*>::iterator i = m_dirtySummingJunctions.begin(); i != m_dirtySummingJunctions.end(); ++i)
         (*i)->updateRenderingState();
@@ -859,7 +859,7 @@
 
 void AudioContext::handleDirtyAudioNodeOutputs()
 {
-    ASSERT(isGraphOwner());    
+    ASSERT(isGraphOwner());
 
     for (HashSet<AudioNodeOutput*>::iterator i = m_dirtyAudioNodeOutputs.begin(); i != m_dirtyAudioNodeOutputs.end(); ++i)
         (*i)->updateRenderingState();
@@ -933,7 +933,7 @@
     ASSERT(isMainThread());
     if (!isMainThread())
         return;
-        
+
     AudioBuffer* renderedBuffer = m_renderTarget.get();
 
     ASSERT(renderedBuffer);
diff --git a/Source/modules/webaudio/AudioContext.h b/Source/modules/webaudio/AudioContext.h
index 2b61727..09890ba 100644
--- a/Source/modules/webaudio/AudioContext.h
+++ b/Source/modules/webaudio/AudioContext.h
@@ -128,7 +128,7 @@
     PassRefPtr<DelayNode> createDelay(double maxDelayTime, ExceptionState&);
     PassRefPtr<PannerNode> createPanner();
     PassRefPtr<ConvolverNode> createConvolver();
-    PassRefPtr<DynamicsCompressorNode> createDynamicsCompressor();    
+    PassRefPtr<DynamicsCompressorNode> createDynamicsCompressor();
     PassRefPtr<AnalyserNode> createAnalyser();
     PassRefPtr<ScriptProcessorNode> createScriptProcessor(size_t bufferSize, ExceptionState&);
     PassRefPtr<ScriptProcessorNode> createScriptProcessor(size_t bufferSize, size_t numberOfInputChannels, ExceptionState&);
@@ -176,14 +176,14 @@
     //
     // Thread Safety and Graph Locking:
     //
-    
+
     void setAudioThread(ThreadIdentifier thread) { m_audioThread = thread; } // FIXME: check either not initialized or the same
     ThreadIdentifier audioThread() const { return m_audioThread; }
     bool isAudioThread() const;
 
     // Returns true only after the audio thread has been started and then shutdown.
     bool isAudioThreadFinished() { return m_isAudioThreadFinished; }
-    
+
     // mustReleaseLock is set to true if we acquired the lock in this method call and caller must unlock(), false if it was previously acquired.
     void lock(bool& mustReleaseLock);
 
@@ -207,7 +207,7 @@
             ASSERT(context);
             context->lock(m_mustReleaseLock);
         }
-        
+
         ~AutoLocker()
         {
             if (m_mustReleaseLock)
@@ -217,7 +217,7 @@
         AudioContext* m_context;
         bool m_mustReleaseLock;
     };
-    
+
     // In AudioNode::deref() a tryLock() is used for calling finishDeref(), but if it fails keep track here.
     void addDeferredFinishDeref(AudioNode*);
 
@@ -245,15 +245,15 @@
 
     void startRendering();
     void fireCompletionEvent();
-    
+
     static unsigned s_hardwareContextCount;
 
 protected:
     explicit AudioContext(Document*);
     AudioContext(Document*, unsigned numberOfChannels, size_t numberOfFrames, float sampleRate);
-    
+
     static bool isSampleRateRangeGood(float sampleRate);
-    
+
 private:
     void constructCommon();
 
@@ -268,7 +268,7 @@
 
     void scheduleNodeDeletion();
     static void deleteMarkedNodesDispatch(void* userData);
-    
+
     bool m_isInitialized;
     bool m_isAudioThreadFinished;
 
@@ -324,10 +324,10 @@
     Mutex m_contextGraphMutex;
     volatile ThreadIdentifier m_audioThread;
     volatile ThreadIdentifier m_graphOwnerThread; // if the lock is held then this is the thread which owns it, otherwise == UndefinedThreadIdentifier
-    
+
     // Only accessed in the audio thread.
     Vector<AudioNode*> m_deferredFinishDerefList;
-    
+
     // HRTF Database loader
     RefPtr<HRTFDatabaseLoader> m_hrtfDatabaseLoader;
 
@@ -337,12 +337,12 @@
     EventTargetData m_eventTargetData;
 
     RefPtr<AudioBuffer> m_renderTarget;
-    
+
     bool m_isOfflineContext;
 
     AsyncAudioDecoder m_audioDecoder;
 
-    // This is considering 32 is large enough for multiple channels audio. 
+    // This is considering 32 is large enough for multiple channels audio.
     // It is somewhat arbitrary and could be increased if necessary.
     enum { MaxNumberOfChannels = 32 };
 
diff --git a/Source/modules/webaudio/AudioContext.idl b/Source/modules/webaudio/AudioContext.idl
index 940e0d5..c1d63ec 100644
--- a/Source/modules/webaudio/AudioContext.idl
+++ b/Source/modules/webaudio/AudioContext.idl
@@ -43,7 +43,7 @@
 
     // Number of AudioBufferSourceNodes that are currently playing.
     readonly attribute unsigned long activeSourceCount;
-    
+
     [RaisesException] AudioBuffer createBuffer(unsigned long numberOfChannels, unsigned long numberOfFrames, float sampleRate);
     [RaisesException] AudioBuffer createBuffer(ArrayBuffer? buffer, boolean mixToMono);
 
diff --git a/Source/modules/webaudio/AudioDestinationNode.cpp b/Source/modules/webaudio/AudioDestinationNode.cpp
index b989c33..6c7984f 100644
--- a/Source/modules/webaudio/AudioDestinationNode.cpp
+++ b/Source/modules/webaudio/AudioDestinationNode.cpp
@@ -35,7 +35,7 @@
 #include "modules/webaudio/AudioNodeOutput.h"
 
 namespace WebCore {
-    
+
 AudioDestinationNode::AudioDestinationNode(AudioContext* context, float sampleRate)
     : AudioNode(context, sampleRate)
     , m_currentSampleFrame(0)
@@ -57,9 +57,9 @@
     // since they can very seriously hurt performance.
     // This will take care of all AudioNodes because they all process within this scope.
     DenormalDisabler denormalDisabler;
-    
+
     context()->setAudioThread(currentThread());
-    
+
     if (!context()->isRunnable()) {
         destinationBus->zero();
         return;
@@ -75,7 +75,7 @@
     // This will cause the node(s) connected to us to process, which in turn will pull on their input(s),
     // all the way backwards through the rendering graph.
     AudioBus* renderedBus = input(0)->pull(destinationBus, numberOfFrames);
-    
+
     if (!renderedBus)
         destinationBus->zero();
     else if (renderedBus != destinationBus) {
@@ -88,7 +88,7 @@
 
     // Let the context take care of any business at the end of each render quantum.
     context()->handlePostRenderTasks();
-    
+
     // Advance current sample-frame.
     m_currentSampleFrame += numberOfFrames;
 }
diff --git a/Source/modules/webaudio/AudioDestinationNode.h b/Source/modules/webaudio/AudioDestinationNode.h
index 5334210..7a3dd36 100644
--- a/Source/modules/webaudio/AudioDestinationNode.h
+++ b/Source/modules/webaudio/AudioDestinationNode.h
@@ -35,16 +35,16 @@
 
 class AudioBus;
 class AudioContext;
-    
+
 class AudioDestinationNode : public AudioNode, public AudioIOCallback {
 public:
     AudioDestinationNode(AudioContext*, float sampleRate);
     virtual ~AudioDestinationNode();
-    
-    // AudioNode   
+
+    // AudioNode
     virtual void process(size_t) { }; // we're pulled by hardware so this is never called
     virtual void reset() { m_currentSampleFrame = 0; };
-    
+
     // The audio hardware calls render() to get the next render quantum of audio into destinationBus.
     // It will optionally give us local/live audio input in sourceBus (if it's not 0).
     virtual void render(AudioBus* sourceBus, AudioBus* destinationBus, size_t numberOfFrames);
@@ -60,7 +60,7 @@
     virtual void startRendering() = 0;
 
     AudioSourceProvider* localAudioInputProvider() { return &m_localAudioInputProvider; }
-    
+
 protected:
     // LocalAudioInputProvider allows us to expose an AudioSourceProvider for local/live audio input.
     // If there is local/live audio input, we call set() with the audio input data every render quantum.
diff --git a/Source/modules/webaudio/AudioNode.cpp b/Source/modules/webaudio/AudioNode.cpp
index c1cd449..cc88387 100644
--- a/Source/modules/webaudio/AudioNode.cpp
+++ b/Source/modules/webaudio/AudioNode.cpp
@@ -126,7 +126,7 @@
 
 void AudioNode::connect(AudioNode* destination, unsigned outputIndex, unsigned inputIndex, ExceptionState& es)
 {
-    ASSERT(isMainThread()); 
+    ASSERT(isMainThread());
     AudioContext::AutoLocker locker(context());
 
     if (!destination) {
@@ -342,7 +342,7 @@
 void AudioNode::pullInputs(size_t framesToProcess)
 {
     ASSERT(context()->isAudioThread());
-    
+
     // Process all of the AudioNodes connected to our inputs.
     for (unsigned i = 0; i < m_inputs.size(); ++i)
         input(i)->pull(0, framesToProcess);
@@ -437,7 +437,7 @@
     // In the case of the audio thread, we must use a tryLock to avoid glitches.
     bool hasLock = false;
     bool mustReleaseLock = false;
-    
+
     if (context()->isAudioThread()) {
         // Real-time audio thread must not contend lock (to avoid glitches).
         hasLock = context()->tryLock(mustReleaseLock);
@@ -445,7 +445,7 @@
         context()->lock(mustReleaseLock);
         hasLock = true;
     }
-    
+
     if (hasLock) {
         // This is where the real deref work happens.
         finishDeref(refType);
@@ -469,7 +469,7 @@
 void AudioNode::finishDeref(RefType refType)
 {
     ASSERT(context()->isGraphOwner());
-    
+
     switch (refType) {
     case RefTypeNormal:
         ASSERT(m_normalRefCount > 0);
@@ -482,7 +482,7 @@
     default:
         ASSERT_NOT_REACHED();
     }
-    
+
 #if DEBUG_AUDIONODE_REFERENCES
     fprintf(stderr, "%p: %d: AudioNode::deref(%d) %d %d\n", this, nodeType(), refType, m_normalRefCount, m_connectionRefCount);
 #endif
diff --git a/Source/modules/webaudio/AudioNodeInput.cpp b/Source/modules/webaudio/AudioNodeInput.cpp
index 12ecea4..6a31554 100644
--- a/Source/modules/webaudio/AudioNodeInput.cpp
+++ b/Source/modules/webaudio/AudioNodeInput.cpp
@@ -34,7 +34,7 @@
 #include <algorithm>
 
 using namespace std;
- 
+
 namespace WebCore {
 
 AudioNodeInput::AudioNodeInput(AudioNode* node)
@@ -48,7 +48,7 @@
 void AudioNodeInput::connect(AudioNodeOutput* output)
 {
     ASSERT(context()->isGraphOwner());
-    
+
     ASSERT(output && node());
     if (!output || !node())
         return;
@@ -56,7 +56,7 @@
     // Check if we're already connected to this output.
     if (m_outputs.contains(output))
         return;
-        
+
     output->addInput(this);
     m_outputs.add(output);
     changedOutputs();
@@ -81,7 +81,7 @@
         node()->deref(AudioNode::RefTypeConnection); // Note: it's important to return immediately after all deref() calls since the node may be deleted.
         return;
     }
-    
+
     // Otherwise, try to disconnect from disabled connections.
     if (m_disabledOutputs.contains(output)) {
         m_disabledOutputs.remove(output);
@@ -102,7 +102,7 @@
         return;
 
     ASSERT(m_outputs.contains(output));
-    
+
     m_disabledOutputs.add(output);
     m_outputs.remove(output);
     changedOutputs();
@@ -198,7 +198,7 @@
     ASSERT(summingBus);
     if (!summingBus)
         return;
-        
+
     summingBus->zero();
 
     AudioBus::ChannelInterpretation interpretation = node()->internalChannelInterpretation();
@@ -237,7 +237,7 @@
 
     // Handle multiple connections case.
     sumAllConnections(internalSummingBus, framesToProcess);
-    
+
     return internalSummingBus;
 }
 
diff --git a/Source/modules/webaudio/AudioNodeInput.h b/Source/modules/webaudio/AudioNodeInput.h
index 8986ae2..0d9ed8c 100644
--- a/Source/modules/webaudio/AudioNodeInput.h
+++ b/Source/modules/webaudio/AudioNodeInput.h
@@ -71,14 +71,14 @@
     // bus() contains the rendered audio after pull() has been called for each time quantum.
     // Called from context's audio thread.
     AudioBus* bus();
-    
+
     // updateInternalBus() updates m_internalSummingBus appropriately for the number of channels.
     // This must be called when we own the context's graph lock in the audio thread at the very start or end of the render quantum.
     void updateInternalBus();
 
     // The number of channels of the connection with the largest number of channels.
-    unsigned numberOfChannels() const;        
-    
+    unsigned numberOfChannels() const;
+
 private:
     AudioNode* m_node;
 
diff --git a/Source/modules/webaudio/AudioNodeOutput.cpp b/Source/modules/webaudio/AudioNodeOutput.cpp
index 1eb9678..01625dd 100644
--- a/Source/modules/webaudio/AudioNodeOutput.cpp
+++ b/Source/modules/webaudio/AudioNodeOutput.cpp
@@ -95,7 +95,7 @@
 void AudioNodeOutput::propagateChannelCount()
 {
     ASSERT(context()->isAudioThread() && context()->isGraphOwner());
-    
+
     if (isChannelCountKnown()) {
         // Announce to any nodes we're connected to that we changed our channel count for its input.
         for (InputsIterator i = m_inputs.begin(); i != m_inputs.end(); ++i) {
@@ -110,13 +110,13 @@
 {
     ASSERT(context()->isAudioThread());
     ASSERT(m_renderingFanOutCount > 0 || m_renderingParamFanOutCount > 0);
-    
+
     // Causes our AudioNode to process if it hasn't already for this render quantum.
     // We try to do in-place processing (using inPlaceBus) if at all possible,
     // but we can't process in-place if we're connected to more than one input (fan-out > 1).
     // In this case pull() is called multiple times per rendering quantum, and the processIfNecessary() call below will
-    // cause our node to process() only the first time, caching the output in m_internalOutputBus for subsequent calls.    
-    
+    // cause our node to process() only the first time, caching the output in m_internalOutputBus for subsequent calls.
+
     m_isInPlace = inPlaceBus && inPlaceBus->numberOfChannels() == numberOfChannels() && (m_renderingFanOutCount + m_renderingParamFanOutCount) == 1;
 
     m_inPlaceBus = m_isInPlace ? inPlaceBus : 0;
@@ -178,7 +178,7 @@
 void AudioNodeOutput::disconnectAllInputs()
 {
     ASSERT(context()->isGraphOwner());
-    
+
     // AudioNodeInput::disconnect() changes m_inputs by calling removeInput().
     while (!m_inputs.isEmpty()) {
         AudioNodeInput* input = *m_inputs.begin();
diff --git a/Source/modules/webaudio/AudioNodeOutput.h b/Source/modules/webaudio/AudioNodeOutput.h
index 5d0f973..e0f82c6 100644
--- a/Source/modules/webaudio/AudioNodeOutput.h
+++ b/Source/modules/webaudio/AudioNodeOutput.h
@@ -48,7 +48,7 @@
     // Can be called from any thread.
     AudioNode* node() const { return m_node; }
     AudioContext* context() { return m_node->context(); }
-    
+
     // Causes our AudioNode to process if it hasn't already for this render quantum.
     // It returns the bus containing the processed audio for this output, returning inPlaceBus if in-place processing was possible.
     // Called from context's audio thread.
@@ -84,13 +84,13 @@
     // updateRenderingState() is called in the audio thread at the start or end of the render quantum to handle any recent changes to the graph state.
     // It must be called with the context's graph lock.
     void updateRenderingState();
-    
+
 private:
     AudioNode* m_node;
 
     friend class AudioNodeInput;
     friend class AudioParam;
-    
+
     // These are called from AudioNodeInput.
     // They must be called with the context's graph lock.
     void addInput(AudioNodeInput*);
@@ -128,7 +128,7 @@
     // The main thread sets m_desiredNumberOfChannels which will later get picked up in the audio thread in updateNumberOfChannels().
     unsigned m_numberOfChannels;
     unsigned m_desiredNumberOfChannels;
-    
+
     // m_internalBus and m_inPlaceBus must only be changed in the audio thread with the context's graph lock (or constructor).
     RefPtr<AudioBus> m_internalBus;
     RefPtr<AudioBus> m_inPlaceBus;
diff --git a/Source/modules/webaudio/AudioParam.cpp b/Source/modules/webaudio/AudioParam.cpp
index 52013f7..6555e8e 100644
--- a/Source/modules/webaudio/AudioParam.cpp
+++ b/Source/modules/webaudio/AudioParam.cpp
@@ -74,12 +74,12 @@
     bool useTimelineValue = false;
     if (context())
         m_value = m_timeline.valueForContextTime(context(), narrowPrecisionToFloat(m_value), useTimelineValue);
-    
+
     if (m_smoothedValue == m_value) {
         // Smoothed value has already approached and snapped to value.
         return true;
     }
-    
+
     if (useTimelineValue)
         m_smoothedValue = m_value;
     else {
diff --git a/Source/modules/webaudio/AudioParam.h b/Source/modules/webaudio/AudioParam.h
index 7a673e4..b6c30cb 100644
--- a/Source/modules/webaudio/AudioParam.h
+++ b/Source/modules/webaudio/AudioParam.h
@@ -85,7 +85,7 @@
     void resetSmoothedValue() { m_smoothedValue = m_value; }
     void setSmoothingConstant(double k) { m_smoothingConstant = k; }
 
-    // Parameter automation.    
+    // Parameter automation.
     void setValueAtTime(float value, double time) { m_timeline.setValueAtTime(value, time); }
     void linearRampToValueAtTime(float value, double time) { m_timeline.linearRampToValueAtTime(value, time); }
     void exponentialRampToValueAtTime(float value, double time) { m_timeline.exponentialRampToValueAtTime(value, time); }
@@ -94,7 +94,7 @@
     void cancelScheduledValues(double startTime) { m_timeline.cancelScheduledValues(startTime); }
 
     bool hasSampleAccurateValues() { return m_timeline.hasValues() || numberOfRenderingConnections(); }
-    
+
     // Calculates numberOfValues parameter values starting at the context's current time.
     // Must be called in the context's render thread.
     void calculateSampleAccurateValues(float* values, unsigned numberOfValues);
@@ -133,7 +133,7 @@
     // Smoothing (de-zippering)
     double m_smoothedValue;
     double m_smoothingConstant;
-    
+
     AudioParamTimeline m_timeline;
 };
 
diff --git a/Source/modules/webaudio/AudioParamTimeline.cpp b/Source/modules/webaudio/AudioParamTimeline.cpp
index 610a7d3..e2c14c4 100644
--- a/Source/modules/webaudio/AudioParamTimeline.cpp
+++ b/Source/modules/webaudio/AudioParamTimeline.cpp
@@ -81,9 +81,9 @@
     ASSERT(isValid);
     if (!isValid)
         return;
-        
+
     MutexLocker locker(m_eventsLock);
-    
+
     unsigned i = 0;
     double insertTime = event.time();
     for (i = 0; i < m_events.size(); ++i) {
diff --git a/Source/modules/webaudio/AudioProcessingEvent.h b/Source/modules/webaudio/AudioProcessingEvent.h
index db7ed74..d844c79 100644
--- a/Source/modules/webaudio/AudioProcessingEvent.h
+++ b/Source/modules/webaudio/AudioProcessingEvent.h
@@ -33,12 +33,12 @@
 namespace WebCore {
 
 class AudioBuffer;
-    
+
 class AudioProcessingEvent : public Event {
 public:
     static PassRefPtr<AudioProcessingEvent> create();
     static PassRefPtr<AudioProcessingEvent> create(PassRefPtr<AudioBuffer> inputBuffer, PassRefPtr<AudioBuffer> outputBuffer);
-    
+
     virtual ~AudioProcessingEvent();
 
     AudioBuffer* inputBuffer() { return m_inputBuffer.get(); }
diff --git a/Source/modules/webaudio/AudioProcessingEvent.idl b/Source/modules/webaudio/AudioProcessingEvent.idl
index 297ec00..ed8f90a 100644
--- a/Source/modules/webaudio/AudioProcessingEvent.idl
+++ b/Source/modules/webaudio/AudioProcessingEvent.idl
@@ -26,5 +26,5 @@
     Conditional=WEB_AUDIO
 ] interface AudioProcessingEvent : Event {
     readonly attribute AudioBuffer inputBuffer;
-    readonly attribute AudioBuffer outputBuffer; 
+    readonly attribute AudioBuffer outputBuffer;
 };
diff --git a/Source/modules/webaudio/AudioScheduledSourceNode.cpp b/Source/modules/webaudio/AudioScheduledSourceNode.cpp
index e048b2b..db216bc 100644
--- a/Source/modules/webaudio/AudioScheduledSourceNode.cpp
+++ b/Source/modules/webaudio/AudioScheduledSourceNode.cpp
@@ -149,7 +149,7 @@
     ASSERT(isMainThread());
     if (!(m_playbackState == SCHEDULED_STATE || m_playbackState == PLAYING_STATE))
         return;
-    
+
     when = max(0.0, when);
     m_endTime = when;
 }
diff --git a/Source/modules/webaudio/AudioScheduledSourceNode.h b/Source/modules/webaudio/AudioScheduledSourceNode.h
index d6ccb2c..552fa0e 100644
--- a/Source/modules/webaudio/AudioScheduledSourceNode.h
+++ b/Source/modules/webaudio/AudioScheduledSourceNode.h
@@ -53,7 +53,7 @@
         PLAYING_STATE = 2,
         FINISHED_STATE = 3
     };
-    
+
     AudioScheduledSourceNode(AudioContext*, float sampleRate);
 
     // Scheduling.
diff --git a/Source/modules/webaudio/BiquadDSPKernel.cpp b/Source/modules/webaudio/BiquadDSPKernel.cpp
index c9d52f4..1d4668b 100644
--- a/Source/modules/webaudio/BiquadDSPKernel.cpp
+++ b/Source/modules/webaudio/BiquadDSPKernel.cpp
@@ -36,7 +36,7 @@
 namespace WebCore {
 
 // FIXME: As a recursive linear filter, depending on its parameters, a biquad filter can have
-// an infinite tailTime. In practice, Biquad filters do not usually (except for very high resonance values) 
+// an infinite tailTime. In practice, Biquad filters do not usually (except for very high resonance values)
 // have a tailTime of longer than approx. 200ms. This value could possibly be calculated based on the
 // settings of the Biquad.
 static const double MaxBiquadDelayTime = 0.2;
@@ -114,7 +114,7 @@
 void BiquadDSPKernel::process(const float* source, float* destination, size_t framesToProcess)
 {
     ASSERT(source && destination && biquadProcessor());
-    
+
     // Recompute filter coefficients if any of the parameters have changed.
     // FIXME: as an optimization, implement a way that a Biquad object can simply copy its internal filter coefficients from another Biquad object.
     // Then re-factor this code to only run for the first BiquadDSPKernel of each BiquadProcessor.
diff --git a/Source/modules/webaudio/BiquadDSPKernel.h b/Source/modules/webaudio/BiquadDSPKernel.h
index 7ce741a..74a8d07 100644
--- a/Source/modules/webaudio/BiquadDSPKernel.h
+++ b/Source/modules/webaudio/BiquadDSPKernel.h
@@ -36,12 +36,12 @@
 // BiquadDSPKernel is an AudioDSPKernel and is responsible for filtering one channel of a BiquadProcessor using a Biquad object.
 
 class BiquadDSPKernel : public AudioDSPKernel {
-public:  
+public:
     explicit BiquadDSPKernel(BiquadProcessor* processor)
     : AudioDSPKernel(processor)
     {
     }
-    
+
     // AudioDSPKernel
     virtual void process(const float* source, float* dest, size_t framesToProcess);
     virtual void reset() { m_biquad.reset(); }
diff --git a/Source/modules/webaudio/BiquadFilterNode.cpp b/Source/modules/webaudio/BiquadFilterNode.cpp
index e45638a..1aa8f4a 100644
--- a/Source/modules/webaudio/BiquadFilterNode.cpp
+++ b/Source/modules/webaudio/BiquadFilterNode.cpp
@@ -90,7 +90,7 @@
 {
     if (type > BiquadProcessor::Allpass)
         return false;
-    
+
     biquadProcessor()->setType(static_cast<BiquadProcessor::FilterType>(type));
     return true;
 }
@@ -101,7 +101,7 @@
 {
     if (!frequencyHz || !magResponse || !phaseResponse)
         return;
-    
+
     int n = std::min(frequencyHz->length(),
                      std::min(magResponse->length(), phaseResponse->length()));
 
diff --git a/Source/modules/webaudio/BiquadFilterNode.h b/Source/modules/webaudio/BiquadFilterNode.h
index 0777c3a..0ba4681 100644
--- a/Source/modules/webaudio/BiquadFilterNode.h
+++ b/Source/modules/webaudio/BiquadFilterNode.h
@@ -31,7 +31,7 @@
 namespace WebCore {
 
 class AudioParam;
-    
+
 class BiquadFilterNode : public AudioBasicProcessorNode {
 public:
     // These must be defined as in the .idl file and must match those in the BiquadProcessor class.
@@ -48,7 +48,7 @@
 
     static PassRefPtr<BiquadFilterNode> create(AudioContext* context, float sampleRate)
     {
-        return adoptRef(new BiquadFilterNode(context, sampleRate));      
+        return adoptRef(new BiquadFilterNode(context, sampleRate));
     }
 
     String type() const;
diff --git a/Source/modules/webaudio/BiquadFilterNode.idl b/Source/modules/webaudio/BiquadFilterNode.idl
index d65a901..3101652 100644
--- a/Source/modules/webaudio/BiquadFilterNode.idl
+++ b/Source/modules/webaudio/BiquadFilterNode.idl
@@ -36,7 +36,7 @@
     const unsigned short ALLPASS = 7;
 
     [CustomSetter] attribute DOMString type;
-    
+
     readonly attribute AudioParam frequency; // in Hertz
     readonly attribute AudioParam detune; // in Cents
     readonly attribute AudioParam Q; // Quality factor
diff --git a/Source/modules/webaudio/BiquadProcessor.cpp b/Source/modules/webaudio/BiquadProcessor.cpp
index 8b3ae8f..2655abe 100644
--- a/Source/modules/webaudio/BiquadProcessor.cpp
+++ b/Source/modules/webaudio/BiquadProcessor.cpp
@@ -31,7 +31,7 @@
 #include "modules/webaudio/BiquadDSPKernel.h"
 
 namespace WebCore {
-    
+
 BiquadProcessor::BiquadProcessor(AudioContext* context, float sampleRate, size_t numberOfChannels, bool autoInitialize)
     : AudioDSPKernelProcessor(sampleRate, numberOfChannels)
     , m_type(LowPass)
@@ -72,7 +72,7 @@
     // The BiquadDSPKernel objects rely on this value to see if they need to re-compute their internal filter coefficients.
     m_filterCoefficientsDirty = false;
     m_hasSampleAccurateValues = false;
-    
+
     if (m_parameter1->hasSampleAccurateValues() || m_parameter2->hasSampleAccurateValues() || m_parameter3->hasSampleAccurateValues() || m_parameter4->hasSampleAccurateValues()) {
         m_filterCoefficientsDirty = true;
         m_hasSampleAccurateValues = true;
@@ -103,9 +103,9 @@
         destination->zero();
         return;
     }
-        
+
     checkForDirtyCoefficients();
-            
+
     // For each channel of our input, process using the corresponding BiquadDSPKernel into the output channel.
     for (unsigned i = 0; i < m_kernels.size(); ++i)
         m_kernels[i]->process(source->channel(i)->data(), destination->channel(i)->mutableData(), framesToProcess);
@@ -127,7 +127,7 @@
     // Compute the frequency response on a separate temporary kernel
     // to avoid interfering with the processing running in the audio
     // thread on the main kernels.
-    
+
     OwnPtr<BiquadDSPKernel> responseKernel = adoptPtr(new BiquadDSPKernel(this));
 
     responseKernel->getFrequencyResponse(nFrequencies, frequencyHz, magResponse, phaseResponse);
diff --git a/Source/modules/webaudio/BiquadProcessor.h b/Source/modules/webaudio/BiquadProcessor.h
index d0f5622..15b2d1a 100644
--- a/Source/modules/webaudio/BiquadProcessor.h
+++ b/Source/modules/webaudio/BiquadProcessor.h
@@ -52,9 +52,9 @@
     BiquadProcessor(AudioContext*, float sampleRate, size_t numberOfChannels, bool autoInitialize);
 
     virtual ~BiquadProcessor();
-    
+
     virtual PassOwnPtr<AudioDSPKernel> createKernel();
-        
+
     virtual void process(const AudioBus* source, AudioBus* destination, size_t framesToProcess);
 
     // Get the magnitude and phase response of the filter at the given
@@ -65,7 +65,7 @@
                               float* phaseResponse);
 
     void checkForDirtyCoefficients();
-    
+
     bool filterCoefficientsDirty() const { return m_filterCoefficientsDirty; }
     bool hasSampleAccurateValues() const { return m_hasSampleAccurateValues; }
 
diff --git a/Source/modules/webaudio/ChannelMergerNode.cpp b/Source/modules/webaudio/ChannelMergerNode.cpp
index b57c729..43b86b4 100644
--- a/Source/modules/webaudio/ChannelMergerNode.cpp
+++ b/Source/modules/webaudio/ChannelMergerNode.cpp
@@ -44,8 +44,8 @@
 {
     if (!numberOfInputs || numberOfInputs > AudioContext::maxNumberOfChannels())
         return 0;
-    
-    return adoptRef(new ChannelMergerNode(context, sampleRate, numberOfInputs));      
+
+    return adoptRef(new ChannelMergerNode(context, sampleRate, numberOfInputs));
 }
 
 ChannelMergerNode::ChannelMergerNode(AudioContext* context, float sampleRate, unsigned numberOfInputs)
@@ -73,25 +73,25 @@
         output->bus()->zero();
         return;
     }
-    
+
     // Merge all the channels from all the inputs into one output.
     unsigned outputChannelIndex = 0;
     for (unsigned i = 0; i < numberOfInputs(); ++i) {
         AudioNodeInput* input = this->input(i);
         if (input->isConnected()) {
             unsigned numberOfInputChannels = input->bus()->numberOfChannels();
-            
+
             // Merge channels from this particular input.
             for (unsigned j = 0; j < numberOfInputChannels; ++j) {
                 AudioChannel* inputChannel = input->bus()->channel(j);
                 AudioChannel* outputChannel = output->bus()->channel(outputChannelIndex);
                 outputChannel->copyFrom(inputChannel);
-                
+
                 ++outputChannelIndex;
             }
         }
     }
-    
+
     ASSERT(outputChannelIndex == output->numberOfChannels());
 }
 
diff --git a/Source/modules/webaudio/ChannelMergerNode.h b/Source/modules/webaudio/ChannelMergerNode.h
index db5a702..a15b6fa 100644
--- a/Source/modules/webaudio/ChannelMergerNode.h
+++ b/Source/modules/webaudio/ChannelMergerNode.h
@@ -35,7 +35,7 @@
 namespace WebCore {
 
 class AudioContext;
-    
+
 class ChannelMergerNode : public AudioNode {
 public:
     static PassRefPtr<ChannelMergerNode> create(AudioContext*, float sampleRate, unsigned numberOfInputs);
diff --git a/Source/modules/webaudio/ChannelSplitterNode.cpp b/Source/modules/webaudio/ChannelSplitterNode.cpp
index 7d0b267..4009ba4 100644
--- a/Source/modules/webaudio/ChannelSplitterNode.cpp
+++ b/Source/modules/webaudio/ChannelSplitterNode.cpp
@@ -33,13 +33,13 @@
 #include "modules/webaudio/AudioNodeOutput.h"
 
 namespace WebCore {
-    
+
 PassRefPtr<ChannelSplitterNode> ChannelSplitterNode::create(AudioContext* context, float sampleRate, unsigned numberOfOutputs)
 {
     if (!numberOfOutputs || numberOfOutputs > AudioContext::maxNumberOfChannels())
         return 0;
 
-    return adoptRef(new ChannelSplitterNode(context, sampleRate, numberOfOutputs));      
+    return adoptRef(new ChannelSplitterNode(context, sampleRate, numberOfOutputs));
 }
 
 ChannelSplitterNode::ChannelSplitterNode(AudioContext* context, float sampleRate, unsigned numberOfOutputs)
@@ -61,13 +61,13 @@
     AudioBus* source = input(0)->bus();
     ASSERT(source);
     ASSERT_UNUSED(framesToProcess, framesToProcess == source->length());
-    
+
     unsigned numberOfSourceChannels = source->numberOfChannels();
-    
+
     for (unsigned i = 0; i < numberOfOutputs(); ++i) {
         AudioBus* destination = output(i)->bus();
         ASSERT(destination);
-        
+
         if (i < numberOfSourceChannels) {
             // Split the channel out if it exists in the source.
             // It would be nice to avoid the copy and simply pass along pointers, but this becomes extremely difficult with fanout and fanin.
diff --git a/Source/modules/webaudio/ChannelSplitterNode.h b/Source/modules/webaudio/ChannelSplitterNode.h
index 8345650..c3c4a66 100644
--- a/Source/modules/webaudio/ChannelSplitterNode.h
+++ b/Source/modules/webaudio/ChannelSplitterNode.h
@@ -31,7 +31,7 @@
 namespace WebCore {
 
 class AudioContext;
-    
+
 class ChannelSplitterNode : public AudioNode {
 public:
     static PassRefPtr<ChannelSplitterNode> create(AudioContext*, float sampleRate, unsigned numberOfOutputs);
diff --git a/Source/modules/webaudio/ConvolverNode.cpp b/Source/modules/webaudio/ConvolverNode.cpp
index 9359a03..36a473f 100644
--- a/Source/modules/webaudio/ConvolverNode.cpp
+++ b/Source/modules/webaudio/ConvolverNode.cpp
@@ -101,7 +101,7 @@
 {
     if (isInitialized())
         return;
-        
+
     AudioNode::initialize();
 }
 
@@ -117,7 +117,7 @@
 void ConvolverNode::setBuffer(AudioBuffer* buffer)
 {
     ASSERT(isMainThread());
-    
+
     if (!buffer)
         return;
 
diff --git a/Source/modules/webaudio/ConvolverNode.h b/Source/modules/webaudio/ConvolverNode.h
index b1c123b..6431853 100644
--- a/Source/modules/webaudio/ConvolverNode.h
+++ b/Source/modules/webaudio/ConvolverNode.h
@@ -34,16 +34,16 @@
 
 class AudioBuffer;
 class Reverb;
-    
+
 class ConvolverNode : public AudioNode {
 public:
     static PassRefPtr<ConvolverNode> create(AudioContext* context, float sampleRate)
     {
-        return adoptRef(new ConvolverNode(context, sampleRate));      
+        return adoptRef(new ConvolverNode(context, sampleRate));
     }
-    
+
     virtual ~ConvolverNode();
-    
+
     // AudioNode
     virtual void process(size_t framesToProcess);
     virtual void reset();
diff --git a/Source/modules/webaudio/DefaultAudioDestinationNode.cpp b/Source/modules/webaudio/DefaultAudioDestinationNode.cpp
index 615d100..ce6a45d 100644
--- a/Source/modules/webaudio/DefaultAudioDestinationNode.cpp
+++ b/Source/modules/webaudio/DefaultAudioDestinationNode.cpp
@@ -36,7 +36,7 @@
 const unsigned EnabledInputChannels = 2;
 
 namespace WebCore {
-    
+
 DefaultAudioDestinationNode::DefaultAudioDestinationNode(AudioContext* context)
     : AudioDestinationNode(context, AudioDestination::hardwareSampleRate())
     , m_numberOfInputChannels(0)
@@ -54,7 +54,7 @@
 
 void DefaultAudioDestinationNode::initialize()
 {
-    ASSERT(isMainThread()); 
+    ASSERT(isMainThread());
     if (isInitialized())
         return;
 
@@ -64,7 +64,7 @@
 
 void DefaultAudioDestinationNode::uninitialize()
 {
-    ASSERT(isMainThread()); 
+    ASSERT(isMainThread());
     if (!isInitialized())
         return;
 
@@ -78,7 +78,7 @@
 {
     float hardwareSampleRate = AudioDestination::hardwareSampleRate();
     LOG(WebAudio, ">>>> hardwareSampleRate = %f\n", hardwareSampleRate);
-    
+
     m_destination = AudioDestination::create(*this, m_inputDeviceId, m_numberOfInputChannels, channelCount(), hardwareSampleRate);
 }
 
diff --git a/Source/modules/webaudio/DefaultAudioDestinationNode.h b/Source/modules/webaudio/DefaultAudioDestinationNode.h
index 0f19597..08f9c88 100644
--- a/Source/modules/webaudio/DefaultAudioDestinationNode.h
+++ b/Source/modules/webaudio/DefaultAudioDestinationNode.h
@@ -38,12 +38,12 @@
 public:
     static PassRefPtr<DefaultAudioDestinationNode> create(AudioContext* context)
     {
-        return adoptRef(new DefaultAudioDestinationNode(context));     
+        return adoptRef(new DefaultAudioDestinationNode(context));
     }
 
     virtual ~DefaultAudioDestinationNode();
-    
-    // AudioNode   
+
+    // AudioNode
     virtual void initialize() OVERRIDE;
     virtual void uninitialize() OVERRIDE;
     virtual void setChannelCount(unsigned long, ExceptionState&) OVERRIDE;
@@ -52,7 +52,7 @@
     virtual void enableInput(const String& inputDeviceId) OVERRIDE;
     virtual void startRendering() OVERRIDE;
     virtual unsigned long maxChannelCount() const OVERRIDE;
-    
+
 private:
     explicit DefaultAudioDestinationNode(AudioContext*);
     void createDestination();
diff --git a/Source/modules/webaudio/DelayDSPKernel.h b/Source/modules/webaudio/DelayDSPKernel.h
index 374642c..ca23f0e 100644
--- a/Source/modules/webaudio/DelayDSPKernel.h
+++ b/Source/modules/webaudio/DelayDSPKernel.h
@@ -32,17 +32,17 @@
 namespace WebCore {
 
 class DelayProcessor;
-    
+
 class DelayDSPKernel : public AudioDSPKernel {
-public:  
+public:
     explicit DelayDSPKernel(DelayProcessor*);
     DelayDSPKernel(double maxDelayTime, float sampleRate);
-    
+
     virtual void process(const float* source, float* destination, size_t framesToProcess);
     virtual void reset();
-    
+
     double maxDelayTime() const { return m_maxDelayTime; }
-    
+
     void setDelayFrames(double numberOfFrames) { m_desiredDelayFrames = numberOfFrames; }
 
     virtual double tailTime() const OVERRIDE;
diff --git a/Source/modules/webaudio/DelayProcessor.cpp b/Source/modules/webaudio/DelayProcessor.cpp
index 442e0b5..0788a87 100644
--- a/Source/modules/webaudio/DelayProcessor.cpp
+++ b/Source/modules/webaudio/DelayProcessor.cpp
@@ -27,7 +27,7 @@
 #if ENABLE(WEB_AUDIO)
 
 #include "modules/webaudio/DelayProcessor.h"
- 
+
 #include "modules/webaudio/DelayDSPKernel.h"
 
 namespace WebCore {
diff --git a/Source/modules/webaudio/DelayProcessor.h b/Source/modules/webaudio/DelayProcessor.h
index 9d94670..9e62a4c 100644
--- a/Source/modules/webaudio/DelayProcessor.h
+++ b/Source/modules/webaudio/DelayProcessor.h
@@ -34,14 +34,14 @@
 namespace WebCore {
 
 class AudioDSPKernel;
-    
+
 class DelayProcessor : public AudioDSPKernelProcessor {
 public:
     DelayProcessor(AudioContext*, float sampleRate, unsigned numberOfChannels, double maxDelayTime);
     virtual ~DelayProcessor();
-    
+
     virtual PassOwnPtr<AudioDSPKernel> createKernel();
-        
+
     AudioParam* delayTime() const { return m_delayTime.get(); }
 
     double maxDelayTime() { return m_maxDelayTime; }
diff --git a/Source/modules/webaudio/DynamicsCompressorNode.cpp b/Source/modules/webaudio/DynamicsCompressorNode.cpp
index 57ef964..b04c44b 100644
--- a/Source/modules/webaudio/DynamicsCompressorNode.cpp
+++ b/Source/modules/webaudio/DynamicsCompressorNode.cpp
@@ -95,7 +95,7 @@
     if (isInitialized())
         return;
 
-    AudioNode::initialize();    
+    AudioNode::initialize();
     m_dynamicsCompressor = adoptPtr(new DynamicsCompressor(sampleRate(), defaultNumberOfOutputChannels));
 }
 
diff --git a/Source/modules/webaudio/GainNode.cpp b/Source/modules/webaudio/GainNode.cpp
index 8959f59..10f0caf 100644
--- a/Source/modules/webaudio/GainNode.cpp
+++ b/Source/modules/webaudio/GainNode.cpp
@@ -97,8 +97,8 @@
     ASSERT(input && input == this->input(0));
     if (input != this->input(0))
         return;
-        
-    unsigned numberOfChannels = input->numberOfChannels();    
+
+    unsigned numberOfChannels = input->numberOfChannels();
 
     if (isInitialized() && numberOfChannels != output(0)->numberOfChannels()) {
         // We're already initialized but the channel count has changed.
diff --git a/Source/modules/webaudio/MediaElementAudioSourceNode.h b/Source/modules/webaudio/MediaElementAudioSourceNode.h
index 30c247b..9848511 100644
--- a/Source/modules/webaudio/MediaElementAudioSourceNode.h
+++ b/Source/modules/webaudio/MediaElementAudioSourceNode.h
@@ -38,22 +38,22 @@
 namespace WebCore {
 
 class AudioContext;
-    
+
 class MediaElementAudioSourceNode : public AudioSourceNode, public AudioSourceProviderClient {
 public:
     static PassRefPtr<MediaElementAudioSourceNode> create(AudioContext*, HTMLMediaElement*);
 
     virtual ~MediaElementAudioSourceNode();
 
-    HTMLMediaElement* mediaElement() { return m_mediaElement.get(); }                                        
+    HTMLMediaElement* mediaElement() { return m_mediaElement.get(); }
 
     // AudioNode
     virtual void process(size_t framesToProcess);
     virtual void reset();
-    
+
     // AudioSourceProviderClient
     virtual void setFormat(size_t numberOfChannels, float sampleRate);
-    
+
     void lock();
     void unlock();
 
diff --git a/Source/modules/webaudio/MediaStreamAudioDestinationNode.h b/Source/modules/webaudio/MediaStreamAudioDestinationNode.h
index 8d006fb..f98e04a 100644
--- a/Source/modules/webaudio/MediaStreamAudioDestinationNode.h
+++ b/Source/modules/webaudio/MediaStreamAudioDestinationNode.h
@@ -48,7 +48,7 @@
     // AudioNode.
     virtual void process(size_t framesToProcess);
     virtual void reset();
-    
+
     MediaStreamSource* mediaStreamSource();
 
 private:
diff --git a/Source/modules/webaudio/OfflineAudioCompletionEvent.h b/Source/modules/webaudio/OfflineAudioCompletionEvent.h
index f0a2852..639744e 100644
--- a/Source/modules/webaudio/OfflineAudioCompletionEvent.h
+++ b/Source/modules/webaudio/OfflineAudioCompletionEvent.h
@@ -33,12 +33,12 @@
 namespace WebCore {
 
 class AudioBuffer;
-    
+
 class OfflineAudioCompletionEvent : public Event {
 public:
     static PassRefPtr<OfflineAudioCompletionEvent> create();
     static PassRefPtr<OfflineAudioCompletionEvent> create(PassRefPtr<AudioBuffer> renderedBuffer);
-    
+
     virtual ~OfflineAudioCompletionEvent();
 
     AudioBuffer* renderedBuffer() { return m_renderedBuffer.get(); }
diff --git a/Source/modules/webaudio/OfflineAudioDestinationNode.cpp b/Source/modules/webaudio/OfflineAudioDestinationNode.cpp
index 4cc77ff..f5b5745 100644
--- a/Source/modules/webaudio/OfflineAudioDestinationNode.cpp
+++ b/Source/modules/webaudio/OfflineAudioDestinationNode.cpp
@@ -35,10 +35,10 @@
 #include "wtf/MainThread.h"
 
 using namespace std;
- 
+
 namespace WebCore {
-    
-const size_t renderQuantumSize = 128;    
+
+const size_t renderQuantumSize = 128;
 
 OfflineAudioDestinationNode::OfflineAudioDestinationNode(AudioContext* context, AudioBuffer* renderTarget)
     : AudioDestinationNode(context, renderTarget->sampleRate())
@@ -81,7 +81,7 @@
     ASSERT(m_renderTarget.get());
     if (!m_renderTarget.get())
         return;
-    
+
     if (!m_startedRendering) {
         m_startedRendering = true;
         ref(); // See corresponding deref() call in notifyCompleteDispatch().
@@ -103,26 +103,26 @@
     ASSERT(m_renderBus.get());
     if (!m_renderBus.get())
         return;
-    
+
     bool channelsMatch = m_renderBus->numberOfChannels() == m_renderTarget->numberOfChannels();
     ASSERT(channelsMatch);
     if (!channelsMatch)
         return;
-        
+
     bool isRenderBusAllocated = m_renderBus->length() >= renderQuantumSize;
     ASSERT(isRenderBusAllocated);
     if (!isRenderBusAllocated)
         return;
-        
+
     // Synchronize with HRTFDatabaseLoader.
     // The database must be loaded before we can proceed.
     HRTFDatabaseLoader* loader = context()->hrtfDatabaseLoader();
     ASSERT(loader);
     if (!loader)
         return;
-    
+
     loader->waitForLoaderThreadCompletion();
-        
+
     // Break up the render target into smaller "render quantize" sized pieces.
     // Render until we're finished.
     size_t framesToProcess = m_renderTarget->length();
@@ -132,19 +132,19 @@
     while (framesToProcess > 0) {
         // Render one render quantum.
         render(0, m_renderBus.get(), renderQuantumSize);
-        
+
         size_t framesAvailableToCopy = min(framesToProcess, renderQuantumSize);
-        
+
         for (unsigned channelIndex = 0; channelIndex < numberOfChannels; ++channelIndex) {
             const float* source = m_renderBus->channel(channelIndex)->data();
             float* destination = m_renderTarget->getChannelData(channelIndex)->data();
             memcpy(destination + n, source, sizeof(float) * framesAvailableToCopy);
         }
-        
+
         n += framesAvailableToCopy;
         framesToProcess -= framesAvailableToCopy;
     }
-    
+
     // Our work is done. Let the AudioContext know.
     callOnMainThread(notifyCompleteDispatch, this);
 }
diff --git a/Source/modules/webaudio/OfflineAudioDestinationNode.h b/Source/modules/webaudio/OfflineAudioDestinationNode.h
index 5cfa2a8..d69c9ce 100644
--- a/Source/modules/webaudio/OfflineAudioDestinationNode.h
+++ b/Source/modules/webaudio/OfflineAudioDestinationNode.h
@@ -35,17 +35,17 @@
 
 class AudioBus;
 class AudioContext;
-    
+
 class OfflineAudioDestinationNode : public AudioDestinationNode {
 public:
     static PassRefPtr<OfflineAudioDestinationNode> create(AudioContext* context, AudioBuffer* renderTarget)
     {
-        return adoptRef(new OfflineAudioDestinationNode(context, renderTarget));     
+        return adoptRef(new OfflineAudioDestinationNode(context, renderTarget));
     }
 
     virtual ~OfflineAudioDestinationNode();
-    
-    // AudioNode   
+
+    // AudioNode
     virtual void initialize() OVERRIDE;
     virtual void uninitialize() OVERRIDE;
 
@@ -60,16 +60,16 @@
 
     // This AudioNode renders into this AudioBuffer.
     RefPtr<AudioBuffer> m_renderTarget;
-    
+
     // Temporary AudioBus for each render quantum.
     RefPtr<AudioBus> m_renderBus;
-    
+
     // Rendering thread.
     volatile ThreadIdentifier m_renderThread;
     bool m_startedRendering;
     static void offlineRenderEntry(void* threadData);
     void offlineRender();
-    
+
     // For completion callback on main thread.
     static void notifyCompleteDispatch(void* userData);
     void notifyComplete();
diff --git a/Source/modules/webaudio/OscillatorNode.h b/Source/modules/webaudio/OscillatorNode.h
index 51701eb..f8ea1e7 100644
--- a/Source/modules/webaudio/OscillatorNode.h
+++ b/Source/modules/webaudio/OscillatorNode.h
@@ -55,7 +55,7 @@
     static PassRefPtr<OscillatorNode> create(AudioContext*, float sampleRate);
 
     virtual ~OscillatorNode();
-    
+
     // AudioNode
     virtual void process(size_t framesToProcess);
     virtual void reset();
@@ -80,7 +80,7 @@
 
     // One of the waveform types defined in the enum.
     unsigned short m_type;
-    
+
     // Frequency value in Hertz.
     RefPtr<AudioParam> m_frequency;
 
@@ -99,7 +99,7 @@
     // Stores sample-accurate values calculated according to frequency and detune.
     AudioFloatArray m_phaseIncrements;
     AudioFloatArray m_detuneValues;
-    
+
     RefPtr<PeriodicWave> m_periodicWave;
 
     // Cache the wave tables for different waveform types, except CUSTOM.
diff --git a/Source/modules/webaudio/PannerNode.cpp b/Source/modules/webaudio/PannerNode.cpp
index b40b806..6e52b4a 100644
--- a/Source/modules/webaudio/PannerNode.cpp
+++ b/Source/modules/webaudio/PannerNode.cpp
@@ -89,7 +89,7 @@
         // Recursively go through all nodes connected to us.
         notifyAudioSourcesConnectedToNode(this);
     }
-    
+
     AudioNode::pullInputs(framesToProcess);
 }
 
@@ -124,7 +124,7 @@
         // Snap to desired gain at the beginning.
         if (m_lastGain == -1.0)
             m_lastGain = totalGain;
-        
+
         // Apply gain in-place with de-zippering.
         destination->copyWithGainFrom(*destination, &m_lastGain, totalGain);
     } else {
@@ -154,7 +154,7 @@
 {
     if (!isInitialized())
         return;
-        
+
     m_panner.clear();
     AudioNode::uninitialize();
 }
@@ -212,7 +212,7 @@
     default:
         return false;
     }
-    
+
     return true;
 }
 
@@ -363,7 +363,7 @@
             if (dopplerShift > 16.0)
                 dopplerShift = 16.0;
             else if (dopplerShift < 0.125)
-                dopplerShift = 0.125;   
+                dopplerShift = 0.125;
         }
     }
 
@@ -376,12 +376,12 @@
 
     double listenerDistance = m_position.distanceTo(listenerPosition);
     double distanceGain = m_distanceEffect.gain(listenerDistance);
-    
+
     m_distanceGain->setValue(static_cast<float>(distanceGain));
 
     // FIXME: could optimize by caching coneGain
     double coneGain = m_coneEffect.gain(m_position, m_orientation, listenerPosition);
-    
+
     m_coneGain->setValue(static_cast<float>(coneGain));
 
     return float(distanceGain * coneGain);
@@ -392,12 +392,12 @@
     ASSERT(node);
     if (!node)
         return;
-        
+
     // First check if this node is an AudioBufferSourceNode. If so, let it know about us so that doppler shift pitch can be taken into account.
     if (node->nodeType() == NodeTypeAudioBufferSource) {
         AudioBufferSourceNode* bufferSourceNode = static_cast<AudioBufferSourceNode*>(node);
         bufferSourceNode->setPannerNode(this);
-    } else {    
+    } else {
         // Go through all inputs to this node.
         for (unsigned i = 0; i < node->numberOfInputs(); ++i) {
             AudioNodeInput* input = node->input(i);
diff --git a/Source/modules/webaudio/PannerNode.idl b/Source/modules/webaudio/PannerNode.idl
index d20a2e6..899b8a9 100644
--- a/Source/modules/webaudio/PannerNode.idl
+++ b/Source/modules/webaudio/PannerNode.idl
@@ -36,10 +36,10 @@
     const unsigned short INVERSE_DISTANCE = 1;
     const unsigned short EXPONENTIAL_DISTANCE = 2;
 
-    // Default model for stereo is HRTF 
+    // Default model for stereo is HRTF
     [CustomSetter] attribute DOMString panningModel;
 
-    // Uses a 3D cartesian coordinate system 
+    // Uses a 3D cartesian coordinate system
     void setPosition(float x, float y, float z);
     void setOrientation(float x, float y, float z);
     void setVelocity(float x, float y, float z);
diff --git a/Source/modules/webaudio/RealtimeAnalyser.cpp b/Source/modules/webaudio/RealtimeAnalyser.cpp
index c8a700e..8ec3243 100644
--- a/Source/modules/webaudio/RealtimeAnalyser.cpp
+++ b/Source/modules/webaudio/RealtimeAnalyser.cpp
@@ -105,13 +105,13 @@
     ASSERT(isBusGood);
     if (!isBusGood)
         return;
-        
+
     // FIXME : allow to work with non-FFTSize divisible chunking
     bool isDestinationGood = m_writeIndex < m_inputBuffer.size() && m_writeIndex + framesToProcess <= m_inputBuffer.size();
     ASSERT(isDestinationGood);
     if (!isDestinationGood)
-        return;    
-    
+        return;
+
     // Perform real-time analysis
     const float* source = bus->channel(0)->data();
     float* dest = m_inputBuffer.data() + m_writeIndex;
@@ -140,13 +140,13 @@
 void applyWindow(float* p, size_t n)
 {
     ASSERT(isMainThread());
-    
+
     // Blackman window
     double alpha = 0.16;
     double a0 = 0.5 * (1 - alpha);
     double a1 = 0.5;
     double a2 = 0.5 * alpha;
-    
+
     for (unsigned i = 0; i < n; ++i) {
         double x = static_cast<double>(i) / static_cast<double>(n);
         double window = a0 - a1 * cos(2 * piDouble * x) + a2 * cos(4 * piDouble * x);
@@ -157,12 +157,12 @@
 } // namespace
 
 void RealtimeAnalyser::doFFTAnalysis()
-{    
+{
     ASSERT(isMainThread());
 
     // Unroll the input buffer into a temporary buffer, where we'll apply an analysis window followed by an FFT.
     size_t fftSize = this->fftSize();
-    
+
     AudioFloatArray temporaryBuffer(fftSize);
     float* inputBuffer = m_inputBuffer.data();
     float* tempP = temporaryBuffer.data();
@@ -172,13 +172,13 @@
     if (writeIndex < fftSize) {
         memcpy(tempP, inputBuffer + writeIndex - fftSize + InputBufferSize, sizeof(*tempP) * (fftSize - writeIndex));
         memcpy(tempP + fftSize - writeIndex, inputBuffer, sizeof(*tempP) * writeIndex);
-    } else 
+    } else
         memcpy(tempP, inputBuffer + writeIndex - fftSize, sizeof(*tempP) * fftSize);
 
-    
+
     // Window the input samples.
     applyWindow(tempP, fftSize);
-    
+
     // Do the analysis.
     m_analysisFrame->doFFT(tempP);
 
@@ -187,21 +187,21 @@
 
     // Blow away the packed nyquist component.
     imagP[0] = 0;
-    
+
     // Normalize so than an input sine wave at 0dBfs registers as 0dBfs (undo FFT scaling factor).
     const double magnitudeScale = 1.0 / DefaultFFTSize;
 
     // A value of 0 does no averaging with the previous result.  Larger values produce slower, but smoother changes.
     double k = m_smoothingTimeConstant;
     k = max(0.0, k);
-    k = min(1.0, k);    
-    
+    k = min(1.0, k);
+
     // Convert the analysis data from complex to magnitude and average with the previous result.
     float* destination = magnitudeBuffer().data();
     size_t n = magnitudeBuffer().size();
     for (size_t i = 0; i < n; ++i) {
         Complex c(realP[i], imagP[i]);
-        double scalarMagnitude = abs(c) * magnitudeScale;        
+        double scalarMagnitude = abs(c) * magnitudeScale;
         destination[i] = float(k * destination[i] + (1 - k) * scalarMagnitude);
     }
 }
@@ -212,9 +212,9 @@
 
     if (!destinationArray)
         return;
-        
+
     doFFTAnalysis();
-    
+
     // Convert from linear magnitude to floating-point decibels.
     const double minDecibels = m_minDecibels;
     unsigned sourceLength = magnitudeBuffer().size();
@@ -222,7 +222,7 @@
     if (len > 0) {
         const float* source = magnitudeBuffer().data();
         float* destination = destinationArray->data();
-        
+
         for (unsigned i = 0; i < len; ++i) {
             float linearValue = source[i];
             double dbMag = !linearValue ? minDecibels : AudioUtilities::linearToDecibels(linearValue);
@@ -237,9 +237,9 @@
 
     if (!destinationArray)
         return;
-        
+
     doFFTAnalysis();
-    
+
     // Convert from linear magnitude to unsigned-byte decibels.
     unsigned sourceLength = magnitudeBuffer().size();
     size_t len = min(sourceLength, destinationArray->length());
@@ -248,12 +248,12 @@
         const double minDecibels = m_minDecibels;
 
         const float* source = magnitudeBuffer().data();
-        unsigned char* destination = destinationArray->data();        
-        
+        unsigned char* destination = destinationArray->data();
+
         for (unsigned i = 0; i < len; ++i) {
             float linearValue = source[i];
             double dbMag = !linearValue ? minDecibels : AudioUtilities::linearToDecibels(linearValue);
-            
+
             // The range m_minDecibels to m_maxDecibels will be scaled to byte values from 0 to UCHAR_MAX.
             double scaledValue = UCHAR_MAX * (dbMag - minDecibels) * rangeScaleFactor;
 
@@ -262,7 +262,7 @@
                 scaledValue = 0;
             if (scaledValue > UCHAR_MAX)
                 scaledValue = UCHAR_MAX;
-            
+
             destination[i] = static_cast<unsigned char>(scaledValue);
         }
     }
@@ -274,7 +274,7 @@
 
     if (!destinationArray)
         return;
-        
+
     unsigned fftSize = this->fftSize();
     size_t len = min(fftSize, destinationArray->length());
     if (len > 0) {
@@ -283,9 +283,9 @@
         if (!isInputBufferGood)
             return;
 
-        float* inputBuffer = m_inputBuffer.data();        
+        float* inputBuffer = m_inputBuffer.data();
         unsigned char* destination = destinationArray->data();
-        
+
         unsigned writeIndex = m_writeIndex;
 
         for (unsigned i = 0; i < len; ++i) {
@@ -300,7 +300,7 @@
                 scaledValue = 0;
             if (scaledValue > UCHAR_MAX)
                 scaledValue = UCHAR_MAX;
-            
+
             destination[i] = static_cast<unsigned char>(scaledValue);
         }
     }
diff --git a/Source/modules/webaudio/RealtimeAnalyser.h b/Source/modules/webaudio/RealtimeAnalyser.h
index 49c1df8..363d74e 100644
--- a/Source/modules/webaudio/RealtimeAnalyser.h
+++ b/Source/modules/webaudio/RealtimeAnalyser.h
@@ -40,7 +40,7 @@
 public:
     RealtimeAnalyser();
     virtual ~RealtimeAnalyser();
-    
+
     void reset();
 
     size_t fftSize() const { return m_fftSize; }
@@ -77,19 +77,19 @@
     // The audio thread writes the input audio here.
     AudioFloatArray m_inputBuffer;
     unsigned m_writeIndex;
-    
+
     size_t m_fftSize;
     OwnPtr<FFTFrame> m_analysisFrame;
     void doFFTAnalysis();
-    
+
     // doFFTAnalysis() stores the floating-point magnitude analysis data here.
     AudioFloatArray m_magnitudeBuffer;
     AudioFloatArray& magnitudeBuffer() { return m_magnitudeBuffer; }
 
     // A value between 0 and 1 which averages the previous version of m_magnitudeBuffer with the current analysis magnitude data.
-    double m_smoothingTimeConstant;    
+    double m_smoothingTimeConstant;
 
-    // The range used when converting when using getByteFrequencyData(). 
+    // The range used when converting when using getByteFrequencyData().
     double m_minDecibels;
     double m_maxDecibels;
 };
diff --git a/Source/modules/webaudio/ScriptProcessorNode.cpp b/Source/modules/webaudio/ScriptProcessorNode.cpp
index d47ce54..316c39d 100644
--- a/Source/modules/webaudio/ScriptProcessorNode.cpp
+++ b/Source/modules/webaudio/ScriptProcessorNode.cpp
@@ -139,7 +139,7 @@
     // Additionally, there is a double-buffering for input and output which is exposed directly to JavaScript (see inputBuffer and outputBuffer below).
     // This node is the producer for inputBuffer and the consumer for outputBuffer.
     // The JavaScript code is the consumer of inputBuffer and the producer for outputBuffer.
-    
+
     // Get input and output busses.
     AudioBus* inputBus = this->input(0)->bus();
     AudioBus* outputBus = this->output(0)->bus();
@@ -150,7 +150,7 @@
     ASSERT(isDoubleBufferIndexGood);
     if (!isDoubleBufferIndexGood)
         return;
-    
+
     AudioBuffer* inputBuffer = m_inputBuffers[doubleBufferIndex].get();
     AudioBuffer* outputBuffer = m_outputBuffers[doubleBufferIndex].get();
 
@@ -185,7 +185,7 @@
     if (numberOfInputChannels)
         m_internalInputBus->copyFrom(*inputBus);
 
-    // Copy from the output buffer to the output. 
+    // Copy from the output buffer to the output.
     for (unsigned i = 0; i < numberOfOutputChannels; ++i)
         memcpy(outputBus->channel(i)->mutableData(), outputBuffer->getChannelData(i)->data() + m_bufferReadWriteIndex, sizeof(float) * framesToProcess);
 
@@ -200,11 +200,11 @@
         if (m_isRequestOutstanding) {
             // We're late in handling the previous request. The main thread must be very busy.
             // The best we can do is clear out the buffer ourself here.
-            outputBuffer->zero();            
+            outputBuffer->zero();
         } else {
             // Reference ourself so we don't accidentally get deleted before fireProcessEvent() gets called.
             ref();
-            
+
             // Fire the event on the main thread, not this one (which is the realtime audio thread).
             m_doubleBufferIndexForEvent = m_doubleBufferIndex;
             m_isRequestOutstanding = true;
@@ -231,12 +231,12 @@
 void ScriptProcessorNode::fireProcessEvent()
 {
     ASSERT(isMainThread() && m_isRequestOutstanding);
-    
+
     bool isIndexGood = m_doubleBufferIndexForEvent < 2;
     ASSERT(isIndexGood);
     if (!isIndexGood)
         return;
-        
+
     AudioBuffer* inputBuffer = m_inputBuffers[m_doubleBufferIndexForEvent].get();
     AudioBuffer* outputBuffer = m_outputBuffers[m_doubleBufferIndexForEvent].get();
     ASSERT(outputBuffer);
@@ -247,7 +247,7 @@
     if (context()->scriptExecutionContext()) {
         // Let the audio thread know we've gotten to the point where it's OK for it to make another request.
         m_isRequestOutstanding = false;
-        
+
         // Call the JavaScript event handler which will do the audio processing.
         dispatchEvent(AudioProcessingEvent::create(inputBuffer, outputBuffer));
     }
diff --git a/Source/modules/webaudio/ScriptProcessorNode.h b/Source/modules/webaudio/ScriptProcessorNode.h
index 7fc4245..05c1434 100644
--- a/Source/modules/webaudio/ScriptProcessorNode.h
+++ b/Source/modules/webaudio/ScriptProcessorNode.h
@@ -64,7 +64,7 @@
 
     DEFINE_ATTRIBUTE_EVENT_LISTENER(audioprocess);
 
-    
+
 private:
     virtual double tailTime() const OVERRIDE;
     virtual double latencyTime() const OVERRIDE;
diff --git a/Source/modules/webaudio/WaveShaperNode.h b/Source/modules/webaudio/WaveShaperNode.h
index 5564c38..8855630 100644
--- a/Source/modules/webaudio/WaveShaperNode.h
+++ b/Source/modules/webaudio/WaveShaperNode.h
@@ -50,8 +50,8 @@
 
     double latency() const { return latencyTime(); }
 
-private:    
-    explicit WaveShaperNode(AudioContext*);    
+private:
+    explicit WaveShaperNode(AudioContext*);
 
     WaveShaperProcessor* waveShaperProcessor() { return static_cast<WaveShaperProcessor*>(processor()); }
 };
diff --git a/Source/modules/webaudio/WaveShaperProcessor.cpp b/Source/modules/webaudio/WaveShaperProcessor.cpp
index f4b5efa..2f5c1e6 100644
--- a/Source/modules/webaudio/WaveShaperProcessor.cpp
+++ b/Source/modules/webaudio/WaveShaperProcessor.cpp
@@ -53,7 +53,7 @@
 {
     // This synchronizes with process().
     MutexLocker processLocker(m_processLock);
-    
+
     m_curve = curve;
 }
 
@@ -86,7 +86,7 @@
 
     // The audio thread can't block on this lock, so we call tryLock() instead.
     MutexTryLocker tryLocker(m_processLock);
-    if (tryLocker.locked()) {        
+    if (tryLocker.locked()) {
         // For each channel of our input, process using the corresponding WaveShaperDSPKernel into the output channel.
         for (unsigned i = 0; i < m_kernels.size(); ++i)
             m_kernels[i]->process(source->channel(i)->data(), destination->channel(i)->mutableData(), framesToProcess);
diff --git a/Source/modules/webdatabase/AbstractDatabaseServer.h b/Source/modules/webdatabase/AbstractDatabaseServer.h
index e81821e..15d9f8f 100644
--- a/Source/modules/webdatabase/AbstractDatabaseServer.h
+++ b/Source/modules/webdatabase/AbstractDatabaseServer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef AbstractDatabaseServer_h
diff --git a/Source/modules/webdatabase/AbstractSQLStatement.h b/Source/modules/webdatabase/AbstractSQLStatement.h
index 1ec326f..1fb9912 100644
--- a/Source/modules/webdatabase/AbstractSQLStatement.h
+++ b/Source/modules/webdatabase/AbstractSQLStatement.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef AbstractSQLStatement_h
diff --git a/Source/modules/webdatabase/AbstractSQLStatementBackend.h b/Source/modules/webdatabase/AbstractSQLStatementBackend.h
index e547ccf..11a8c53 100644
--- a/Source/modules/webdatabase/AbstractSQLStatementBackend.h
+++ b/Source/modules/webdatabase/AbstractSQLStatementBackend.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef AbstractSQLStatementBackend_h
diff --git a/Source/modules/webdatabase/AbstractSQLTransaction.h b/Source/modules/webdatabase/AbstractSQLTransaction.h
index 444879c..ba8e999 100644
--- a/Source/modules/webdatabase/AbstractSQLTransaction.h
+++ b/Source/modules/webdatabase/AbstractSQLTransaction.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef AbstractSQLTransaction_h
diff --git a/Source/modules/webdatabase/AbstractSQLTransactionBackend.h b/Source/modules/webdatabase/AbstractSQLTransactionBackend.h
index cc69842..fe9d361 100644
--- a/Source/modules/webdatabase/AbstractSQLTransactionBackend.h
+++ b/Source/modules/webdatabase/AbstractSQLTransactionBackend.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef AbstractSQLTransactionBackend_h
diff --git a/Source/modules/webdatabase/ChangeVersionData.h b/Source/modules/webdatabase/ChangeVersionData.h
index 1a48113..0c44958 100644
--- a/Source/modules/webdatabase/ChangeVersionData.h
+++ b/Source/modules/webdatabase/ChangeVersionData.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ChangeVersionData_h
diff --git a/Source/modules/webdatabase/DOMWindowWebDatabase.h b/Source/modules/webdatabase/DOMWindowWebDatabase.h
index 0253c51..348851f 100644
--- a/Source/modules/webdatabase/DOMWindowWebDatabase.h
+++ b/Source/modules/webdatabase/DOMWindowWebDatabase.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DOMWindowWebDatabase_h
diff --git a/Source/modules/webdatabase/Database.cpp b/Source/modules/webdatabase/Database.cpp
index b6676d6..e0a9edc 100644
--- a/Source/modules/webdatabase/Database.cpp
+++ b/Source/modules/webdatabase/Database.cpp
@@ -102,7 +102,7 @@
         : m_context(context)
     {
     }
-    
+
     RefPtr<ScriptExecutionContext> m_context;
 };
 
@@ -113,7 +113,7 @@
         // Grab a pointer to the script execution here because we're releasing it when we pass it to
         // DerefContextTask::create.
         ScriptExecutionContext* scriptExecutionContext = m_scriptExecutionContext.get();
-        
+
         scriptExecutionContext->postTask(DerefContextTask::create(m_scriptExecutionContext.release()));
     }
 }
diff --git a/Source/modules/webdatabase/DatabaseAuthorizer.cpp b/Source/modules/webdatabase/DatabaseAuthorizer.cpp
index 6d38e88..f64bbd8 100644
--- a/Source/modules/webdatabase/DatabaseAuthorizer.cpp
+++ b/Source/modules/webdatabase/DatabaseAuthorizer.cpp
@@ -344,7 +344,7 @@
 {
     if (m_permissions & NoAccessMask && m_securityEnabled)
         return SQLAuthDeny;
-    
+
     return denyBasedOnTableName(tableName);
 }
 
@@ -400,7 +400,7 @@
 {
     m_permissions |= ReadOnlyMask;
 }
-   
+
 void DatabaseAuthorizer::setPermissions(int permissions)
 {
     m_permissions = permissions;
diff --git a/Source/modules/webdatabase/DatabaseBackend.cpp b/Source/modules/webdatabase/DatabaseBackend.cpp
index ada3063..45aba60 100644
--- a/Source/modules/webdatabase/DatabaseBackend.cpp
+++ b/Source/modules/webdatabase/DatabaseBackend.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/modules/webdatabase/DatabaseBackend.h b/Source/modules/webdatabase/DatabaseBackend.h
index 24fcaf5..60c1c01 100644
--- a/Source/modules/webdatabase/DatabaseBackend.h
+++ b/Source/modules/webdatabase/DatabaseBackend.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DatabaseBackend_h
diff --git a/Source/modules/webdatabase/DatabaseBackendContext.cpp b/Source/modules/webdatabase/DatabaseBackendContext.cpp
index 59cf759..5424f65 100644
--- a/Source/modules/webdatabase/DatabaseBackendContext.cpp
+++ b/Source/modules/webdatabase/DatabaseBackendContext.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/modules/webdatabase/DatabaseBackendContext.h b/Source/modules/webdatabase/DatabaseBackendContext.h
index ee53b15..975d6d2 100644
--- a/Source/modules/webdatabase/DatabaseBackendContext.h
+++ b/Source/modules/webdatabase/DatabaseBackendContext.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DatabaseBackendContext_h
diff --git a/Source/modules/webdatabase/DatabaseBackendSync.cpp b/Source/modules/webdatabase/DatabaseBackendSync.cpp
index 5ee0b12..4c10fe0 100644
--- a/Source/modules/webdatabase/DatabaseBackendSync.cpp
+++ b/Source/modules/webdatabase/DatabaseBackendSync.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/modules/webdatabase/DatabaseBackendSync.h b/Source/modules/webdatabase/DatabaseBackendSync.h
index c515dec..5868159 100644
--- a/Source/modules/webdatabase/DatabaseBackendSync.h
+++ b/Source/modules/webdatabase/DatabaseBackendSync.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DatabaseBackendSync_h
diff --git a/Source/modules/webdatabase/DatabaseBase.cpp b/Source/modules/webdatabase/DatabaseBase.cpp
index 2fb2ed4..58d8803 100644
--- a/Source/modules/webdatabase/DatabaseBase.cpp
+++ b/Source/modules/webdatabase/DatabaseBase.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/modules/webdatabase/DatabaseBase.h b/Source/modules/webdatabase/DatabaseBase.h
index 0df4303..eba45eb 100644
--- a/Source/modules/webdatabase/DatabaseBase.h
+++ b/Source/modules/webdatabase/DatabaseBase.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DatabaseBase_h
diff --git a/Source/modules/webdatabase/DatabaseBasicTypes.h b/Source/modules/webdatabase/DatabaseBasicTypes.h
index 4a91e87..0445ca3 100644
--- a/Source/modules/webdatabase/DatabaseBasicTypes.h
+++ b/Source/modules/webdatabase/DatabaseBasicTypes.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DatabaseBasicTypes_h
diff --git a/Source/modules/webdatabase/DatabaseError.h b/Source/modules/webdatabase/DatabaseError.h
index 3d07146..ea350a7 100644
--- a/Source/modules/webdatabase/DatabaseError.h
+++ b/Source/modules/webdatabase/DatabaseError.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DatabaseError_h
diff --git a/Source/modules/webdatabase/DatabaseServer.cpp b/Source/modules/webdatabase/DatabaseServer.cpp
index f447887..23e4a02 100644
--- a/Source/modules/webdatabase/DatabaseServer.cpp
+++ b/Source/modules/webdatabase/DatabaseServer.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/modules/webdatabase/DatabaseServer.h b/Source/modules/webdatabase/DatabaseServer.h
index 50f8695..9385e92 100644
--- a/Source/modules/webdatabase/DatabaseServer.h
+++ b/Source/modules/webdatabase/DatabaseServer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DatabaseServer_h
diff --git a/Source/modules/webdatabase/SQLStatementBackend.cpp b/Source/modules/webdatabase/SQLStatementBackend.cpp
index 8262b0b..93e8923 100644
--- a/Source/modules/webdatabase/SQLStatementBackend.cpp
+++ b/Source/modules/webdatabase/SQLStatementBackend.cpp
@@ -38,7 +38,7 @@
 #include "wtf/text/CString.h"
 
 
-// The Life-Cycle of a SQLStatement i.e. Who's keeping the SQLStatement alive? 
+// The Life-Cycle of a SQLStatement i.e. Who's keeping the SQLStatement alive?
 // ==========================================================================
 // The RefPtr chain goes something like this:
 //
diff --git a/Source/modules/webdatabase/SQLTransactionBackend.cpp b/Source/modules/webdatabase/SQLTransactionBackend.cpp
index 35c5820..505e6bf 100644
--- a/Source/modules/webdatabase/SQLTransactionBackend.cpp
+++ b/Source/modules/webdatabase/SQLTransactionBackend.cpp
@@ -227,7 +227,7 @@
 // to wait for further action.
 
 
-// The Life-Cycle of a SQLTransaction i.e. Who's keeping the SQLTransaction alive? 
+// The Life-Cycle of a SQLTransaction i.e. Who's keeping the SQLTransaction alive?
 // ==============================================================================
 // The RefPtr chain goes something like this:
 //
@@ -304,7 +304,7 @@
 //     - DatabaseBackend::close() will iterate
 //       DatabaseBackend::m_transactionQueue and call
 //       notifyDatabaseThreadIsShuttingDown() on each transaction there.
-//        
+//
 //     Phase 2. After scheduling, before state AcquireLock
 //
 //     - If the interruption occures before the DatabaseTransactionTask is
diff --git a/Source/modules/webdatabase/SQLTransactionState.h b/Source/modules/webdatabase/SQLTransactionState.h
index 1b3dcf0..8260099 100644
--- a/Source/modules/webdatabase/SQLTransactionState.h
+++ b/Source/modules/webdatabase/SQLTransactionState.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SQLTransactionState_h
diff --git a/Source/modules/webdatabase/SQLTransactionStateMachine.cpp b/Source/modules/webdatabase/SQLTransactionStateMachine.cpp
index 593ac08..f371d3d 100644
--- a/Source/modules/webdatabase/SQLTransactionStateMachine.cpp
+++ b/Source/modules/webdatabase/SQLTransactionStateMachine.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/modules/webdatabase/SQLTransactionStateMachine.h b/Source/modules/webdatabase/SQLTransactionStateMachine.h
index 2420662..d14238e 100644
--- a/Source/modules/webdatabase/SQLTransactionStateMachine.h
+++ b/Source/modules/webdatabase/SQLTransactionStateMachine.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef SQLTransactionStateMachine_h
diff --git a/Source/modules/webmidi/MIDIAccess.cpp b/Source/modules/webmidi/MIDIAccess.cpp
index 220d597..d579ba3 100644
--- a/Source/modules/webmidi/MIDIAccess.cpp
+++ b/Source/modules/webmidi/MIDIAccess.cpp
@@ -61,17 +61,17 @@
     : ActiveDOMObject(context)
     , m_promise(promise)
     , m_hasAccess(false)
-    , m_enableSysEx(false)
+    , m_sysExEnabled(false)
     , m_requesting(false)
 {
     ScriptWrappable::init(this);
     m_accessor = MIDIAccessor::create(this);
 }
 
-void MIDIAccess::enableSysEx(bool enable)
+void MIDIAccess::setSysExEnabled(bool enable)
 {
     m_requesting = false;
-    m_enableSysEx = enable;
+    m_sysExEnabled = enable;
     if (enable)
         m_accessor->startSession();
     else
@@ -82,7 +82,7 @@
 {
     ASSERT(isMainThread());
 
-    // FIXME: Pass m_enableSysEx flag to filter system exclusive messages correctly.
+    // FIXME: Pass in |this| to create() method so we can filter system exclusive messages correctly.
     m_inputs.append(MIDIInput::create(scriptExecutionContext(), id, manufacturer, name, version));
 }
 
@@ -90,8 +90,8 @@
 {
     ASSERT(isMainThread());
 
-    // FIXME: Pass m_enableSysEx flag to filter system exclusive messages correctly.
-    m_outputs.append(MIDIOutput::create(scriptExecutionContext(), id, manufacturer, name, version));
+    unsigned portIndex = m_outputs.size();
+    m_outputs.append(MIDIOutput::create(this, portIndex, scriptExecutionContext(), id, manufacturer, name, version));
 }
 
 void MIDIAccess::didStartSession()
@@ -119,6 +119,28 @@
     }
 }
 
+void MIDIAccess::sendMIDIData(unsigned portIndex, const unsigned char* data, size_t length, double timeStampInMilliseconds)
+{
+    if (m_hasAccess && portIndex < m_outputs.size() && data && length > 1) {
+        // Convert from a time in milliseconds (a DOMHighResTimeStamp) according to the same time coordinate system as performance.now()
+        // into a time in seconds which is based on the time coordinate system of monotonicallyIncreasingTime().
+        double timeStamp;
+
+        if (!timeStampInMilliseconds) {
+            // We treat a value of 0 (which is the default value) as special, meaning "now".
+            // We need to translate it exactly to 0 seconds.
+            timeStamp = 0;
+        } else {
+            Document* document = toDocument(scriptExecutionContext());
+            ASSERT(document);
+            double documentStartTime = document->loader()->timing()->referenceMonotonicTime();
+            timeStamp = documentStartTime + 0.001 * timeStampInMilliseconds;
+        }
+
+        m_accessor->sendMIDIData(portIndex, data, length, timeStamp);
+    }
+}
+
 void MIDIAccess::stop()
 {
     m_hasAccess = false;
@@ -130,6 +152,8 @@
     MIDIController* controller = MIDIController::from(document->page());
     ASSERT(controller);
     controller->cancelSysExPermissionRequest(this);
+
+    m_accessor.clear();
 }
 
 void MIDIAccess::startRequest()
@@ -158,6 +182,4 @@
     m_promise->reject(error);
 }
 
-
-
 } // namespace WebCore
diff --git a/Source/modules/webmidi/MIDIAccess.h b/Source/modules/webmidi/MIDIAccess.h
index 615e9e4..d0a286c 100644
--- a/Source/modules/webmidi/MIDIAccess.h
+++ b/Source/modules/webmidi/MIDIAccess.h
@@ -61,7 +61,8 @@
     DEFINE_ATTRIBUTE_EVENT_LISTENER(connect);
     DEFINE_ATTRIBUTE_EVENT_LISTENER(disconnect);
 
-    void enableSysEx(bool enable);
+    void setSysExEnabled(bool);
+    bool sysExEnabled() const { return m_sysExEnabled; }
 
     // EventTarget
     virtual const AtomicString& interfaceName() const OVERRIDE { return eventNames().interfaceForMIDIAccess; }
@@ -77,6 +78,9 @@
     virtual void didStartSession() OVERRIDE;
     virtual void didReceiveMIDIData(unsigned portIndex, const unsigned char* data, size_t length, double timeStamp) OVERRIDE;
 
+    // |timeStampInMilliseconds| is in the same time coordinate system as performance.now().
+    void sendMIDIData(unsigned portIndex, const unsigned char* data, size_t length, double timeStampInMilliseconds);
+
 private:
     explicit MIDIAccess(ScriptExecutionContext*, MIDIAccessPromise*);
 
@@ -96,7 +100,7 @@
 
     OwnPtr<MIDIAccessor> m_accessor;
     bool m_hasAccess;
-    bool m_enableSysEx;
+    bool m_sysExEnabled;
     bool m_requesting;
 };
 
diff --git a/Source/modules/webmidi/MIDIOutput.cpp b/Source/modules/webmidi/MIDIOutput.cpp
index e9066f0..4bfdb18 100644
--- a/Source/modules/webmidi/MIDIOutput.cpp
+++ b/Source/modules/webmidi/MIDIOutput.cpp
@@ -31,30 +31,70 @@
 #include "config.h"
 #include "modules/webmidi/MIDIOutput.h"
 
+#include "core/dom/ExceptionCode.h"
+#include "modules/webmidi/MIDIAccess.h"
+
 namespace WebCore {
 
-PassRefPtr<MIDIOutput> MIDIOutput::create(ScriptExecutionContext* context, const String& id, const String& manufacturer, const String& name, const String& version)
+PassRefPtr<MIDIOutput> MIDIOutput::create(MIDIAccess* access, unsigned portIndex, ScriptExecutionContext* context, const String& id, const String& manufacturer, const String& name, const String& version)
 {
-    return adoptRef(new MIDIOutput(context, id, manufacturer, name, version));
+    return adoptRef(new MIDIOutput(access, portIndex, context, id, manufacturer, name, version));
 }
 
-MIDIOutput::MIDIOutput(ScriptExecutionContext* context, const String& id, const String& manufacturer, const String& name, const String& version)
+MIDIOutput::MIDIOutput(MIDIAccess* access, unsigned portIndex, ScriptExecutionContext* context, const String& id, const String& manufacturer, const String& name, const String& version)
     : MIDIPort(context, id, manufacturer, name, MIDIPortTypeOutput, version)
+    , m_access(access)
+    , m_portIndex(portIndex)
 {
     ScriptWrappable::init(this);
 }
 
-void MIDIOutput::send(Uint8Array* data, double timestamp)
+MIDIOutput::~MIDIOutput()
 {
-    // FIXME: Implement MIDI protocol validation here. System exclusive
-    // messages must be checked at the same time.
-    // Actual sending operation will be implemented in core/platform/midi.
 }
 
-void MIDIOutput::send(Vector<unsigned>, double timestamp)
+void MIDIOutput::send(Uint8Array* array, double timestamp, ExceptionCode& ec)
 {
-    // FIXME: Ditto. Implementation will be shared between these two send
-    // functions.
+    if (!array)
+        return;
+
+    const unsigned char* data = array->data();
+    size_t length = array->length();
+
+    // Filter out System Exclusive messages if we're not allowed.
+    // FIXME: implement more extensive filtering.
+    if (length > 0 && data[0] >= 0xf0 && !m_access->sysExEnabled()) {
+        ec = SecurityError;
+        return;
+    }
+
+    m_access->sendMIDIData(m_portIndex, data, length, timestamp);
+}
+
+void MIDIOutput::send(Vector<unsigned> unsignedData, double timestamp, ExceptionCode& ec)
+{
+    RefPtr<Uint8Array> array = Uint8Array::create(unsignedData.size());
+
+    for (size_t i = 0; i < unsignedData.size(); ++i) {
+        if (unsignedData[i] > 0xff) {
+            ec = InvalidStateError;
+            return;
+        }
+        unsigned char value = unsignedData[i] & 0xff;
+        array->set(i, value);
+    }
+
+    send(array.get(), timestamp, ec);
+}
+
+void MIDIOutput::send(Uint8Array* data, ExceptionCode& ec)
+{
+    send(data, 0, ec);
+}
+
+void MIDIOutput::send(Vector<unsigned> unsignedData, ExceptionCode& ec)
+{
+    send(unsignedData, 0, ec);
 }
 
 } // namespace WebCore
diff --git a/Source/modules/webmidi/MIDIOutput.h b/Source/modules/webmidi/MIDIOutput.h
index cecb98a..a74f99c 100644
--- a/Source/modules/webmidi/MIDIOutput.h
+++ b/Source/modules/webmidi/MIDIOutput.h
@@ -32,22 +32,31 @@
 #define MIDIOutput_h
 
 #include "modules/webmidi/MIDIPort.h"
+#include "wtf/RefPtr.h"
 #include "wtf/Uint8Array.h"
 
 namespace WebCore {
 
+class MIDIAccess;
 class ScriptExecutionContext;
 
 class MIDIOutput : public MIDIPort {
 public:
-    static PassRefPtr<MIDIOutput> create(ScriptExecutionContext*, const String& id, const String& manufacturer, const String& name, const String& version);
-    virtual ~MIDIOutput() { }
+    static PassRefPtr<MIDIOutput> create(MIDIAccess*, unsigned portIndex, ScriptExecutionContext*, const String& id, const String& manufacturer, const String& name, const String& version);
+    virtual ~MIDIOutput();
 
-    void send(Uint8Array*, double timestamp = 0);
-    void send(Vector<unsigned>, double timestamp = 0);
+    void send(Uint8Array*, double timestamp, ExceptionCode&);
+    void send(Vector<unsigned>, double timestamp, ExceptionCode&);
+
+    // send() without optional |timestamp|.
+    void send(Uint8Array*, ExceptionCode&);
+    void send(Vector<unsigned>, ExceptionCode&);
 
 private:
-    MIDIOutput(ScriptExecutionContext*, const String& id, const String& manufacturer, const String& name, const String& version);
+    MIDIOutput(MIDIAccess*, unsigned portIndex, ScriptExecutionContext*, const String& id, const String& manufacturer, const String& name, const String& version);
+
+    RefPtr<MIDIAccess> m_access;
+    unsigned m_portIndex;
 };
 
 typedef Vector<RefPtr<MIDIOutput> > MIDIOutputVector;
diff --git a/Source/modules/webmidi/MIDIOutput.idl b/Source/modules/webmidi/MIDIOutput.idl
index a07ec6f..86a4435 100644
--- a/Source/modules/webmidi/MIDIOutput.idl
+++ b/Source/modules/webmidi/MIDIOutput.idl
@@ -31,6 +31,6 @@
 [
     NoInterfaceObject
 ] interface MIDIOutput : MIDIPort {
-    void send(Uint8Array data, optional double timestamp);
-    void send(sequence<unsigned long> data, optional double timestamp);
+    [RaisesException] void send(Uint8Array data, optional double timestamp);
+    [RaisesException] void send(sequence<unsigned long> data, optional double timestamp);
 };
diff --git a/Source/web/ApplicationCacheHostInternal.h b/Source/web/ApplicationCacheHostInternal.h
index 5225ded..81ce981 100644
--- a/Source/web/ApplicationCacheHostInternal.h
+++ b/Source/web/ApplicationCacheHostInternal.h
@@ -59,7 +59,7 @@
         m_innerHost->notifyDOMApplicationCache(static_cast<ApplicationCacheHost::EventID>(eventID), 0, 0);
     }
 
-    virtual void notifyProgressEventListener(const WebKit::WebURL&, int progressTotal, int progressDone) 
+    virtual void notifyProgressEventListener(const WebKit::WebURL&, int progressTotal, int progressDone)
     {
         m_innerHost->notifyDOMApplicationCache(ApplicationCacheHost::PROGRESS_EVENT, progressTotal, progressDone);
     }
diff --git a/Source/web/AssociatedURLLoader.cpp b/Source/web/AssociatedURLLoader.cpp
index 56a1f2f..ccf03cb 100644
--- a/Source/web/AssociatedURLLoader.cpp
+++ b/Source/web/AssociatedURLLoader.cpp
@@ -151,7 +151,7 @@
     void enableErrorNotifications();
 
     // Stops loading and releases the DocumentThreadableLoader as early as possible.
-    void clearClient() { m_client = 0; } 
+    void clearClient() { m_client = 0; }
 
 private:
     ClientAdapter(AssociatedURLLoader*, WebURLLoaderClient*, const WebURLLoaderOptions&);
diff --git a/Source/web/ChromeClientImpl.cpp b/Source/web/ChromeClientImpl.cpp
index 82a1b0d..d2509cb 100644
--- a/Source/web/ChromeClientImpl.cpp
+++ b/Source/web/ChromeClientImpl.cpp
@@ -1002,9 +1002,9 @@
 }
 
 void NavigatorContentUtilsClientImpl::registerProtocolHandler(const String& scheme, const String& baseURL, const String& url, const String& title)
-{ 
+{
     m_webView->client()->registerProtocolHandler(scheme, baseURL, url, title);
-} 
+}
 #endif
 
 } // namespace WebKit
diff --git a/Source/web/ContextMenuClientImpl.cpp b/Source/web/ContextMenuClientImpl.cpp
index cf87198..aeca1fc 100644
--- a/Source/web/ContextMenuClientImpl.cpp
+++ b/Source/web/ContextMenuClientImpl.cpp
@@ -316,7 +316,7 @@
                 m_webView->spellCheckClient()->spellCheck(data.misspelledWord, misspelledOffset, misspelledLength, &data.dictionarySuggestions);
             }
         } else {
-            data.isSpellCheckingEnabled = 
+            data.isSpellCheckingEnabled =
                 m_webView->focusedWebCoreFrame()->editor()->isContinuousSpellCheckingEnabled();
             // Spellchecking might be enabled for the field, but could be disabled on the node.
             if (m_webView->focusedWebCoreFrame()->editor()->isSpellCheckingEnabledInFocusedNode()) {
diff --git a/Source/web/MIDIClientImpl.cpp b/Source/web/MIDIClientImpl.cpp
index eef236f..70369bf 100644
--- a/Source/web/MIDIClientImpl.cpp
+++ b/Source/web/MIDIClientImpl.cpp
@@ -52,7 +52,7 @@
     if (m_client)
         m_client->requestSysExPermission(WebMIDIPermissionRequest(access));
     else
-        access->enableSysEx(false);
+        access->setSysExEnabled(false);
 }
 
 void MIDIClientImpl::cancelSysExPermissionRequest(MIDIAccess* access)
diff --git a/Source/web/WebAccessibilityObject.cpp b/Source/web/WebAccessibilityObject.cpp
index 2f64d05..02d7181 100644
--- a/Source/web/WebAccessibilityObject.cpp
+++ b/Source/web/WebAccessibilityObject.cpp
@@ -684,7 +684,7 @@
 {
     if (isDetached())
         return WebURL();
-    
+
     return m_private->url();
 }
 
diff --git a/Source/web/WebDOMActivityLogger.cpp b/Source/web/WebDOMActivityLogger.cpp
index 7d7fbac..d69d7a0 100644
--- a/Source/web/WebDOMActivityLogger.cpp
+++ b/Source/web/WebDOMActivityLogger.cpp
@@ -48,8 +48,8 @@
     }
 
     virtual void log(const String& apiName, int argc, const v8::Handle<v8::Value>* argv, const String& extraInfo)
-    {   
-        m_domActivityLogger->log(WebString(apiName), argc, argv, WebString(extraInfo)); 
+    {
+        m_domActivityLogger->log(WebString(apiName), argc, argv, WebString(extraInfo));
     }
 
 private:
diff --git a/Source/web/WebFontImpl.cpp b/Source/web/WebFontImpl.cpp
index c8ec94b..59f06ff 100644
--- a/Source/web/WebFontImpl.cpp
+++ b/Source/web/WebFontImpl.cpp
@@ -153,7 +153,7 @@
     return WebRect(leftBaseline.x - (fontMetrics.ascent() + fontMetrics.descent()) / 2,
                    leftBaseline.y - fontMetrics.ascent() - fontMetrics.lineGap(),
                    totalWidth + fontMetrics.ascent() + fontMetrics.descent(),
-                   fontMetrics.lineSpacing()); 
+                   fontMetrics.lineSpacing());
 }
 
 } // namespace WebKit
diff --git a/Source/web/WebFrameImpl.cpp b/Source/web/WebFrameImpl.cpp
index 7fa22c8..e7ce6ef 100644
--- a/Source/web/WebFrameImpl.cpp
+++ b/Source/web/WebFrameImpl.cpp
@@ -2212,7 +2212,7 @@
     if (isMainFrame)
         webView->suppressInvalidations(true);
 
-    frame()->createView(webView->size(), Color::white, webView->isTransparent(), webView->fixedLayoutSize(), isMainFrame ? webView->isFixedLayoutModeEnabled() : 0);
+    frame()->createView(webView->size(), webView->baseBackgroundColor(), webView->isTransparent(), webView->fixedLayoutSize(), isMainFrame ? webView->isFixedLayoutModeEnabled() : 0);
     if (webView->shouldAutoResize() && isMainFrame)
         frame()->view()->enableAutoSizeMode(true, webView->minAutoSize(), webView->maxAutoSize());
 
diff --git a/Source/web/WebHelperPluginImpl.cpp b/Source/web/WebHelperPluginImpl.cpp
index 8eb199a..5a05929 100644
--- a/Source/web/WebHelperPluginImpl.cpp
+++ b/Source/web/WebHelperPluginImpl.cpp
@@ -92,7 +92,7 @@
     {
         // This should never be called since the only way to close the
         // invisible page is via closeHelperPlugin().
-        ASSERT_NOT_REACHED(); 
+        ASSERT_NOT_REACHED();
         m_widget->closeHelperPlugin();
     }
 
diff --git a/Source/web/WebInputEvent.cpp b/Source/web/WebInputEvent.cpp
index ee43091..5b81024 100644
--- a/Source/web/WebInputEvent.cpp
+++ b/Source/web/WebInputEvent.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/web/WebInputEventConversion.cpp b/Source/web/WebInputEventConversion.cpp
index 6e21fb8..b61f9ad 100644
--- a/Source/web/WebInputEventConversion.cpp
+++ b/Source/web/WebInputEventConversion.cpp
@@ -124,7 +124,7 @@
     m_wheelTicksY = e.wheelTicksY;
     m_granularity = e.scrollByPage ?
         ScrollByPageWheelEvent : ScrollByPixelWheelEvent;
-    
+
     m_type = PlatformEvent::Wheel;
 
     m_modifiers = 0;
diff --git a/Source/web/WebMIDIPermissionRequest.cpp b/Source/web/WebMIDIPermissionRequest.cpp
index 2e82e95..8d663aa 100644
--- a/Source/web/WebMIDIPermissionRequest.cpp
+++ b/Source/web/WebMIDIPermissionRequest.cpp
@@ -67,7 +67,7 @@
 
 void WebMIDIPermissionRequest::setIsAllowed(bool allowed)
 {
-    m_private->enableSysEx(allowed);
+    m_private->setSysExEnabled(allowed);
 }
 
 } // namespace WebKit
diff --git a/Source/web/WebPageSerializer.cpp b/Source/web/WebPageSerializer.cpp
index 0a9e592..7ca6d8a 100644
--- a/Source/web/WebPageSerializer.cpp
+++ b/Source/web/WebPageSerializer.cpp
@@ -99,7 +99,7 @@
     // Ignore javascript content.
     if (value.isEmpty() || value.stripWhiteSpace().startsWith("javascript:", false))
         return KURL();
-  
+
     return element->document()->completeURL(value);
 }
 
@@ -164,7 +164,7 @@
     visitedFrames->append(frame);
     if (!frameURLs->contains(frameURL))
         frameURLs->append(frameURL);
-  
+
     // Now get the resources associated with each node of the document.
     RefPtr<HTMLCollection> allNodes = frame->document()->all();
     for (unsigned i = 0; i < allNodes->length(); ++i) {
@@ -198,7 +198,7 @@
         result.append(resource);
     }
 
-    *resourcesParam = result;         
+    *resourcesParam = result;
 }
 
 static PassRefPtr<SharedBuffer> serializePageToMHTML(Page* page, MHTMLArchive::EncodingPolicy encodingPolicy)
@@ -248,7 +248,7 @@
     Vector<Frame*> visitedFrames;
     Vector<KURL> frameKURLs;
     Vector<KURL> resourceKURLs;
-    
+
     // Let's retrieve the resources from every frame in this page.
     framesToVisit.append(mainFrame->frame());
     while (!framesToVisit.isEmpty()) {
@@ -274,7 +274,7 @@
     for (size_t i = 0; i < frameKURLs.size(); ++i)
         resultFrameURLs[i] = frameKURLs[i];
     *frameURLs = resultFrameURLs;
-    
+
     return true;
 }
 
diff --git a/Source/web/WebPageSerializerImpl.cpp b/Source/web/WebPageSerializerImpl.cpp
index 0ce4899..41aa2ba 100644
--- a/Source/web/WebPageSerializerImpl.cpp
+++ b/Source/web/WebPageSerializerImpl.cpp
@@ -285,7 +285,7 @@
     String content = m_dataBuffer.toString();
     m_dataBuffer.clear();
 
-    CString encodedContent = param->textEncoding.encode(content, WTF::EntitiesForUnencodables);
+    CString encodedContent = param->textEncoding.normalizeAndEncode(content, WTF::EntitiesForUnencodables);
 
     // Send result to the client.
     m_client->didSerializeDataForFrame(param->url,
@@ -327,7 +327,7 @@
                     else {
                         // Get the absolute link
                         WebFrameImpl* subFrame = WebFrameImpl::fromFrameOwnerElement(element);
-                        String completeURL = subFrame ? subFrame->frame()->document()->url() : 
+                        String completeURL = subFrame ? subFrame->frame()->document()->url() :
                                                         param->document->completeURL(attrValue);
                         // Check whether we have local files for those link.
                         if (m_localLinks.contains(completeURL)) {
diff --git a/Source/web/WebScopedMicrotaskSuppression.cpp b/Source/web/WebScopedMicrotaskSuppression.cpp
index 53844ce..f4773a7 100644
--- a/Source/web/WebScopedMicrotaskSuppression.cpp
+++ b/Source/web/WebScopedMicrotaskSuppression.cpp
@@ -1,10 +1,10 @@
 /*
  * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  * notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
  *     * Neither the name of Google Inc. nor the names of its
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/web/WebSearchableFormData.cpp b/Source/web/WebSearchableFormData.cpp
index 31bd3ca..08a51d4 100644
--- a/Source/web/WebSearchableFormData.cpp
+++ b/Source/web/WebSearchableFormData.cpp
@@ -149,10 +149,10 @@
     return true;
 }
 
-// Look for a suitable search text field in a given HTMLFormElement 
+// Look for a suitable search text field in a given HTMLFormElement
 // Return nothing if one of those items are found:
 //  - A text area field
-//  - A file upload field 
+//  - A file upload field
 //  - A Password field
 //  - More than one text field
 HTMLInputElement* findSuitableSearchInputElement(const HTMLFormElement* form)
@@ -192,14 +192,14 @@
 }
 
 // Build a search string based on a given HTMLFormElement and HTMLInputElement
-// 
+//
 // Search string output example from www.google.com:
 // "hl=en&source=hp&biw=1085&bih=854&q={searchTerms}&btnG=Google+Search&aq=f&aqi=&aql=&oq="
-// 
+//
 // Return false if the provided HTMLInputElement is not found in the form
 bool buildSearchString(const HTMLFormElement* form, Vector<char>* encodedString, WTF::TextEncoding* encoding, const HTMLInputElement* textElement)
 {
-    bool isElementFound = false;   
+    bool isElementFound = false;
 
     // FIXME: Consider refactoring this code so that we don't call form->associatedElements() twice.
     for (Vector<FormAssociatedElement*>::const_iterator i(form->associatedElements().begin()); i != form->associatedElements().end(); ++i) {
@@ -246,8 +246,8 @@
     HTMLInputElement* inputElement = selectedInputElement.operator PassRefPtr<HTMLInputElement>().get();
 
     // Only consider forms that GET data.
-    // Allow HTTPS only when an input element is provided. 
-    if (equalIgnoringCase(formElement->getAttribute(methodAttr), "post") 
+    // Allow HTTPS only when an input element is provided.
+    if (equalIgnoringCase(formElement->getAttribute(methodAttr), "post")
         || (!IsHTTPFormSubmit(formElement.get()) && !inputElement))
         return;
 
@@ -260,9 +260,9 @@
         // If the encoding isn't found webkit ends up replacing the params with
         // empty strings. So, we don't try to do anything here.
         return;
-    } 
+    }
 
-    // Look for a suitable search text field in the form when a 
+    // Look for a suitable search text field in the form when a
     // selectedInputElement is not provided.
     if (!inputElement) {
         inputElement = findSuitableSearchInputElement(formElement.get());
@@ -285,7 +285,7 @@
     if (firstSubmitButton)
         firstSubmitButton->setActivatedSubmit(false);
 
-    // Return if the search string is not valid. 
+    // Return if the search string is not valid.
     if (!isValidSearchString)
         return;
 
@@ -294,7 +294,7 @@
     RefPtr<FormData> formData = FormData::create(encodedString);
     url.setQuery(formData->flattenToString());
     m_url = url;
-    m_encoding = String(encoding.name()); 
+    m_encoding = String(encoding.name());
 }
 
 } // namespace WebKit
diff --git a/Source/web/WebTestingSupport.cpp b/Source/web/WebTestingSupport.cpp
index 78455ff..f74f9f0 100644
--- a/Source/web/WebTestingSupport.cpp
+++ b/Source/web/WebTestingSupport.cpp
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
- 
+
 #include "config.h"
 #include "WebTestingSupport.h"
 
diff --git a/Source/web/WebViewImpl.cpp b/Source/web/WebViewImpl.cpp
index dcad19b..0b84acf 100644
--- a/Source/web/WebViewImpl.cpp
+++ b/Source/web/WebViewImpl.cpp
@@ -87,6 +87,7 @@
 #include "WebSettingsImpl.h"
 #include "WebTextInputInfo.h"
 #include "WebViewClient.h"
+#include "WebWindowFeatures.h"
 #include "core/accessibility/AXObjectCache.h"
 #include "core/css/resolver/StyleResolver.h"
 #include "core/dom/Document.h"
@@ -427,6 +428,7 @@
     , m_showDebugBorders(false)
     , m_continuousPaintingEnabled(false)
     , m_showScrollBottleneckRects(false)
+    , m_baseBackgroundColor(Color::white)
 {
     Page::PageClients pageClients;
     pageClients.chromeClient = &m_chromeClientImpl;
@@ -1833,7 +1835,7 @@
         FrameView* view = page()->mainFrame()->view();
         PaintBehavior oldPaintBehavior = view->paintBehavior();
         if (isAcceleratedCompositingActive()) {
-            ASSERT(option == ForceSoftwareRenderingAndIgnoreGPUResidentContent);            
+            ASSERT(option == ForceSoftwareRenderingAndIgnoreGPUResidentContent);
             view->setPaintBehavior(oldPaintBehavior | PaintBehaviorFlattenCompositingLayers);
         }
 
@@ -1845,7 +1847,7 @@
         WebKit::Platform::current()->histogramCustomCounts("Renderer4.SoftwarePaintMegapixPerSecond", pixelsPerSec / 1000000, 10, 210, 30);
 
         if (isAcceleratedCompositingActive()) {
-            ASSERT(option == ForceSoftwareRenderingAndIgnoreGPUResidentContent);            
+            ASSERT(option == ForceSoftwareRenderingAndIgnoreGPUResidentContent);
             view->setPaintBehavior(oldPaintBehavior);
         }
     }
@@ -2461,11 +2463,11 @@
     if (isTransparent())
         return Color::transparent;
     if (!m_page)
-        return Color::white;
+        return m_baseBackgroundColor;
     FrameView* view = m_page->mainFrame()->view();
     StyleColor backgroundColor = view->documentBackgroundColor();
     if (!backgroundColor.isValid())
-        return Color::white;
+        return m_baseBackgroundColor;
     return backgroundColor.rgb();
 }
 
@@ -3383,6 +3385,9 @@
 
 void WebViewImpl::sendResizeEventAndRepaint()
 {
+    // FIXME: This is wrong. The FrameView is responsible sending a resizeEvent
+    // as part of layout. Layout is also responsible for sending invalidations
+    // to the embedder. This method and all callers may be wrong. -- eseidel.
     if (mainFrameImpl()->frameView()) {
         // Enqueues the resize event.
         mainFrameImpl()->frame()->eventHandler()->sendResizeEvent();
@@ -3578,6 +3583,19 @@
     return m_isTransparent;
 }
 
+void WebViewImpl::setBaseBackgroundColor(WebColor color)
+{
+    if (m_baseBackgroundColor == color)
+        return;
+
+    m_baseBackgroundColor = color;
+
+    m_page->mainFrame()->view()->setBaseBackgroundColor(color);
+
+    if (m_layerTreeView)
+        m_layerTreeView->setBackgroundColor(backgroundColor());
+}
+
 void WebViewImpl::setIsActive(bool active)
 {
     if (page() && page()->focusController())
@@ -3594,6 +3612,11 @@
     SchemeRegistry::setDomainRelaxationForbiddenForURLScheme(forbidden, String(scheme));
 }
 
+void WebViewImpl::setWindowFeatures(const WebWindowFeatures& features)
+{
+    m_page->chrome().setWindowFeatures(features);
+}
+
 void WebViewImpl::setScrollbarColors(unsigned inactiveColor,
                                      unsigned activeColor,
                                      unsigned trackColor) {
diff --git a/Source/web/WebViewImpl.h b/Source/web/WebViewImpl.h
index 303f7c4..50d50c5 100644
--- a/Source/web/WebViewImpl.h
+++ b/Source/web/WebViewImpl.h
@@ -198,6 +198,7 @@
     virtual void setPageEncoding(const WebString& encoding);
     virtual bool isTransparent() const;
     virtual void setIsTransparent(bool value);
+    virtual void setBaseBackgroundColor(WebColor);
     virtual bool tabsToLinks() const;
     virtual void setTabsToLinks(bool value);
     virtual bool tabKeyCyclesThroughElements() const;
@@ -205,6 +206,7 @@
     virtual bool isActive() const;
     virtual void setIsActive(bool value);
     virtual void setDomainRelaxationForbidden(bool, const WebString& scheme);
+    virtual void setWindowFeatures(const WebWindowFeatures&);
     virtual bool dispatchBeforeUnloadEvent();
     virtual void dispatchUnloadEvent();
     virtual WebFrame* mainFrame();
@@ -324,6 +326,8 @@
     void setIgnoreInputEvents(bool newValue);
     WebDevToolsAgentPrivate* devToolsAgentPrivate() { return m_devToolsAgent.get(); }
 
+    WebCore::Color baseBackgroundColor() const { return m_baseBackgroundColor; }
+
     PageOverlayList* pageOverlays() const { return m_pageOverlays.get(); }
 
     void setOverlayLayer(WebCore::GraphicsLayer*);
@@ -833,6 +837,7 @@
     bool m_showDebugBorders;
     bool m_continuousPaintingEnabled;
     bool m_showScrollBottleneckRects;
+    WebColor m_baseBackgroundColor;
 };
 
 } // namespace WebKit
diff --git a/Source/web/WebWorkerInfo.cpp b/Source/web/WebWorkerInfo.cpp
index 3ad0f4a..896ea67 100644
--- a/Source/web/WebWorkerInfo.cpp
+++ b/Source/web/WebWorkerInfo.cpp
@@ -35,7 +35,7 @@
 
 namespace WebKit {
 
-unsigned WebWorkerInfo::dedicatedWorkerCount() 
+unsigned WebWorkerInfo::dedicatedWorkerCount()
 {
     return WebCore::WorkerThread::workerThreadCount();
 }
diff --git a/Source/web/WorkerAsyncFileWriterChromium.h b/Source/web/WorkerAsyncFileWriterChromium.h
index b52d18e..96ebd35 100644
--- a/Source/web/WorkerAsyncFileWriterChromium.h
+++ b/Source/web/WorkerAsyncFileWriterChromium.h
@@ -65,7 +65,7 @@
         return adoptPtr(new WorkerAsyncFileWriterChromium(webFileSystem, path, workerGlobalScope, client, type));
     }
     ~WorkerAsyncFileWriterChromium();
-    
+
     bool waitForOperationToComplete();
 
     // FileWriter
diff --git a/Source/web/WorkerFileWriterCallbacksBridge.cpp b/Source/web/WorkerFileWriterCallbacksBridge.cpp
index 159cbc6..96aaa33 100644
--- a/Source/web/WorkerFileWriterCallbacksBridge.cpp
+++ b/Source/web/WorkerFileWriterCallbacksBridge.cpp
@@ -62,7 +62,7 @@
 {
     ASSERT(!m_operationInProgress);
     m_operationInProgress = true;
-    dispatchTaskToMainThread(createCallbackTask(&writeOnMainThread, 
+    dispatchTaskToMainThread(createCallbackTask(&writeOnMainThread,
                                                 this, position, data));
 }
 
@@ -70,7 +70,7 @@
 {
     ASSERT(!m_operationInProgress);
     m_operationInProgress = true;
-    dispatchTaskToMainThread(createCallbackTask(&truncateOnMainThread, 
+    dispatchTaskToMainThread(createCallbackTask(&truncateOnMainThread,
                                                 this, length));
 }
 
diff --git a/Source/web/tests/IDBBindingUtilitiesTest.cpp b/Source/web/tests/IDBBindingUtilitiesTest.cpp
index 41dc1ab..d033c93 100644
--- a/Source/web/tests/IDBBindingUtilitiesTest.cpp
+++ b/Source/web/tests/IDBBindingUtilitiesTest.cpp
@@ -50,7 +50,7 @@
 {
     IDBKeyPath idbKeyPath(keyPath);
     EXPECT_TRUE(idbKeyPath.isValid());
-    
+
     return createIDBKeyFromScriptValueAndKeyPath(0, value, idbKeyPath);
 }
 
diff --git a/Source/web/tests/PrerenderingTest.cpp b/Source/web/tests/PrerenderingTest.cpp
index 07eb47d..39001c1 100644
--- a/Source/web/tests/PrerenderingTest.cpp
+++ b/Source/web/tests/PrerenderingTest.cpp
@@ -81,7 +81,7 @@
         m_webPrerenders.pop_front();
         return retval;
     }
-    
+
     bool empty() const
     {
         return m_webPrerenders.empty();
@@ -129,7 +129,7 @@
     {
         return m_addedPrerenders.size() + m_canceledPrerenders.size() + m_abandonedPrerenders.size();
     }
-    
+
     size_t addCount(const WebPrerender& prerender) const
     {
         return std::count_if(m_addedPrerenders.begin(), m_addedPrerenders.end(), std::bind1st(WebPrerenderEqual(), prerender));
@@ -187,7 +187,7 @@
         if (m_webView)
             close();
     }
-    
+
     void initialize(const char* baseURL, const char* fileName)
     {
         ASSERT(!m_webView);
@@ -239,7 +239,7 @@
 
         WebNode textNode = consoleListItem.firstChild();
         ASSERT(textNode.nodeName() == "#text");
-        
+
         return textNode.nodeValue().utf8().data();
     }
 
@@ -304,7 +304,7 @@
     EXPECT_EQ(1u, prerenderingSupport()->totalCount());
 
     executeScript("removePrerender()");
-    
+
     EXPECT_EQ(1u, prerenderingSupport()->cancelCount(webPrerender));
     EXPECT_EQ(2u, prerenderingSupport()->totalCount());
 }
@@ -320,7 +320,7 @@
     EXPECT_EQ(1u, prerenderingSupport()->totalCount());
 
     navigateAway();
-    
+
     EXPECT_EQ(1u, prerenderingSupport()->abandonCount(webPrerender));
     EXPECT_EQ(2u, prerenderingSupport()->totalCount());
 }
@@ -358,7 +358,7 @@
 TEST_F(PrerenderingTest, TwoPrerenders)
 {
     initialize("http://www.foo.com/", "prerender/multiple_prerenders.html");
-    
+
     WebPrerender firstPrerender = prerendererClient()->releaseWebPrerender();
     EXPECT_FALSE(firstPrerender.isNull());
     EXPECT_EQ(toWebURL("http://first-prerender.com/"), firstPrerender.url());
@@ -383,7 +383,7 @@
 TEST_F(PrerenderingTest, TwoPrerendersRemovingFirstThenNavigating)
 {
     initialize("http://www.foo.com/", "prerender/multiple_prerenders.html");
-    
+
     WebPrerender firstPrerender = prerendererClient()->releaseWebPrerender();
     WebPrerender secondPrerender = prerendererClient()->releaseWebPrerender();
 
@@ -406,7 +406,7 @@
 TEST_F(PrerenderingTest, TwoPrerendersAddingThird)
 {
     initialize("http://www.foo.com/", "prerender/multiple_prerenders.html");
-    
+
     WebPrerender firstPrerender = prerendererClient()->releaseWebPrerender();
     WebPrerender secondPrerender = prerendererClient()->releaseWebPrerender();
 
diff --git a/Source/web/tests/WebFrameTest.cpp b/Source/web/tests/WebFrameTest.cpp
index 1bcee0f..96601bb 100644
--- a/Source/web/tests/WebFrameTest.cpp
+++ b/Source/web/tests/WebFrameTest.cpp
@@ -238,7 +238,7 @@
 TEST_F(WebFrameTest, ChromePageJavascript)
 {
     registerMockedChromeURLLoad("history.html");
- 
+
     // Pass true to enable JavaScript.
     m_webView = FrameTestHelpers::createWebViewAndLoad(m_chromeURL + "history.html", true);
 
@@ -278,7 +278,7 @@
 
     // Pass true to enable JavaScript.
     m_webView = FrameTestHelpers::createWebViewAndLoad(m_baseURL + "postmessage_test.html", true);
-    
+
     // Send a message with the correct origin.
     WebSecurityOrigin correctOrigin(WebSecurityOrigin::create(toKURL(m_baseURL)));
     WebDOMEvent event = m_webView->mainFrame()->document().createEvent("MessageEvent");
@@ -1955,13 +1955,13 @@
     {
     }
 
-    virtual void didCreateFrame(WebFrame* parent, WebFrame* child) 
+    virtual void didCreateFrame(WebFrame* parent, WebFrame* child)
     {
         m_frameCount++;
         if (!m_parent)
             m_parent = parent;
     }
-    
+
     int m_frameCount;
     WebFrame* m_parent;
 };
@@ -1976,7 +1976,7 @@
     TestDidCreateFrameWebFrameClient webFrameClient;
     m_webView = FrameTestHelpers::createWebViewAndLoad(m_baseURL + "iframes_test.html", false, &webFrameClient);
 
-    EXPECT_EQ(webFrameClient.m_frameCount, 3); 
+    EXPECT_EQ(webFrameClient.m_frameCount, 3);
     EXPECT_EQ(webFrameClient.m_parent, m_webView->mainFrame());
 
     m_webView->close();
@@ -3176,7 +3176,7 @@
         EXPECT_TRUE(!m_didAccessInitialDocument);
         m_didAccessInitialDocument = true;
     }
-    
+
     bool m_didAccessInitialDocument;
 };
 
diff --git a/Source/web/tests/WebViewTest.cpp b/Source/web/tests/WebViewTest.cpp
index b55bf1b..09bb6cf 100644
--- a/Source/web/tests/WebViewTest.cpp
+++ b/Source/web/tests/WebViewTest.cpp
@@ -185,6 +185,38 @@
     std::string m_baseURL;
 };
 
+TEST_F(WebViewTest, SetBaseBackgroundColor)
+{
+    const WebColor kWhite    = 0xFFFFFFFF;
+    const WebColor kBlue     = 0xFF0000FF;
+    const WebColor kDarkCyan = 0xFF227788;
+    const WebColor kTranslucentPutty = 0x80BFB196;
+
+    WebView* webView = FrameTestHelpers::createWebView();
+    EXPECT_EQ(kWhite, webView->backgroundColor());
+
+    webView->setBaseBackgroundColor(kBlue);
+    EXPECT_EQ(kBlue, webView->backgroundColor());
+
+    WebURL baseURL = URLTestHelpers::toKURL("http://example.com/");
+    webView->mainFrame()->loadHTMLString(
+        "<html><head><style>body {background-color:#227788}</style></head></html>", baseURL);
+    Platform::current()->unitTestSupport()->serveAsynchronousMockedRequests();
+    EXPECT_EQ(kDarkCyan, webView->backgroundColor());
+
+    webView->mainFrame()->loadHTMLString(
+        "<html><head><style>body {background-color:rgba(255,0,0,0.5)}</style></head></html>", baseURL);
+    Platform::current()->unitTestSupport()->serveAsynchronousMockedRequests();
+    // Expected: red (50% alpha) blended atop base of kBlue.
+    EXPECT_EQ(0xFF7F0080, webView->backgroundColor());
+
+    webView->setBaseBackgroundColor(kTranslucentPutty);
+    // Expected: red (50% alpha) blended atop kTranslucentPutty. Note the alpha.
+    EXPECT_EQ(0xBFE93B32, webView->backgroundColor());
+
+    webView->close();
+}
+
 TEST_F(WebViewTest, FocusIsInactive)
 {
     URLTestHelpers::registerMockedURLFromBaseURL(WebString::fromUTF8(m_baseURL.c_str()), "visible_iframe.html");
diff --git a/Source/web/tests/data/shadow_dom_test.html b/Source/web/tests/data/shadow_dom_test.html
index af97140..c8b83f0 100644
--- a/Source/web/tests/data/shadow_dom_test.html
+++ b/Source/web/tests/data/shadow_dom_test.html
@@ -9,7 +9,7 @@
   <script type="text/javascript">
     window.addEventListener('load', function(e) {
       // Give one of the elements a shadow root.
-      document.getElementById('shadowroot').webkitCreateShadowRoot();
+      document.getElementById('shadowroot').createShadowRoot();
     });
   </script>
 </head>
diff --git a/Source/weborigin/KURL.cpp b/Source/weborigin/KURL.cpp
index 99b20a1..9f330a1 100644
--- a/Source/weborigin/KURL.cpp
+++ b/Source/weborigin/KURL.cpp
@@ -100,7 +100,7 @@
 
     virtual void ConvertFromUTF16(const url_parse::UTF16Char* input, int inputLength, url_canon::CanonOutput* output)
     {
-        CString encoded = m_encoding->encode(String(input, inputLength), WTF::URLEncodedEntitiesForUnencodables);
+        CString encoded = m_encoding->normalizeAndEncode(String(input, inputLength), WTF::URLEncodedEntitiesForUnencodables);
         output->Append(encoded.data(), static_cast<int>(encoded.length()));
     }
 
@@ -602,7 +602,7 @@
 
 String encodeWithURLEscapeSequences(const String& notEncodedString)
 {
-    CString utf8 = UTF8Encoding().encode(notEncodedString, WTF::URLEncodedEntitiesForUnencodables);
+    CString utf8 = UTF8Encoding().normalizeAndEncode(notEncodedString, WTF::URLEncodedEntitiesForUnencodables);
 
     url_canon::RawCanonOutputT<char> buffer;
     int inputLength = utf8.length();
diff --git a/Source/weborigin/KURL.h b/Source/weborigin/KURL.h
index 5515aff..491849a 100644
--- a/Source/weborigin/KURL.h
+++ b/Source/weborigin/KURL.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef KURL_h
diff --git a/Source/weborigin/KURLHash.h b/Source/weborigin/KURLHash.h
index 0cca6c6..0906282 100644
--- a/Source/weborigin/KURLHash.h
+++ b/Source/weborigin/KURLHash.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef KURLHash_h
diff --git a/Source/wtf/ASCIICType.h b/Source/wtf/ASCIICType.h
index 0e69f38..9e19d3c 100644
--- a/Source/wtf/ASCIICType.h
+++ b/Source/wtf/ASCIICType.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/wtf/Alignment.h b/Source/wtf/Alignment.h
index 1fd01ef..6678728 100644
--- a/Source/wtf/Alignment.h
+++ b/Source/wtf/Alignment.h
@@ -39,9 +39,9 @@
 #endif
 
 #if COMPILER(GCC)
-    typedef char __attribute__((__may_alias__)) AlignedBufferChar; 
+    typedef char __attribute__((__may_alias__)) AlignedBufferChar;
 #else
-    typedef char AlignedBufferChar; 
+    typedef char AlignedBufferChar;
 #endif
 
     template<size_t size, size_t alignment> struct AlignedBuffer;
diff --git a/Source/wtf/ArrayBuffer.cpp b/Source/wtf/ArrayBuffer.cpp
index 78616e1..d5b0a24 100644
--- a/Source/wtf/ArrayBuffer.cpp
+++ b/Source/wtf/ArrayBuffer.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/wtf/ArrayBuffer.h b/Source/wtf/ArrayBuffer.h
index 0306f12..1c5910f 100644
--- a/Source/wtf/ArrayBuffer.h
+++ b/Source/wtf/ArrayBuffer.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ArrayBuffer_h
diff --git a/Source/wtf/ArrayBufferView.cpp b/Source/wtf/ArrayBufferView.cpp
index 66759de..6c2c9bc 100644
--- a/Source/wtf/ArrayBufferView.cpp
+++ b/Source/wtf/ArrayBufferView.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -38,7 +38,7 @@
         , m_nextView(0)
 {
     m_baseAddress = m_buffer ? (static_cast<char*>(m_buffer->data()) + m_byteOffset) : 0;
-    if (m_buffer) 
+    if (m_buffer)
         m_buffer->addView(this);
 }
 
diff --git a/Source/wtf/ArrayBufferView.h b/Source/wtf/ArrayBufferView.h
index 769f5b6..21698b3 100644
--- a/Source/wtf/ArrayBufferView.h
+++ b/Source/wtf/ArrayBufferView.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ArrayBufferView_h
@@ -145,7 +145,7 @@
         // Out of range offset or overflow
         return false;
     }
-    
+
     char* base = static_cast<char*>(baseAddress());
     memmove(base + byteOffset, array->baseAddress(), array->byteLength());
     return true;
@@ -159,7 +159,7 @@
         // Out of range offset or overflow
         return false;
     }
-    
+
     char* base = static_cast<char*>(baseAddress());
     memmove(base + byteOffset, data, dataByteLength);
     return true;
@@ -173,7 +173,7 @@
         // Out of range offset or overflow
         return false;
     }
-    
+
     char* base = static_cast<char*>(baseAddress());
     memset(base + byteOffset, 0, rangeByteLength);
     return true;
diff --git a/Source/wtf/Assertions.h b/Source/wtf/Assertions.h
index 5508bfd..2382c08 100644
--- a/Source/wtf/Assertions.h
+++ b/Source/wtf/Assertions.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_Assertions_h
@@ -97,7 +97,7 @@
 #if COMPILER(GCC) && !defined(__OBJC__)
 #define WTF_ATTRIBUTE_PRINTF(formatStringArgument, extraArguments) __attribute__((__format__(printf, formatStringArgument, extraArguments)))
 #else
-#define WTF_ATTRIBUTE_PRINTF(formatStringArgument, extraArguments) 
+#define WTF_ATTRIBUTE_PRINTF(formatStringArgument, extraArguments)
 #endif
 
 /* These helper functions are always declared, but not necessarily always defined if the corresponding function is disabled. */
diff --git a/Source/wtf/Atomics.h b/Source/wtf/Atomics.h
index a26c972..81df4e3 100644
--- a/Source/wtf/Atomics.h
+++ b/Source/wtf/Atomics.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/wtf/AutodrainedPool.h b/Source/wtf/AutodrainedPool.h
index 2f84cff..1addbb2 100644
--- a/Source/wtf/AutodrainedPool.h
+++ b/Source/wtf/AutodrainedPool.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -42,14 +42,14 @@
 #if OS(DARWIN)
     WTF_EXPORT explicit AutodrainedPool(int iterationLimit = 1);
     WTF_EXPORT ~AutodrainedPool();
-    
+
     WTF_EXPORT void cycle();
 #else
     AutodrainedPool() { }
     ~AutodrainedPool() { }
     void cycle() { }
 #endif
-    
+
 private:
 #if OS(DARWIN)
     int m_iterationLimit;
diff --git a/Source/wtf/BitArray.h b/Source/wtf/BitArray.h
index 05f0845..f109515 100644
--- a/Source/wtf/BitArray.h
+++ b/Source/wtf/BitArray.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef BitArray_h
diff --git a/Source/wtf/BitVector.cpp b/Source/wtf/BitVector.cpp
index 43fad98..92299d9 100644
--- a/Source/wtf/BitVector.cpp
+++ b/Source/wtf/BitVector.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -54,13 +54,13 @@
     if (numBits <= maxInlineBits()) {
         if (isInline())
             return;
-    
+
         OutOfLineBits* myOutOfLineBits = outOfLineBits();
         m_bitsOrPointer = makeInlineBits(*myOutOfLineBits->bits());
         OutOfLineBits::destroy(myOutOfLineBits);
         return;
     }
-    
+
     resizeOutOfLine(numBits);
 }
 
diff --git a/Source/wtf/BitVector.h b/Source/wtf/BitVector.h
index 6d386b0..556dff0 100644
--- a/Source/wtf/BitVector.h
+++ b/Source/wtf/BitVector.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef BitVector_h
@@ -56,32 +56,32 @@
 // space.
 
 class WTF_EXPORT BitVector {
-public: 
+public:
     BitVector()
         : m_bitsOrPointer(makeInlineBits(0))
     {
     }
-    
+
     explicit BitVector(size_t numBits)
         : m_bitsOrPointer(makeInlineBits(0))
     {
         ensureSize(numBits);
     }
-    
+
     BitVector(const BitVector& other)
         : m_bitsOrPointer(makeInlineBits(0))
     {
         (*this) = other;
     }
 
-    
+
     ~BitVector()
     {
         if (isInline())
             return;
         OutOfLineBits::destroy(outOfLineBits());
     }
-    
+
     BitVector& operator=(const BitVector& other)
     {
         if (isInline() && other.isInline())
@@ -104,10 +104,10 @@
             return;
         resizeOutOfLine(numBits);
     }
-    
+
     // Like ensureSize(), but supports reducing the size of the bitvector.
     void resize(size_t numBits);
-    
+
     void clearAll();
 
     bool quickGet(size_t bit) const
@@ -115,19 +115,19 @@
         ASSERT_WITH_SECURITY_IMPLICATION(bit < size());
         return !!(bits()[bit / bitsInPointer()] & (static_cast<uintptr_t>(1) << (bit & (bitsInPointer() - 1))));
     }
-    
+
     void quickSet(size_t bit)
     {
         ASSERT_WITH_SECURITY_IMPLICATION(bit < size());
         bits()[bit / bitsInPointer()] |= (static_cast<uintptr_t>(1) << (bit & (bitsInPointer() - 1)));
     }
-    
+
     void quickClear(size_t bit)
     {
         ASSERT_WITH_SECURITY_IMPLICATION(bit < size());
         bits()[bit / bitsInPointer()] &= ~(static_cast<uintptr_t>(1) << (bit & (bitsInPointer() - 1)));
     }
-    
+
     void quickSet(size_t bit, bool value)
     {
         if (value)
@@ -135,14 +135,14 @@
         else
             quickClear(bit);
     }
-    
+
     bool get(size_t bit) const
     {
         if (bit >= size())
             return false;
         return quickGet(bit);
     }
-    
+
     void set(size_t bit)
     {
         ensureSize(bit + 1);
@@ -161,7 +161,7 @@
             return;
         quickClear(bit);
     }
-    
+
     void set(size_t bit, bool value)
     {
         if (value)
@@ -169,9 +169,9 @@
         else
             clear(bit);
     }
-    
+
     void dump(PrintStream& out);
-    
+
 private:
     static unsigned bitsInPointer()
     {
@@ -193,16 +193,16 @@
         ASSERT(!(bits & (static_cast<uintptr_t>(1) << maxInlineBits())));
         return bits | (static_cast<uintptr_t>(1) << maxInlineBits());
     }
-    
+
     class OutOfLineBits {
     public:
         size_t numBits() const { return m_numBits; }
         size_t numWords() const { return (m_numBits + bitsInPointer() - 1) / bitsInPointer(); }
         uintptr_t* bits() { return bitwise_cast<uintptr_t*>(this + 1); }
         const uintptr_t* bits() const { return bitwise_cast<const uintptr_t*>(this + 1); }
-        
+
         static OutOfLineBits* create(size_t numBits);
-        
+
         static void destroy(OutOfLineBits*);
 
     private:
@@ -210,32 +210,32 @@
             : m_numBits(numBits)
         {
         }
-        
+
         size_t m_numBits;
     };
-    
+
     bool isInline() const { return m_bitsOrPointer >> maxInlineBits(); }
-    
+
     const OutOfLineBits* outOfLineBits() const { return bitwise_cast<const OutOfLineBits*>(m_bitsOrPointer << 1); }
     OutOfLineBits* outOfLineBits() { return bitwise_cast<OutOfLineBits*>(m_bitsOrPointer << 1); }
-    
+
     void resizeOutOfLine(size_t numBits);
     void setSlow(const BitVector& other);
-    
+
     uintptr_t* bits()
     {
         if (isInline())
             return &m_bitsOrPointer;
         return outOfLineBits()->bits();
     }
-    
+
     const uintptr_t* bits() const
     {
         if (isInline())
             return &m_bitsOrPointer;
         return outOfLineBits()->bits();
     }
-    
+
     uintptr_t m_bitsOrPointer;
 };
 
diff --git a/Source/wtf/BloomFilter.h b/Source/wtf/BloomFilter.h
index 333687d..72f4d66 100644
--- a/Source/wtf/BloomFilter.h
+++ b/Source/wtf/BloomFilter.h
@@ -32,7 +32,7 @@
 namespace WTF {
 
 // Counting bloom filter with k=2 and 8 bit counters. Uses 2^keyBits bytes of memory.
-// False positive rate is approximately (1-e^(-2n/m))^2, where n is the number of unique 
+// False positive rate is approximately (1-e^(-2n/m))^2, where n is the number of unique
 // keys and m is the table size (==2^keyBits).
 template <unsigned keyBits>
 class BloomFilter {
@@ -42,7 +42,7 @@
     static const size_t tableSize = 1 << keyBits;
     static const unsigned keyMask = (1 << keyBits) - 1;
     static uint8_t maximumCount() { return std::numeric_limits<uint8_t>::max(); }
-    
+
     BloomFilter() { clear(); }
 
     void add(unsigned hash);
@@ -51,7 +51,7 @@
     // The filter may give false positives (claim it may contain a key it doesn't)
     // but never false negatives (claim it doesn't contain a key it does).
     bool mayContain(unsigned hash) const { return firstSlot(hash) && secondSlot(hash); }
-    
+
     // The filter must be cleared before reuse even if all keys are removed.
     // Otherwise overflowed keys will stick around.
     void clear();
@@ -78,7 +78,7 @@
 
     uint8_t m_table[tableSize];
 };
-    
+
 template <unsigned keyBits>
 inline void BloomFilter<keyBits>::add(unsigned hash)
 {
@@ -103,7 +103,7 @@
     if (LIKELY(second < maximumCount()))
         --second;
 }
-    
+
 template <unsigned keyBits>
 inline void BloomFilter<keyBits>::clear()
 {
diff --git a/Source/wtf/CheckedArithmetic.h b/Source/wtf/CheckedArithmetic.h
index e16abb7..e2e1ba0 100644
--- a/Source/wtf/CheckedArithmetic.h
+++ b/Source/wtf/CheckedArithmetic.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CheckedArithmetic_h
@@ -72,7 +72,7 @@
     DidOverflow,
     DidNotOverflow
 } ENUM_CLASS_END(CheckedState);
-    
+
 class CrashOnOverflow {
 protected:
     NO_RETURN_DUE_TO_CRASH void overflowed()
@@ -141,7 +141,7 @@
             return false;
         // If our (unsigned) Target is the same or greater width we can
         // convert value to type Target without losing precision
-        if (sizeof(Target) >= sizeof(Source)) 
+        if (sizeof(Target) >= sizeof(Source))
             return static_cast<Target>(value) <= std::numeric_limits<Target>::max();
         // The signed Source type has greater precision than the target so
         // max(Target) -> Source will widen.
@@ -153,7 +153,7 @@
     static bool inBounds(Source value)
     {
         // Signed target with an unsigned source
-        if (sizeof(Target) <= sizeof(Source)) 
+        if (sizeof(Target) <= sizeof(Source))
             return value <= static_cast<Source>(std::numeric_limits<Target>::max());
         // Target is Wider than Source so we're guaranteed to fit any value in
         // unsigned Source
@@ -175,7 +175,7 @@
 
 template <typename T> struct RemoveChecked {
     typedef T CleanType;
-    static const CleanType DefaultValue = 0;    
+    static const CleanType DefaultValue = 0;
 };
 
 template <typename T> struct RemoveChecked<Checked<T, CrashOnOverflow> > {
@@ -227,7 +227,7 @@
 template <typename U, typename V> struct Result : ResultBase<typename RemoveChecked<U>::CleanType, typename RemoveChecked<V>::CleanType> {
 };
 
-template <typename LHS, typename RHS, typename ResultType = typename Result<LHS, RHS>::ResultType, 
+template <typename LHS, typename RHS, typename ResultType = typename Result<LHS, RHS>::ResultType,
     bool lhsSigned = std::numeric_limits<LHS>::is_signed, bool rhsSigned = std::numeric_limits<RHS>::is_signed> struct ArithmeticOperations;
 
 template <typename LHS, typename RHS, typename ResultType> struct ArithmeticOperations<LHS, RHS, ResultType, true, true> {
@@ -346,7 +346,7 @@
         result = static_cast<ResultType>(temp);
         return true;
     }
-    
+
     static inline bool sub(int64_t lhs, int64_t rhs, ResultType& result)
     {
         int64_t temp = lhs - rhs;
@@ -380,7 +380,7 @@
     {
         return ArithmeticOperations<int, unsigned, ResultType>::add(rhs, lhs, result);
     }
-    
+
     static inline bool sub(int64_t lhs, int64_t rhs, ResultType& result)
     {
         return ArithmeticOperations<int, unsigned, ResultType>::sub(lhs, rhs, result);
@@ -418,7 +418,7 @@
 }
 
 enum ResultOverflowedTag { ResultOverflowed };
-    
+
 // FIXME: Needed to workaround http://llvm.org/bugs/show_bug.cgi?id=10801
 static inline bool workAroundClangBug() { return true; }
 
@@ -444,14 +444,14 @@
             this->overflowed();
         m_value = static_cast<T>(value);
     }
-    
+
     template <typename V> Checked(const Checked<T, V>& rhs)
         : m_value(rhs.m_value)
     {
         if (rhs.hasOverflowed())
             this->overflowed();
     }
-    
+
     template <typename U> Checked(const Checked<U, OverflowHandler>& rhs)
         : OverflowHandler(rhs)
     {
@@ -459,7 +459,7 @@
             this->overflowed();
         m_value = static_cast<T>(rhs.m_value);
     }
-    
+
     template <typename U, typename V> Checked(const Checked<U, V>& rhs)
     {
         if (rhs.hasOverflowed())
@@ -468,7 +468,7 @@
             this->overflowed();
         m_value = static_cast<T>(rhs.m_value);
     }
-    
+
     const Checked& operator=(Checked rhs)
     {
         this->clearOverflow();
@@ -477,17 +477,17 @@
         m_value = static_cast<T>(rhs.m_value);
         return *this;
     }
-    
+
     template <typename U> const Checked& operator=(U value)
     {
         return *this = Checked(value);
     }
-    
+
     template <typename U, typename V> const Checked& operator=(const Checked<U, V>& rhs)
     {
         return *this = Checked(rhs);
     }
-    
+
     // prefix
     const Checked& operator++()
     {
@@ -496,7 +496,7 @@
         m_value++;
         return *this;
     }
-    
+
     const Checked& operator--()
     {
         if (m_value == std::numeric_limits<T>::min())
@@ -504,7 +504,7 @@
         m_value--;
         return *this;
     }
-    
+
     // postfix operators
     const Checked operator++(int)
     {
@@ -512,14 +512,14 @@
             this->overflowed();
         return Checked(m_value++);
     }
-    
+
     const Checked operator--(int)
     {
         if (m_value == std::numeric_limits<T>::min())
             this->overflowed();
         return Checked(m_value--);
     }
-    
+
     // Boolean operators
     bool operator!() const
     {
@@ -543,7 +543,7 @@
             CRASH();
         return m_value;
     }
-    
+
     inline CheckedState safeGet(T& value) const WARN_UNUSED_RETURN
     {
         value = m_value;
@@ -588,7 +588,7 @@
     {
         return *this *= (double)rhs;
     }
-    
+
     template <typename U, typename V> const Checked operator+=(Checked<U, V> rhs)
     {
         if (rhs.hasOverflowed())
@@ -622,7 +622,7 @@
             this->overflowed();
         return safeEquals(m_value, rhs);
     }
-    
+
     template <typename U, typename V> const Checked operator==(Checked<U, V> rhs)
     {
         return unsafeGet() == Checked(rhs.unsafeGet());
diff --git a/Source/wtf/Compiler.h b/Source/wtf/Compiler.h
index 6c52da8..231cbd2 100644
--- a/Source/wtf/Compiler.h
+++ b/Source/wtf/Compiler.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_Compiler_h
diff --git a/Source/wtf/DataLog.cpp b/Source/wtf/DataLog.cpp
index e36204e..cba3567 100644
--- a/Source/wtf/DataLog.cpp
+++ b/Source/wtf/DataLog.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -70,7 +70,7 @@
 #endif // DATA_LOG_TO_FILE
     if (!file)
         file = new FilePrintStream(stderr, FilePrintStream::Borrow);
-    
+
     setvbuf(file->file(), 0, _IONBF, 0); // Prefer unbuffered output, so that we get a full log upon crash or deadlock.
 }
 
diff --git a/Source/wtf/DataLog.h b/Source/wtf/DataLog.h
index 2550e2f..d0682e9 100644
--- a/Source/wtf/DataLog.h
+++ b/Source/wtf/DataLog.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DataLog_h
diff --git a/Source/wtf/DateMath.cpp b/Source/wtf/DateMath.cpp
index 9eb23c7..b632763 100644
--- a/Source/wtf/DateMath.cpp
+++ b/Source/wtf/DateMath.cpp
@@ -575,7 +575,7 @@
     if (*postParsePosition != '-')
         return postParsePosition;
     currentPosition = postParsePosition + 1;
-    
+
     if (!isASCIIDigit(*currentPosition))
         return 0;
     if (!parseLong(currentPosition, &postParsePosition, 10, &month))
@@ -587,7 +587,7 @@
     if (*postParsePosition != '-')
         return postParsePosition;
     currentPosition = postParsePosition + 1;
-    
+
     if (!isASCIIDigit(*currentPosition))
         return 0;
     if (!parseLong(currentPosition, &postParsePosition, 10, &day))
@@ -610,7 +610,7 @@
     if (*postParsePosition != ':' || (postParsePosition - currentPosition) != 2)
         return 0;
     currentPosition = postParsePosition + 1;
-    
+
     if (!isASCIIDigit(*currentPosition))
         return 0;
     if (!parseLong(currentPosition, &postParsePosition, 10, &minutes))
@@ -622,7 +622,7 @@
     // Seconds are optional.
     if (*currentPosition == ':') {
         ++currentPosition;
-    
+
         long intSeconds;
         if (!isASCIIDigit(*currentPosition))
             return 0;
@@ -633,18 +633,18 @@
         seconds = intSeconds;
         if (*postParsePosition == '.') {
             currentPosition = postParsePosition + 1;
-            
+
             // In ECMA-262-5 it's a bit unclear if '.' can be present without milliseconds, but
             // a reasonable interpretation guided by the given examples and RFC 3339 says "no".
             // We check the next character to avoid reading +/- timezone hours after an invalid decimal.
             if (!isASCIIDigit(*currentPosition))
                 return 0;
-            
+
             // We are more lenient than ES5 by accepting more or less than 3 fraction digits.
             long fracSeconds;
             if (!parseLong(currentPosition, &postParsePosition, 10, &fracSeconds))
                 return 0;
-            
+
             long numFracDigits = postParsePosition - currentPosition;
             seconds += fracSeconds * pow(10.0, static_cast<double>(-numFracDigits));
         }
@@ -662,11 +662,11 @@
     else
         return currentPosition; // no timezone
     ++currentPosition;
-    
+
     long tzHours;
     long tzHoursAbs;
     long tzMinutes;
-    
+
     if (!isASCIIDigit(*currentPosition))
         return 0;
     if (!parseLong(currentPosition, &postParsePosition, 10, &tzHours))
@@ -675,7 +675,7 @@
         return 0;
     tzHoursAbs = labs(tzHours);
     currentPosition = postParsePosition + 1;
-    
+
     if (!isASCIIDigit(*currentPosition))
         return 0;
     if (!parseLong(currentPosition, &postParsePosition, 10, &tzMinutes))
@@ -683,12 +683,12 @@
     if ((postParsePosition - currentPosition) != 2)
         return 0;
     currentPosition = postParsePosition;
-    
+
     if (tzHoursAbs > 24)
         return 0;
     if (tzMinutes < 0 || tzMinutes > 59)
         return 0;
-    
+
     timeZoneSeconds = 60 * (tzMinutes + (60 * tzHoursAbs));
     if (tzNegative)
         timeZoneSeconds = -timeZoneSeconds;
@@ -701,9 +701,9 @@
     // This parses a date of the form defined in ECMA-262-5, section 15.9.1.15
     // (similar to RFC 3339 / ISO 8601: YYYY-MM-DDTHH:mm:ss[.sss]Z).
     // In most cases it is intentionally strict (e.g. correct field widths, no stray whitespace).
-    
+
     static const long daysPerMonth[12] = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
-    
+
     // The year must be present, but the other fields may be omitted - see ES5.1 15.9.1.15.
     int year = 0;
     long month = 1;
@@ -748,7 +748,7 @@
         // Discard leap seconds by clamping to the end of a minute.
         seconds = 60;
     }
-        
+
     double dateSeconds = ymdhmsToSeconds(year, month, day, hours, minutes, seconds) - timeZoneSeconds;
     return dateSeconds * msPerSecond;
 }
@@ -772,7 +772,7 @@
     //     [Wednesday] January 09 23:12:40 GMT 1999
     //
     // We ignore the weekday.
-     
+
     // Skip leading space
     skipSpacesAndComments(dateString);
 
@@ -960,7 +960,7 @@
             }
         }
     }
-    
+
     // The year may be after the time but before the time zone.
     if (isASCIIDigit(*dateString) && year == -1) {
         if (!parseInt(dateString, &newPosStr, 10, &year))
@@ -969,7 +969,7 @@
         skipSpacesAndComments(dateString);
     }
 
-    // Don't fail if the time zone is missing. 
+    // Don't fail if the time zone is missing.
     // Some websites omit the time zone (4275206).
     if (*dateString) {
         if (strncasecmp(dateString, "GMT", 3) == 0 || strncasecmp(dateString, "UTC", 3) == 0) {
@@ -1034,7 +1034,7 @@
         else
             year += 1900;
     }
-    
+
     return ymdhmsToSeconds(year, month + 1, day, hour, minute, second) * msPerSecond;
 }
 
diff --git a/Source/wtf/DateMath.h b/Source/wtf/DateMath.h
index 30d60ae..08fd3cb 100644
--- a/Source/wtf/DateMath.h
+++ b/Source/wtf/DateMath.h
@@ -65,7 +65,7 @@
 WTF_EXPORT double parseDateFromNullTerminatedCharacters(const char* dateString);
 WTF_EXPORT double parseDateFromNullTerminatedCharacters(const char* dateString, bool& haveTZ, int& offset);
 WTF_EXPORT double timeClip(double);
-// dayOfWeek: [0, 6] 0 being Monday, day: [1, 31], month: [0, 11], year: ex: 2011, hours: [0, 23], minutes: [0, 59], seconds: [0, 59], utcOffset: [-720,720]. 
+// dayOfWeek: [0, 6] 0 being Monday, day: [1, 31], month: [0, 11], year: ex: 2011, hours: [0, 23], minutes: [0, 59], seconds: [0, 59], utcOffset: [-720,720].
 WTF_EXPORT String makeRFC2822DateString(unsigned dayOfWeek, unsigned day, unsigned month, unsigned year, unsigned hours, unsigned minutes, unsigned seconds, int utcOffset);
 
 inline double jsCurrentTime()
diff --git a/Source/wtf/DecimalNumber.cpp b/Source/wtf/DecimalNumber.cpp
index 03e2fde..75525a7 100644
--- a/Source/wtf/DecimalNumber.cpp
+++ b/Source/wtf/DecimalNumber.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/wtf/DecimalNumber.h b/Source/wtf/DecimalNumber.h
index dd68d67..2008dad 100644
--- a/Source/wtf/DecimalNumber.h
+++ b/Source/wtf/DecimalNumber.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef DecimalNumber_h
diff --git a/Source/wtf/DoublyLinkedList.h b/Source/wtf/DoublyLinkedList.h
index cd067ef..1c82226 100644
--- a/Source/wtf/DoublyLinkedList.h
+++ b/Source/wtf/DoublyLinkedList.h
@@ -32,10 +32,10 @@
 template<typename T> class DoublyLinkedListNode {
 public:
     DoublyLinkedListNode();
-    
+
     void setPrev(T*);
     void setNext(T*);
-    
+
     T* prev() const;
     T* next() const;
 };
@@ -69,7 +69,7 @@
 template<typename T> class DoublyLinkedList {
 public:
     DoublyLinkedList();
-    
+
     bool isEmpty() const;
     size_t size() const; // This is O(n).
     void clear();
diff --git a/Source/wtf/EnumClass.h b/Source/wtf/EnumClass.h
index b268f1b..33e3884 100644
--- a/Source/wtf/EnumClass.h
+++ b/Source/wtf/EnumClass.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_EnumClass_h
diff --git a/Source/wtf/FastMalloc.cpp b/Source/wtf/FastMalloc.cpp
index 6754d93..f2b882d 100644
--- a/Source/wtf/FastMalloc.cpp
+++ b/Source/wtf/FastMalloc.cpp
@@ -1,11 +1,11 @@
 // Copyright (c) 2005, 2007, Google Inc.
 // All rights reserved.
 // Copyright (C) 2005, 2006, 2007, 2008, 2009, 2011 Apple Inc. All rights reserved.
-// 
+//
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions are
 // met:
-// 
+//
 //     * Redistributions of source code must retain the above copyright
 // notice, this list of conditions and the following disclaimer.
 //     * Redistributions in binary form must reproduce the above
@@ -15,7 +15,7 @@
 //     * Neither the name of Google Inc. nor the names of its
 // contributors may be used to endorse or promote products derived from
 // this software without specific prior written permission.
-// 
+//
 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -201,7 +201,7 @@
 } // namespace Internal
 
 
-void* fastZeroedMalloc(size_t n) 
+void* fastZeroedMalloc(size_t n)
 {
     void* result = fastMalloc(n);
     memset(result, 0, n);
@@ -216,7 +216,7 @@
     return dup;
 }
 
-TryMallocReturnValue tryFastZeroedMalloc(size_t n) 
+TryMallocReturnValue tryFastZeroedMalloc(size_t n)
 {
     void* result;
     if (!tryFastMalloc(n).getValue(result))
@@ -246,7 +246,7 @@
 #endif
 }
 
-TryMallocReturnValue tryFastMalloc(size_t n) 
+TryMallocReturnValue tryFastMalloc(size_t n)
 {
     ASSERT(!isForbidden());
 
@@ -270,7 +270,7 @@
 #endif
 }
 
-void* fastMalloc(size_t n) 
+void* fastMalloc(size_t n)
 {
     ASSERT(!isForbidden());
 
@@ -334,7 +334,7 @@
 #if ENABLE(WTF_MALLOC_VALIDATION)
     if (!p)
         return;
-    
+
     fastMallocMatchValidateFree(p, Internal::AllocTypeMalloc);
     Internal::ValidationHeader* header = Internal::fastMallocValidationHeader(p);
     memset(p, 0xCC, header->m_size);
@@ -388,7 +388,7 @@
 }
 
 void releaseFastMallocFreeMemory() { }
-    
+
 FastMallocStatistics fastMallocStatistics()
 {
     FastMallocStatistics statistics = { 0, 0, 0 };
@@ -471,10 +471,10 @@
   char FLAGS_no##name;                                                        \
   }                                                                           \
   using FLAG__namespace_do_not_use_directly_use_DECLARE_##type##_instead::FLAGS_##name
-  
+
 #define DEFINE_int64(name, value, meaning) \
   DEFINE_VARIABLE(int64_t, name, value, meaning)
-  
+
 #define DEFINE_double(name, value, meaning) \
   DEFINE_VARIABLE(double, name, value, meaning)
 
@@ -520,7 +520,7 @@
     MaskKeyShift = 13
 };
 
-static ALWAYS_INLINE uintptr_t internalEntropyValue() 
+static ALWAYS_INLINE uintptr_t internalEntropyValue()
 {
     static uintptr_t value = EntropySource<sizeof(uintptr_t)>::value() | 1;
     ASSERT(value);
@@ -1517,7 +1517,7 @@
 };
 
 #if CPU(X86_64)
-// On all known X86-64 platforms, the upper 16 bits are always unused and therefore 
+// On all known X86-64 platforms, the upper 16 bits are always unused and therefore
 // can be excluded from the PageMap key.
 // See http://en.wikipedia.org/wiki/X86-64#Virtual_address_space_details
 
@@ -1619,7 +1619,7 @@
       pagemap_.Ensure(p, 1);
       return GetDescriptor(p);
   }
-    
+
   size_t ReturnedBytes() const;
 
   // Return number of bytes allocated from system
@@ -1703,7 +1703,7 @@
       pagemap_.set(span->start + span->length - 1, span);
     }
   }
-  
+
     // Allocate a large span of length == n.  If successful, returns a
   // span of exactly the specified length.  Else, returns NULL.
   Span* AllocLarge(Length n);
@@ -1719,7 +1719,7 @@
 
   // Index of last free list we scavenged
   size_t scavenge_index_;
-  
+
 #if OS(DARWIN)
   friend class FastMallocZone;
 #endif
@@ -1745,7 +1745,7 @@
 #elif OS(WINDOWS)
   static void CALLBACK scavengerTimerFired(void*, BOOLEAN);
   HANDLE m_scavengeQueueTimer;
-#else 
+#else
   static NO_RETURN_WITH_VALUE void* runScavengerThread(void*);
   NO_RETURN void scavengerThread();
 
@@ -1904,7 +1904,7 @@
 
 ALWAYS_INLINE void TCMalloc_PageHeap::signalScavenger()
 {
-    // shouldScavenge() should be called only when the pageheap_lock spinlock is held, additionally, 
+    // shouldScavenge() should be called only when the pageheap_lock spinlock is held, additionally,
     // m_scavengeThreadActive is only set to false whilst pageheap_lock is held. The caller must ensure this is
     // taken prior to calling this method. If the scavenger thread is sleeping and shouldScavenge() indicates there
     // is memory to free the scavenger thread is signalled to start.
@@ -1925,7 +1925,7 @@
         ASSERT(Check());
         for (int i = kMaxPages; i > 0 && free_committed_pages_ >= targetPageCount; i--) {
             SpanList* slist = (static_cast<size_t>(i) == kMaxPages) ? &large_ : &free_[i];
-            // If the span size is bigger than kMinSpanListsWithSpans pages return all the spans in the list, else return all but 1 span.  
+            // If the span size is bigger than kMinSpanListsWithSpans pages return all the spans in the list, else return all but 1 span.
             // Return only 50% of a spanlist at a time so spans of size 1 are not the only ones left.
             size_t length = DLL_Length(&slist->normal, entropy_);
             size_t numSpansToReturn = (i > kMinSpanListsWithSpans) ? length : length / 2;
@@ -1952,9 +1952,9 @@
     min_free_committed_pages_since_last_scavenge_ = free_committed_pages_;
 }
 
-ALWAYS_INLINE bool TCMalloc_PageHeap::shouldScavenge() const 
+ALWAYS_INLINE bool TCMalloc_PageHeap::shouldScavenge() const
 {
-    return free_committed_pages_ > kMinimumFreeCommittedPageCount; 
+    return free_committed_pages_ > kMinimumFreeCommittedPageCount;
 }
 
 #endif  // USE_BACKGROUND_THREAD_TO_SCAVENGE_MEMORY
@@ -1986,7 +1986,7 @@
     // free committed pages count.
     ASSERT(free_committed_pages_ >= n);
     free_committed_pages_ -= n;
-    if (free_committed_pages_ < min_free_committed_pages_since_last_scavenge_) 
+    if (free_committed_pages_ < min_free_committed_pages_since_last_scavenge_)
       min_free_committed_pages_since_last_scavenge_ = free_committed_pages_;
 #endif  // USE_BACKGROUND_THREAD_TO_SCAVENGE_MEMORY
     ASSERT(Check());
@@ -2092,7 +2092,7 @@
     free_committed_pages_ += span->length;
 #endif
   }
-  
+
   const int extra = static_cast<int>(span->length - n);
   ASSERT(extra >= 0);
   if (extra > 0) {
@@ -2267,7 +2267,7 @@
     pagemap_.set(span->start+i, span);
   }
 }
-    
+
 size_t TCMalloc_PageHeap::ReturnedBytes() const {
     size_t result = 0;
     for (unsigned s = 0; s < kMaxPages; s++) {
@@ -2275,7 +2275,7 @@
         unsigned r_pages = s * r_length;
         result += r_pages << kPageShift;
     }
-    
+
     for (Span* s = large_.returned.next(entropy_); s != &large_.returned; s = s->next(entropy_))
         result += s->length << kPageShift;
     return result;
@@ -2399,7 +2399,7 @@
 
 #if USE_BACKGROUND_THREAD_TO_SCAVENGE_MEMORY
     free_committed_pages_ -= freePageReduction;
-    if (free_committed_pages_ < min_free_committed_pages_since_last_scavenge_) 
+    if (free_committed_pages_ < min_free_committed_pages_since_last_scavenge_)
         min_free_committed_pages_since_last_scavenge_ = free_committed_pages_;
 #endif
 }
@@ -3287,7 +3287,7 @@
   tlsIndex = TlsAlloc();
 #endif
   tsd_inited = true;
-    
+
 #if !OS(WINDOWS)
   // We may have used a fake pthread_t for the main thread.  Fix it.
   pthread_t zero;
@@ -3679,7 +3679,7 @@
 ALWAYS_INLINE
 void* calloc(size_t n, size_t elem_size) {
   size_t totalBytes = n * elem_size;
-    
+
   // Protect against overflow
   if (n > 1 && elem_size && (totalBytes / elem_size) != n)
     return 0;
diff --git a/Source/wtf/FastMalloc.h b/Source/wtf/FastMalloc.h
index 7bdeebe..c03e05e 100644
--- a/Source/wtf/FastMalloc.h
+++ b/Source/wtf/FastMalloc.h
@@ -51,15 +51,15 @@
         ~TryMallocReturnValue() { ASSERT(!m_data); }
         template <typename T> bool getValue(T& data) WARN_UNUSED_RETURN;
         template <typename T> operator PossiblyNull<T>()
-        { 
-            T value; 
-            getValue(value); 
+        {
+            T value;
+            getValue(value);
             return PossiblyNull<T>(value);
-        } 
+        }
     private:
         mutable void* m_data;
     };
-    
+
     template <typename T> bool TryMallocReturnValue::getValue(T& data)
     {
         union u { void* data; T target; } res;
@@ -77,13 +77,13 @@
 
     WTF_EXPORT void fastFree(void*);
 
-#ifndef NDEBUG    
+#ifndef NDEBUG
     WTF_EXPORT void fastMallocForbid();
     WTF_EXPORT void fastMallocAllow();
 #endif
 
     WTF_EXPORT void releaseFastMallocFreeMemory();
-    
+
     struct FastMallocStatistics {
         size_t reservedVMBytes;
         size_t committedVMBytes;
@@ -138,7 +138,7 @@
     // is implemented.
 
     namespace Internal {
-    
+
         // Handle a detected alloc/free mismatch. By default this calls CRASH().
         void fastMallocMatchFailed(void* p);
 
@@ -152,7 +152,7 @@
             ValidationHeader* header = fastMallocValidationHeader(p);
             if (header->m_prefix != static_cast<unsigned>(ValidationPrefix))
                 fastMallocMatchFailed(p);
-            
+
             return reinterpret_cast<ValidationTag*>(static_cast<char*>(p) + header->m_size);
         }
 
@@ -184,7 +184,7 @@
     {
         if (!p)
             return;
-    
+
         Internal::ValidationHeader* header = Internal::fastMallocValidationHeader(p);
         if (header->m_prefix != static_cast<unsigned>(Internal::ValidationPrefix))
             Internal::fastMallocMatchFailed(p);
@@ -199,11 +199,11 @@
     {
         if (!p)
             return;
-        
+
         Internal::ValidationHeader* header = Internal::fastMallocValidationHeader(p);
         if (header->m_prefix != static_cast<unsigned>(Internal::ValidationPrefix))
             Internal::fastMallocMatchFailed(p);
-        
+
         if (*Internal::fastMallocValidationSuffix(p) != Internal::ValidationSuffix)
             Internal::fastMallocMatchFailed(p);
     }
@@ -234,7 +234,7 @@
 using WTF::tryFastRealloc;
 using WTF::tryFastZeroedMalloc;
 
-#ifndef NDEBUG    
+#ifndef NDEBUG
 using WTF::fastMallocForbid;
 using WTF::fastMallocAllow;
 #endif
diff --git a/Source/wtf/FilePrintStream.cpp b/Source/wtf/FilePrintStream.cpp
index b5ab25e..b2b2967 100644
--- a/Source/wtf/FilePrintStream.cpp
+++ b/Source/wtf/FilePrintStream.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -46,7 +46,7 @@
     FILE* file = fopen(filename, mode);
     if (!file)
         return PassOwnPtr<FilePrintStream>();
-    
+
     return adoptPtr(new FilePrintStream(file));
 }
 
diff --git a/Source/wtf/FilePrintStream.h b/Source/wtf/FilePrintStream.h
index 0482d0f..eae458a 100644
--- a/Source/wtf/FilePrintStream.h
+++ b/Source/wtf/FilePrintStream.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef FilePrintStream_h
@@ -38,14 +38,14 @@
         Adopt,
         Borrow
     };
-    
+
     FilePrintStream(FILE*, AdoptionMode = Adopt);
     virtual ~FilePrintStream();
-    
+
     static PassOwnPtr<FilePrintStream> open(const char* filename, const char* mode);
-    
+
     FILE* file() { return m_file; }
-    
+
     void vprintf(const char* format, va_list) WTF_ATTRIBUTE_PRINTF(2, 0);
     void flush();
 
diff --git a/Source/wtf/Float32Array.h b/Source/wtf/Float32Array.h
index 3054ffb..df5176b 100644
--- a/Source/wtf/Float32Array.h
+++ b/Source/wtf/Float32Array.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Float32Array_h
diff --git a/Source/wtf/Forward.h b/Source/wtf/Forward.h
index 4766265..f1ab5e2 100644
--- a/Source/wtf/Forward.h
+++ b/Source/wtf/Forward.h
@@ -32,7 +32,7 @@
     template<typename T> class PassRefPtr;
     template<typename T> class RefPtr;
     template<typename T, size_t inlineCapacity> class Vector;
-    
+
     class ArrayBuffer;
     class ArrayBufferView;
     class AtomicString;
diff --git a/Source/wtf/Functional.h b/Source/wtf/Functional.h
index e0adb5f..74c004d 100644
--- a/Source/wtf/Functional.h
+++ b/Source/wtf/Functional.h
@@ -414,7 +414,7 @@
         , m_p2(ParamStorageTraits<P2>::wrap(p2))
     {
     }
-    
+
     virtual typename FunctionWrapper::ResultType operator()()
     {
         return m_functionWrapper(ParamStorageTraits<P1>::unwrap(m_p1), ParamStorageTraits<P2>::unwrap(m_p2));
@@ -460,7 +460,7 @@
         , m_p4(ParamStorageTraits<P4>::wrap(p4))
     {
     }
-    
+
     virtual typename FunctionWrapper::ResultType operator()()
     {
         return m_functionWrapper(ParamStorageTraits<P1>::unwrap(m_p1), ParamStorageTraits<P2>::unwrap(m_p2), ParamStorageTraits<P3>::unwrap(m_p3), ParamStorageTraits<P4>::unwrap(m_p4));
@@ -548,7 +548,7 @@
     }
 
     template<typename FunctionType> FunctionImpl<FunctionType>* impl() const
-    { 
+    {
         return static_cast<FunctionImpl<FunctionType>*>(m_impl.get());
     }
 
diff --git a/Source/wtf/HashCountedSet.h b/Source/wtf/HashCountedSet.h
index 7757316..36d944c 100644
--- a/Source/wtf/HashCountedSet.h
+++ b/Source/wtf/HashCountedSet.h
@@ -37,36 +37,36 @@
         typedef typename ImplType::iterator iterator;
         typedef typename ImplType::const_iterator const_iterator;
         typedef typename ImplType::AddResult AddResult;
-        
+
         HashCountedSet() {}
 
         void swap(HashCountedSet&);
-        
+
         int size() const;
         int capacity() const;
         bool isEmpty() const;
-        
+
         // Iterators iterate over pairs of values and counts.
         iterator begin();
         iterator end();
         const_iterator begin() const;
         const_iterator end() const;
-        
+
         iterator find(const ValueType&);
         const_iterator find(const ValueType&) const;
         bool contains(const ValueType&) const;
         unsigned count(const ValueType&) const;
 
         // Increases the count if an equal value is already present
-        // the return value is a pair of an interator to the new value's 
+        // the return value is a pair of an interator to the new value's
         // location, and a bool that is true if an new entry was added.
         AddResult add(const ValueType&);
-        
+
         // Reduces the count of the value, and removes it if count
         // goes down to zero, returns true if the value is removed.
         bool remove(const ValueType&);
         bool remove(iterator);
- 
+
         // Removes the value, regardless of its count.
         void removeAll(iterator);
         void removeAll(const ValueType&);
@@ -83,65 +83,65 @@
     {
         m_impl.swap(other.m_impl);
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline int HashCountedSet<Value, HashFunctions, Traits>::size() const
     {
-        return m_impl.size(); 
+        return m_impl.size();
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline int HashCountedSet<Value, HashFunctions, Traits>::capacity() const
     {
-        return m_impl.capacity(); 
+        return m_impl.capacity();
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline bool HashCountedSet<Value, HashFunctions, Traits>::isEmpty() const
     {
-        return size() == 0; 
+        return size() == 0;
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline typename HashCountedSet<Value, HashFunctions, Traits>::iterator HashCountedSet<Value, HashFunctions, Traits>::begin()
     {
-        return m_impl.begin(); 
+        return m_impl.begin();
     }
 
     template<typename Value, typename HashFunctions, typename Traits>
     inline typename HashCountedSet<Value, HashFunctions, Traits>::iterator HashCountedSet<Value, HashFunctions, Traits>::end()
     {
-        return m_impl.end(); 
+        return m_impl.end();
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline typename HashCountedSet<Value, HashFunctions, Traits>::const_iterator HashCountedSet<Value, HashFunctions, Traits>::begin() const
     {
-        return m_impl.begin(); 
+        return m_impl.begin();
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline typename HashCountedSet<Value, HashFunctions, Traits>::const_iterator HashCountedSet<Value, HashFunctions, Traits>::end() const
     {
-        return m_impl.end(); 
+        return m_impl.end();
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline typename HashCountedSet<Value, HashFunctions, Traits>::iterator HashCountedSet<Value, HashFunctions, Traits>::find(const ValueType& value)
     {
-        return m_impl.find(value); 
+        return m_impl.find(value);
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline typename HashCountedSet<Value, HashFunctions, Traits>::const_iterator HashCountedSet<Value, HashFunctions, Traits>::find(const ValueType& value) const
     {
-        return m_impl.find(value); 
+        return m_impl.find(value);
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline bool HashCountedSet<Value, HashFunctions, Traits>::contains(const ValueType& value) const
     {
-        return m_impl.contains(value); 
+        return m_impl.contains(value);
     }
 
     template<typename Value, typename HashFunctions, typename Traits>
@@ -149,7 +149,7 @@
     {
         return m_impl.get(value);
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline typename HashCountedSet<Value, HashFunctions, Traits>::AddResult HashCountedSet<Value, HashFunctions, Traits>::add(const ValueType &value)
     {
@@ -157,13 +157,13 @@
         ++result.iterator->value;
         return result;
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline bool HashCountedSet<Value, HashFunctions, Traits>::remove(const ValueType& value)
     {
         return remove(find(value));
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline bool HashCountedSet<Value, HashFunctions, Traits>::remove(iterator it)
     {
@@ -181,13 +181,13 @@
         m_impl.remove(it);
         return true;
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline void HashCountedSet<Value, HashFunctions, Traits>::removeAll(const ValueType& value)
     {
         removeAll(find(value));
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline void HashCountedSet<Value, HashFunctions, Traits>::removeAll(iterator it)
     {
@@ -196,20 +196,20 @@
 
         m_impl.remove(it);
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits>
     inline void HashCountedSet<Value, HashFunctions, Traits>::clear()
     {
-        m_impl.clear(); 
+        m_impl.clear();
     }
-    
+
     template<typename Value, typename HashFunctions, typename Traits, typename VectorType>
     inline void copyToVector(const HashCountedSet<Value, HashFunctions, Traits>& collection, VectorType& vector)
     {
         typedef typename HashCountedSet<Value, HashFunctions, Traits>::const_iterator iterator;
-        
+
         vector.resize(collection.size());
-        
+
         iterator it = collection.begin();
         iterator end = collection.end();
         for (unsigned i = 0; it != end; ++it, ++i)
@@ -220,9 +220,9 @@
     inline void copyToVector(const HashCountedSet<Value, HashFunctions, Traits>& collection, Vector<Value>& vector)
     {
         typedef typename HashCountedSet<Value, HashFunctions, Traits>::const_iterator iterator;
-        
+
         vector.resize(collection.size());
-        
+
         iterator it = collection.begin();
         iterator end = collection.end();
         for (unsigned i = 0; it != end; ++it, ++i)
diff --git a/Source/wtf/HashFunctions.h b/Source/wtf/HashFunctions.h
index 1768f67..4f2671e 100644
--- a/Source/wtf/HashFunctions.h
+++ b/Source/wtf/HashFunctions.h
@@ -61,7 +61,7 @@
     }
 
     // Thomas Wang's 32 Bit Mix Function: http://www.cris.com/~Ttwang/tech/inthash.htm
-    inline unsigned intHash(uint32_t key) 
+    inline unsigned intHash(uint32_t key)
     {
         key += ~(key << 15);
         key ^= (key >> 10);
@@ -71,7 +71,7 @@
         key ^= (key >> 16);
         return key;
     }
-    
+
     // Thomas Wang's 64 bit Mix Function: http://www.cris.com/~Ttwang/tech/inthash.htm
     inline unsigned intHash(uint64_t key)
     {
@@ -156,7 +156,7 @@
         {
             return DefaultHash<T>::Hash::equal(a.first, b.first) && DefaultHash<U>::Hash::equal(a.second, b.second);
         }
-        static const bool safeToCompareToEmptyOrDeleted = DefaultHash<T>::Hash::safeToCompareToEmptyOrDeleted 
+        static const bool safeToCompareToEmptyOrDeleted = DefaultHash<T>::Hash::safeToCompareToEmptyOrDeleted
                                                             && DefaultHash<U>::Hash::safeToCompareToEmptyOrDeleted;
     };
 
diff --git a/Source/wtf/HashIterators.h b/Source/wtf/HashIterators.h
index 9be4de3..ea7a468 100644
--- a/Source/wtf/HashIterators.h
+++ b/Source/wtf/HashIterators.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_HashIterators_h
@@ -90,7 +90,7 @@
 
     public:
         HashTableConstKeysIterator(const ConstIterator& impl) : m_impl(impl) {}
-        
+
         const KeyType* get() const { return &(m_impl.get()->key); }
         const KeyType& operator*() const { return *get(); }
         const KeyType* operator->() const { return get(); }
@@ -107,7 +107,7 @@
 
     public:
         HashTableConstValuesIterator(const ConstIterator& impl) : m_impl(impl) {}
-        
+
         const MappedType* get() const { return &(m_impl.get()->value); }
         const MappedType& operator*() const { return *get(); }
         const MappedType* operator->() const { return get(); }
@@ -125,7 +125,7 @@
 
     public:
         HashTableKeysIterator(const Iterator& impl) : m_impl(impl) {}
-        
+
         KeyType* get() const { return &(m_impl.get()->key); }
         KeyType& operator*() const { return *get(); }
         KeyType* operator->() const { return get(); }
@@ -148,7 +148,7 @@
 
     public:
         HashTableValuesIterator(const Iterator& impl) : m_impl(impl) {}
-        
+
         MappedType* get() const { return &(m_impl.get()->value); }
         MappedType& operator*() const { return *get(); }
         MappedType* operator->() const { return get(); }
diff --git a/Source/wtf/HashMap.h b/Source/wtf/HashMap.h
index 1ef4e3d..1925e6b 100644
--- a/Source/wtf/HashMap.h
+++ b/Source/wtf/HashMap.h
@@ -97,12 +97,12 @@
         MappedPeekType get(const KeyType&) const;
 
         // replaces value but not key if key is already present
-        // return value is a pair of the iterator to the key location, 
+        // return value is a pair of the iterator to the key location,
         // and a boolean that's true if a new value was actually added
         AddResult set(const KeyType&, MappedPassInType);
 
         // does nothing if key is already present
-        // return value is a pair of the iterator to the key location, 
+        // return value is a pair of the iterator to the key location,
         // and a boolean that's true if a new value was actually added
         AddResult add(const KeyType&, MappedPassInType);
 
@@ -140,7 +140,7 @@
     };
 
     template<typename KeyArg, typename MappedArg, typename HashArg, typename KeyTraitsArg, typename MappedTraitsArg>
-    class HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg>::HashMapKeysProxy : 
+    class HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg>::HashMapKeysProxy :
         private HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg> {
         public:
             typedef HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg> HashMapType;
@@ -178,7 +178,7 @@
     };
 
     template<typename KeyArg, typename MappedArg, typename HashArg,  typename KeyTraitsArg, typename MappedTraitsArg>
-    class HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg>::HashMapValuesProxy : 
+    class HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg>::HashMapValuesProxy :
         private HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg> {
         public:
             typedef HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg> HashMapType;
@@ -248,19 +248,19 @@
     template<typename T, typename U, typename V, typename W, typename X>
     inline void HashMap<T, U, V, W, X>::swap(HashMap& other)
     {
-        m_impl.swap(other.m_impl); 
+        m_impl.swap(other.m_impl);
     }
 
     template<typename T, typename U, typename V, typename W, typename X>
     inline int HashMap<T, U, V, W, X>::size() const
     {
-        return m_impl.size(); 
+        return m_impl.size();
     }
 
     template<typename T, typename U, typename V, typename W, typename X>
     inline int HashMap<T, U, V, W, X>::capacity() const
-    { 
-        return m_impl.capacity(); 
+    {
+        return m_impl.capacity();
     }
 
     template<typename T, typename U, typename V, typename W, typename X>
@@ -321,7 +321,7 @@
 
     template<typename T, typename U, typename V, typename W, typename X>
     template<typename HashTranslator, typename TYPE>
-    inline typename HashMap<T, U, V, W, X>::const_iterator 
+    inline typename HashMap<T, U, V, W, X>::const_iterator
     HashMap<T, U, V, W, X>::find(const TYPE& value) const
     {
         return m_impl.template find<HashMapTranslatorAdapter<ValueTraits, HashTranslator> >(value);
@@ -337,14 +337,14 @@
 
     template<typename T, typename U, typename V, typename W, typename X>
     typename HashMap<T, U, V, W, X>::AddResult
-    HashMap<T, U, V, W, X>::inlineAdd(const KeyType& key, MappedPassInReferenceType mapped) 
+    HashMap<T, U, V, W, X>::inlineAdd(const KeyType& key, MappedPassInReferenceType mapped)
     {
         return m_impl.template add<HashMapTranslator<ValueTraits, HashFunctions> >(key, mapped);
     }
 
     template<typename T, typename U, typename V, typename W, typename X>
     typename HashMap<T, U, V, W, X>::AddResult
-    HashMap<T, U, V, W, X>::set(const KeyType& key, MappedPassInType mapped) 
+    HashMap<T, U, V, W, X>::set(const KeyType& key, MappedPassInType mapped)
     {
         AddResult result = inlineAdd(key, mapped);
         if (!result.isNewEntry) {
@@ -477,32 +477,32 @@
         for (iterator it = collection.begin(); it != end; ++it)
             delete it->key;
     }
-    
+
     template<typename T, typename U, typename V, typename W, typename X, typename Y>
     inline void copyKeysToVector(const HashMap<T, U, V, W, X>& collection, Y& vector)
     {
         typedef typename HashMap<T, U, V, W, X>::const_iterator::Keys iterator;
-        
+
         vector.resize(collection.size());
-        
+
         iterator it = collection.begin().keys();
         iterator end = collection.end().keys();
         for (unsigned i = 0; it != end; ++it, ++i)
             vector[i] = *it;
-    }  
+    }
 
     template<typename T, typename U, typename V, typename W, typename X, typename Y>
     inline void copyValuesToVector(const HashMap<T, U, V, W, X>& collection, Y& vector)
     {
         typedef typename HashMap<T, U, V, W, X>::const_iterator::Values iterator;
-        
+
         vector.resize(collection.size());
-        
+
         iterator it = collection.begin().values();
         iterator end = collection.end().values();
         for (unsigned i = 0; it != end; ++it, ++i)
             vector[i] = *it;
-    }   
+    }
 
 } // namespace WTF
 
diff --git a/Source/wtf/HashSet.h b/Source/wtf/HashSet.h
index 7ba2803..0953ec1 100644
--- a/Source/wtf/HashSet.h
+++ b/Source/wtf/HashSet.h
@@ -27,7 +27,7 @@
 namespace WTF {
 
     struct IdentityExtractor;
-    
+
     template<typename Value, typename HashFunctions, typename Traits> class HashSet;
     template<typename Value, typename HashFunctions, typename Traits>
     void deleteAllValues(const HashSet<Value, HashFunctions, Traits>&);
@@ -71,7 +71,7 @@
         template<typename HashTranslator, typename T> iterator find(const T&) const;
         template<typename HashTranslator, typename T> bool contains(const T&) const;
 
-        // The return value is a pair of an interator to the new value's location, 
+        // The return value is a pair of an interator to the new value's location,
         // and a bool that is true if an new entry was added.
         AddResult add(const ValueType&);
 
@@ -112,49 +112,49 @@
     template<typename T, typename U, typename V>
     inline void HashSet<T, U, V>::swap(HashSet& other)
     {
-        m_impl.swap(other.m_impl); 
+        m_impl.swap(other.m_impl);
     }
 
     template<typename T, typename U, typename V>
     inline int HashSet<T, U, V>::size() const
     {
-        return m_impl.size(); 
+        return m_impl.size();
     }
 
     template<typename T, typename U, typename V>
     inline int HashSet<T, U, V>::capacity() const
     {
-        return m_impl.capacity(); 
+        return m_impl.capacity();
     }
 
     template<typename T, typename U, typename V>
     inline bool HashSet<T, U, V>::isEmpty() const
     {
-        return m_impl.isEmpty(); 
+        return m_impl.isEmpty();
     }
 
     template<typename T, typename U, typename V>
     inline typename HashSet<T, U, V>::iterator HashSet<T, U, V>::begin() const
     {
-        return m_impl.begin(); 
+        return m_impl.begin();
     }
 
     template<typename T, typename U, typename V>
     inline typename HashSet<T, U, V>::iterator HashSet<T, U, V>::end() const
     {
-        return m_impl.end(); 
+        return m_impl.end();
     }
 
     template<typename T, typename U, typename V>
     inline typename HashSet<T, U, V>::iterator HashSet<T, U, V>::find(const ValueType& value) const
     {
-        return m_impl.find(value); 
+        return m_impl.find(value);
     }
 
     template<typename T, typename U, typename V>
     inline bool HashSet<T, U, V>::contains(const ValueType& value) const
     {
-        return m_impl.contains(value); 
+        return m_impl.contains(value);
     }
 
     template<typename Value, typename HashFunctions, typename Traits>
@@ -204,7 +204,7 @@
     template<typename T, typename U, typename V>
     inline void HashSet<T, U, V>::clear()
     {
-        m_impl.clear(); 
+        m_impl.clear();
     }
 
     template<typename T, typename U, typename V>
@@ -243,14 +243,14 @@
     inline void copyToVector(const C& collection, W& vector)
     {
         typedef typename C::const_iterator iterator;
-        
+
         vector.resize(collection.size());
-        
+
         iterator it = collection.begin();
         iterator end = collection.end();
         for (unsigned i = 0; it != end; ++it, ++i)
             vector[i] = *it;
-    }  
+    }
 
 } // namespace WTF
 
diff --git a/Source/wtf/HashTable.h b/Source/wtf/HashTable.h
index 59843a3..5bdfc78 100644
--- a/Source/wtf/HashTable.h
+++ b/Source/wtf/HashTable.h
@@ -367,9 +367,9 @@
 #endif
 
         HashTable();
-        ~HashTable() 
+        ~HashTable()
         {
-            invalidateIterators(); 
+            invalidateIterators();
             if (m_table)
                 deallocateTable(m_table, m_tableSize);
 #if CHECK_HASHTABLE_USE_AFTER_DESTRUCTION
@@ -625,18 +625,18 @@
 
         while (1) {
             ValueType* entry = table + i;
-                
+
             // we count on the compiler to optimize out this branch
             if (HashFunctions::safeToCompareToEmptyOrDeleted) {
                 if (HashTranslator::equal(Extractor::extract(*entry), key))
                     return entry;
-                
+
                 if (isEmptyBucket(*entry))
                     return 0;
             } else {
                 if (isEmptyBucket(*entry))
                     return 0;
-                
+
                 if (!isDeletedBucket(*entry) && HashTranslator::equal(Extractor::extract(*entry), key))
                     return entry;
             }
@@ -683,21 +683,21 @@
 
         while (1) {
             ValueType* entry = table + i;
-            
+
             // we count on the compiler to optimize out this branch
             if (HashFunctions::safeToCompareToEmptyOrDeleted) {
                 if (isEmptyBucket(*entry))
                     return LookupType(deletedEntry ? deletedEntry : entry, false);
-                
+
                 if (HashTranslator::equal(Extractor::extract(*entry), key))
                     return LookupType(entry, true);
-                
+
                 if (isDeletedBucket(*entry))
                     deletedEntry = entry;
             } else {
                 if (isEmptyBucket(*entry))
                     return LookupType(deletedEntry ? deletedEntry : entry, false);
-            
+
                 if (isDeletedBucket(*entry))
                     deletedEntry = entry;
                 else if (HashTranslator::equal(Extractor::extract(*entry), key))
@@ -746,21 +746,21 @@
 
         while (1) {
             ValueType* entry = table + i;
-            
+
             // we count on the compiler to optimize out this branch
             if (HashFunctions::safeToCompareToEmptyOrDeleted) {
                 if (isEmptyBucket(*entry))
                     return makeLookupResult(deletedEntry ? deletedEntry : entry, false, h);
-                
+
                 if (HashTranslator::equal(Extractor::extract(*entry), key))
                     return makeLookupResult(entry, true, h);
-                
+
                 if (isDeletedBucket(*entry))
                     deletedEntry = entry;
             } else {
                 if (isEmptyBucket(*entry))
                     return makeLookupResult(deletedEntry ? deletedEntry : entry, false, h);
-            
+
                 if (isDeletedBucket(*entry))
                     deletedEntry = entry;
                 else if (HashTranslator::equal(Extractor::extract(*entry), key))
@@ -800,7 +800,7 @@
             memset(&bucket, 0, sizeof(bucket));
         }
     };
-    
+
     template<typename Key, typename Value, typename Extractor, typename HashFunctions, typename Traits, typename KeyTraits>
     inline void HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits>::initializeBucket(ValueType& bucket)
     {
@@ -842,21 +842,21 @@
         ValueType* entry;
         while (1) {
             entry = table + i;
-            
+
             // we count on the compiler to optimize out this branch
             if (HashFunctions::safeToCompareToEmptyOrDeleted) {
                 if (isEmptyBucket(*entry))
                     break;
-                
+
                 if (HashTranslator::equal(Extractor::extract(*entry), key))
                     return AddResult(makeKnownGoodIterator(entry), false);
-                
+
                 if (isDeletedBucket(*entry))
                     deletedEntry = entry;
             } else {
                 if (isEmptyBucket(*entry))
                     break;
-            
+
                 if (isDeletedBucket(*entry))
                     deletedEntry = entry;
                 else if (HashTranslator::equal(Extractor::extract(*entry), key))
@@ -880,13 +880,13 @@
         if (deletedEntry) {
             initializeBucket(*deletedEntry);
             entry = deletedEntry;
-            --m_deletedCount; 
+            --m_deletedCount;
         }
 
         HashTranslator::translate(*entry, key, extra);
 
         ++m_keyCount;
-        
+
         if (shouldExpand()) {
             // FIXME: This makes an extra copy on expand. Probably not that bad since
             // expand is rare, but would be better to have a version of expand that can
@@ -897,9 +897,9 @@
             ASSERT(result.iterator != end());
             return result;
         }
-        
+
         internalCheckTableConsistency();
-        
+
         return AddResult(makeKnownGoodIterator(entry), true);
     }
 
@@ -921,15 +921,15 @@
         ValueType* entry = lookupResult.first.first;
         bool found = lookupResult.first.second;
         unsigned h = lookupResult.second;
-        
+
         if (found)
             return AddResult(makeKnownGoodIterator(entry), false);
-        
+
         if (isDeletedBucket(*entry)) {
             initializeBucket(*entry);
             --m_deletedCount;
         }
-        
+
         HashTranslator::translate(*entry, key, extra, h);
         ++m_keyCount;
         if (shouldExpand()) {
@@ -965,7 +965,7 @@
     }
 
     template<typename Key, typename Value, typename Extractor, typename HashFunctions, typename Traits, typename KeyTraits>
-    template <typename HashTranslator, typename T> 
+    template <typename HashTranslator, typename T>
     typename HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits>::iterator HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits>::find(const T& key)
     {
         if (!m_table)
@@ -979,7 +979,7 @@
     }
 
     template<typename Key, typename Value, typename Extractor, typename HashFunctions, typename Traits, typename KeyTraits>
-    template <typename HashTranslator, typename T> 
+    template <typename HashTranslator, typename T>
     typename HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits>::const_iterator HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits>::find(const T& key) const
     {
         if (!m_table)
@@ -993,7 +993,7 @@
     }
 
     template<typename Key, typename Value, typename Extractor, typename HashFunctions, typename Traits, typename KeyTraits>
-    template <typename HashTranslator, typename T> 
+    template <typename HashTranslator, typename T>
     bool HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits>::contains(const T& key) const
     {
         if (!m_table)
diff --git a/Source/wtf/HashTraits.h b/Source/wtf/HashTraits.h
index 7d2b70e..3f01786 100644
--- a/Source/wtf/HashTraits.h
+++ b/Source/wtf/HashTraits.h
@@ -42,7 +42,7 @@
     template<typename T> struct GenericHashTraitsBase<false, T> {
         // The emptyValueIsZero flag is used to optimize allocation of empty hash tables with zeroed memory.
         static const bool emptyValueIsZero = false;
-        
+
         // The hasIsEmptyValueFunction flag allows the hash table to automatically generate code to check
         // for the empty value when it can be done with the equality operator, but allows custom functions
         // for cases like String that need them.
@@ -76,7 +76,7 @@
         typedef const T& PassInType;
         static void store(const T& value, T& storage) { storage = value; }
 
-        // Type for return value of functions that transfer ownership, such as take. 
+        // Type for return value of functions that transfer ownership, such as take.
         typedef T PassOutType;
         static PassOutType passOut(const T& value) { return value; }
         static T& passOut(T& value) { return value; } // Overloaded to avoid copying of non-temporary values.
diff --git a/Source/wtf/Int16Array.h b/Source/wtf/Int16Array.h
index c218a5f..d3289b7 100644
--- a/Source/wtf/Int16Array.h
+++ b/Source/wtf/Int16Array.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Int16Array_h
diff --git a/Source/wtf/Int32Array.h b/Source/wtf/Int32Array.h
index 54879aa..0a5091f 100644
--- a/Source/wtf/Int32Array.h
+++ b/Source/wtf/Int32Array.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Int32Array_h
diff --git a/Source/wtf/Int8Array.h b/Source/wtf/Int8Array.h
index fea4936..c4aaa21 100644
--- a/Source/wtf/Int8Array.h
+++ b/Source/wtf/Int8Array.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Int8Array_h
diff --git a/Source/wtf/IntegralTypedArrayBase.h b/Source/wtf/IntegralTypedArrayBase.h
index e464a92..2d635d8 100644
--- a/Source/wtf/IntegralTypedArrayBase.h
+++ b/Source/wtf/IntegralTypedArrayBase.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef IntegralTypedArrayBase_h
diff --git a/Source/wtf/ListHashSet.h b/Source/wtf/ListHashSet.h
index 96366a2..48d1f3b 100644
--- a/Source/wtf/ListHashSet.h
+++ b/Source/wtf/ListHashSet.h
@@ -127,7 +127,7 @@
         template<typename T, typename HashTranslator> const_iterator find(const T&) const;
         template<typename T, typename HashTranslator> bool contains(const T&) const;
 
-        // The return value of add is a pair of an iterator to the new value's location, 
+        // The return value of add is a pair of an iterator to the new value's location,
         // and a bool that is true if an new entry was added.
         AddResult add(const ValueType&);
 
@@ -153,7 +153,7 @@
         void prependNode(Node*);
         void insertNodeBefore(Node* beforeNode, Node* newNode);
         void deleteAllNodes();
-        
+
         iterator makeIterator(Node*);
         const_iterator makeConstIterator(Node*) const;
         reverse_iterator makeReverseIterator(Node*);
@@ -171,15 +171,15 @@
         typedef ListHashSetNode<ValueArg, inlineCapacity> Node;
         typedef ListHashSetNodeAllocator<ValueArg, inlineCapacity> NodeAllocator;
 
-        ListHashSetNodeAllocator() 
+        ListHashSetNodeAllocator()
             : m_freeList(pool())
             , m_isDoneWithInitialFreeList(false)
-        { 
+        {
             memset(m_pool.pool, 0, sizeof(m_pool.pool));
         }
 
         Node* allocate()
-        { 
+        {
             Node* result = m_freeList;
 
             if (!result)
@@ -204,7 +204,7 @@
             return result;
         }
 
-        void deallocate(Node* node) 
+        void deallocate(Node* node)
         {
             if (inPool(node)) {
 #ifndef NDEBUG
@@ -553,19 +553,19 @@
     template<typename T, size_t inlineCapacity, typename U>
     inline int ListHashSet<T, inlineCapacity, U>::size() const
     {
-        return m_impl.size(); 
+        return m_impl.size();
     }
 
     template<typename T, size_t inlineCapacity, typename U>
     inline int ListHashSet<T, inlineCapacity, U>::capacity() const
     {
-        return m_impl.capacity(); 
+        return m_impl.capacity();
     }
 
     template<typename T, size_t inlineCapacity, typename U>
     inline bool ListHashSet<T, inlineCapacity, U>::isEmpty() const
     {
-        return m_impl.isEmpty(); 
+        return m_impl.isEmpty();
     }
 
     template<typename T, size_t inlineCapacity, typename U>
@@ -583,7 +583,7 @@
     template<typename T, size_t inlineCapacity, typename U>
     inline typename ListHashSet<T, inlineCapacity, U>::iterator ListHashSet<T, inlineCapacity, U>::begin()
     {
-        return makeIterator(m_head); 
+        return makeIterator(m_head);
     }
 
     template<typename T, size_t inlineCapacity, typename U>
@@ -595,19 +595,19 @@
     template<typename T, size_t inlineCapacity, typename U>
     inline typename ListHashSet<T, inlineCapacity, U>::const_iterator ListHashSet<T, inlineCapacity, U>::begin() const
     {
-        return makeConstIterator(m_head); 
+        return makeConstIterator(m_head);
     }
 
     template<typename T, size_t inlineCapacity, typename U>
     inline typename ListHashSet<T, inlineCapacity, U>::const_iterator ListHashSet<T, inlineCapacity, U>::end() const
     {
-        return makeConstIterator(0); 
+        return makeConstIterator(0);
     }
 
     template<typename T, size_t inlineCapacity, typename U>
     inline typename ListHashSet<T, inlineCapacity, U>::reverse_iterator ListHashSet<T, inlineCapacity, U>::rbegin()
     {
-        return makeReverseIterator(m_tail); 
+        return makeReverseIterator(m_tail);
     }
 
     template<typename T, size_t inlineCapacity, typename U>
@@ -619,13 +619,13 @@
     template<typename T, size_t inlineCapacity, typename U>
     inline typename ListHashSet<T, inlineCapacity, U>::const_reverse_iterator ListHashSet<T, inlineCapacity, U>::rbegin() const
     {
-        return makeConstReverseIterator(m_tail); 
+        return makeConstReverseIterator(m_tail);
     }
 
     template<typename T, size_t inlineCapacity, typename U>
     inline typename ListHashSet<T, inlineCapacity, U>::const_reverse_iterator ListHashSet<T, inlineCapacity, U>::rend() const
     {
-        return makeConstReverseIterator(0); 
+        return makeConstReverseIterator(0);
     }
 
     template<typename T, size_t inlineCapacity, typename U>
@@ -678,7 +678,7 @@
         ImplTypeIterator it = m_impl.template find<BaseTranslator>(value);
         if (it == m_impl.end())
             return end();
-        return makeIterator(*it); 
+        return makeIterator(*it);
     }
 
     template<typename T, size_t inlineCapacity, typename U>
@@ -772,7 +772,7 @@
     template<typename T, size_t inlineCapacity, typename U>
     typename ListHashSet<T, inlineCapacity, U>::AddResult ListHashSet<T, inlineCapacity, U>::insertBefore(const ValueType& beforeValue, const ValueType& newValue)
     {
-        return insertBefore(find(beforeValue), newValue); 
+        return insertBefore(find(beforeValue), newValue);
     }
 
     template<typename T, size_t inlineCapacity, typename U>
@@ -794,7 +794,7 @@
     inline void ListHashSet<T, inlineCapacity, U>::clear()
     {
         deleteAllNodes();
-        m_impl.clear(); 
+        m_impl.clear();
         m_head = 0;
         m_tail = 0;
     }
@@ -862,7 +862,7 @@
     {
         if (!beforeNode)
             return appendNode(newNode);
-        
+
         newNode->m_next = beforeNode;
         newNode->m_prev = beforeNode->m_prev;
         if (beforeNode->m_prev)
@@ -884,27 +884,27 @@
     }
 
     template<typename T, size_t inlineCapacity, typename U>
-    inline ListHashSetReverseIterator<T, inlineCapacity, U> ListHashSet<T, inlineCapacity, U>::makeReverseIterator(Node* position) 
+    inline ListHashSetReverseIterator<T, inlineCapacity, U> ListHashSet<T, inlineCapacity, U>::makeReverseIterator(Node* position)
     {
-        return ListHashSetReverseIterator<T, inlineCapacity, U>(this, position); 
+        return ListHashSetReverseIterator<T, inlineCapacity, U>(this, position);
     }
 
     template<typename T, size_t inlineCapacity, typename U>
     inline ListHashSetConstReverseIterator<T, inlineCapacity, U> ListHashSet<T, inlineCapacity, U>::makeConstReverseIterator(Node* position) const
-    { 
-        return ListHashSetConstReverseIterator<T, inlineCapacity, U>(this, position); 
-    }
-    
-    template<typename T, size_t inlineCapacity, typename U>
-    inline ListHashSetIterator<T, inlineCapacity, U> ListHashSet<T, inlineCapacity, U>::makeIterator(Node* position) 
     {
-        return ListHashSetIterator<T, inlineCapacity, U>(this, position); 
+        return ListHashSetConstReverseIterator<T, inlineCapacity, U>(this, position);
+    }
+
+    template<typename T, size_t inlineCapacity, typename U>
+    inline ListHashSetIterator<T, inlineCapacity, U> ListHashSet<T, inlineCapacity, U>::makeIterator(Node* position)
+    {
+        return ListHashSetIterator<T, inlineCapacity, U>(this, position);
     }
 
     template<typename T, size_t inlineCapacity, typename U>
     inline ListHashSetConstIterator<T, inlineCapacity, U> ListHashSet<T, inlineCapacity, U>::makeConstIterator(Node* position) const
-    { 
-        return ListHashSetConstIterator<T, inlineCapacity, U>(this, position); 
+    {
+        return ListHashSetConstIterator<T, inlineCapacity, U>(this, position);
     }
     template<bool, typename ValueType, typename HashTableType>
     void deleteAllValues(HashTableType& collection)
diff --git a/Source/wtf/MainThread.h b/Source/wtf/MainThread.h
index f9db1e2..7e1aaa8 100644
--- a/Source/wtf/MainThread.h
+++ b/Source/wtf/MainThread.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -46,7 +46,7 @@
 
 template<typename> class Function;
 WTF_EXPORT void callOnMainThread(const Function<void ()>&);
-    
+
 WTF_EXPORT bool isMainThread();
 
 } // namespace WTF
diff --git a/Source/wtf/MallocZoneSupport.h b/Source/wtf/MallocZoneSupport.h
index ee809c5..09ceecc 100644
--- a/Source/wtf/MallocZoneSupport.h
+++ b/Source/wtf/MallocZoneSupport.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/wtf/MathExtras.h b/Source/wtf/MathExtras.h
index 06aae32..7896326 100644
--- a/Source/wtf/MathExtras.h
+++ b/Source/wtf/MathExtras.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_MathExtras_h
diff --git a/Source/wtf/MessageQueue.h b/Source/wtf/MessageQueue.h
index 4e27ddb..2f0330d 100644
--- a/Source/wtf/MessageQueue.h
+++ b/Source/wtf/MessageQueue.h
@@ -132,7 +132,7 @@
     template<typename DataType>
     inline PassOwnPtr<DataType> MessageQueue<DataType>::waitForMessage()
     {
-        MessageQueueWaitResult exitReason; 
+        MessageQueueWaitResult exitReason;
         OwnPtr<DataType> result = waitForMessageFilteredWithTimeout(exitReason, MessageQueue<DataType>::alwaysTruePredicate, infiniteTime());
         ASSERT(exitReason == MessageQueueTerminated || exitReason == MessageQueueMessageReceived);
         return result.release();
diff --git a/Source/wtf/NonCopyingSort.h b/Source/wtf/NonCopyingSort.h
index fd611bd..ec5c6ec 100644
--- a/Source/wtf/NonCopyingSort.h
+++ b/Source/wtf/NonCopyingSort.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
@@ -32,7 +32,7 @@
 using std::swap;
 
 template<typename RandomAccessIterator, typename Predicate>
-inline void siftDown(RandomAccessIterator array, ptrdiff_t start, ptrdiff_t end, Predicate compareLess) 
+inline void siftDown(RandomAccessIterator array, ptrdiff_t start, ptrdiff_t end, Predicate compareLess)
 {
     ptrdiff_t root = start;
 
@@ -40,7 +40,7 @@
         ptrdiff_t child = root * 2 + 1;
         if (child < end && compareLess(array[child], array[child + 1]))
             child++;
-        
+
         if (compareLess(array[root], array[child])) {
             swap(array[root], array[child]);
             root = child;
@@ -50,10 +50,10 @@
 }
 
 template<typename RandomAccessIterator, typename Predicate>
-inline void heapify(RandomAccessIterator array, ptrdiff_t count, Predicate compareLess) 
+inline void heapify(RandomAccessIterator array, ptrdiff_t count, Predicate compareLess)
 {
     ptrdiff_t start = (count - 2) / 2;
-     
+
     while (start >= 0) {
         siftDown(array, start, count - 1, compareLess);
         start--;
diff --git a/Source/wtf/OwnArrayPtr.h b/Source/wtf/OwnArrayPtr.h
index cd02972..c039fbe 100644
--- a/Source/wtf/OwnArrayPtr.h
+++ b/Source/wtf/OwnArrayPtr.h
@@ -127,22 +127,22 @@
 
 template<typename T, typename U> inline bool operator==(const OwnArrayPtr<T>& a, U* b)
 {
-    return a.get() == b; 
+    return a.get() == b;
 }
 
-template<typename T, typename U> inline bool operator==(T* a, const OwnArrayPtr<U>& b) 
+template<typename T, typename U> inline bool operator==(T* a, const OwnArrayPtr<U>& b)
 {
-    return a == b.get(); 
+    return a == b.get();
 }
 
 template<typename T, typename U> inline bool operator!=(const OwnArrayPtr<T>& a, U* b)
 {
-    return a.get() != b; 
+    return a.get() != b;
 }
 
 template<typename T, typename U> inline bool operator!=(T* a, const OwnArrayPtr<U>& b)
 {
-    return a != b.get(); 
+    return a != b.get();
 }
 
 template <typename T> inline T* getPtr(const OwnArrayPtr<T>& p)
diff --git a/Source/wtf/OwnPtr.h b/Source/wtf/OwnPtr.h
index 98daa40..73ede43 100644
--- a/Source/wtf/OwnPtr.h
+++ b/Source/wtf/OwnPtr.h
@@ -191,22 +191,22 @@
 
     template<typename T, typename U> inline bool operator==(const OwnPtr<T>& a, U* b)
     {
-        return a.get() == b; 
+        return a.get() == b;
     }
 
-    template<typename T, typename U> inline bool operator==(T* a, const OwnPtr<U>& b) 
+    template<typename T, typename U> inline bool operator==(T* a, const OwnPtr<U>& b)
     {
-        return a == b.get(); 
+        return a == b.get();
     }
 
     template<typename T, typename U> inline bool operator!=(const OwnPtr<T>& a, U* b)
     {
-        return a.get() != b; 
+        return a.get() != b;
     }
 
     template<typename T, typename U> inline bool operator!=(T* a, const OwnPtr<U>& b)
     {
-        return a != b.get(); 
+        return a != b.get();
     }
 
     template<typename T> inline typename OwnPtr<T>::PtrType getPtr(const OwnPtr<T>& p)
diff --git a/Source/wtf/OwnPtrCommon.h b/Source/wtf/OwnPtrCommon.h
index 1b7d45d..6aada1f 100644
--- a/Source/wtf/OwnPtrCommon.h
+++ b/Source/wtf/OwnPtrCommon.h
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_OwnPtrCommon_h
diff --git a/Source/wtf/PassOwnArrayPtr.h b/Source/wtf/PassOwnArrayPtr.h
index 8718f65..724dba3 100644
--- a/Source/wtf/PassOwnArrayPtr.h
+++ b/Source/wtf/PassOwnArrayPtr.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_PassOwnArrayPtr_h
@@ -83,54 +83,54 @@
     return ptr;
 }
 
-template<typename T, typename U> inline bool operator==(const PassOwnArrayPtr<T>& a, const PassOwnArrayPtr<U>& b) 
+template<typename T, typename U> inline bool operator==(const PassOwnArrayPtr<T>& a, const PassOwnArrayPtr<U>& b)
 {
-    return a.get() == b.get(); 
+    return a.get() == b.get();
 }
 
-template<typename T, typename U> inline bool operator==(const PassOwnArrayPtr<T>& a, const OwnArrayPtr<U>& b) 
+template<typename T, typename U> inline bool operator==(const PassOwnArrayPtr<T>& a, const OwnArrayPtr<U>& b)
 {
-    return a.get() == b.get(); 
+    return a.get() == b.get();
 }
 
-template<typename T, typename U> inline bool operator==(const OwnArrayPtr<T>& a, const PassOwnArrayPtr<U>& b) 
+template<typename T, typename U> inline bool operator==(const OwnArrayPtr<T>& a, const PassOwnArrayPtr<U>& b)
 {
-    return a.get() == b.get(); 
+    return a.get() == b.get();
 }
 
-template<typename T, typename U> inline bool operator==(const PassOwnArrayPtr<T>& a, U* b) 
+template<typename T, typename U> inline bool operator==(const PassOwnArrayPtr<T>& a, U* b)
 {
-    return a.get() == b; 
+    return a.get() == b;
 }
 
-template<typename T, typename U> inline bool operator==(T* a, const PassOwnArrayPtr<U>& b) 
+template<typename T, typename U> inline bool operator==(T* a, const PassOwnArrayPtr<U>& b)
 {
-    return a == b.get(); 
+    return a == b.get();
 }
 
-template<typename T, typename U> inline bool operator!=(const PassOwnArrayPtr<T>& a, const PassOwnArrayPtr<U>& b) 
+template<typename T, typename U> inline bool operator!=(const PassOwnArrayPtr<T>& a, const PassOwnArrayPtr<U>& b)
 {
-    return a.get() != b.get(); 
+    return a.get() != b.get();
 }
 
-template<typename T, typename U> inline bool operator!=(const PassOwnArrayPtr<T>& a, const OwnArrayPtr<U>& b) 
+template<typename T, typename U> inline bool operator!=(const PassOwnArrayPtr<T>& a, const OwnArrayPtr<U>& b)
 {
-    return a.get() != b.get(); 
+    return a.get() != b.get();
 }
 
-template<typename T, typename U> inline bool operator!=(const OwnArrayPtr<T>& a, const PassOwnArrayPtr<U>& b) 
+template<typename T, typename U> inline bool operator!=(const OwnArrayPtr<T>& a, const PassOwnArrayPtr<U>& b)
 {
-    return a.get() != b.get(); 
+    return a.get() != b.get();
 }
 
 template<typename T, typename U> inline bool operator!=(const PassOwnArrayPtr<T>& a, U* b)
 {
-    return a.get() != b; 
+    return a.get() != b;
 }
 
-template<typename T, typename U> inline bool operator!=(T* a, const PassOwnArrayPtr<U>& b) 
+template<typename T, typename U> inline bool operator!=(T* a, const PassOwnArrayPtr<U>& b)
 {
-    return a != b.get(); 
+    return a != b.get();
 }
 
 template<typename T> inline PassOwnArrayPtr<T> adoptArrayPtr(T* ptr)
@@ -145,12 +145,12 @@
         delete [] ptr;
 }
 
-template<typename T, typename U> inline PassOwnArrayPtr<T> static_pointer_cast(const PassOwnArrayPtr<U>& p) 
+template<typename T, typename U> inline PassOwnArrayPtr<T> static_pointer_cast(const PassOwnArrayPtr<U>& p)
 {
     return adoptArrayPtr(static_cast<T*>(p.leakPtr()));
 }
 
-template<typename T, typename U> inline PassOwnArrayPtr<T> const_pointer_cast(const PassOwnArrayPtr<U>& p) 
+template<typename T, typename U> inline PassOwnArrayPtr<T> const_pointer_cast(const PassOwnArrayPtr<U>& p)
 {
     return adoptArrayPtr(const_cast<T*>(p.leakPtr()));
 }
diff --git a/Source/wtf/PassOwnPtr.h b/Source/wtf/PassOwnPtr.h
index 4afb0e4..c379f2f 100644
--- a/Source/wtf/PassOwnPtr.h
+++ b/Source/wtf/PassOwnPtr.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_PassOwnPtr_h
@@ -93,54 +93,54 @@
         return ptr;
     }
 
-    template<typename T, typename U> inline bool operator==(const PassOwnPtr<T>& a, const PassOwnPtr<U>& b) 
+    template<typename T, typename U> inline bool operator==(const PassOwnPtr<T>& a, const PassOwnPtr<U>& b)
     {
-        return a.get() == b.get(); 
+        return a.get() == b.get();
     }
 
-    template<typename T, typename U> inline bool operator==(const PassOwnPtr<T>& a, const OwnPtr<U>& b) 
+    template<typename T, typename U> inline bool operator==(const PassOwnPtr<T>& a, const OwnPtr<U>& b)
     {
-        return a.get() == b.get(); 
+        return a.get() == b.get();
     }
-    
-    template<typename T, typename U> inline bool operator==(const OwnPtr<T>& a, const PassOwnPtr<U>& b) 
+
+    template<typename T, typename U> inline bool operator==(const OwnPtr<T>& a, const PassOwnPtr<U>& b)
     {
-        return a.get() == b.get(); 
+        return a.get() == b.get();
     }
-    
-    template<typename T, typename U> inline bool operator==(const PassOwnPtr<T>& a, U* b) 
+
+    template<typename T, typename U> inline bool operator==(const PassOwnPtr<T>& a, U* b)
     {
-        return a.get() == b; 
+        return a.get() == b;
     }
-    
-    template<typename T, typename U> inline bool operator==(T* a, const PassOwnPtr<U>& b) 
+
+    template<typename T, typename U> inline bool operator==(T* a, const PassOwnPtr<U>& b)
     {
-        return a == b.get(); 
+        return a == b.get();
     }
-    
-    template<typename T, typename U> inline bool operator!=(const PassOwnPtr<T>& a, const PassOwnPtr<U>& b) 
+
+    template<typename T, typename U> inline bool operator!=(const PassOwnPtr<T>& a, const PassOwnPtr<U>& b)
     {
-        return a.get() != b.get(); 
+        return a.get() != b.get();
     }
-    
-    template<typename T, typename U> inline bool operator!=(const PassOwnPtr<T>& a, const OwnPtr<U>& b) 
+
+    template<typename T, typename U> inline bool operator!=(const PassOwnPtr<T>& a, const OwnPtr<U>& b)
     {
-        return a.get() != b.get(); 
+        return a.get() != b.get();
     }
-    
-    template<typename T, typename U> inline bool operator!=(const OwnPtr<T>& a, const PassOwnPtr<U>& b) 
+
+    template<typename T, typename U> inline bool operator!=(const OwnPtr<T>& a, const PassOwnPtr<U>& b)
     {
-        return a.get() != b.get(); 
+        return a.get() != b.get();
     }
-    
+
     template<typename T, typename U> inline bool operator!=(const PassOwnPtr<T>& a, U* b)
     {
-        return a.get() != b; 
+        return a.get() != b;
     }
-    
-    template<typename T, typename U> inline bool operator!=(T* a, const PassOwnPtr<U>& b) 
+
+    template<typename T, typename U> inline bool operator!=(T* a, const PassOwnPtr<U>& b)
     {
-        return a != b.get(); 
+        return a != b.get();
     }
 
     template<typename T> inline PassOwnPtr<T> adoptPtr(T* ptr)
@@ -148,12 +148,12 @@
         return PassOwnPtr<T>(ptr);
     }
 
-    template<typename T, typename U> inline PassOwnPtr<T> static_pointer_cast(const PassOwnPtr<U>& p) 
+    template<typename T, typename U> inline PassOwnPtr<T> static_pointer_cast(const PassOwnPtr<U>& p)
     {
         return adoptPtr(static_cast<T*>(p.leakPtr()));
     }
 
-    template<typename T, typename U> inline PassOwnPtr<T> const_pointer_cast(const PassOwnPtr<U>& p) 
+    template<typename T, typename U> inline PassOwnPtr<T> const_pointer_cast(const PassOwnPtr<U>& p)
     {
         return adoptPtr(const_cast<T*>(p.leakPtr()));
     }
diff --git a/Source/wtf/PassRefPtr.h b/Source/wtf/PassRefPtr.h
index 511d8ba..d04ad81 100644
--- a/Source/wtf/PassRefPtr.h
+++ b/Source/wtf/PassRefPtr.h
@@ -57,7 +57,7 @@
         ALWAYS_INLINE ~PassRefPtr() { derefIfNotNull(m_ptr); }
 
         template<typename U> PassRefPtr(const RefPtr<U>&);
-        
+
         T* get() const { return m_ptr; }
 
         T* leakRef() const WARN_UNUSED_RETURN;
@@ -81,7 +81,7 @@
 
         mutable T* m_ptr;
     };
-    
+
     template<typename T> template<typename U> inline PassRefPtr<T>::PassRefPtr(const RefPtr<U>& o)
         : m_ptr(o.get())
     {
@@ -96,70 +96,70 @@
         return ptr;
     }
 
-    template<typename T, typename U> inline bool operator==(const PassRefPtr<T>& a, const PassRefPtr<U>& b) 
-    { 
-        return a.get() == b.get(); 
-    }
-
-    template<typename T, typename U> inline bool operator==(const PassRefPtr<T>& a, const RefPtr<U>& b) 
-    { 
-        return a.get() == b.get(); 
-    }
-
-    template<typename T, typename U> inline bool operator==(const RefPtr<T>& a, const PassRefPtr<U>& b) 
-    { 
-        return a.get() == b.get(); 
-    }
-
-    template<typename T, typename U> inline bool operator==(const PassRefPtr<T>& a, U* b) 
-    { 
-        return a.get() == b; 
-    }
-    
-    template<typename T, typename U> inline bool operator==(T* a, const PassRefPtr<U>& b) 
+    template<typename T, typename U> inline bool operator==(const PassRefPtr<T>& a, const PassRefPtr<U>& b)
     {
-        return a == b.get(); 
-    }
-    
-    template<typename T, typename U> inline bool operator!=(const PassRefPtr<T>& a, const PassRefPtr<U>& b) 
-    { 
-        return a.get() != b.get(); 
+        return a.get() == b.get();
     }
 
-    template<typename T, typename U> inline bool operator!=(const PassRefPtr<T>& a, const RefPtr<U>& b) 
-    { 
-        return a.get() != b.get(); 
+    template<typename T, typename U> inline bool operator==(const PassRefPtr<T>& a, const RefPtr<U>& b)
+    {
+        return a.get() == b.get();
     }
 
-    template<typename T, typename U> inline bool operator!=(const RefPtr<T>& a, const PassRefPtr<U>& b) 
-    { 
-        return a.get() != b.get(); 
+    template<typename T, typename U> inline bool operator==(const RefPtr<T>& a, const PassRefPtr<U>& b)
+    {
+        return a.get() == b.get();
+    }
+
+    template<typename T, typename U> inline bool operator==(const PassRefPtr<T>& a, U* b)
+    {
+        return a.get() == b;
+    }
+
+    template<typename T, typename U> inline bool operator==(T* a, const PassRefPtr<U>& b)
+    {
+        return a == b.get();
+    }
+
+    template<typename T, typename U> inline bool operator!=(const PassRefPtr<T>& a, const PassRefPtr<U>& b)
+    {
+        return a.get() != b.get();
+    }
+
+    template<typename T, typename U> inline bool operator!=(const PassRefPtr<T>& a, const RefPtr<U>& b)
+    {
+        return a.get() != b.get();
+    }
+
+    template<typename T, typename U> inline bool operator!=(const RefPtr<T>& a, const PassRefPtr<U>& b)
+    {
+        return a.get() != b.get();
     }
 
     template<typename T, typename U> inline bool operator!=(const PassRefPtr<T>& a, U* b)
     {
-        return a.get() != b; 
+        return a.get() != b;
     }
 
-    template<typename T, typename U> inline bool operator!=(T* a, const PassRefPtr<U>& b) 
-    { 
-        return a != b.get(); 
+    template<typename T, typename U> inline bool operator!=(T* a, const PassRefPtr<U>& b)
+    {
+        return a != b.get();
     }
-    
+
     template<typename T> inline PassRefPtr<T> adoptRef(T* p)
     {
         adopted(p);
         return PassRefPtr<T>(p, true);
     }
 
-    template<typename T, typename U> inline PassRefPtr<T> static_pointer_cast(const PassRefPtr<U>& p) 
-    { 
-        return adoptRef(static_cast<T*>(p.leakRef())); 
+    template<typename T, typename U> inline PassRefPtr<T> static_pointer_cast(const PassRefPtr<U>& p)
+    {
+        return adoptRef(static_cast<T*>(p.leakRef()));
     }
 
-    template<typename T, typename U> inline PassRefPtr<T> const_pointer_cast(const PassRefPtr<U>& p) 
-    { 
-        return adoptRef(const_cast<T*>(p.leakRef())); 
+    template<typename T, typename U> inline PassRefPtr<T> const_pointer_cast(const PassRefPtr<U>& p)
+    {
+        return adoptRef(const_cast<T*>(p.leakRef()));
     }
 
     template<typename T> inline T* getPtr(const PassRefPtr<T>& p)
diff --git a/Source/wtf/Platform.h b/Source/wtf/Platform.h
index 1d118f2..1fe86d3 100644
--- a/Source/wtf/Platform.h
+++ b/Source/wtf/Platform.h
@@ -35,7 +35,7 @@
 
 /* HAVE() - specific system features (headers, functions or similar) that are present or not */
 #define HAVE(WTF_FEATURE) (defined HAVE_##WTF_FEATURE  && HAVE_##WTF_FEATURE)
-/* OS() - underlying operating system; only to be used for mandated low-level services like 
+/* OS() - underlying operating system; only to be used for mandated low-level services like
    virtual memory, not to choose a GUI toolkit */
 #define OS(WTF_FEATURE) (defined WTF_OS_##WTF_FEATURE  && WTF_OS_##WTF_FEATURE)
 
@@ -46,7 +46,7 @@
 /* ENABLE() - turn on a specific feature of WebKit */
 #define ENABLE(WTF_FEATURE) (defined ENABLE_##WTF_FEATURE  && ENABLE_##WTF_FEATURE)
 
-/* ==== OS() - underlying operating system; only to be used for mandated low-level services like 
+/* ==== OS() - underlying operating system; only to be used for mandated low-level services like
    virtual memory, not to choose a GUI toolkit ==== */
 
 /* OS(ANDROID) - Android */
@@ -137,10 +137,10 @@
 
 #if OS(UNIX)
 #define HAVE_ERRNO_H 1
-#define HAVE_MMAP 1   
+#define HAVE_MMAP 1
 #define HAVE_SIGNAL_H 1
 #define HAVE_STRINGS_H 1
-#define HAVE_SYS_TIME_H 1 
+#define HAVE_SYS_TIME_H 1
 #define WTF_USE_PTHREADS 1
 #endif /* OS(UNIX) */
 
diff --git a/Source/wtf/PrintStream.cpp b/Source/wtf/PrintStream.cpp
index 019ed77..09cdf38 100644
--- a/Source/wtf/PrintStream.cpp
+++ b/Source/wtf/PrintStream.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/wtf/PrintStream.h b/Source/wtf/PrintStream.h
index 5bc7863..f1b2db2 100644
--- a/Source/wtf/PrintStream.h
+++ b/Source/wtf/PrintStream.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PrintStream_h
@@ -49,20 +49,20 @@
     // Typically a no-op for many subclasses of PrintStream, this is a hint that
     // the implementation should flush its buffers if it had not done so already.
     virtual void flush();
-    
+
     template<typename T>
     void print(const T& value)
     {
         printInternal(*this, value);
     }
-    
+
     template<typename T1, typename T2>
     void print(const T1& value1, const T2& value2)
     {
         print(value1);
         print(value2);
     }
-    
+
     template<typename T1, typename T2, typename T3>
     void print(const T1& value1, const T2& value2, const T3& value3)
     {
@@ -70,7 +70,7 @@
         print(value2);
         print(value3);
     }
-    
+
     template<typename T1, typename T2, typename T3, typename T4>
     void print(const T1& value1, const T2& value2, const T3& value3, const T4& value4)
     {
@@ -79,7 +79,7 @@
         print(value3);
         print(value4);
     }
-    
+
     template<typename T1, typename T2, typename T3, typename T4, typename T5>
     void print(const T1& value1, const T2& value2, const T3& value3, const T4& value4, const T5& value5)
     {
@@ -89,7 +89,7 @@
         print(value4);
         print(value5);
     }
-    
+
     template<typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
     void print(const T1& value1, const T2& value2, const T3& value3, const T4& value4, const T5& value5, const T6& value6)
     {
@@ -100,7 +100,7 @@
         print(value5);
         print(value6);
     }
-    
+
     template<typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7>
     void print(const T1& value1, const T2& value2, const T3& value3, const T4& value4, const T5& value5, const T6& value6, const T7& value7)
     {
@@ -112,7 +112,7 @@
         print(value6);
         print(value7);
     }
-    
+
     template<typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8>
     void print(const T1& value1, const T2& value2, const T3& value3, const T4& value4, const T5& value5, const T6& value6, const T7& value7, const T8& value8)
     {
@@ -125,7 +125,7 @@
         print(value7);
         print(value8);
     }
-    
+
     template<typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
     void print(const T1& value1, const T2& value2, const T3& value3, const T4& value4, const T5& value5, const T6& value6, const T7& value7, const T8& value8, const T9& value9)
     {
@@ -139,7 +139,7 @@
         print(value8);
         print(value9);
     }
-    
+
     template<typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10>
     void print(const T1& value1, const T2& value2, const T3& value3, const T4& value4, const T5& value5, const T6& value6, const T7& value7, const T8& value8, const T9& value9, const T10& value10)
     {
@@ -154,7 +154,7 @@
         print(value9);
         print(value10);
     }
-    
+
     template<typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11>
     void print(const T1& value1, const T2& value2, const T3& value3, const T4& value4, const T5& value5, const T6& value6, const T7& value7, const T8& value8, const T9& value9, const T10& value10, const T11& value11)
     {
@@ -170,7 +170,7 @@
         print(value10);
         print(value11);
     }
-    
+
     template<typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12>
     void print(const T1& value1, const T2& value2, const T3& value3, const T4& value4, const T5& value5, const T6& value6, const T7& value7, const T8& value8, const T9& value9, const T10& value10, const T11& value11, const T12& value12)
     {
@@ -187,7 +187,7 @@
         print(value11);
         print(value12);
     }
-    
+
     template<typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13>
     void print(const T1& value1, const T2& value2, const T3& value3, const T4& value4, const T5& value5, const T6& value6, const T7& value7, const T8& value8, const T9& value9, const T10& value10, const T11& value11, const T12& value12, const T13& value13)
     {
@@ -276,7 +276,7 @@
         : m_ptr(ptr)
     {
     }
-    
+
     void dump(PrintStream& out) const
     {
         if (m_ptr)
diff --git a/Source/wtf/ProcessID.h b/Source/wtf/ProcessID.h
index be2a696..332f530 100644
--- a/Source/wtf/ProcessID.h
+++ b/Source/wtf/ProcessID.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef ProcessID_h
diff --git a/Source/wtf/RandomNumber.cpp b/Source/wtf/RandomNumber.cpp
index 7c764d3..059195d 100644
--- a/Source/wtf/RandomNumber.cpp
+++ b/Source/wtf/RandomNumber.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/wtf/RandomNumber.h b/Source/wtf/RandomNumber.h
index 1ffed42..3259a32 100644
--- a/Source/wtf/RandomNumber.h
+++ b/Source/wtf/RandomNumber.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_RandomNumber_h
diff --git a/Source/wtf/RandomNumberSeed.h b/Source/wtf/RandomNumberSeed.h
index 1cdd5f3..2764b6d 100644
--- a/Source/wtf/RandomNumberSeed.h
+++ b/Source/wtf/RandomNumberSeed.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_RandomNumberSeed_h
diff --git a/Source/wtf/RefCountedLeakCounter.cpp b/Source/wtf/RefCountedLeakCounter.cpp
index 3d49e9f..b1aebf5 100644
--- a/Source/wtf/RefCountedLeakCounter.cpp
+++ b/Source/wtf/RefCountedLeakCounter.cpp
@@ -61,7 +61,7 @@
 RefCountedLeakCounter::RefCountedLeakCounter(const char* description)
     : m_description(description)
 {
-}    
+}
 
 RefCountedLeakCounter::~RefCountedLeakCounter()
 {
diff --git a/Source/wtf/RefCountedLeakCounter.h b/Source/wtf/RefCountedLeakCounter.h
index 31778c4..ba273bc 100644
--- a/Source/wtf/RefCountedLeakCounter.h
+++ b/Source/wtf/RefCountedLeakCounter.h
@@ -17,20 +17,20 @@
  *  Boston, MA 02110-1301, USA.
  *
  */
- 
+
 #ifndef RefCountedLeakCounter_h
 #define RefCountedLeakCounter_h
- 
+
 #include "wtf/Assertions.h"
 #include "wtf/Threading.h"
 #include "wtf/WTFExport.h"
 
 namespace WTF {
-    
+
     struct WTF_EXPORT RefCountedLeakCounter {
         static void suppressMessages(const char*);
         static void cancelMessageSuppression(const char*);
-        
+
         explicit RefCountedLeakCounter(const char* description);
         ~RefCountedLeakCounter();
 
diff --git a/Source/wtf/RefPtr.h b/Source/wtf/RefPtr.h
index e8b6667..fb901ac 100644
--- a/Source/wtf/RefPtr.h
+++ b/Source/wtf/RefPtr.h
@@ -50,19 +50,19 @@
         ALWAYS_INLINE ~RefPtr() { derefIfNotNull(m_ptr); }
 
         T* get() const { return m_ptr; }
-        
+
         void clear();
         PassRefPtr<T> release() { PassRefPtr<T> tmp = adoptRef(m_ptr); m_ptr = 0; return tmp; }
 
         T& operator*() const { return *m_ptr; }
         ALWAYS_INLINE T* operator->() const { return m_ptr; }
-        
+
         bool operator!() const { return !m_ptr; }
-    
+
         // This conversion operator allows implicit conversion to bool but not to other integer types.
         typedef T* (RefPtr::*UnspecifiedBoolType);
         operator UnspecifiedBoolType() const { return m_ptr ? &RefPtr::m_ptr : 0; }
-        
+
         RefPtr& operator=(const RefPtr&);
         RefPtr& operator=(T*);
         RefPtr& operator=(const PassRefPtr<T>&);
@@ -79,7 +79,7 @@
     private:
         T* m_ptr;
     };
-    
+
     template<typename T> template<typename U> inline RefPtr<T>::RefPtr(const PassRefPtr<U>& o)
         : m_ptr(o.leakRef())
     {
@@ -101,7 +101,7 @@
         derefIfNotNull(ptr);
         return *this;
     }
-    
+
     template<typename T> template<typename U> inline RefPtr<T>& RefPtr<T>::operator=(const RefPtr<U>& o)
     {
         T* optr = o.get();
@@ -111,7 +111,7 @@
         derefIfNotNull(ptr);
         return *this;
     }
-    
+
     template<typename T> inline RefPtr<T>& RefPtr<T>::operator=(T* optr)
     {
         refIfNotNull(optr);
@@ -148,43 +148,43 @@
     }
 
     template<typename T, typename U> inline bool operator==(const RefPtr<T>& a, const RefPtr<U>& b)
-    { 
-        return a.get() == b.get(); 
+    {
+        return a.get() == b.get();
     }
 
     template<typename T, typename U> inline bool operator==(const RefPtr<T>& a, U* b)
-    { 
-        return a.get() == b; 
-    }
-    
-    template<typename T, typename U> inline bool operator==(T* a, const RefPtr<U>& b) 
     {
-        return a == b.get(); 
+        return a.get() == b;
     }
-    
+
+    template<typename T, typename U> inline bool operator==(T* a, const RefPtr<U>& b)
+    {
+        return a == b.get();
+    }
+
     template<typename T, typename U> inline bool operator!=(const RefPtr<T>& a, const RefPtr<U>& b)
-    { 
-        return a.get() != b.get(); 
+    {
+        return a.get() != b.get();
     }
 
     template<typename T, typename U> inline bool operator!=(const RefPtr<T>& a, U* b)
     {
-        return a.get() != b; 
+        return a.get() != b;
     }
 
     template<typename T, typename U> inline bool operator!=(T* a, const RefPtr<U>& b)
-    { 
-        return a != b.get(); 
+    {
+        return a != b.get();
     }
-    
+
     template<typename T, typename U> inline RefPtr<T> static_pointer_cast(const RefPtr<U>& p)
-    { 
-        return RefPtr<T>(static_cast<T*>(p.get())); 
+    {
+        return RefPtr<T>(static_cast<T*>(p.get()));
     }
 
     template<typename T, typename U> inline RefPtr<T> const_pointer_cast(const RefPtr<U>& p)
-    { 
-        return RefPtr<T>(const_cast<T*>(p.get())); 
+    {
+        return RefPtr<T>(const_cast<T*>(p.get()));
     }
 
     template<typename T> inline T* getPtr(const RefPtr<T>& p)
diff --git a/Source/wtf/RefPtrHashMap.h b/Source/wtf/RefPtrHashMap.h
index 9541837..76a5610 100644
--- a/Source/wtf/RefPtrHashMap.h
+++ b/Source/wtf/RefPtrHashMap.h
@@ -25,9 +25,9 @@
 
     // This specialization is a copy of HashMap for use with RefPtr keys, with overloaded functions
     // to allow for lookup by pointer instead of RefPtr, avoiding ref-count churn.
-    
+
      // FIXME: Find a way to do this with traits that doesn't require a copy of the HashMap template.
-    
+
     template<typename T, typename MappedArg, typename HashArg, typename KeyTraitsArg, typename MappedTraitsArg>
     class HashMap<RefPtr<T>, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg> {
         WTF_MAKE_FAST_ALLOCATED;
@@ -48,7 +48,7 @@
         typedef typename MappedTraits::PeekType MappedPeekType;
 
         typedef typename ReferenceTypeMaker<MappedPassInType>::ReferenceType MappedPassInReferenceType;
-        
+
         typedef HashArg HashFunctions;
 
         typedef HashTable<KeyType, ValueType, KeyValuePairKeyExtractor<ValueType>,
@@ -85,13 +85,13 @@
         MappedPeekType inlineGet(RawKeyType) const;
 
         // replaces value but not key if key is already present
-        // return value is a pair of the iterator to the key location, 
+        // return value is a pair of the iterator to the key location,
         // and a boolean that's true if a new value was actually added
         AddResult set(const KeyType&, MappedPassInType);
         AddResult set(RawKeyType, MappedPassInType);
 
         // does nothing if key is already present
-        // return value is a pair of the iterator to the key location, 
+        // return value is a pair of the iterator to the key location,
         // and a boolean that's true if a new value was actually added
         AddResult add(const KeyType&, MappedPassInType);
         AddResult add(RawKeyType, MappedPassInType);
@@ -110,23 +110,23 @@
 
         HashTableType m_impl;
     };
-    
+
     template<typename T, typename U, typename V, typename W, typename X>
     inline void HashMap<RefPtr<T>, U, V, W, X>::swap(HashMap& other)
     {
-        m_impl.swap(other.m_impl); 
+        m_impl.swap(other.m_impl);
     }
 
     template<typename T, typename U, typename V, typename W, typename X>
     inline int HashMap<RefPtr<T>, U, V, W, X>::size() const
     {
-        return m_impl.size(); 
+        return m_impl.size();
     }
 
     template<typename T, typename U, typename V, typename W, typename X>
     inline int HashMap<RefPtr<T>, U, V, W, X>::capacity() const
-    { 
-        return m_impl.capacity(); 
+    {
+        return m_impl.capacity();
     }
 
     template<typename T, typename U, typename V, typename W, typename X>
@@ -197,21 +197,21 @@
 
     template<typename T, typename U, typename V, typename W, typename X>
     inline typename HashMap<RefPtr<T>, U, V, W, X>::AddResult
-    HashMap<RefPtr<T>, U, V, W, X>::inlineAdd(const KeyType& key, MappedPassInReferenceType mapped) 
+    HashMap<RefPtr<T>, U, V, W, X>::inlineAdd(const KeyType& key, MappedPassInReferenceType mapped)
     {
         return m_impl.template add<Translator>(key, mapped);
     }
 
     template<typename T, typename U, typename V, typename W, typename X>
     inline typename HashMap<RefPtr<T>, U, V, W, X>::AddResult
-    HashMap<RefPtr<T>, U, V, W, X>::inlineAdd(RawKeyType key, MappedPassInReferenceType mapped) 
+    HashMap<RefPtr<T>, U, V, W, X>::inlineAdd(RawKeyType key, MappedPassInReferenceType mapped)
     {
         return m_impl.template add<Translator>(key, mapped);
     }
 
     template<typename T, typename U, typename V, typename W, typename X>
     typename HashMap<RefPtr<T>, U, V, W, X>::AddResult
-    HashMap<RefPtr<T>, U, V, W, X>::set(const KeyType& key, MappedPassInType mapped) 
+    HashMap<RefPtr<T>, U, V, W, X>::set(const KeyType& key, MappedPassInType mapped)
     {
         AddResult result = inlineAdd(key, mapped);
         if (!result.isNewEntry) {
@@ -223,7 +223,7 @@
 
     template<typename T, typename U, typename V, typename W, typename X>
     typename HashMap<RefPtr<T>, U, V, W, X>::AddResult
-    HashMap<RefPtr<T>, U, V, W, X>::set(RawKeyType key, MappedPassInType mapped) 
+    HashMap<RefPtr<T>, U, V, W, X>::set(RawKeyType key, MappedPassInType mapped)
     {
         AddResult result = inlineAdd(key, mapped);
         if (!result.isNewEntry) {
diff --git a/Source/wtf/RetainPtr.h b/Source/wtf/RetainPtr.h
index ec7403b..9e5bbc6 100644
--- a/Source/wtf/RetainPtr.h
+++ b/Source/wtf/RetainPtr.h
@@ -50,7 +50,7 @@
 
     enum AdoptCFTag { AdoptCF };
     enum AdoptNSTag { AdoptNS };
-    
+
 #ifdef __OBJC__
     inline void adoptNSReference(id ptr)
     {
@@ -71,7 +71,7 @@
 
         RetainPtr(AdoptCFTag, PtrType ptr) : m_ptr(ptr) { }
         RetainPtr(AdoptNSTag, PtrType ptr) : m_ptr(ptr) { adoptNSReference(ptr); }
-        
+
         RetainPtr(const RetainPtr& o) : m_ptr(o.m_ptr) { if (PtrType ptr = m_ptr) CFRetain(ptr); }
 
 #if COMPILER_SUPPORTS(CXX_RVALUE_REFERENCES)
@@ -81,9 +81,9 @@
         // Hash table deleted values, which are only constructed and never copied or destroyed.
         RetainPtr(HashTableDeletedValueType) : m_ptr(hashTableDeletedValue()) { }
         bool isHashTableDeletedValue() const { return m_ptr == hashTableDeletedValue(); }
-        
+
         ~RetainPtr() { if (PtrType ptr = m_ptr) CFRelease(ptr); }
-        
+
         template<typename U> RetainPtr(const RetainPtr<U>&);
 
         void clear();
@@ -96,11 +96,11 @@
 #endif
 
         bool operator!() const { return !m_ptr; }
-    
+
         // This conversion operator allows implicit conversion to bool but not to other integer types.
         typedef PtrType RetainPtr::*UnspecifiedBoolType;
         operator UnspecifiedBoolType() const { return m_ptr ? &RetainPtr::m_ptr : 0; }
-        
+
         RetainPtr& operator=(const RetainPtr&);
         template<typename U> RetainPtr& operator=(const RetainPtr<U>&);
         RetainPtr& operator=(PtrType);
@@ -117,7 +117,7 @@
 
         void adoptCF(PtrType);
         void adoptNS(PtrType);
-        
+
         void swap(RetainPtr&);
 
     private:
@@ -125,7 +125,7 @@
 
         PtrType m_ptr;
     };
-    
+
     template<typename T> template<typename U> inline RetainPtr<T>::RetainPtr(const RetainPtr<U>& o)
         : m_ptr(o.get())
     {
@@ -159,7 +159,7 @@
             CFRelease(ptr);
         return *this;
     }
-    
+
     template<typename T> template<typename U> inline RetainPtr<T>& RetainPtr<T>::operator=(const RetainPtr<U>& o)
     {
         PtrType optr = o.get();
@@ -200,7 +200,7 @@
         adoptCF(o.leakRef());
         return *this;
     }
-    
+
     template<typename T> template<typename U> inline RetainPtr<T>& RetainPtr<T>::operator=(RetainPtr<U>&& o)
     {
         adoptCF(o.leakRef());
@@ -219,7 +219,7 @@
     template<typename T> inline void RetainPtr<T>::adoptNS(PtrType optr)
     {
         adoptNSReference(optr);
-        
+
         PtrType ptr = m_ptr;
         m_ptr = optr;
         if (ptr)
@@ -237,33 +237,33 @@
     }
 
     template<typename T, typename U> inline bool operator==(const RetainPtr<T>& a, const RetainPtr<U>& b)
-    { 
-        return a.get() == b.get(); 
+    {
+        return a.get() == b.get();
     }
 
     template<typename T, typename U> inline bool operator==(const RetainPtr<T>& a, U* b)
-    { 
-        return a.get() == b; 
-    }
-    
-    template<typename T, typename U> inline bool operator==(T* a, const RetainPtr<U>& b) 
     {
-        return a == b.get(); 
+        return a.get() == b;
     }
-    
+
+    template<typename T, typename U> inline bool operator==(T* a, const RetainPtr<U>& b)
+    {
+        return a == b.get();
+    }
+
     template<typename T, typename U> inline bool operator!=(const RetainPtr<T>& a, const RetainPtr<U>& b)
-    { 
-        return a.get() != b.get(); 
+    {
+        return a.get() != b.get();
     }
 
     template<typename T, typename U> inline bool operator!=(const RetainPtr<T>& a, U* b)
     {
-        return a.get() != b; 
+        return a.get() != b;
     }
 
     template<typename T, typename U> inline bool operator!=(T* a, const RetainPtr<U>& b)
-    { 
-        return a != b.get(); 
+    {
+        return a != b.get();
     }
 
     template<typename T> inline RetainPtr<T> adoptCF(T CF_RELEASES_ARGUMENT) WARN_UNUSED_RETURN;
@@ -286,7 +286,7 @@
     }
 
     template<typename P> struct HashTraits<RetainPtr<P> > : SimpleClassHashTraits<RetainPtr<P> > { };
-    
+
     template<typename P> struct PtrHash<RetainPtr<P> > : PtrHash<typename RetainPtr<P>::PtrType> {
         using PtrHash<typename RetainPtr<P>::PtrType>::hash;
         static unsigned hash(const RetainPtr<P>& key) { return hash(key.get()); }
diff --git a/Source/wtf/SHA1.h b/Source/wtf/SHA1.h
index fc73727..1cf357c 100644
--- a/Source/wtf/SHA1.h
+++ b/Source/wtf/SHA1.h
@@ -59,13 +59,13 @@
 
     // computeHash has a side effect of resetting the state of the object.
     void computeHash(Vector<uint8_t, 20>&);
-    
+
     // Get a hex hash from the digest. Pass a limit less than 40 if you want a shorter digest.
     static CString hexDigest(const Vector<uint8_t, 20>&);
-    
+
     // Compute the hex digest directly. Pass a limit less than 40 if you want a shorter digest.
     CString computeHexDigest();
-    
+
 private:
     void finalize();
     void processBlock();
diff --git a/Source/wtf/StackStats.cpp b/Source/wtf/StackStats.cpp
index 3df0c22..ecfe120 100644
--- a/Source/wtf/StackStats.cpp
+++ b/Source/wtf/StackStats.cpp
@@ -20,13 +20,13 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
 #include "StackStats.h"
 
-#if ENABLE(STACK_STATS) 
+#if ENABLE(STACK_STATS)
 
 #include "Assertions.h"
 #include "DataLog.h"
@@ -226,7 +226,7 @@
     }
     StackStats::s_topLayoutCheckPoint = this;
 
-    // 
+    //
     char* current = reinterpret_cast<char*>(this);
     char* last = reinterpret_cast<char*>(m_prev);
     char* root = reinterpret_cast<char*>(StackStats::s_firstLayoutCheckPoint);
diff --git a/Source/wtf/StackStats.h b/Source/wtf/StackStats.h
index ce8749c..c0c424c 100644
--- a/Source/wtf/StackStats.h
+++ b/Source/wtf/StackStats.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef StackStats_h
@@ -44,7 +44,7 @@
 
 namespace WTF {
 
-#if !ENABLE(STACK_STATS) 
+#if !ENABLE(STACK_STATS)
 
 class StackStats {
 public:
@@ -141,7 +141,7 @@
     friend class LayoutCheckPoint;
 };
 
-#endif // ENABLE(STACK_STATS) 
+#endif // ENABLE(STACK_STATS)
 
 } // namespace WTF
 
diff --git a/Source/wtf/StdLibExtras.h b/Source/wtf/StdLibExtras.h
index afa5fd9..293211c 100644
--- a/Source/wtf/StdLibExtras.h
+++ b/Source/wtf/StdLibExtras.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_StdLibExtras_h
@@ -190,7 +190,7 @@
     while (size > 1) {
         size_t pos = (size - 1) >> 1;
         KeyType val = extractKey(&array[offset + pos]);
-        
+
         if (val == key)
             return &array[offset + pos];
         // The item we are looking for is smaller than the item being check; reduce the value of 'size',
@@ -205,10 +205,10 @@
 
         ASSERT(mode != KeyMustBePresentInArray || size);
     }
-    
+
     if (mode == KeyMightNotBePresentInArray && !size)
         return 0;
-    
+
     ArrayElementType* result = &array[offset];
 
     if (mode == KeyMightNotBePresentInArray && key != extractKey(result))
diff --git a/Source/wtf/StringExtras.h b/Source/wtf/StringExtras.h
index 766080b..4166f0f 100644
--- a/Source/wtf/StringExtras.h
+++ b/Source/wtf/StringExtras.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_StringExtras_h
@@ -30,14 +30,14 @@
 #include <stdio.h>
 #include <string.h>
 
-#if HAVE(STRINGS_H) 
-#include <strings.h> 
-#endif 
+#if HAVE(STRINGS_H)
+#include <strings.h>
+#endif
 
 #if COMPILER(MSVC)
 // FIXME: why a COMPILER check instead of OS? also, these should be HAVE checks
 
-inline int snprintf(char* buffer, size_t count, const char* format, ...) 
+inline int snprintf(char* buffer, size_t count, const char* format, ...)
 {
     int result;
     va_list args;
@@ -65,7 +65,7 @@
     return result;
 }
 
-// Work around a difference in Microsoft's implementation of vsnprintf, where 
+// Work around a difference in Microsoft's implementation of vsnprintf, where
 // vsnprintf does not null terminate the buffer. WebKit can rely on the null termination.
 #define vsnprintf(buffer, count, format, args) wtf_vsnprintf(buffer, count, format, args)
 
diff --git a/Source/wtf/TCPageMap.h b/Source/wtf/TCPageMap.h
index 6b226a9..9f48ea3 100644
--- a/Source/wtf/TCPageMap.h
+++ b/Source/wtf/TCPageMap.h
@@ -1,10 +1,10 @@
 // Copyright (c) 2005, Google Inc.
 // All rights reserved.
-// 
+//
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions are
 // met:
-// 
+//
 //     * Redistributions of source code must retain the above copyright
 // notice, this list of conditions and the following disclaimer.
 //     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
 //     * Neither the name of Google Inc. nor the names of its
 // contributors may be used to endorse or promote products derived from
 // this software without specific prior written permission.
-// 
+//
 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/wtf/TCSpinLock.h b/Source/wtf/TCSpinLock.h
index ae98ee4..2c1cd7c 100644
--- a/Source/wtf/TCSpinLock.h
+++ b/Source/wtf/TCSpinLock.h
@@ -1,11 +1,11 @@
 // Copyright (c) 2005, 2006, Google Inc.
 // Copyright (c) 2010, Patrick Gansterer <paroga@paroga.com>
 // All rights reserved.
-// 
+//
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions are
 // met:
-// 
+//
 //     * Redistributions of source code must retain the above copyright
 // notice, this list of conditions and the following disclaimer.
 //     * Redistributions in binary form must reproduce the above
@@ -15,7 +15,7 @@
 //     * Neither the name of Google Inc. nor the names of its
 // contributors may be used to endorse or promote products derived from
 // this software without specific prior written permission.
-// 
+//
 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/wtf/TCSystemAlloc.cpp b/Source/wtf/TCSystemAlloc.cpp
index 166644f..15ea93a 100644
--- a/Source/wtf/TCSystemAlloc.cpp
+++ b/Source/wtf/TCSystemAlloc.cpp
@@ -1,10 +1,10 @@
 // Copyright (c) 2005, 2007, Google Inc.
 // All rights reserved.
-// 
+//
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions are
 // met:
-// 
+//
 //     * Redistributions of source code must retain the above copyright
 // notice, this list of conditions and the following disclaimer.
 //     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
 //     * Neither the name of Google Inc. nor the names of its
 // contributors may be used to endorse or promote products derived from
 // this software without specific prior written permission.
-// 
+//
 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -72,7 +72,7 @@
 
 #if HAVE(MMAP)
 static bool use_mmap = true;
-#endif 
+#endif
 
 #if HAVE(VIRTUALALLOC)
 static bool use_VirtualAlloc = true;
@@ -94,12 +94,12 @@
   if (pagesize == 0) pagesize = getpagesize();
   if (alignment < pagesize) alignment = pagesize;
   size = ((size + alignment - 1) / alignment) * alignment;
-  
+
   // could theoretically return the "extra" bytes here, but this
   // is simple and correct.
-  if (actual_size) 
+  if (actual_size)
     *actual_size = size;
-    
+
   // Ask for extra memory if alignment > pagesize
   size_t extra = 0;
   if (alignment > pagesize) {
@@ -153,16 +153,16 @@
 
   // could theoretically return the "extra" bytes here, but this
   // is simple and correct.
-  if (actual_size) 
+  if (actual_size)
     *actual_size = size;
-    
+
   // Ask for extra memory if alignment > pagesize
   size_t extra = 0;
   if (alignment > pagesize) {
     extra = alignment - pagesize;
   }
   void* result = VirtualAlloc(NULL, size + extra,
-                              MEM_RESERVE | MEM_COMMIT | MEM_TOP_DOWN, 
+                              MEM_RESERVE | MEM_COMMIT | MEM_TOP_DOWN,
                               PAGE_READWRITE);
 
   if (result == NULL) {
@@ -195,7 +195,7 @@
 void* TCMalloc_SystemAlloc(size_t size, size_t *actual_size, size_t alignment) {
   // Discard requests that overflow
   if (size + alignment < size) return NULL;
-    
+
   SpinLockHolder lock_holder(&spinlock);
 
   // Enforce minimum alignment
@@ -205,7 +205,7 @@
   // more trying all allocators even if they failed before.
   for (int i = 0; i < 2; i++) {
 
-#if HAVE(MMAP)    
+#if HAVE(MMAP)
     if (use_mmap && !mmap_failure) {
       void* result = TryMmap(size, actual_size, alignment);
       if (result != NULL) return result;
diff --git a/Source/wtf/TCSystemAlloc.h b/Source/wtf/TCSystemAlloc.h
index 1c67788..247ea7c 100644
--- a/Source/wtf/TCSystemAlloc.h
+++ b/Source/wtf/TCSystemAlloc.h
@@ -1,10 +1,10 @@
 // Copyright (c) 2005, 2007, Google Inc.
 // All rights reserved.
-// 
+//
 // Redistribution and use in source and binary forms, with or without
 // modification, are permitted provided that the following conditions are
 // met:
-// 
+//
 //     * Redistributions of source code must retain the above copyright
 // notice, this list of conditions and the following disclaimer.
 //     * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
 //     * Neither the name of Google Inc. nor the names of its
 // contributors may be used to endorse or promote products derived from
 // this software without specific prior written permission.
-// 
+//
 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
diff --git a/Source/wtf/ThreadFunctionInvocation.h b/Source/wtf/ThreadFunctionInvocation.h
index 2d8599e..b9ca701 100644
--- a/Source/wtf/ThreadFunctionInvocation.h
+++ b/Source/wtf/ThreadFunctionInvocation.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/wtf/ThreadSafeRefCounted.h b/Source/wtf/ThreadSafeRefCounted.h
index 0e599e2..809af5a 100644
--- a/Source/wtf/ThreadSafeRefCounted.h
+++ b/Source/wtf/ThreadSafeRefCounted.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/wtf/ThreadSpecific.h b/Source/wtf/ThreadSpecific.h
index fb2749a..516d6f7 100644
--- a/Source/wtf/ThreadSpecific.h
+++ b/Source/wtf/ThreadSpecific.h
@@ -8,13 +8,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/wtf/Threading.cpp b/Source/wtf/Threading.cpp
index 2637997..23e7df1 100644
--- a/Source/wtf/Threading.cpp
+++ b/Source/wtf/Threading.cpp
@@ -6,10 +6,10 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/wtf/Threading.h b/Source/wtf/Threading.h
index 5e35490..62285d2 100644
--- a/Source/wtf/Threading.h
+++ b/Source/wtf/Threading.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/wtf/ThreadingPrimitives.h b/Source/wtf/ThreadingPrimitives.h
index 95233dc..ad16429 100644
--- a/Source/wtf/ThreadingPrimitives.h
+++ b/Source/wtf/ThreadingPrimitives.h
@@ -7,13 +7,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -60,7 +60,7 @@
 struct PlatformCondition {
     size_t m_waitersGone;
     size_t m_waitersBlocked;
-    size_t m_waitersToUnblock; 
+    size_t m_waitersToUnblock;
     HANDLE m_blockLock;
     HANDLE m_blockQueue;
     HANDLE m_unblockLock;
@@ -72,7 +72,7 @@
 typedef void* PlatformMutex;
 typedef void* PlatformCondition;
 #endif
-    
+
 class WTF_EXPORT Mutex {
     WTF_MAKE_NONCOPYABLE(Mutex); WTF_MAKE_FAST_ALLOCATED;
 public:
@@ -113,14 +113,14 @@
 public:
     ThreadCondition();
     ~ThreadCondition();
-    
+
     void wait(Mutex&);
     // Returns true if the condition was signaled before absoluteTime, false if the absoluteTime was reached or is in the past.
     // The absoluteTime is in seconds, starting on January 1, 1970. The time is assumed to use the same time zone as WTF::currentTime().
     bool timedWait(Mutex&, double absoluteTime);
     void signal();
     void broadcast();
-    
+
 private:
     PlatformCondition m_condition;
 };
diff --git a/Source/wtf/ThreadingPthreads.cpp b/Source/wtf/ThreadingPthreads.cpp
index 2288bc1..aa0c186 100644
--- a/Source/wtf/ThreadingPthreads.cpp
+++ b/Source/wtf/ThreadingPthreads.cpp
@@ -8,13 +8,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -67,15 +67,15 @@
     enum JoinableState {
         Joinable, // The default thread state. The thread can be joined on.
 
-        Joined, // Somebody waited on this thread to exit and this thread finally exited. This state is here because there can be a 
-                // period of time between when the thread exits (which causes pthread_join to return and the remainder of waitOnThreadCompletion to run) 
-                // and when threadDidExit is called. We need threadDidExit to take charge and delete the thread data since there's 
+        Joined, // Somebody waited on this thread to exit and this thread finally exited. This state is here because there can be a
+                // period of time between when the thread exits (which causes pthread_join to return and the remainder of waitOnThreadCompletion to run)
+                // and when threadDidExit is called. We need threadDidExit to take charge and delete the thread data since there's
                 // nobody else to pick up the slack in this case (since waitOnThreadCompletion has already returned).
 
         Detached // The thread has been detached and can no longer be joined on. At this point, the thread must take care of cleaning up after itself.
     };
 
-    // Currently all threads created by WTF start out as joinable. 
+    // Currently all threads created by WTF start out as joinable.
     PthreadState(pthread_t handle)
         : m_joinableState(Joinable)
         , m_didExit(false)
@@ -275,7 +275,7 @@
     MutexLocker locker(threadMapMutex());
     PthreadState* state = threadMap().get(threadID);
     ASSERT(state);
-    
+
     state->didExit();
 
     if (state->joinableState() != PthreadState::Joinable)
@@ -343,7 +343,7 @@
 }
 
 ThreadCondition::ThreadCondition()
-{ 
+{
     pthread_cond_init(&m_condition, NULL);
 }
 
@@ -351,7 +351,7 @@
 {
     pthread_cond_destroy(&m_condition);
 }
-    
+
 void ThreadCondition::wait(Mutex& mutex)
 {
     int result = pthread_cond_wait(&m_condition, &mutex.impl());
diff --git a/Source/wtf/ThreadingWin.cpp b/Source/wtf/ThreadingWin.cpp
index 3df40a6..f12679f 100644
--- a/Source/wtf/ThreadingWin.cpp
+++ b/Source/wtf/ThreadingWin.cpp
@@ -8,13 +8,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -244,11 +244,11 @@
 int waitForThreadCompletion(ThreadIdentifier threadID)
 {
     ASSERT(threadID);
-    
+
     HANDLE threadHandle = threadHandleForIdentifier(threadID);
     if (!threadHandle)
         LOG_ERROR("ThreadIdentifier %u did not correspond to an active thread when trying to quit", threadID);
- 
+
     DWORD joinResult = WaitForSingleObject(threadHandle, INFINITE);
     if (joinResult == WAIT_FAILED)
         LOG_ERROR("ThreadIdentifier %u was found to be deadlocked trying to quit", threadID);
@@ -295,7 +295,7 @@
     EnterCriticalSection(&m_mutex.m_internalMutex);
     ++m_mutex.m_recursionCount;
 }
-    
+
 bool Mutex::tryLock()
 {
     // This method is modeled after the behavior of pthread_mutex_trylock,
@@ -305,7 +305,7 @@
     // tests in WebKit that check to see if the current thread already
     // owned this mutex (see e.g., IconDatabase::getOrCreateIconRecord)
     DWORD result = TryEnterCriticalSection(&m_mutex.m_internalMutex);
-    
+
     if (result != 0) {       // We got the lock
         // If this thread already had the lock, we must unlock and
         // return false so that we mimic the behavior of POSIX's
diff --git a/Source/wtf/TriState.h b/Source/wtf/TriState.h
index f613a7b..abac5f7 100644
--- a/Source/wtf/TriState.h
+++ b/Source/wtf/TriState.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TriState_h
diff --git a/Source/wtf/TypeTraits.h b/Source/wtf/TypeTraits.h
index 30616c6..265e9e5 100644
--- a/Source/wtf/TypeTraits.h
+++ b/Source/wtf/TypeTraits.h
@@ -230,7 +230,7 @@
 
 #if COMPILER(CLANG) || GCC_VERSION_AT_LEAST(4, 6, 0) || (defined(_MSC_VER) && (_MSC_VER >= 1400) && (_MSC_VER < 1600) && !defined(__INTEL_COMPILER))
     // VC8 (VS2005) and later has __has_trivial_constructor and __has_trivial_destructor,
-    // but the implementation returns false for built-in types. We add the extra IsPod condition to 
+    // but the implementation returns false for built-in types. We add the extra IsPod condition to
     // work around this.
     template <typename T> struct HasTrivialConstructor {
         static const bool value = __has_trivial_constructor(T) || IsPod<RemoveConstVolatile<T> >::value;
@@ -244,9 +244,9 @@
     template<typename T> struct HasTrivialConstructor : public std::tr1::has_trivial_constructor<T> { };
     template<typename T> struct HasTrivialDestructor : public std::tr1::has_trivial_destructor<T> { };
 #else
-    // For compilers that don't support detection of trivial constructors and destructors in classes, 
-    // we use a template that returns true for any POD type that IsPod can detect (see IsPod caveats above), 
-    // but false for all other types (which includes all classes). This will give false negatives, which can hurt 
+    // For compilers that don't support detection of trivial constructors and destructors in classes,
+    // we use a template that returns true for any POD type that IsPod can detect (see IsPod caveats above),
+    // but false for all other types (which includes all classes). This will give false negatives, which can hurt
     // performance, but avoids false positives, which would result in incorrect behavior.
     template <typename T> struct HasTrivialConstructor {
         static const bool value = IsPod<RemoveConstVolatile<T> >::value;
diff --git a/Source/wtf/TypedArrayBase.h b/Source/wtf/TypedArrayBase.h
index 8ead408..b537188 100644
--- a/Source/wtf/TypedArrayBase.h
+++ b/Source/wtf/TypedArrayBase.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TypedArrayBase_h
diff --git a/Source/wtf/Uint16Array.h b/Source/wtf/Uint16Array.h
index 9c59f19..0f41c62 100644
--- a/Source/wtf/Uint16Array.h
+++ b/Source/wtf/Uint16Array.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Uint16Array_h
diff --git a/Source/wtf/Uint32Array.h b/Source/wtf/Uint32Array.h
index 6fd8080..5f48985 100644
--- a/Source/wtf/Uint32Array.h
+++ b/Source/wtf/Uint32Array.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Uint32Array_h
diff --git a/Source/wtf/Uint8Array.h b/Source/wtf/Uint8Array.h
index fc07a9e..dc97550 100644
--- a/Source/wtf/Uint8Array.h
+++ b/Source/wtf/Uint8Array.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Uint8Array_h
diff --git a/Source/wtf/VMTags.h b/Source/wtf/VMTags.h
index dbb8751..37a4bb7 100644
--- a/Source/wtf/VMTags.h
+++ b/Source/wtf/VMTags.h
@@ -20,14 +20,14 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef VMTags_h
 #define VMTags_h
 
 // On Mac OS X, the VM subsystem allows tagging memory requested from mmap and vm_map
-// in order to aid tools that inspect system memory use. 
+// in order to aid tools that inspect system memory use.
 #if OS(DARWIN)
 
 #include <mach/vm_statistics.h>
diff --git a/Source/wtf/Vector.h b/Source/wtf/Vector.h
index c98c0b4..e62f797 100644
--- a/Source/wtf/Vector.h
+++ b/Source/wtf/Vector.h
@@ -46,7 +46,7 @@
     template<typename T>
     struct VectorDestructor<true, T>
     {
-        static void destruct(T* begin, T* end) 
+        static void destruct(T* begin, T* end)
         {
             for (T* cur = begin; cur != end; ++cur)
                 cur->~T();
@@ -65,7 +65,7 @@
     template<typename T>
     struct VectorInitializer<true, false, T>
     {
-        static void initialize(T* begin, T* end) 
+        static void initialize(T* begin, T* end)
         {
             for (T* cur = begin; cur != end; ++cur)
                 new (NotNull, cur) T;
@@ -75,7 +75,7 @@
     template<typename T>
     struct VectorInitializer<true, true, T>
     {
-        static void initialize(T* begin, T* end) 
+        static void initialize(T* begin, T* end)
         {
             memset(begin, 0, reinterpret_cast<char*>(end) - reinterpret_cast<char*>(begin));
         }
@@ -115,11 +115,11 @@
     template<typename T>
     struct VectorMover<true, T>
     {
-        static void move(const T* src, const T* srcEnd, T* dst) 
+        static void move(const T* src, const T* srcEnd, T* dst)
         {
             memcpy(dst, src, reinterpret_cast<const char*>(srcEnd) - reinterpret_cast<const char*>(src));
         }
-        static void moveOverlapping(const T* src, const T* srcEnd, T* dst) 
+        static void moveOverlapping(const T* src, const T* srcEnd, T* dst)
         {
             memmove(dst, src, reinterpret_cast<const char*>(srcEnd) - reinterpret_cast<const char*>(src));
         }
@@ -131,7 +131,7 @@
     template<typename T>
     struct VectorCopier<false, T>
     {
-        static void uninitializedCopy(const T* src, const T* srcEnd, T* dst) 
+        static void uninitializedCopy(const T* src, const T* srcEnd, T* dst)
         {
             while (src != srcEnd) {
                 new (NotNull, dst) T(*src);
@@ -144,7 +144,7 @@
     template<typename T>
     struct VectorCopier<true, T>
     {
-        static void uninitializedCopy(const T* src, const T* srcEnd, T* dst) 
+        static void uninitializedCopy(const T* src, const T* srcEnd, T* dst)
         {
             memcpy(dst, src, reinterpret_cast<const char*>(srcEnd) - reinterpret_cast<const char*>(src));
         }
@@ -156,7 +156,7 @@
     template<typename T>
     struct VectorFiller<false, T>
     {
-        static void uninitializedFill(T* dst, T* dstEnd, const T& val) 
+        static void uninitializedFill(T* dst, T* dstEnd, const T& val)
         {
             while (dst != dstEnd) {
                 new (NotNull, dst) T(val);
@@ -168,7 +168,7 @@
     template<typename T>
     struct VectorFiller<true, T>
     {
-        static void uninitializedFill(T* dst, T* dstEnd, const T& val) 
+        static void uninitializedFill(T* dst, T* dstEnd, const T& val)
         {
             ASSERT(sizeof(T) == sizeof(char));
 #if COMPILER(GCC) && defined(_FORTIFY_SOURCE)
@@ -177,10 +177,10 @@
                 memset(dst, val, dstEnd - dst);
         }
     };
-    
+
     template<bool canCompareWithMemcmp, typename T>
     struct VectorComparer;
-    
+
     template<typename T>
     struct VectorComparer<false, T>
     {
@@ -201,7 +201,7 @@
             return memcmp(a, b, sizeof(T) * size) == 0;
         }
     };
-    
+
     template<typename T>
     struct VectorTypeOperations
     {
@@ -234,7 +234,7 @@
         {
             VectorFiller<VectorTraits<T>::canFillWithMemset, T>::uninitializedFill(dst, dstEnd, val);
         }
-        
+
         static bool compare(const T* a, const T* b, size_t size)
         {
             return VectorComparer<VectorTraits<T>::canCompareWithMemcmp, T>::compare(a, b, size);
@@ -291,7 +291,7 @@
         {
             if (!bufferToDeallocate)
                 return;
-            
+
             if (m_buffer == bufferToDeallocate) {
                 m_buffer = 0;
                 m_capacity = 0;
@@ -358,13 +358,13 @@
         {
             deallocateBuffer(buffer());
         }
-        
+
         void swap(VectorBuffer<T, 0>& other)
         {
             std::swap(m_buffer, other.m_buffer);
             std::swap(m_capacity, other.m_capacity);
         }
-        
+
         void restoreInlineBufferIfNeeded() { }
 
         using Base::allocateBuffer;
@@ -509,12 +509,12 @@
         typedef std::reverse_iterator<iterator> reverse_iterator;
         typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
 
-        Vector() 
+        Vector()
             : m_size(0)
         {
         }
-        
-        explicit Vector(size_t size) 
+
+        explicit Vector(size_t size)
             : Base(size)
             , m_size(size)
         {
@@ -529,11 +529,11 @@
         }
 
         Vector(const Vector&);
-        template<size_t otherCapacity> 
+        template<size_t otherCapacity>
         Vector(const Vector<T, otherCapacity>&);
 
         Vector& operator=(const Vector&);
-        template<size_t otherCapacity> 
+        template<size_t otherCapacity>
         Vector& operator=(const Vector<T, otherCapacity>&);
 
 #if COMPILER_SUPPORTS(CXX_RVALUE_REFERENCES)
@@ -545,12 +545,12 @@
         size_t capacity() const { return Base::capacity(); }
         bool isEmpty() const { return !size(); }
 
-        T& at(size_t i) 
-        { 
+        T& at(size_t i)
+        {
             RELEASE_ASSERT(i < size());
             return Base::buffer()[i];
         }
-        const T& at(size_t i) const 
+        const T& at(size_t i) const
         {
             RELEASE_ASSERT(i < size());
             return Base::buffer()[i];
@@ -610,10 +610,10 @@
         void remove(size_t position);
         void remove(size_t position, size_t length);
 
-        void removeLast() 
+        void removeLast()
         {
             ASSERT(!isEmpty());
-            shrink(size() - 1); 
+            shrink(size() - 1);
         }
 
         Vector(size_t size, const T& val)
@@ -646,7 +646,7 @@
         const T* expandCapacity(size_t newMinCapacity, const T*);
         bool tryExpandCapacity(size_t newMinCapacity);
         const T* tryExpandCapacity(size_t newMinCapacity, const T*);
-        template<typename U> U* expandCapacity(size_t newMinCapacity, U*); 
+        template<typename U> U* expandCapacity(size_t newMinCapacity, U*);
         template<typename U> void appendSlowCase(const U&);
 
         unsigned m_size;
@@ -673,7 +673,7 @@
     }
 
     template<typename T, size_t inlineCapacity>
-    template<size_t otherCapacity> 
+    template<size_t otherCapacity>
     Vector<T, inlineCapacity>::Vector(const Vector<T, otherCapacity>& other)
         : Base(other.capacity())
         , m_size(other.size())
@@ -687,7 +687,7 @@
     {
         if (&other == this)
             return *this;
-        
+
         if (size() > other.size())
             shrink(other.size());
         else if (other.size() > capacity()) {
@@ -696,7 +696,7 @@
             if (!begin())
                 return *this;
         }
-        
+
 // Works around an assert in VS2010. See https://connect.microsoft.com/VisualStudio/feedback/details/558044/std-copy-should-not-check-dest-when-first-last
 #if COMPILER(MSVC) && defined(_ITERATOR_DEBUG_LEVEL) && _ITERATOR_DEBUG_LEVEL
         if (!begin())
@@ -713,7 +713,7 @@
     inline bool typelessPointersAreEqual(const void* a, const void* b) { return a == b; }
 
     template<typename T, size_t inlineCapacity>
-    template<size_t otherCapacity> 
+    template<size_t otherCapacity>
     Vector<T, inlineCapacity>& Vector<T, inlineCapacity>::operator=(const Vector<T, otherCapacity>& other)
     {
         // If the inline capacities match, we should call the more specific
@@ -729,7 +729,7 @@
             if (!begin())
                 return *this;
         }
-        
+
 // Works around an assert in VS2010. See https://connect.microsoft.com/VisualStudio/feedback/details/558044/std-copy-should-not-check-dest-when-first-last
 #if COMPILER(MSVC) && defined(_ITERATOR_DEBUG_LEVEL) && _ITERATOR_DEBUG_LEVEL
         if (!begin())
@@ -767,7 +767,7 @@
     {
         return find(value) != notFound;
     }
- 
+
     template<typename T, size_t inlineCapacity>
     template<typename U>
     size_t Vector<T, inlineCapacity>::find(const U& value) const
@@ -806,7 +806,7 @@
             if (!begin())
                 return;
         }
-        
+
         std::fill(begin(), end(), val);
         TypeOperations::uninitializedFill(end(), begin() + newSize, val);
         m_size = newSize;
@@ -825,7 +825,7 @@
     {
         reserveCapacity(std::max(newMinCapacity, std::max(static_cast<size_t>(16), capacity() + capacity() / 4 + 1)));
     }
-    
+
     template<typename T, size_t inlineCapacity>
     const T* Vector<T, inlineCapacity>::expandCapacity(size_t newMinCapacity, const T* ptr)
     {
@@ -843,7 +843,7 @@
     {
         return tryReserveCapacity(std::max(newMinCapacity, std::max(static_cast<size_t>(16), capacity() + capacity() / 4 + 1)));
     }
-    
+
     template<typename T, size_t inlineCapacity>
     const T* Vector<T, inlineCapacity>::tryExpandCapacity(size_t newMinCapacity, const T* ptr)
     {
@@ -876,7 +876,7 @@
             if (begin())
                 TypeOperations::initialize(end(), begin() + size);
         }
-        
+
         m_size = size;
     }
 
@@ -911,7 +911,7 @@
             TypeOperations::move(oldBuffer, oldEnd, begin());
         Base::deallocateBuffer(oldBuffer);
     }
-    
+
     template<typename T, size_t inlineCapacity>
     bool Vector<T, inlineCapacity>::tryReserveCapacity(size_t newCapacity)
     {
@@ -926,7 +926,7 @@
         Base::deallocateBuffer(oldBuffer);
         return true;
     }
-    
+
     template<typename T, size_t inlineCapacity>
     inline void Vector<T, inlineCapacity>::reserveInitialCapacity(size_t initialCapacity)
     {
@@ -935,14 +935,14 @@
         if (initialCapacity > inlineCapacity)
             Base::allocateBuffer(initialCapacity);
     }
-    
+
     template<typename T, size_t inlineCapacity>
     void Vector<T, inlineCapacity>::shrinkCapacity(size_t newCapacity)
     {
         if (newCapacity >= capacity())
             return;
 
-        if (newCapacity < size()) 
+        if (newCapacity < size())
             shrink(newCapacity);
 
         T* oldBuffer = begin();
@@ -1071,7 +1071,7 @@
             new (NotNull, &spot[i]) T(data[i]);
         m_size = newSize;
     }
-     
+
     template<typename T, size_t inlineCapacity> template<typename U>
     inline void Vector<T, inlineCapacity>::insert(size_t position, const U& val)
     {
@@ -1087,7 +1087,7 @@
         new (NotNull, spot) T(*data);
         ++m_size;
     }
-   
+
     template<typename T, size_t inlineCapacity> template<typename U, size_t c>
     inline void Vector<T, inlineCapacity>::insert(size_t position, const Vector<U, c>& val)
     {
@@ -1105,13 +1105,13 @@
     {
         insert(0, val);
     }
-   
+
     template<typename T, size_t inlineCapacity> template<typename U, size_t c>
     inline void Vector<T, inlineCapacity>::prepend(const Vector<U, c>& val)
     {
         insert(0, val.begin(), val.size());
     }
-    
+
     template<typename T, size_t inlineCapacity>
     inline void Vector<T, inlineCapacity>::remove(size_t position)
     {
@@ -1129,7 +1129,7 @@
         RELEASE_ASSERT(position + length <= size());
         T* beginSpot = begin() + position;
         T* endSpot = beginSpot + length;
-        TypeOperations::destruct(beginSpot, endSpot); 
+        TypeOperations::destruct(beginSpot, endSpot);
         TypeOperations::moveOverlapping(endSpot, end(), beginSpot);
         m_size -= length;
     }
diff --git a/Source/wtf/WTFThreadData.cpp b/Source/wtf/WTFThreadData.cpp
index 738c40c..a9ab5f0 100644
--- a/Source/wtf/WTFThreadData.cpp
+++ b/Source/wtf/WTFThreadData.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/wtf/WTFThreadData.h b/Source/wtf/WTFThreadData.h
index 8fef507..82ff94b 100644
--- a/Source/wtf/WTFThreadData.h
+++ b/Source/wtf/WTFThreadData.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
diff --git a/Source/wtf/dtoa.cpp b/Source/wtf/dtoa.cpp
index 2949961..1d601bd 100644
--- a/Source/wtf/dtoa.cpp
+++ b/Source/wtf/dtoa.cpp
@@ -1292,7 +1292,7 @@
     // the number of digits after the decimal point depends on the requested precision.
     // "precision": The precision value specifies the number of digits after the decimal point.
     // If a decimal point appears, at least one digit appears before it.
-    // The value is rounded to the appropriate number of digits.    
+    // The value is rounded to the appropriate number of digits.
     double_conversion::StringBuilder builder(buffer, NumberToStringBufferLength);
     const double_conversion::DoubleToStringConverter& converter = double_conversion::DoubleToStringConverter::EcmaScriptConverter();
     converter.ToFixed(d, decimalPlaces, &builder);
diff --git a/Source/wtf/dtoa.h b/Source/wtf/dtoa.h
index aca4631..d0127d5 100644
--- a/Source/wtf/dtoa.h
+++ b/Source/wtf/dtoa.h
@@ -69,7 +69,7 @@
         conversionBuffer[i] = isASCII(string[i]) ? string[i] : 0;
     return parseDouble(conversionBuffer, length, parsedLength);
 }
-    
+
 } // namespace WTF
 
 using WTF::NumberToStringBuffer;
diff --git a/Source/wtf/dtoa/bignum-dtoa.h b/Source/wtf/dtoa/bignum-dtoa.h
index 0761687..05a7524 100644
--- a/Source/wtf/dtoa/bignum-dtoa.h
+++ b/Source/wtf/dtoa/bignum-dtoa.h
@@ -33,7 +33,7 @@
 namespace WTF {
 
 namespace double_conversion {
-    
+
     enum BignumDtoaMode {
         // Return the shortest correct representation.
         // For example the output of 0.299999999999999988897 is (the less accurate but
@@ -46,7 +46,7 @@
         // Return a fixed number of digits, no matter what the exponent is.
         BIGNUM_DTOA_PRECISION
     };
-    
+
     // Converts the given double 'v' to ascii.
     // The result should be interpreted as buffer * 10^(point-length).
     // The buffer will be null-terminated.
@@ -78,7 +78,7 @@
     // and a terminating null-character.
     void BignumDtoa(double v, BignumDtoaMode mode, int requested_digits,
                     Vector<char> buffer, int* length, int* point);
-    
+
 }  // namespace double_conversion
 
 } // namespace WTF
diff --git a/Source/wtf/dtoa/bignum.h b/Source/wtf/dtoa/bignum.h
index 1a75058..b290cb1 100644
--- a/Source/wtf/dtoa/bignum.h
+++ b/Source/wtf/dtoa/bignum.h
@@ -33,30 +33,30 @@
 namespace WTF {
 
 namespace double_conversion {
-    
+
     class Bignum {
     public:
         // 3584 = 128 * 28. We can represent 2^3584 > 10^1000 accurately.
         // This bignum can encode much bigger numbers, since it contains an
         // exponent.
         static const int kMaxSignificantBits = 3584;
-        
+
         Bignum();
         void AssignUInt16(uint16_t value);
         void AssignUInt64(uint64_t value);
         void AssignBignum(const Bignum& other);
-        
+
         void AssignDecimalString(Vector<const char> value);
         void AssignHexString(Vector<const char> value);
-        
+
         void AssignPowerUInt16(uint16_t base, int exponent);
-        
+
         void AddUInt16(uint16_t operand);
         void AddUInt64(uint64_t operand);
         void AddBignum(const Bignum& other);
         // Precondition: this >= other.
         void SubtractBignum(const Bignum& other);
-        
+
         void Square();
         void ShiftLeft(int shift_amount);
         void MultiplyByUInt32(uint32_t factor);
@@ -68,9 +68,9 @@
         //  this = this % other;
         // In the worst case this function is in O(this/other).
         uint16_t DivideModuloIntBignum(const Bignum& other);
-        
+
         bool ToHexString(char* buffer, int buffer_size) const;
-        
+
         static int Compare(const Bignum& a, const Bignum& b);
         static bool Equal(const Bignum& a, const Bignum& b) {
             return Compare(a, b) == 0;
@@ -98,7 +98,7 @@
     private:
         typedef uint32_t Chunk;
         typedef uint64_t DoubleChunk;
-        
+
         static const int kChunkSize = sizeof(Chunk) * 8;
         static const int kDoubleChunkSize = sizeof(DoubleChunk) * 8;
         // With bigit size of 28 we loose some bits, but a double still fits easily
@@ -108,7 +108,7 @@
         // Every instance allocates kBigitLength chunks on the stack. Bignums cannot
         // grow. There are no checks if the stack-allocated space is sufficient.
         static const int kBigitCapacity = kMaxSignificantBits / kBigitSize;
-        
+
         void EnsureCapacity(int size) {
             if (size > kBigitCapacity) {
                 UNREACHABLE();
@@ -126,7 +126,7 @@
         int BigitLength() const { return used_digits_ + exponent_; }
         Chunk BigitAt(int index) const;
         void SubtractTimes(const Bignum& other, int factor);
-        
+
         Chunk bigits_buffer_[kBigitCapacity];
         // A vector backed by bigits_buffer_. This way accesses to the array are
         // checked for out-of-bounds errors.
@@ -134,10 +134,10 @@
         int used_digits_;
         // The Bignum's value equals value(bigits_) * 2^(exponent_ * kBigitSize).
         int exponent_;
-        
+
         DISALLOW_COPY_AND_ASSIGN(Bignum);
     };
-    
+
 }  // namespace double_conversion
 
 } // namespace WTF
diff --git a/Source/wtf/dtoa/cached-powers.h b/Source/wtf/dtoa/cached-powers.h
index cbc04d4..fd01d73 100644
--- a/Source/wtf/dtoa/cached-powers.h
+++ b/Source/wtf/dtoa/cached-powers.h
@@ -33,24 +33,24 @@
 namespace WTF {
 
 namespace double_conversion {
-    
+
     class PowersOfTenCache {
     public:
-        
+
         // Not all powers of ten are cached. The decimal exponent of two neighboring
         // cached numbers will differ by kDecimalExponentDistance.
         static int kDecimalExponentDistance;
-        
+
         static int kMinDecimalExponent;
         static int kMaxDecimalExponent;
-        
+
         // Returns a cached power-of-ten with a binary exponent in the range
         // [min_exponent; max_exponent] (boundaries included).
         static void GetCachedPowerForBinaryExponentRange(int min_exponent,
                                                          int max_exponent,
                                                          DiyFp* power,
                                                          int* decimal_exponent);
-        
+
         // Returns a cached power of ten x ~= 10^k such that
         //   k <= decimal_exponent < k + kCachedPowersDecimalDistance.
         // The given decimal_exponent must satisfy
@@ -60,11 +60,11 @@
                                                      DiyFp* power,
                                                      int* found_exponent);
     };
-    
+
     // Initializes the table of cached powers used by the dtoa algorithm.
     // This needs to be called when JSC is being initialized.
     void initialize();
-    
+
 }  // namespace double_conversion
 
 } // namespace WTF
diff --git a/Source/wtf/dtoa/diy-fp.h b/Source/wtf/dtoa/diy-fp.h
index e843100..f641542 100644
--- a/Source/wtf/dtoa/diy-fp.h
+++ b/Source/wtf/dtoa/diy-fp.h
@@ -33,7 +33,7 @@
 namespace WTF {
 
 namespace double_conversion {
-    
+
     // This "Do It Yourself Floating Point" class implements a floating-point number
     // with a uint64 significand and an int exponent. Normalized DiyFp numbers will
     // have the most significant bit of the significand set.
@@ -42,10 +42,10 @@
     class DiyFp {
     public:
         static const int kSignificandSize = 64;
-        
+
         DiyFp() : f_(0), e_(0) {}
         DiyFp(uint64_t f, int e) : f_(f), e_(e) {}
-        
+
         // this = this - other.
         // The exponents of both numbers must be the same and the significand of this
         // must be bigger than the significand of other.
@@ -55,7 +55,7 @@
             ASSERT(f_ >= other.f_);
             f_ -= other.f_;
         }
-        
+
         // Returns a - b.
         // The exponents of both numbers must be the same and this must be bigger
         // than other. The result will not be normalized.
@@ -64,23 +64,23 @@
             result.Subtract(b);
             return result;
         }
-        
-        
+
+
         // this = this * other.
         void Multiply(const DiyFp& other);
-        
+
         // returns a * b;
         static DiyFp Times(const DiyFp& a, const DiyFp& b) {
             DiyFp result = a;
             result.Multiply(b);
             return result;
         }
-        
+
         void Normalize() {
             ASSERT(f_ != 0);
             uint64_t f = f_;
             int e = e_;
-            
+
             // This method is mainly called for normalizing boundaries. In general
             // boundaries need to be shifted by 10 bits. We thus optimize for this case.
             const uint64_t k10MSBits = UINT64_2PART_C(0xFFC00000, 00000000);
@@ -95,26 +95,26 @@
             f_ = f;
             e_ = e;
         }
-        
+
         static DiyFp Normalize(const DiyFp& a) {
             DiyFp result = a;
             result.Normalize();
             return result;
         }
-        
+
         uint64_t f() const { return f_; }
         int e() const { return e_; }
-        
+
         void set_f(uint64_t new_value) { f_ = new_value; }
         void set_e(int new_value) { e_ = new_value; }
-        
+
     private:
         static const uint64_t kUint64MSB = UINT64_2PART_C(0x80000000, 00000000);
-        
+
         uint64_t f_;
         int e_;
     };
-    
+
 }  // namespace double_conversion
 
 } // namespace WTF
diff --git a/Source/wtf/dtoa/double-conversion.h b/Source/wtf/dtoa/double-conversion.h
index eb246e2..3cf58f9 100644
--- a/Source/wtf/dtoa/double-conversion.h
+++ b/Source/wtf/dtoa/double-conversion.h
@@ -33,7 +33,7 @@
 namespace WTF {
 
 namespace double_conversion {
-    
+
     class DoubleToStringConverter {
     public:
         // When calling ToFixed with a double > 10^kMaxFixedDigitsBeforePoint
@@ -41,17 +41,17 @@
         // function returns false.
         static const int kMaxFixedDigitsBeforePoint = 60;
         static const int kMaxFixedDigitsAfterPoint = 60;
-        
+
         // When calling ToExponential with a requested_digits
         // parameter > kMaxExponentialDigits then the function returns false.
         static const int kMaxExponentialDigits = 120;
-        
+
         // When calling ToPrecision with a requested_digits
         // parameter < kMinPrecisionDigits or requested_digits > kMaxPrecisionDigits
         // then the function returns false.
         static const int kMinPrecisionDigits = 1;
         static const int kMaxPrecisionDigits = 120;
-        
+
         enum Flags {
             NO_FLAGS = 0,
             EMIT_POSITIVE_EXPONENT_SIGN = 1,
@@ -59,7 +59,7 @@
             EMIT_TRAILING_ZERO_AFTER_POINT = 4,
             UNIQUE_ZERO = 8
         };
-        
+
         // Flags should be a bit-or combination of the possible Flags-enum.
         //  - NO_FLAGS: no special flags.
         //  - EMIT_POSITIVE_EXPONENT_SIGN: when the number is converted into exponent
@@ -129,10 +129,10 @@
             ASSERT(((flags & EMIT_TRAILING_DECIMAL_POINT) != 0) ||
                    !((flags & EMIT_TRAILING_ZERO_AFTER_POINT) != 0));
         }
-        
+
         // Returns a converter following the EcmaScript specification.
         static const DoubleToStringConverter& EcmaScriptConverter();
-        
+
         // Computes the shortest string of digits that correctly represent the input
         // number. Depending on decimal_in_shortest_low and decimal_in_shortest_high
         // (see constructor) it then either returns a decimal representation, or an
@@ -157,8 +157,8 @@
         // except when the input value is special and no infinity_symbol or
         // nan_symbol has been given to the constructor.
         bool ToShortest(double value, StringBuilder* result_builder) const;
-        
-        
+
+
         // Computes a decimal representation with a fixed number of digits after the
         // decimal point. The last emitted digit is rounded.
         //
@@ -195,7 +195,7 @@
         bool ToFixed(double value,
                      int requested_digits,
                      StringBuilder* result_builder) const;
-        
+
         // Computes a representation in exponential format with requested_digits
         // after the decimal point. The last emitted digit is rounded.
         // If requested_digits equals -1, then the shortest exponential representation
@@ -227,7 +227,7 @@
         bool ToExponential(double value,
                            int requested_digits,
                            StringBuilder* result_builder) const;
-        
+
         // Computes 'precision' leading digits of the given 'value' and returns them
         // either in exponential or decimal format, depending on
         // max_{leading|trailing}_padding_zeroes_in_precision_mode (given to the
@@ -265,7 +265,7 @@
         bool ToPrecision(double value,
                          int precision,
                          StringBuilder* result_builder) const;
-        
+
         enum DtoaMode {
             // Produce the shortest correct representation.
             // For example the output of 0.299999999999999988897 is (the less accurate
@@ -278,7 +278,7 @@
             // Fixed number of digits (independent of the decimal point).
             PRECISION
         };
-        
+
         // The maximal number of digits that are needed to emit a double in base 10.
         // A higher precision can be achieved by using more digits, but the shortest
         // accurate representation of any double will never use more digits than
@@ -286,7 +286,7 @@
         // Note that DoubleToAscii null-terminates its input. So the given buffer
         // should be at least kBase10MaximalLength + 1 characters long.
         static const int kBase10MaximalLength = 17;
-        
+
         // Converts the given double 'v' to ascii.
         // The result should be interpreted as buffer * 10^(point-length).
         //
@@ -326,7 +326,7 @@
                                   bool* sign,
                                   int* length,
                                   int* point);
-        
+
     private:
         // If the value is a special value (NaN or Infinity) constructs the
         // corresponding string using the configured infinity/nan-symbol.
@@ -345,7 +345,7 @@
                                          int decimal_point,
                                          int digits_after_point,
                                          StringBuilder* result_builder) const;
-        
+
         const int flags_;
         const char* const infinity_symbol_;
         const char* const nan_symbol_;
@@ -354,22 +354,22 @@
         const int decimal_in_shortest_high_;
         const int max_leading_padding_zeroes_in_precision_mode_;
         const int max_trailing_padding_zeroes_in_precision_mode_;
-        
+
         DISALLOW_IMPLICIT_CONSTRUCTORS(DoubleToStringConverter);
     };
-    
-    
+
+
     class StringToDoubleConverter {
     public:
         // Performs the conversion.
         // The output parameter 'processed_characters_count' is set to the number
         // of characters that have been processed to read the number.
         static double StringToDouble(const char* buffer, size_t length, size_t* processed_characters_count);
-        
+
     private:
         DISALLOW_IMPLICIT_CONSTRUCTORS(StringToDoubleConverter);
     };
-    
+
 }  // namespace double_conversion
 
 } // namespace WTF
diff --git a/Source/wtf/dtoa/double.h b/Source/wtf/dtoa/double.h
index 0544fdb..d0f449d 100644
--- a/Source/wtf/dtoa/double.h
+++ b/Source/wtf/dtoa/double.h
@@ -33,11 +33,11 @@
 namespace WTF {
 
 namespace double_conversion {
-    
+
     // We assume that doubles and uint64_t have the same endianness.
     static uint64_t double_to_uint64(double d) { return BitCast<uint64_t>(d); }
     static double uint64_to_double(uint64_t d64) { return BitCast<double>(d64); }
-    
+
     // Helper functions for doubles.
     class Double {
     public:
@@ -47,13 +47,13 @@
         static const uint64_t kHiddenBit = UINT64_2PART_C(0x00100000, 00000000);
         static const int kPhysicalSignificandSize = 52;  // Excludes the hidden bit.
         static const int kSignificandSize = 53;
-        
+
         Double() : d64_(0) {}
         explicit Double(double d) : d64_(double_to_uint64(d)) {}
         explicit Double(uint64_t d64) : d64_(d64) {}
         explicit Double(DiyFp diy_fp)
         : d64_(DiyFpToUint64(diy_fp)) {}
-        
+
         // The value encoded by this Double must be greater or equal to +0.0.
         // It must not be special (infinity, or NaN).
         DiyFp AsDiyFp() const {
@@ -61,13 +61,13 @@
             ASSERT(!IsSpecial());
             return DiyFp(Significand(), Exponent());
         }
-        
+
         // The value encoded by this Double must be strictly greater than 0.
         DiyFp AsNormalizedDiyFp() const {
             ASSERT(value() > 0.0);
             uint64_t f = Significand();
             int e = Exponent();
-            
+
             // The current double could be a denormal.
             while ((f & kHiddenBit) == 0) {
                 f <<= 1;
@@ -78,12 +78,12 @@
             e -= DiyFp::kSignificandSize - kSignificandSize;
             return DiyFp(f, e);
         }
-        
+
         // Returns the double's bit as uint64.
         uint64_t AsUint64() const {
             return d64_;
         }
-        
+
         // Returns the next greater double. Returns +infinity on input +infinity.
         double NextDouble() const {
             if (d64_ == kInfinity) return Double(kInfinity).value();
@@ -97,16 +97,16 @@
                 return Double(d64_ + 1).value();
             }
         }
-        
+
         int Exponent() const {
             if (IsDenormal()) return kDenormalExponent;
-            
+
             uint64_t d64 = AsUint64();
             int biased_e =
             static_cast<int>((d64 & kExponentMask) >> kPhysicalSignificandSize);
             return biased_e - kExponentBias;
         }
-        
+
         uint64_t Significand() const {
             uint64_t d64 = AsUint64();
             uint64_t significand = d64 & kSignificandMask;
@@ -116,44 +116,44 @@
                 return significand;
             }
         }
-        
+
         // Returns true if the double is a denormal.
         bool IsDenormal() const {
             uint64_t d64 = AsUint64();
             return (d64 & kExponentMask) == 0;
         }
-        
+
         // We consider denormals not to be special.
         // Hence only Infinity and NaN are special.
         bool IsSpecial() const {
             uint64_t d64 = AsUint64();
             return (d64 & kExponentMask) == kExponentMask;
         }
-        
+
         bool IsNan() const {
             uint64_t d64 = AsUint64();
             return ((d64 & kExponentMask) == kExponentMask) &&
             ((d64 & kSignificandMask) != 0);
         }
-        
+
         bool IsInfinite() const {
             uint64_t d64 = AsUint64();
             return ((d64 & kExponentMask) == kExponentMask) &&
             ((d64 & kSignificandMask) == 0);
         }
-        
+
         int Sign() const {
             uint64_t d64 = AsUint64();
             return (d64 & kSignMask) == 0? 1: -1;
         }
-        
+
         // Precondition: the value encoded by this Double must be greater or equal
         // than +0.0.
         DiyFp UpperBoundary() const {
             ASSERT(Sign() > 0);
             return DiyFp(Significand() * 2 + 1, Exponent() - 1);
         }
-        
+
         // Computes the two boundaries of this.
         // The bigger boundary (m_plus) is normalized. The lower boundary has the same
         // exponent as m_plus.
@@ -180,9 +180,9 @@
             *out_m_plus = m_plus;
             *out_m_minus = m_minus;
         }
-        
+
         double value() const { return uint64_to_double(d64_); }
-        
+
         // Returns the significand size for a given order of magnitude.
         // If v = f*2^e with 2^p-1 <= f <= 2^p then p+e is v's order of magnitude.
         // This function returns the number of significant binary digits v will have
@@ -196,24 +196,24 @@
             if (order <= kDenormalExponent) return 0;
             return order - kDenormalExponent;
         }
-        
+
         static double Infinity() {
             return Double(kInfinity).value();
         }
-        
+
         static double NaN() {
             return Double(kNaN).value();
         }
-        
+
     private:
         static const int kExponentBias = 0x3FF + kPhysicalSignificandSize;
         static const int kDenormalExponent = -kExponentBias + 1;
         static const int kMaxExponent = 0x7FF - kExponentBias;
         static const uint64_t kInfinity = UINT64_2PART_C(0x7FF00000, 00000000);
         static const uint64_t kNaN = UINT64_2PART_C(0x7FF80000, 00000000);
-        
+
         const uint64_t d64_;
-        
+
         static uint64_t DiyFpToUint64(DiyFp diy_fp) {
             uint64_t significand = diy_fp.f();
             int exponent = diy_fp.e();
@@ -241,7 +241,7 @@
             (biased_exponent << kPhysicalSignificandSize);
         }
     };
-    
+
 }  // namespace double_conversion
 
 } // namespace WTF
diff --git a/Source/wtf/dtoa/fast-dtoa.h b/Source/wtf/dtoa/fast-dtoa.h
index 876a9f3..fc8d145 100644
--- a/Source/wtf/dtoa/fast-dtoa.h
+++ b/Source/wtf/dtoa/fast-dtoa.h
@@ -33,7 +33,7 @@
 namespace WTF {
 
 namespace double_conversion {
-    
+
     enum FastDtoaMode {
         // Computes the shortest representation of the given input. The returned
         // result will be the most accurate number of this length. Longer
@@ -43,11 +43,11 @@
         // given as input. The precision is independent of the decimal point.
         FAST_DTOA_PRECISION
     };
-    
+
     // FastDtoa will produce at most kFastDtoaMaximalLength digits. This does not
     // include the terminating '\0' character.
     static const int kFastDtoaMaximalLength = 17;
-    
+
     // Provides a decimal representation of v.
     // The result should be interpreted as buffer * 10^(point - length).
     //
@@ -80,7 +80,7 @@
                   Vector<char> buffer,
                   int* length,
                   int* decimal_point);
-    
+
 }  // namespace double_conversion
 
 } // namespace WTF
diff --git a/Source/wtf/dtoa/fixed-dtoa.h b/Source/wtf/dtoa/fixed-dtoa.h
index 8c0adb7..ab23a66 100644
--- a/Source/wtf/dtoa/fixed-dtoa.h
+++ b/Source/wtf/dtoa/fixed-dtoa.h
@@ -33,7 +33,7 @@
 namespace WTF {
 
 namespace double_conversion {
-    
+
     // Produces digits necessary to print a given number with
     // 'fractional_count' digits after the decimal point.
     // The buffer must be big enough to hold the result plus one terminating null
@@ -52,7 +52,7 @@
     // returns false. The output is null-terminated when the function succeeds.
     bool FastFixedDtoa(double v, int fractional_count,
                        Vector<char> buffer, int* length, int* decimal_point);
-    
+
 }  // namespace double_conversion
 
 } // namespace WTF
diff --git a/Source/wtf/dtoa/strtod.h b/Source/wtf/dtoa/strtod.h
index 8ed350a..d02f76a 100644
--- a/Source/wtf/dtoa/strtod.h
+++ b/Source/wtf/dtoa/strtod.h
@@ -33,11 +33,11 @@
 namespace WTF {
 
 namespace double_conversion {
-    
+
     // The buffer must only contain digits in the range [0-9]. It must not
     // contain a dot or a sign. It must not start with '0', and must not be empty.
     double Strtod(Vector<const char> buffer, int exponent);
-    
+
 }  // namespace double_conversion
 
 } // namespace WTF
diff --git a/Source/wtf/dtoa/utils.h b/Source/wtf/dtoa/utils.h
index 7f6a695..f6fe024 100644
--- a/Source/wtf/dtoa/utils.h
+++ b/Source/wtf/dtoa/utils.h
@@ -115,29 +115,29 @@
 namespace WTF {
 
 namespace double_conversion {
-    
+
     static const int kCharSize = sizeof(char);
-    
+
     // Returns the maximum of the two parameters.
     template <typename T>
     static T Max(T a, T b) {
         return a < b ? b : a;
     }
-    
-    
+
+
     // Returns the minimum of the two parameters.
     template <typename T>
     static T Min(T a, T b) {
         return a < b ? a : b;
     }
-    
-    
+
+
     inline int StrLength(const char* string) {
         size_t length = strlen(string);
         ASSERT(length == static_cast<size_t>(static_cast<int>(length)));
         return static_cast<int>(length);
     }
-    
+
     // This is a simplified version of V8's Vector class.
     template <typename T>
     class Vector {
@@ -146,7 +146,7 @@
         Vector(T* data, int length) : start_(data), length_(length) {
             ASSERT(length == 0 || (length > 0 && data != NULL));
         }
-        
+
         // Returns a vector using the same backing storage as this one,
         // spanning from and including 'from', to but not including 'to'.
         Vector<T> SubVector(int from, int to) {
@@ -155,32 +155,32 @@
             ASSERT(0 <= from);
             return Vector<T>(start() + from, to - from);
         }
-        
+
         // Returns the length of the vector.
         int length() const { return length_; }
-        
+
         // Returns whether or not the vector is empty.
         bool is_empty() const { return length_ == 0; }
-        
+
         // Returns the pointer to the start of the data in the vector.
         T* start() const { return start_; }
-        
+
         // Access individual vector elements - checks bounds in debug mode.
         T& operator[](int index) const {
             ASSERT(0 <= index && index < length_);
             return start_[index];
         }
-        
+
         T& first() { return start_[0]; }
-        
+
         T& last() { return start_[length_ - 1]; }
-        
+
     private:
         T* start_;
         int length_;
     };
-    
-    
+
+
     // Helper class for building result strings in a character buffer. The
     // purpose of the class is to use safe operations that checks the
     // buffer bounds on all operations in debug mode.
@@ -188,17 +188,17 @@
     public:
         StringBuilder(char* buffer, int size)
         : buffer_(buffer, size), position_(0) { }
-        
+
         ~StringBuilder() { if (!is_finalized()) Finalize(); }
-        
+
         int size() const { return buffer_.length(); }
-        
+
         // Get the current position in the builder.
         int position() const {
             ASSERT(!is_finalized());
             return position_;
         }
-         
+
         // Set the current position in the builder.
         void SetPosition(int position)
         {
@@ -206,10 +206,10 @@
             ASSERT_WITH_SECURITY_IMPLICATION(position < size());
             position_ = position;
         }
-        
+
         // Reset the position.
         void Reset() { position_ = 0; }
-        
+
         // Add a single character to the builder. It is not allowed to add
         // 0-characters; use the Finalize() method to terminate the string
         // instead.
@@ -218,13 +218,13 @@
             ASSERT(!is_finalized() && position_ < buffer_.length());
             buffer_[position_++] = c;
         }
-        
+
         // Add an entire string to the builder. Uses strlen() internally to
         // compute the length of the input string.
         void AddString(const char* s) {
             AddSubstring(s, StrLength(s));
         }
-        
+
         // Add the first 'n' characters of the given string 's' to the
         // builder. The input string must have enough characters.
         void AddSubstring(const char* s, int n) {
@@ -233,8 +233,8 @@
             memcpy(&buffer_[position_], s, n * kCharSize);
             position_ += n;
         }
-        
-        
+
+
         // Add character padding to the builder. If count is non-positive,
         // nothing is added to the builder.
         void AddPadding(char c, int count) {
@@ -242,7 +242,7 @@
                 AddCharacter(c);
             }
         }
-        
+
         // Finalize the string by 0-terminating it and returning the buffer.
         char* Finalize() {
             ASSERT(!is_finalized() && position_ < buffer_.length());
@@ -254,16 +254,16 @@
             ASSERT(is_finalized());
             return buffer_.start();
         }
-        
+
     private:
         Vector<char> buffer_;
         int position_;
-        
+
         bool is_finalized() const { return position_ < 0; }
-        
+
         DISALLOW_IMPLICIT_CONSTRUCTORS(StringBuilder);
     };
-    
+
     // The type-based aliasing rule allows the compiler to assume that pointers of
     // different types (for some definition of different) never alias each other.
     // Thus the following code does not work:
@@ -293,17 +293,17 @@
         // Compile time assertion: sizeof(Dest) == sizeof(Source)
         // A compile error here means your Dest and Source have different sizes.
         typedef char VerifySizesAreEqual[sizeof(Dest) == sizeof(Source) ? 1 : -1];
-        
+
         Dest dest;
         memcpy(&dest, &source, sizeof(dest));
         return dest;
     }
-    
+
     template <class Dest, class Source>
     inline Dest BitCast(Source* source) {
         return BitCast<Dest>(reinterpret_cast<uintptr_t>(source));
     }
-    
+
 }  // namespace double_conversion
 
 } // namespace WTF
diff --git a/Source/wtf/text/AtomicString.cpp b/Source/wtf/text/AtomicString.cpp
index a949c00..22cfbc9 100644
--- a/Source/wtf/text/AtomicString.cpp
+++ b/Source/wtf/text/AtomicString.cpp
@@ -243,7 +243,7 @@
 
     if (!length)
         return StringImpl::empty();
-    
+
     UCharBuffer buffer = { s, length };
     return addToStringTable<UCharBuffer, UCharBufferTranslator>(buffer);
 }
@@ -323,7 +323,7 @@
     SubstringLocation buffer = { baseString, start, length };
     return addToStringTable<SubstringLocation, SubstringTranslator>(buffer);
 }
-    
+
 typedef HashTranslatorCharBuffer<LChar> LCharBuffer;
 struct LCharBufferTranslator {
     static unsigned hash(const LCharBuffer& buf)
diff --git a/Source/wtf/text/AtomicString.h b/Source/wtf/text/AtomicString.h
index 5ddc9ae..c43eaad 100644
--- a/Source/wtf/text/AtomicString.h
+++ b/Source/wtf/text/AtomicString.h
@@ -99,9 +99,9 @@
     const LChar* characters8() const { return m_string.characters8(); }
     const UChar* characters16() const { return m_string.characters16(); }
     unsigned length() const { return m_string.length(); }
-    
+
     UChar operator[](unsigned int i) const { return m_string[i]; }
-    
+
     bool contains(UChar c) const { return m_string.contains(c); }
     bool contains(const LChar* s, bool caseSensitive = true) const
         { return m_string.contains(s, caseSensitive); }
@@ -113,7 +113,7 @@
         { return m_string.find(s, start, caseSentitive); }
     size_t find(const String& s, size_t start = 0, bool caseSentitive = true) const
         { return m_string.find(s, start, caseSentitive); }
-    
+
     bool startsWith(const String& s, bool caseSensitive = true) const
         { return m_string.startsWith(s, caseSensitive); }
     bool startsWith(UChar character) const
@@ -129,10 +129,10 @@
     template<unsigned matchLength>
     bool endsWith(const char (&prefix)[matchLength], bool caseSensitive = true) const
         { return m_string.endsWith<matchLength>(prefix, caseSensitive); }
-    
+
     AtomicString lower() const;
     AtomicString upper() const { return AtomicString(impl()->upper()); }
-    
+
     int toInt(bool* ok = 0) const { return m_string.toInt(ok); }
     double toDouble(bool* ok = 0) const { return m_string.toDouble(ok); }
     float toFloat(bool* ok = 0) const { return m_string.toFloat(ok); }
@@ -142,10 +142,10 @@
     bool isEmpty() const { return m_string.isEmpty(); }
 
     static void remove(StringImpl*);
-    
+
 #if USE(CF)
     AtomicString(CFStringRef s) :  m_string(add(s)) { }
-#endif    
+#endif
 #ifdef __OBJC__
     AtomicString(NSString* s) : m_string(add((CFStringRef)s)) { }
     operator NSString*() const { return m_string; }
@@ -164,7 +164,7 @@
     AtomicString(ASCIILiteral);
 
     String m_string;
-    
+
     static PassRefPtr<StringImpl> add(const LChar*);
     ALWAYS_INLINE static PassRefPtr<StringImpl> add(const char* s) { return add(reinterpret_cast<const LChar*>(s)); };
     static PassRefPtr<StringImpl> add(const LChar*, unsigned length);
@@ -191,7 +191,7 @@
 inline bool operator==(const AtomicString& a, const AtomicString& b) { return a.impl() == b.impl(); }
 WTF_EXPORT bool operator==(const AtomicString&, const LChar*);
 inline bool operator==(const AtomicString& a, const char* b) { return WTF::equal(a.impl(), reinterpret_cast<const LChar*>(b)); }
-inline bool operator==(const AtomicString& a, const Vector<UChar>& b) { return a.impl() && equal(a.impl(), b.data(), b.size()); }    
+inline bool operator==(const AtomicString& a, const Vector<UChar>& b) { return a.impl() && equal(a.impl(), b.data(), b.size()); }
 inline bool operator==(const AtomicString& a, const String& b) { return equal(a.impl(), b.impl()); }
 inline bool operator==(const LChar* a, const AtomicString& b) { return b == a; }
 inline bool operator==(const String& a, const AtomicString& b) { return equal(a.impl(), b.impl()); }
diff --git a/Source/wtf/text/AtomicStringHash.h b/Source/wtf/text/AtomicStringHash.h
index 58a986a..9669206 100644
--- a/Source/wtf/text/AtomicStringHash.h
+++ b/Source/wtf/text/AtomicStringHash.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
  *     its contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
diff --git a/Source/wtf/text/Base64.cpp b/Source/wtf/text/Base64.cpp
index d7e6e91..9a31527 100644
--- a/Source/wtf/text/Base64.cpp
+++ b/Source/wtf/text/Base64.cpp
@@ -182,7 +182,7 @@
     // Valid data is (n * 4 + [0,2,3]) characters long.
     if ((outLength % 4) == 1)
         return false;
-    
+
     // 4-byte to 3-byte conversion
     outLength -= (outLength + 3) / 4;
     if (!outLength)
diff --git a/Source/wtf/text/Base64.h b/Source/wtf/text/Base64.h
index 7b14fea..7ccd8d1 100644
--- a/Source/wtf/text/Base64.h
+++ b/Source/wtf/text/Base64.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef Base64_h
diff --git a/Source/wtf/text/CString.cpp b/Source/wtf/text/CString.cpp
index 78962cf..9b3f65e 100644
--- a/Source/wtf/text/CString.cpp
+++ b/Source/wtf/text/CString.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 
@@ -65,7 +65,7 @@
     ASSERT(str);
 
     m_buffer = CStringBuffer::createUninitialized(length);
-    memcpy(m_buffer->mutableData(), str, length); 
+    memcpy(m_buffer->mutableData(), str, length);
     m_buffer->mutableData()[length] = '\0';
 }
 
@@ -76,7 +76,7 @@
         return 0;
     return m_buffer->mutableData();
 }
-    
+
 CString CString::newUninitialized(size_t length, char*& characterBuffer)
 {
     CString result;
diff --git a/Source/wtf/text/StringBuffer.h b/Source/wtf/text/StringBuffer.h
index 9af42dc..3e3315d 100644
--- a/Source/wtf/text/StringBuffer.h
+++ b/Source/wtf/text/StringBuffer.h
@@ -6,13 +6,13 @@
  * are met:
  *
  * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer. 
+ *     notice, this list of conditions and the following disclaimer.
  * 2.  Redistributions in binary form must reproduce the above copyright
  *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution. 
+ *     documentation and/or other materials provided with the distribution.
  * 3.  Neither the name of Apple Inc. ("Apple") nor the names of its
  *     contributors may be used to endorse or promote products derived
- *     from this software without specific prior written permission. 
+ *     from this software without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -70,7 +70,7 @@
     }
 
     unsigned length() const { return m_data->length(); }
-    CharType* characters() { return const_cast<CharType*>(m_data->getCharacters<CharType>()); }
+    CharType* characters() { return length() ? const_cast<CharType*>(m_data->getCharacters<CharType>()) : 0; }
 
     CharType& operator[](unsigned i) { ASSERT_WITH_SECURITY_IMPLICATION(i < length()); return characters()[i]; }
 
diff --git a/Source/wtf/text/StringBuilder.h b/Source/wtf/text/StringBuilder.h
index e87cee9..3d3f1e7 100644
--- a/Source/wtf/text/StringBuilder.h
+++ b/Source/wtf/text/StringBuilder.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef StringBuilder_h
@@ -196,7 +196,7 @@
         if (canShrink()) {
             if (is8Bit())
                 return AtomicString(characters8(), length());
-            return AtomicString(characters16(), length());            
+            return AtomicString(characters16(), length());
         }
 
         if (!m_string.isNull())
@@ -255,7 +255,7 @@
         ASSERT(m_buffer);
         return m_buffer->characters16();
     }
-    
+
     bool is8Bit() const { return m_is8Bit; }
 
     void clear()
@@ -313,7 +313,7 @@
 {
     ASSERT(!m_is8Bit);
     return m_bufferCharacters16;
-}    
+}
 
 template <typename CharType>
 bool equal(const StringBuilder& s, const CharType* buffer, unsigned length)
diff --git a/Source/wtf/text/StringConcatenate.h b/Source/wtf/text/StringConcatenate.h
index 5691766..54088e9 100644
--- a/Source/wtf/text/StringConcatenate.h
+++ b/Source/wtf/text/StringConcatenate.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef StringConcatenate_h
@@ -371,7 +371,7 @@
         const LChar* data = m_buffer.characters8();
         for (unsigned i = 0; i < length; ++i)
             destination[i] = data[i];
-        
+
         WTF_STRINGTYPEADAPTER_COPIED_WTF_STRING();
     }
 
@@ -388,7 +388,7 @@
             for (unsigned i = 0; i < length; ++i)
                 destination[i] = data[i];
         }
-        
+
         WTF_STRINGTYPEADAPTER_COPIED_WTF_STRING();
     }
 
diff --git a/Source/wtf/text/StringHash.h b/Source/wtf/text/StringHash.h
index e609e4b..c517fd4 100644
--- a/Source/wtf/text/StringHash.h
+++ b/Source/wtf/text/StringHash.h
@@ -91,13 +91,13 @@
         {
             return CaseFoldingHash::hash(reinterpret_cast<const LChar*>(data), length);
         }
-        
+
         static inline bool equal(const StringImpl* a, const StringImpl* b)
         {
             return equalIgnoringCaseNonNull(a, b);
         }
 
-        static unsigned hash(const RefPtr<StringImpl>& key) 
+        static unsigned hash(const RefPtr<StringImpl>& key)
         {
             return hash(key.get());
         }
diff --git a/Source/wtf/text/StringOperators.h b/Source/wtf/text/StringOperators.h
index 403f236..ac48041 100644
--- a/Source/wtf/text/StringOperators.h
+++ b/Source/wtf/text/StringOperators.h
@@ -74,7 +74,7 @@
         StringTypeAdapter<StringType1> adapter1(m_string1);
         StringTypeAdapter<StringType2> adapter2(m_string2);
         return adapter1.length() + adapter2.length();
-    }    
+    }
 
 private:
     StringType1 m_string1;
diff --git a/Source/wtf/text/TextCodec.cpp b/Source/wtf/text/TextCodec.cpp
index 3dedd35..2bb94d7 100644
--- a/Source/wtf/text/TextCodec.cpp
+++ b/Source/wtf/text/TextCodec.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/wtf/text/TextCodec.h b/Source/wtf/text/TextCodec.h
index 0190757..4797ee5 100644
--- a/Source/wtf/text/TextCodec.h
+++ b/Source/wtf/text/TextCodec.h
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextCodec_h
@@ -68,13 +68,13 @@
         bool ignored;
         return decode(str, length, flush, false, ignored);
     }
-    
+
     virtual String decode(const char*, size_t length, bool flush, bool stopOnError, bool& sawError) = 0;
     virtual CString encode(const UChar*, size_t length, UnencodableHandling) = 0;
     virtual CString encode(const LChar*, size_t length, UnencodableHandling) = 0;
 
     // Fills a null-terminated string representation of the given
-    // unencodable character into the given replacement buffer. 
+    // unencodable character into the given replacement buffer.
     // The length of the string (not including the null) will be returned.
     static int getUnencodableReplacement(unsigned codePoint, UnencodableHandling, UnencodableReplacementArray);
 };
diff --git a/Source/wtf/text/TextCodecASCIIFastPath.h b/Source/wtf/text/TextCodecASCIIFastPath.h
index d27f164..f7a7d6a 100644
--- a/Source/wtf/text/TextCodecASCIIFastPath.h
+++ b/Source/wtf/text/TextCodecASCIIFastPath.h
@@ -37,7 +37,7 @@
     {
         memcpy(destination, source, 4);
     }
-    
+
     static void copy(UChar* destination, const uint8_t* source)
     {
         destination[0] = source[0];
diff --git a/Source/wtf/text/TextCodecICU.cpp b/Source/wtf/text/TextCodecICU.cpp
index 8bafdf5..2ede9bf 100644
--- a/Source/wtf/text/TextCodecICU.cpp
+++ b/Source/wtf/text/TextCodecICU.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -72,13 +72,13 @@
         const char* name = ucnv_getAvailableName(i);
         UErrorCode error = U_ZERO_ERROR;
         // Try MIME before trying IANA to pick up commonly used names like
-        // 'EUC-JP' instead of horrendously long names like 
-        // 'Extended_UNIX_Code_Packed_Format_for_Japanese'. 
+        // 'EUC-JP' instead of horrendously long names like
+        // 'Extended_UNIX_Code_Packed_Format_for_Japanese'.
         const char* standardName = ucnv_getStandardName(name, "MIME", &error);
         if (!U_SUCCESS(error) || !standardName) {
             error = U_ZERO_ERROR;
             // Try IANA to pick up 'windows-12xx' and other names
-            // which are not preferred MIME names but are widely used. 
+            // which are not preferred MIME names but are widely used.
             standardName = ucnv_getStandardName(name, "IANA", &error);
             if (!U_SUCCESS(error) || !standardName)
                 continue;
@@ -304,7 +304,7 @@
             return String();
         }
     }
-    
+
     ErrorCallbackSetter callbackSetter(m_converterICU, stopOnError);
 
     StringBuilder result;
@@ -373,7 +373,7 @@
 
 // Substitutes special GBK characters, escaping all other unassigned entities.
 static void gbkCallbackEscape(const void* context, UConverterFromUnicodeArgs* fromUArgs, const UChar* codeUnits, int32_t length,
-    UChar32 codePoint, UConverterCallbackReason reason, UErrorCode* err) 
+    UChar32 codePoint, UConverterCallbackReason reason, UErrorCode* err)
 {
     UChar outChar;
     if (reason == UCNV_UNASSIGNED && (outChar = fallbackForGBK(codePoint))) {
@@ -387,7 +387,7 @@
 
 // Combines both gbkUrlEscapedEntityCallback and GBK character substitution.
 static void gbkUrlEscapedEntityCallack(const void* context, UConverterFromUnicodeArgs* fromUArgs, const UChar* codeUnits, int32_t length,
-    UChar32 codePoint, UConverterCallbackReason reason, UErrorCode* err) 
+    UChar32 codePoint, UConverterCallbackReason reason, UErrorCode* err)
 {
     if (reason == UCNV_UNASSIGNED) {
         if (UChar outChar = fallbackForGBK(codePoint)) {
@@ -403,7 +403,7 @@
 }
 
 static void gbkCallbackSubstitute(const void* context, UConverterFromUnicodeArgs* fromUArgs, const UChar* codeUnits, int32_t length,
-    UChar32 codePoint, UConverterCallbackReason reason, UErrorCode* err) 
+    UChar32 codePoint, UConverterCallbackReason reason, UErrorCode* err)
 {
     UChar outChar;
     if (reason == UCNV_UNASSIGNED && (outChar = fallbackForGBK(codePoint))) {
diff --git a/Source/wtf/text/TextCodecLatin1.cpp b/Source/wtf/text/TextCodecLatin1.cpp
index 247ee36..ae0b14b 100644
--- a/Source/wtf/text/TextCodecLatin1.cpp
+++ b/Source/wtf/text/TextCodecLatin1.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -162,7 +162,7 @@
     }
 
     return result;
-    
+
 upConvertTo16Bit:
     UChar* characters16;
     String result16 = String::createUninitialized(length, characters16);
@@ -187,15 +187,15 @@
             if (isAlignedToMachineWord(source)) {
                 while (source < alignedEnd) {
                     MachineWord chunk = *reinterpret_cast_ptr<const MachineWord*>(source);
-                    
+
                     if (!isAllASCII<LChar>(chunk))
                         goto useLookupTable16;
-                    
+
                     copyASCIIMachineWord(destination16, source);
                     source += sizeof(MachineWord);
                     destination16 += sizeof(MachineWord);
                 }
-                
+
                 if (source == end)
                     break;
             }
@@ -204,11 +204,11 @@
 useLookupTable16:
             *destination16 = table[*source];
         }
-        
+
         ++source;
         ++destination16;
     }
-    
+
     return result16;
 }
 
diff --git a/Source/wtf/text/TextCodecLatin1.h b/Source/wtf/text/TextCodecLatin1.h
index 683f3ce..46946d5 100644
--- a/Source/wtf/text/TextCodecLatin1.h
+++ b/Source/wtf/text/TextCodecLatin1.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextCodecLatin1_h
diff --git a/Source/wtf/text/TextCodecUTF16.cpp b/Source/wtf/text/TextCodecUTF16.cpp
index d89bc88..354c09f 100644
--- a/Source/wtf/text/TextCodecUTF16.cpp
+++ b/Source/wtf/text/TextCodecUTF16.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/wtf/text/TextCodecUTF16.h b/Source/wtf/text/TextCodecUTF16.h
index 222d872..59393d5 100644
--- a/Source/wtf/text/TextCodecUTF16.h
+++ b/Source/wtf/text/TextCodecUTF16.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextCodecUTF16_h
diff --git a/Source/wtf/text/TextCodecUTF8.cpp b/Source/wtf/text/TextCodecUTF8.cpp
index 6a4c835..ce595b3 100644
--- a/Source/wtf/text/TextCodecUTF8.cpp
+++ b/Source/wtf/text/TextCodecUTF8.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -260,7 +260,7 @@
 
     return false;
 }
-    
+
 String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool stopOnError, bool& sawError)
 {
     // Each input byte might turn into a character.
@@ -329,7 +329,7 @@
                 sawError = true;
                 if (stopOnError)
                     break;
-                
+
                 goto upConvertTo16Bit;
             }
             if (character > 0xff)
@@ -366,7 +366,7 @@
             if (m_partialSequenceSize)
                 break;
         }
-        
+
         while (source < end) {
             if (isASCII(*source)) {
                 // Fast path for ASCII. Most UTF-8 text will be ASCII.
@@ -415,9 +415,9 @@
             destination16 = appendCharacter(destination16, character);
         }
     } while (flush && m_partialSequenceSize);
-    
+
     buffer16.shrink(destination16 - buffer16.characters());
-    
+
     return String::adopt(buffer16);
 }
 
diff --git a/Source/wtf/text/TextCodecUTF8.h b/Source/wtf/text/TextCodecUTF8.h
index dcceddf..c9bb7cb 100644
--- a/Source/wtf/text/TextCodecUTF8.h
+++ b/Source/wtf/text/TextCodecUTF8.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextCodecUTF8_h
@@ -53,7 +53,7 @@
 
     int m_partialSequenceSize;
     uint8_t m_partialSequence[U8_MAX_LENGTH];
-    
+
 };
 
 } // namespace WTF
diff --git a/Source/wtf/text/TextCodecUserDefined.cpp b/Source/wtf/text/TextCodecUserDefined.cpp
index 06e98ce..263d240 100644
--- a/Source/wtf/text/TextCodecUserDefined.cpp
+++ b/Source/wtf/text/TextCodecUserDefined.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
diff --git a/Source/wtf/text/TextCodecUserDefined.h b/Source/wtf/text/TextCodecUserDefined.h
index 9704f6a..1fff329 100644
--- a/Source/wtf/text/TextCodecUserDefined.h
+++ b/Source/wtf/text/TextCodecUserDefined.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextCodecUserDefined_h
diff --git a/Source/wtf/text/TextEncoding.cpp b/Source/wtf/text/TextEncoding.cpp
index 90a31d4..6ee67c7 100644
--- a/Source/wtf/text/TextEncoding.cpp
+++ b/Source/wtf/text/TextEncoding.cpp
@@ -22,7 +22,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -72,6 +72,23 @@
     if (string.isEmpty())
         return "";
 
+    OwnPtr<TextCodec> textCodec = newTextCodec(*this);
+    CString encodedString;
+    if (string.is8Bit())
+        encodedString = textCodec->encode(string.characters8(), string.length(), handling);
+    else
+        encodedString = textCodec->encode(string.characters16(), string.length(), handling);
+    return encodedString;
+}
+
+CString TextEncoding::normalizeAndEncode(const String& string, UnencodableHandling handling) const
+{
+    if (!m_name)
+        return CString();
+
+    if (string.isEmpty())
+        return "";
+
     // Text exclusively containing Latin-1 characters (U+0000..U+00FF) is left
     // unaffected by NFC. This is effectively the same as saying that all
     // Latin-1 text is already normalized to NFC.
@@ -79,10 +96,6 @@
     if (string.is8Bit())
         return newTextCodec(*this)->encode(string.characters8(), string.length(), handling);
 
-    // FIXME: What's the right place to do normalization?
-    // It's a little strange to do it inside the encode function.
-    // Perhaps normalization should be an explicit step done before calling encode.
-
     const UChar* source = string.characters16();
     size_t length = string.length();
 
@@ -112,10 +125,10 @@
     if (noExtendedTextEncodingNameUsed())
         return m_name;
 
-    // We treat EUC-KR as windows-949 (its superset), but need to expose 
+    // We treat EUC-KR as windows-949 (its superset), but need to expose
     // the name 'EUC-KR' because the name 'windows-949' is not recognized by
     // most Korean web servers even though they do use the encoding
-    // 'windows-949' with the name 'EUC-KR'. 
+    // 'windows-949' with the name 'EUC-KR'.
     // FIXME: This is not thread-safe. At the moment, this function is
     // only accessed in a single thread, but eventually has to be made
     // thread-safe along with usesVisualOrdering().
@@ -169,11 +182,11 @@
 {
     if (isNonByteBasedEncoding())
         return UTF8Encoding();
-    return *this; 
+    return *this;
 }
 
-// HTML5 specifies that UTF-8 be used in form submission when a form is 
-// is a part of a document in UTF-16 probably because UTF-16 is not a 
+// HTML5 specifies that UTF-8 be used in form submission when a form is
+// is a part of a document in UTF-16 probably because UTF-16 is not a
 // byte-based encoding and can contain 0x00. By extension, the same
 // should be done for UTF-32. In case of UTF-7, it is a byte-based encoding,
 // but it's fraught with problems and we'd rather steer clear of it.
diff --git a/Source/wtf/text/TextEncoding.h b/Source/wtf/text/TextEncoding.h
index ed77021..2830ac7 100644
--- a/Source/wtf/text/TextEncoding.h
+++ b/Source/wtf/text/TextEncoding.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextEncoding_h
@@ -73,8 +73,13 @@
         return decode(str, length, false, ignored);
     }
     String decode(const char*, size_t length, bool stopOnError, bool& sawError) const;
+
+    // Encodes the string, but does *not* normalize first.
     CString encode(const String&, UnencodableHandling) const;
 
+    // Applies Unicode NFC normalization, then encodes the normalized string.
+    CString normalizeAndEncode(const String&, UnencodableHandling) const;
+
     UChar backslashAsCurrencySymbol() const;
 
 private:
diff --git a/Source/wtf/text/TextEncodingRegistry.cpp b/Source/wtf/text/TextEncodingRegistry.cpp
index 6260710..5fb3561 100644
--- a/Source/wtf/text/TextEncodingRegistry.cpp
+++ b/Source/wtf/text/TextEncodingRegistry.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -85,8 +85,8 @@
                 return h;
             }
             h += toASCIILower(c);
-            h += (h << 10); 
-            h ^= (h >> 6); 
+            h += (h << 10);
+            h ^= (h >> 6);
         }
     }
 
diff --git a/Source/wtf/text/TextEncodingRegistry.h b/Source/wtf/text/TextEncodingRegistry.h
index 7b7227d..c0ea255 100644
--- a/Source/wtf/text/TextEncodingRegistry.h
+++ b/Source/wtf/text/TextEncodingRegistry.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef TextEncodingRegistry_h
diff --git a/Source/wtf/text/WTFString.h b/Source/wtf/text/WTFString.h
index cecae95..1ef9f87 100644
--- a/Source/wtf/text/WTFString.h
+++ b/Source/wtf/text/WTFString.h
@@ -278,7 +278,7 @@
     void prependTo(Vector<UChar, inlineCapacity>&, unsigned pos = 0, unsigned len = UINT_MAX) const;
 
     UChar32 characterStartingAt(unsigned) const;
-    
+
     bool contains(UChar c) const { return find(c) != notFound; }
     bool contains(const LChar* str, bool caseSensitive = true) const { return find(str, 0, caseSensitive) != notFound; }
     bool contains(const String& str, bool caseSensitive = true) const { return find(str, 0, caseSensitive) != notFound; }
@@ -410,8 +410,8 @@
 
 #ifdef __OBJC__
     String(NSString*);
-    
-    // This conversion maps NULL to "", which loses the meaning of NULL, but we 
+
+    // This conversion maps NULL to "", which loses the meaning of NULL, but we
     // need this mapping because AppKit crashes when passed nil NSStrings.
     operator NSString*() const { if (!m_impl) return @""; return *m_impl; }
 #endif
@@ -436,7 +436,7 @@
     // Tries to convert the passed in string to UTF-8, but will fall back to Latin-1 if the string is not valid UTF-8.
     static String fromUTF8WithLatin1Fallback(const LChar*, size_t);
     static String fromUTF8WithLatin1Fallback(const char* s, size_t length) { return fromUTF8WithLatin1Fallback(reinterpret_cast<const LChar*>(s), length); };
-    
+
     // Determines the writing direction using the Unicode Bidi Algorithm rules P2 and P3.
     WTF::Unicode::Direction defaultWritingDirection(bool* hasStrongDirectionality = 0) const
     {
@@ -504,7 +504,7 @@
 inline bool equalIgnoringCase(const LChar* a, const String& b) { return equalIgnoringCase(a, b.impl()); }
 inline bool equalIgnoringCase(const char* a, const String& b) { return equalIgnoringCase(reinterpret_cast<const LChar*>(a), b.impl()); }
 
-inline bool equalPossiblyIgnoringCase(const String& a, const String& b, bool ignoreCase) 
+inline bool equalPossiblyIgnoringCase(const String& a, const String& b, bool ignoreCase)
 {
     return ignoreCase ? equalIgnoringCase(a, b) : (a == b);
 }
diff --git a/Source/wtf/unicode/CharacterNames.h b/Source/wtf/unicode/CharacterNames.h
index 90426a1..16d1deb 100644
--- a/Source/wtf/unicode/CharacterNames.h
+++ b/Source/wtf/unicode/CharacterNames.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef CharacterNames_h
diff --git a/Source/wtf/unicode/UTF8.cpp b/Source/wtf/unicode/UTF8.cpp
index 2776c56..72f054c 100644
--- a/Source/wtf/unicode/UTF8.cpp
+++ b/Source/wtf/unicode/UTF8.cpp
@@ -21,7 +21,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "config.h"
@@ -126,7 +126,7 @@
 static const unsigned char firstByteMark[7] = { 0x00, 0x00, 0xC0, 0xE0, 0xF0, 0xF8, 0xFC };
 
 ConversionResult convertLatin1ToUTF8(
-                                     const LChar** sourceStart, const LChar* sourceEnd, 
+                                     const LChar** sourceStart, const LChar* sourceEnd,
                                      char** targetStart, char* targetEnd)
 {
     ConversionResult result = conversionOK;
@@ -136,7 +136,7 @@
         UChar32 ch;
         unsigned short bytesToWrite = 0;
         const UChar32 byteMask = 0xBF;
-        const UChar32 byteMark = 0x80; 
+        const UChar32 byteMark = 0x80;
         const LChar* oldSource = source; // In case we have to back up because of target overflow.
         ch = static_cast<unsigned short>(*source++);
 
@@ -168,7 +168,7 @@
 }
 
 ConversionResult convertUTF16ToUTF8(
-    const UChar** sourceStart, const UChar* sourceEnd, 
+    const UChar** sourceStart, const UChar* sourceEnd,
     char** targetStart, char* targetEnd, bool strict)
 {
     ConversionResult result = conversionOK;
@@ -178,7 +178,7 @@
         UChar32 ch;
         unsigned short bytesToWrite = 0;
         const UChar32 byteMask = 0xBF;
-        const UChar32 byteMark = 0x80; 
+        const UChar32 byteMark = 0x80;
         const UChar* oldSource = source; // In case we have to back up because of target overflow.
         ch = static_cast<unsigned short>(*source++);
         // If we have a surrogate pair, convert to UChar32 first.
@@ -295,7 +295,7 @@
 }
 
 ConversionResult convertUTF8ToUTF16(
-    const char** sourceStart, const char* sourceEnd, 
+    const char** sourceStart, const char* sourceEnd,
     UChar** targetStart, UChar* targetEnd, bool* sourceAllASCII, bool strict)
 {
     ConversionResult result = conversionOK;
diff --git a/Source/wtf/unicode/UTF8.h b/Source/wtf/unicode/UTF8.h
index b014fa6..8b04cb9 100644
--- a/Source/wtf/unicode/UTF8.h
+++ b/Source/wtf/unicode/UTF8.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef WTF_UTF8_h
@@ -53,26 +53,26 @@
     // flag is set to strict, both irregular sequences and isolated surrogates
     // will cause an error.  When the flag is set to lenient, both irregular
     // sequences and isolated surrogates are converted.
-    // 
+    //
     // Whether the flag is strict or lenient, all illegal sequences will cause
     // an error return. This includes sequences such as: <F4 90 80 80>, <C0 80>,
     // or <A0> in UTF-8, and values above 0x10FFFF in UTF-32. Conformant code
     // must check for illegal sequences.
-    // 
+    //
     // When the flag is set to lenient, characters over 0x10FFFF are converted
     // to the replacement character; otherwise (when the flag is set to strict)
     // they constitute an error.
 
     WTF_EXPORT ConversionResult convertUTF8ToUTF16(
-                    const char** sourceStart, const char* sourceEnd, 
+                    const char** sourceStart, const char* sourceEnd,
                     UChar** targetStart, UChar* targetEnd, bool* isSourceAllASCII = 0, bool strict = true);
 
     WTF_EXPORT ConversionResult convertLatin1ToUTF8(
-                    const LChar** sourceStart, const LChar* sourceEnd, 
+                    const LChar** sourceStart, const LChar* sourceEnd,
                     char** targetStart, char* targetEnd);
 
     WTF_EXPORT ConversionResult convertUTF16ToUTF8(
-                    const UChar** sourceStart, const UChar* sourceEnd, 
+                    const UChar** sourceStart, const UChar* sourceEnd,
                     char** targetStart, char* targetEnd, bool strict = true);
 
     WTF_EXPORT unsigned calculateStringHashAndLengthFromUTF8MaskingTop8Bits(const char* data, const char* dataEnd, unsigned& dataLength, unsigned& utf16Length);
diff --git a/Tools/DumpRenderTree/DumpRenderTree.gypi b/Tools/DumpRenderTree/DumpRenderTree.gypi
index 79f3ade..13d3087 100644
--- a/Tools/DumpRenderTree/DumpRenderTree.gypi
+++ b/Tools/DumpRenderTree/DumpRenderTree.gypi
@@ -25,6 +25,8 @@
             'chromium/TestRunner/src/MockSpellCheck.h',
             'chromium/TestRunner/src/MockWebAudioDevice.cpp',
             'chromium/TestRunner/src/MockWebAudioDevice.h',
+            'chromium/TestRunner/src/MockWebCrypto.cpp',
+            'chromium/TestRunner/src/MockWebCrypto.h',
             'chromium/TestRunner/src/MockWebMediaStreamCenter.cpp',
             'chromium/TestRunner/src/MockWebMediaStreamCenter.h',
             'chromium/TestRunner/src/MockWebMIDIAccessor.cpp',
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp
index 9ef6ca2..c8247a9 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp
@@ -524,7 +524,7 @@
         browser->releasevariantvalue(&browserResult);
 
     browser->releaseobject(windowScriptObject);
-    
+
     VOID_TO_NPVARIANT(*result);
     return true;
 }
@@ -823,7 +823,7 @@
 {
     if (!argCount || !NPVARIANT_IS_OBJECT(args[0]))
         return false;
-    
+
     return browser->construct(obj->npp, NPVARIANT_TO_OBJECT(args[0]), args + 1, argCount - 1, result);
 }
 
@@ -978,7 +978,7 @@
         NPString statusString = NPVARIANT_TO_STRING(args[0]);
         message = toCString(statusString);
     }
-    
+
     browser->status(obj->npp, message);
 
     free(message);
@@ -1293,7 +1293,7 @@
     // Invoke
     NPIdentifier testNPInvoke = browser->getstringidentifier("testNPInvoke");
     NPVariant args[7];
-    
+
     VOID_TO_NPVARIANT(args[0]);
     NULL_TO_NPVARIANT(args[1]);
     BOOLEAN_TO_NPVARIANT(true, args[2]);
@@ -1301,10 +1301,10 @@
     DOUBLE_TO_NPVARIANT(242.242, args[4]);
     STRINGZ_TO_NPVARIANT("Hello, World", args[5]);
     OBJECT_TO_NPVARIANT(windowScriptObject, args[6]);
-    
+
     NPVariant result;
     if (browser->invoke(npp, windowScriptObject, testNPInvoke, args, 7, &result))
         browser->releasevariantvalue(&result);
-    
+
     browser->releaseobject(windowScriptObject);
 }
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/PluginObject.h b/Tools/DumpRenderTree/TestNetscapePlugIn/PluginObject.h
index bcdc927..aa41fd3 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/PluginObject.h
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/PluginObject.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #ifndef PluginObject_h
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp
index c3ada14..321045a 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp
@@ -42,7 +42,7 @@
 {
     if (identifier.empty())
         return new PluginTest(npp, identifier);
-        
+
     CreateTestFunction createTestFunction = createTestFunctions()[identifier];
     if (createTestFunction)
         return createTestFunction(npp, identifier);
@@ -206,7 +206,7 @@
 NPObject* PluginTest::NPN_CreateObject(NPClass* npClass)
 {
     return browser->createobject(m_npp, npClass);
-}                                 
+}
 
 NPObject* PluginTest::NPN_RetainObject(NPObject* npObject)
 {
@@ -285,13 +285,13 @@
 void PluginTest::registerCreateTestFunction(const string& identifier, CreateTestFunction createTestFunction)
 {
     assert(!createTestFunctions().count(identifier));
- 
+
     createTestFunctions()[identifier] = createTestFunction;
 }
 
 std::map<std::string, PluginTest::CreateTestFunction>& PluginTest::createTestFunctions()
 {
     static std::map<std::string, CreateTestFunction> testFunctions;
-    
+
     return testFunctions;
 }
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/PluginTest.h b/Tools/DumpRenderTree/TestNetscapePlugIn/PluginTest.h
index e719772..a225819 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/PluginTest.h
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/PluginTest.h
@@ -110,9 +110,9 @@
         {
             registerCreateTestFunction(identifier, Register::create);
         }
-    
+
     private:
-        static PluginTest* create(NPP npp, const std::string& identifier) 
+        static PluginTest* create(NPP npp, const std::string& identifier)
         {
             return new TestClassTy(npp, identifier);
         }
@@ -141,7 +141,7 @@
             object->m_pluginTest = pluginTest;
             return object;
         }
-    
+
         // These should never be called.
         bool hasMethod(NPIdentifier methodName)
         {
@@ -154,7 +154,7 @@
             assert(false);
             return false;
         }
-        
+
         bool invokeDefault(const NPVariant*, uint32_t, NPVariant* result)
         {
             assert(false);
@@ -190,9 +190,9 @@
             : m_pluginTest(0)
         {
         }
-        
-        virtual ~Object() 
-        { 
+
+        virtual ~Object()
+        {
         }
 
         PluginTest* pluginTest() const { return m_pluginTest; }
@@ -241,7 +241,7 @@
         static NPClass* npClass()
         {
             static NPClass npClass = {
-                NP_CLASS_STRUCT_VERSION, 
+                NP_CLASS_STRUCT_VERSION,
                 NP_Allocate,
                 NP_Deallocate,
                 0, // NPClass::invalidate
@@ -255,19 +255,19 @@
                 0, // NPClass::enumerate
                 0  // NPClass::construct
             };
-            
+
             return &npClass;
         };
 
         PluginTest* m_pluginTest;
     };
-    
+
 private:
     typedef PluginTest* (*CreateTestFunction)(NPP, const std::string&);
-    
+
     static void registerCreateTestFunction(const std::string&, CreateTestFunction);
     static std::map<std::string, CreateTestFunction>& createTestFunctions();
-    
+
     std::string m_identifier;
 };
 
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/TestObject.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/TestObject.cpp
index c731494..f2faa05 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/TestObject.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/TestObject.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "TestObject.h"
@@ -38,10 +38,10 @@
 static void testDeallocate(NPObject *obj);
 static bool testConstruct(NPObject* obj, const NPVariant* args, uint32_t argCount, NPVariant* result);
 
-static NPClass testClass = { 
+static NPClass testClass = {
     NP_CLASS_STRUCT_VERSION,
-    testAllocate, 
-    testDeallocate, 
+    testAllocate,
+    testDeallocate,
     0,
     testHasMethod,
     testInvoke,
@@ -121,7 +121,7 @@
     return reinterpret_cast<NPObject*>(newInstance);
 }
 
-static void testDeallocate(NPObject *obj) 
+static void testDeallocate(NPObject *obj)
 {
     TestObject* testObject = reinterpret_cast<TestObject*>(obj);
     if (testObject->testObject)
@@ -155,7 +155,7 @@
         if (testIdentifiers[i] == name)
             return true;
     }
-    
+
     return false;
 }
 
@@ -185,24 +185,24 @@
         INT32_TO_NPVARIANT(npobj->referenceCount, *result);
         return true;
     }
-    
+
     return false;
 }
 
 static bool testEnumerate(NPObject* /*npobj*/, NPIdentifier **value, uint32_t *count)
 {
     *count = NUM_ENUMERATABLE_TEST_IDENTIFIERS;
-    
+
     *value = (NPIdentifier*)browser->memalloc(NUM_ENUMERATABLE_TEST_IDENTIFIERS * sizeof(NPIdentifier));
     memcpy(*value, testIdentifiers, sizeof(NPIdentifier) * NUM_ENUMERATABLE_TEST_IDENTIFIERS);
-    
+
     return true;
 }
 
 static bool testConstruct(NPObject* npobj, const NPVariant* /*args*/, uint32_t /*argCount*/, NPVariant* result)
 {
     browser->retainobject(npobj);
-    
+
     // Just return the same object.
     OBJECT_TO_NPVARIANT(npobj, *result);
     return true;
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/TestObject.h b/Tools/DumpRenderTree/TestNetscapePlugIn/TestObject.h
index 73748e0..eb66a0e 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/TestObject.h
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/TestObject.h
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include <WebKit/npapi.h>
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/DocumentOpenInDestroyStream.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/DocumentOpenInDestroyStream.cpp
index 69e706e..36fb4b9 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/DocumentOpenInDestroyStream.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/DocumentOpenInDestroyStream.cpp
@@ -46,9 +46,9 @@
             testDocumentOpen(m_npp);
             m_shouldOpen = false;
         }
-        
+
         return NPERR_NO_ERROR;
-    }        
+    }
 
     bool m_shouldOpen;
 };
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/GetURLWithJavaScriptURL.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/GetURLWithJavaScriptURL.cpp
index b3a72b0..64a69a3 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/GetURLWithJavaScriptURL.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/GetURLWithJavaScriptURL.cpp
@@ -100,7 +100,7 @@
     {
         if (stream->pdata != this)
             m_didFail = true;
-        
+
         m_data.insert(m_data.end(), static_cast<char*>(buffer), static_cast<char*>(buffer) + len);
         return len;
     }
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/GetURLWithJavaScriptURLDestroyingPlugin.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/GetURLWithJavaScriptURLDestroyingPlugin.cpp
index 9d63198..aa1fc11 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/GetURLWithJavaScriptURLDestroyingPlugin.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/GetURLWithJavaScriptURLDestroyingPlugin.cpp
@@ -42,7 +42,7 @@
     {
         NPN_GetURL("javascript:removePlugin()", 0);
         return NPERR_NO_ERROR;
-    }        
+    }
 };
 
 static PluginTest::Register<GetURLWithJavaScriptURLDestroyingPlugin> getURLWithJavaScriptURLDestroyingPlugin("get-url-with-javascript-url-destroying-plugin");
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/InvokeDestroysPluginWithinNPP_New.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/InvokeDestroysPluginWithinNPP_New.cpp
index 0e2dbdc..a9a9b8f 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/InvokeDestroysPluginWithinNPP_New.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/InvokeDestroysPluginWithinNPP_New.cpp
@@ -49,14 +49,14 @@
 {
     // Give the WebProcess enough time to be deadlocked waiting for the PluginProcess if things aren't working correctly.
     usleep(15000);
-    
+
     NPObject* windowObject = 0;
     if (NPN_GetValue(NPNVWindowNPObject, &windowObject) != NPERR_NO_ERROR)
         return NPERR_GENERIC_ERROR;
-    
+
     if (!windowObject)
         return NPERR_GENERIC_ERROR;
-    
+
     NPVariant result;
     if (!NPN_Invoke(windowObject, NPN_GetStringIdentifier("removePluginElement"), 0, 0, &result))
         return NPERR_GENERIC_ERROR;
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/LogNPPSetWindow.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/LogNPPSetWindow.cpp
index d282fc0..90481e2 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/LogNPPSetWindow.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/LogNPPSetWindow.cpp
@@ -49,7 +49,7 @@
         window->window ? "non-NULL" : "NULL", window->x, window->y, window->width, window->height,
         window->clipRect.left, window->clipRect.top, window->clipRect.right, window->clipRect.bottom,
         window->type);
-    
+
     char script[1536];
     snprintf(script, 1536, "window.setTimeout('windowWasSet(\"%s\");', 0);", message);
 
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPDeallocateCalledBeforeNPShutdown.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPDeallocateCalledBeforeNPShutdown.cpp
index 91f47af..fb0f2c4 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPDeallocateCalledBeforeNPShutdown.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPDeallocateCalledBeforeNPShutdown.cpp
@@ -38,9 +38,9 @@
 
 private:
     // This is the test object.
-    class TestObject : public Object<TestObject> { 
+    class TestObject : public Object<TestObject> {
     public:
-        ~TestObject() 
+        ~TestObject()
         {
             if (wasShutdownCalled)
                 indicateTestFailure();
@@ -48,7 +48,7 @@
     };
 
     // This is the scriptable object. It has a single "testObject" property.
-    class ScriptableObject : public Object<ScriptableObject> { 
+    class ScriptableObject : public Object<ScriptableObject> {
     public:
         bool hasProperty(NPIdentifier propertyName)
         {
@@ -77,9 +77,9 @@
     {
         if (variable != NPPVpluginScriptableNPObject)
             return NPERR_GENERIC_ERROR;
-        
+
         *(NPObject**)value = ScriptableObject::create(this);
-        
+
         return NPERR_NO_ERROR;
     }
 
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPPNewFails.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPPNewFails.cpp
index e3b11d6..afe344a 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPPNewFails.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPPNewFails.cpp
@@ -35,9 +35,9 @@
         : PluginTest(npp, identifier)
     {
     }
-    
+
 private:
-    
+
     virtual NPError NPP_New(NPMIMEType pluginType, uint16_t mode, int16_t argc, char* argn[], char* argv[], NPSavedData *saved)
     {
         return NPERR_GENERIC_ERROR;
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPRuntimeObjectFromDestroyedPlugin.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPRuntimeObjectFromDestroyedPlugin.cpp
index 0e238e6..96e9d83 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPRuntimeObjectFromDestroyedPlugin.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPRuntimeObjectFromDestroyedPlugin.cpp
@@ -39,7 +39,7 @@
     class TestObject : public Object<TestObject> { };
 
     // This is the scriptable object. It has a single "testObject" property and an "evaluate" function.
-    class ScriptableObject : public Object<ScriptableObject> { 
+    class ScriptableObject : public Object<ScriptableObject> {
     public:
         bool hasMethod(NPIdentifier methodName)
         {
@@ -77,9 +77,9 @@
     {
         if (variable != NPPVpluginScriptableNPObject)
             return NPERR_GENERIC_ERROR;
-        
+
         *(NPObject**)value = ScriptableObject::create(this);
-        
+
         return NPERR_NO_ERROR;
     }
 };
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPRuntimeRemoveProperty.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPRuntimeRemoveProperty.cpp
index 8a923dc..f817dcb 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPRuntimeRemoveProperty.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/NPRuntimeRemoveProperty.cpp
@@ -35,7 +35,7 @@
         : PluginTest(npp, identifier)
     {
     }
-    
+
 private:
     struct TestObject : Object<TestObject> {
     public:
@@ -48,7 +48,7 @@
         {
             if (identifierIs(propertyName, "lastRemovedProperty"))
                 return true;
-            
+
             return false;
         }
 
@@ -61,7 +61,7 @@
 
             if (pluginTest()->NPN_IdentifierIsString(m_lastRemovedProperty)) {
                 char* lastRemovedPropertyName = pluginTest()->NPN_UTF8FromIdentifier(m_lastRemovedProperty);
-                
+
                 STRINGZ_TO_NPVARIANT(lastRemovedPropertyName, *result);
                 return true;
             }
@@ -111,21 +111,21 @@
 
             if (!NPVARIANT_IS_OBJECT(arguments[0]))
                 return false;
-            
+
             if (!NPVARIANT_IS_STRING(arguments[1]) && !NPVARIANT_IS_DOUBLE(arguments[1]))
                 return false;
-            
+
             NPIdentifier propertyName;
             if (NPVARIANT_IS_STRING(arguments[1])) {
                 string propertyNameString(arguments[1].value.stringValue.UTF8Characters,
                                           arguments[1].value.stringValue.UTF8Length);
-            
+
                 propertyName = pluginTest()->NPN_GetStringIdentifier(propertyNameString.c_str());
             } else {
                 int32_t number = static_cast<int32_t>(arguments[1].value.doubleValue);
                 propertyName = pluginTest()->NPN_GetIntIdentifier(number);
             }
-            
+
             pluginTest()->NPN_RemoveProperty(NPVARIANT_TO_OBJECT(arguments[0]), propertyName);
 
             VOID_TO_NPVARIANT(*result);
@@ -154,17 +154,17 @@
     private:
         NPObject* m_testObject;
     };
-    
+
     virtual NPError NPP_GetValue(NPPVariable variable, void *value)
     {
         if (variable != NPPVpluginScriptableNPObject)
             return NPERR_GENERIC_ERROR;
-        
+
         *(NPObject**)value = PluginObject::create(this);
-        
+
         return NPERR_NO_ERROR;
     }
-    
+
 };
 
 static PluginTest::Register<NPRuntimeRemoveProperty> npRuntimeRemoveProperty("npruntime-remove-property");
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/PluginScriptableNPObjectInvokeDefault.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/PluginScriptableNPObjectInvokeDefault.cpp
index 959e182..34d209b 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/PluginScriptableNPObjectInvokeDefault.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/PluginScriptableNPObjectInvokeDefault.cpp
@@ -38,7 +38,7 @@
 private:
     struct NPObjectWithoutInvokeDefault : Object<NPObjectWithoutInvokeDefault> { };
 
-    struct NPObjectWithInvokeDefault : Object<NPObjectWithInvokeDefault> { 
+    struct NPObjectWithInvokeDefault : Object<NPObjectWithInvokeDefault> {
     public:
         bool invokeDefault(const NPVariant*, uint32_t, NPVariant* result)
         {
@@ -57,9 +57,9 @@
             object = NPObjectWithInvokeDefault::create(this);
         else
             object = NPObjectWithoutInvokeDefault::create(this);
-        
+
         *(NPObject**)value = object;
-        
+
         return NPERR_NO_ERROR;
     }
 };
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/PluginScriptableObjectOverridesAllProperties.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/PluginScriptableObjectOverridesAllProperties.cpp
index ddeb8e9..a70d47b 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/PluginScriptableObjectOverridesAllProperties.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/PluginScriptableObjectOverridesAllProperties.cpp
@@ -36,7 +36,7 @@
         : PluginTest(npp, identifier)
     {
     }
-    
+
 private:
     class PluginObject : public Object<PluginObject> {
     public:
@@ -57,27 +57,27 @@
         {
             static const char* message = "My name is ";
             char* propertyString = pluginTest()->NPN_UTF8FromIdentifier(propertyName);
-            
+
             int bufferLength = strlen(propertyString) + strlen(message) + 1;
             char* resultBuffer = static_cast<char*>(pluginTest()->NPN_MemAlloc(bufferLength));
             snprintf(resultBuffer, bufferLength, "%s%s", message, propertyString);
-            
+
             STRINGZ_TO_NPVARIANT(resultBuffer, *result);
 
             return true;
         }
     };
-    
+
     virtual NPError NPP_GetValue(NPPVariable variable, void *value)
     {
         if (variable != NPPVpluginScriptableNPObject)
             return NPERR_GENERIC_ERROR;
-        
+
         *(NPObject**)value = PluginObject::create(this);
-        
+
         return NPERR_NO_ERROR;
     }
-    
+
 };
 
 static PluginTest::Register<PluginScriptableObjectOverridesAllProperties> pluginScriptableObjectOverridesAllProperties("plugin-scriptable-object-overrides-all-properties");
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/SlowNPPNew.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/SlowNPPNew.cpp
index 8c80d55..8638c78 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/SlowNPPNew.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/SlowNPPNew.cpp
@@ -35,7 +35,7 @@
         : PluginTest(npp, identifier)
     {
     }
-    
+
 private:
     class PluginObject : public Object<PluginObject> {
     public:
@@ -56,24 +56,24 @@
         {
             static const char* message = "My name is ";
             char* propertyString = pluginTest()->NPN_UTF8FromIdentifier(propertyName);
-            
+
             int bufferLength = strlen(propertyString) + strlen(message) + 1;
             char* resultBuffer = static_cast<char*>(pluginTest()->NPN_MemAlloc(bufferLength));
             snprintf(resultBuffer, bufferLength, "%s%s", message, propertyString);
-            
+
             STRINGZ_TO_NPVARIANT(resultBuffer, *result);
 
             return true;
         }
     };
-    
+
     virtual NPError NPP_GetValue(NPPVariable variable, void *value)
     {
         if (variable != NPPVpluginScriptableNPObject)
             return NPERR_GENERIC_ERROR;
-        
+
         *(NPObject**)value = PluginObject::create(this);
-        
+
         return NPERR_NO_ERROR;
     }
 
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/mac/ContentsScaleFactor.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/mac/ContentsScaleFactor.cpp
index 5353d83..62b9fe7 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/mac/ContentsScaleFactor.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/mac/ContentsScaleFactor.cpp
@@ -48,7 +48,7 @@
         return m_cachedContentsScaleFactor;
     }
 
-    class ScriptableObject : public Object<ScriptableObject> { 
+    class ScriptableObject : public Object<ScriptableObject> {
     public:
         bool hasProperty(NPIdentifier propertyName)
         {
@@ -85,9 +85,9 @@
     {
         if (variable != NPPVpluginScriptableNPObject)
             return NPERR_GENERIC_ERROR;
-        
+
         *(NPObject**)value = ScriptableObject::create(this);
-        
+
         return NPERR_NO_ERROR;
     }
 
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/mac/SupportsCarbonEventModel.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/mac/SupportsCarbonEventModel.cpp
index 51cbce2..c5c65e9 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/mac/SupportsCarbonEventModel.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/mac/SupportsCarbonEventModel.cpp
@@ -56,7 +56,7 @@
             executeScript("document.getElementById('result').innerHTML = 'SUCCESS!'");
 
         return NPERR_NO_ERROR;
-    }        
+    }
 };
 
 static PluginTest::Register<SupportsCarbonEventModel> supportsCarbonEventModel("supports-carbon-event-model");
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp b/Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp
index 8b9e5bf..942500a 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/main.cpp
@@ -20,7 +20,7 @@
  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
 #include "PluginObject.h"
@@ -122,7 +122,7 @@
     pluginFuncs->urlnotify = NPP_URLNotify;
     pluginFuncs->getvalue = NPP_GetValue;
     pluginFuncs->setvalue = NPP_SetValue;
-    
+
     return NPERR_NO_ERROR;
 }
 
@@ -145,12 +145,12 @@
 {
 #ifdef XP_MACOSX
     NPEventModel eventModel;
-    
+
     // Always turn on the CG model
     NPBool supportsCoreGraphics;
     if (browser->getvalue(instance, NPNVsupportsCoreGraphicsBool, &supportsCoreGraphics) != NPERR_NO_ERROR)
         supportsCoreGraphics = false;
-    
+
     if (!supportsCoreGraphics)
         return NPERR_INCOMPATIBLE_VERSION_ERROR;
 
@@ -197,7 +197,7 @@
 
     string testIdentifier;
     const char* onNewScript = 0;
-    
+
     for (int i = 0; i < argc; i++) {
         if (strcasecmp(argn[i], "test") == 0)
             testIdentifier = argv[i];
@@ -336,7 +336,7 @@
 
         if (obj->onPaintEvent)
             free(obj->onPaintEvent);
-        
+
         if (obj->logDestroy)
             pluginLog(instance, "NPP_Destroy");
 
@@ -379,7 +379,7 @@
             executeScript(obj, "eventSender.keyDown('A');");
         }
     }
-    
+
     return obj->pluginTest->NPP_SetWindow(window);
 }
 
@@ -405,7 +405,7 @@
 
     if (obj->returnErrorFromNewStream)
         return NPERR_GENERIC_ERROR;
-    
+
     if (browser->version >= NPVERS_HAS_RESPONSE_HEADERS)
         notifyStream(obj, stream->url, stream->headers);
 
@@ -422,7 +422,7 @@
     if (obj->onStreamDestroy) {
         NPObject* windowObject = 0;
         NPError error = browser->getvalue(instance, NPNVWindowNPObject, &windowObject);
-        
+
         if (error == NPERR_NO_ERROR) {
             NPVariant onStreamDestroyVariant;
             if (browser->getproperty(instance, windowObject, browser->getstringidentifier(obj->onStreamDestroy), &onStreamDestroyVariant)) {
@@ -574,7 +574,7 @@
             if (obj->eventLogging)
                 pluginLog(instance, "event %d", event->what);
     }
-    
+
     return 0;
 }
 #endif
@@ -583,7 +583,7 @@
 {
     switch (event->type) {
         case NPCocoaEventWindowFocusChanged:
-            
+
         case NPCocoaEventFocusChanged:
             if (obj->eventLogging) {
                 if (event->data.focus.hasFocus)
@@ -622,7 +622,7 @@
 
         case NPCocoaEventMouseDown:
             if (obj->eventLogging) {
-                pluginLog(instance, "mouseDown at (%d, %d)", 
+                pluginLog(instance, "mouseDown at (%d, %d)",
                        (int)event->data.mouse.pluginX,
                        (int)event->data.mouse.pluginY);
             }
@@ -631,12 +631,12 @@
             return 1;
         case NPCocoaEventMouseUp:
             if (obj->eventLogging) {
-                pluginLog(instance, "mouseUp at (%d, %d)", 
+                pluginLog(instance, "mouseUp at (%d, %d)",
                        (int)event->data.mouse.pluginX,
                        (int)event->data.mouse.pluginY);
             }
             return 1;
-            
+
         case NPCocoaEventMouseMoved:
         case NPCocoaEventMouseEntered:
         case NPCocoaEventMouseExited:
@@ -645,7 +645,7 @@
         case NPCocoaEventTextInput:
             return 1;
     }
-    
+
     return 0;
 }
 
@@ -840,12 +840,12 @@
         *v = obj;
         return NPERR_NO_ERROR;
     }
-    
+
 #ifdef XP_MACOSX
     if (variable == NPPVpluginCoreAnimationLayer) {
         if (!obj->coreAnimationLayer)
             return NPERR_GENERIC_ERROR;
-        
+
         void **v = (void **)value;
         *v = (void*)CFRetain(obj->coreAnimationLayer);
         return NPERR_NO_ERROR;
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/win/resource.h b/Tools/DumpRenderTree/TestNetscapePlugIn/win/resource.h
index b0ce340..7aa780f 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/win/resource.h
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/win/resource.h
@@ -3,7 +3,7 @@
 // Used by TestNetscapePlugin.rc
 
 // Next default values for new objects
-// 
+//
 #ifdef APSTUDIO_INVOKED
 #ifndef APSTUDIO_READONLY_SYMBOLS
 #define _APS_NEXT_RESOURCE_VALUE        101
diff --git a/Tools/DumpRenderTree/chromium/TestRunner/src/AccessibilityControllerChromium.cpp b/Tools/DumpRenderTree/chromium/TestRunner/src/AccessibilityControllerChromium.cpp
index 4100457..3ea7fd6 100644
--- a/Tools/DumpRenderTree/chromium/TestRunner/src/AccessibilityControllerChromium.cpp
+++ b/Tools/DumpRenderTree/chromium/TestRunner/src/AccessibilityControllerChromium.cpp
@@ -101,7 +101,7 @@
     if (!node.isNull() && node.isElementNode()) {
         WebElement element = node.to<WebElement>();
         element.getAttribute("id");
-        if (element.getAttribute("id") == id) 
+        if (element.getAttribute("id") == id)
             return m_elements.getOrCreate(obj);
     }
 
diff --git a/Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp b/Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp
index ff1897e..b56a6e1 100644
--- a/Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp
+++ b/Tools/DumpRenderTree/chromium/TestRunner/src/EventSender.cpp
@@ -830,7 +830,7 @@
     replayingSavedEvents = false;
 }
 
-// Because actual context menu is implemented by the browser side, 
+// Because actual context menu is implemented by the browser side,
 // this function does only what LayoutTests are expecting:
 // - Many test checks the count of items. So returning non-zero value makes sense.
 // - Some test compares the count before and after some action. So changing the count based on flags
@@ -850,14 +850,14 @@
     vector<WebString> strings;
 
     if (contextMenu->isEditable) {
-        for (const char** item = editableMenuStrings; *item; ++item) 
+        for (const char** item = editableMenuStrings; *item; ++item)
             strings.push_back(WebString::fromUTF8(*item));
         WebVector<WebString> suggestions;
         MockSpellCheck::fillSuggestionList(contextMenu->misspelledWord, &suggestions);
-        for (size_t i = 0; i < suggestions.size(); ++i) 
+        for (size_t i = 0; i < suggestions.size(); ++i)
             strings.push_back(suggestions[i]);
     } else {
-        for (const char** item = nonEditableMenuStrings; *item; ++item) 
+        for (const char** item = nonEditableMenuStrings; *item; ++item)
             strings.push_back(WebString::fromUTF8(*item));
     }
 
@@ -871,7 +871,7 @@
 
     updateClickCountForButton(WebMouseEvent::ButtonRight);
 
-    // Clears last context menu data because we need to know if the context menu be requested 
+    // Clears last context menu data because we need to know if the context menu be requested
     // after following mouse events.
     m_lastContextMenuData.reset();
 
diff --git a/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebCrypto.cpp b/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebCrypto.cpp
new file mode 100644
index 0000000..b0500a0
--- /dev/null
+++ b/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebCrypto.cpp
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 2013 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "MockWebCrypto.h"
+
+#include "public/platform/WebArrayBuffer.h"
+#include "public/platform/WebCryptoAlgorithm.h"
+#include <string>
+#include <string.h>
+
+using namespace WebKit;
+
+namespace WebTestRunner {
+
+namespace {
+
+class MockCryptoOperation : public WebKit::WebCryptoOperation {
+public:
+    MockCryptoOperation(const WebKit::WebCryptoAlgorithm& algorithm, const WebKit::WebCryptoOperationResult& result) : m_algorithm(algorithm), m_result(result) { }
+
+    virtual void process(const unsigned char* bytes, size_t size) OVERRIDE
+    {
+        // Don't buffer too much data.
+        if (m_data.size() + size > 6)
+            m_result.completeWithError();
+
+        if (size)
+            m_data.append(reinterpret_cast<const char*>(bytes), size);
+    }
+
+    virtual void abort() OVERRIDE
+    {
+        delete this;
+    }
+
+    virtual void finish() OVERRIDE
+    {
+        const unsigned char digest1[20] = {0xda, 0x39, 0xa3, 0xee, 0x5e, 0x6b, 0x4b, 0x0d, 0x32, 0x55, 0xbf, 0xef, 0x95, 0x60, 0x18, 0x90, 0xaf, 0xd8, 0x07, 0x09};
+        const unsigned char digest2[20] = {0x5b, 0xa9, 0x3c, 0x9d, 0xb0, 0xcf, 0xf9, 0x3f, 0x52, 0xb5, 0x21, 0xd7, 0x42, 0x0e, 0x43, 0xf6, 0xed, 0xa2, 0x78, 0x4f};
+        const unsigned char digest3[20] = {0x86, 0x84, 0x60, 0xd9, 0x8d, 0x09, 0xd8, 0xbb, 0xb9, 0x3d, 0x7b, 0x6c, 0xdd, 0x15, 0xcc, 0x7f, 0xbe, 0xc6, 0x76, 0xb9};
+
+        const unsigned char* result = 0;
+        size_t resultSize;
+
+        if (m_algorithm.id() == WebKit::WebCryptoAlgorithmIdSha1) {
+            resultSize = 20;
+
+            if (m_data.empty()) {
+                result = digest1;
+            } else if (m_data == std::string("\x00", 1)) {
+                result = digest2;
+            } else if (m_data == std::string("\x00\x01\x02\x03\x04\x05", 6)) {
+                result = digest3;
+            }
+        }
+
+        if (result) {
+            WebKit::WebArrayBuffer buffer = WebKit::WebArrayBuffer::create(resultSize, 1);
+            memcpy(buffer.data(), result, resultSize);
+            m_result.completeWithArrayBuffer(buffer);
+        } else {
+            m_result.completeWithError();
+        }
+        delete this;
+    }
+
+protected:
+    WebKit::WebCryptoAlgorithm m_algorithm;
+    WebKit::WebCryptoOperationResult m_result;
+    std::string m_data;
+};
+
+} // namespace
+
+MockWebCrypto* MockWebCrypto::get()
+{
+    static MockWebCrypto crypto;
+    return &crypto;
+}
+
+void MockWebCrypto::digest(const WebKit::WebCryptoAlgorithm& algorithm, WebKit::WebCryptoOperationResult& result)
+{
+    result.initializationSucceeded(new MockCryptoOperation(algorithm, result));
+}
+
+void MockWebCrypto::importKey(WebKit::WebCryptoKeyFormat, const unsigned char* keyData, size_t keyDataSize, const WebKit::WebCryptoAlgorithm& algorithm, bool extractable, WebKit::WebCryptoKeyUsageMask usages, WebKit::WebCryptoKeyOperationResult& result)
+{
+    std::string keyDataString(reinterpret_cast<const char*>(keyData), keyDataSize);
+
+    WebKit::WebCryptoKeyType type;
+    if (keyDataString == "reject") {
+        result.completeWithError();
+    } else if (keyDataString == "throw") {
+        result.initializationFailed();
+    } else {
+        if (keyDataString == "public") {
+            type = WebKit::WebCryptoKeyTypePublic;
+        } else if (keyDataString == "private") {
+            type = WebKit::WebCryptoKeyTypePrivate;
+        }
+        result.completeWithKey(WebKit::WebCryptoKey::create(0, type, extractable, algorithm, usages));
+    }
+}
+
+} // namespace WebTestRunner
diff --git a/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebCrypto.h b/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebCrypto.h
new file mode 100644
index 0000000..be1f3d9
--- /dev/null
+++ b/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebCrypto.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2013 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef MockWebCrypto_h
+#define MockWebCrypto_h
+
+#include "TestCommon.h"
+#include "public/platform/WebCrypto.h"
+
+namespace WebTestRunner {
+
+class MockWebCrypto : public WebKit::WebCrypto {
+public:
+    static MockWebCrypto* get();
+
+    virtual void digest(const WebKit::WebCryptoAlgorithm&, WebKit::WebCryptoOperationResult&) OVERRIDE;
+    virtual void importKey(WebKit::WebCryptoKeyFormat, const unsigned char* keyData, size_t keyDataSize, const WebKit::WebCryptoAlgorithm&, bool extractable, WebKit::WebCryptoKeyUsageMask, WebKit::WebCryptoKeyOperationResult&) OVERRIDE;
+};
+
+} // namespace WebTestRunner
+
+#endif // MockWebCrypto_h
diff --git a/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebMediaStreamCenter.cpp b/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebMediaStreamCenter.cpp
index bb58265..7cd2f07 100644
--- a/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebMediaStreamCenter.cpp
+++ b/Tools/DumpRenderTree/chromium/TestRunner/src/MockWebMediaStreamCenter.cpp
@@ -90,10 +90,10 @@
 
 void MockWebMediaStreamCenter::didCreateMediaStream(WebMediaStream& stream)
 {
-    WebVector<WebMediaStreamTrack> audioComponents;
-    stream.audioSources(audioComponents);
-    for (size_t i = 0; i < audioComponents.size(); ++i) {
-        WebMediaStreamSource source = audioComponents[i].source();
+    WebVector<WebMediaStreamTrack> audioTracks;
+    stream.audioTracks(audioTracks);
+    for (size_t i = 0; i < audioTracks.size(); ++i) {
+        WebMediaStreamSource source = audioTracks[i].source();
         if (source.requiresAudioConsumer()) {
             MockWebAudioDestinationConsumer* consumer = new MockWebAudioDestinationConsumer();
             source.addAudioConsumer(consumer);
diff --git a/Tools/DumpRenderTree/chromium/TestRunner/src/TestPlugin.cpp b/Tools/DumpRenderTree/chromium/TestRunner/src/TestPlugin.cpp
index e16edfd..c5e7419 100644
--- a/Tools/DumpRenderTree/chromium/TestRunner/src/TestPlugin.cpp
+++ b/Tools/DumpRenderTree/chromium/TestRunner/src/TestPlugin.cpp
@@ -512,7 +512,7 @@
 
     case WebInputEvent::GestureScrollBegin:  eventName = "GestureScrollBegin"; break;
     case WebInputEvent::GestureScrollEnd:    eventName = "GestureScrollEnd"; break;
-    case WebInputEvent::GestureScrollUpdateWithoutPropagation: 
+    case WebInputEvent::GestureScrollUpdateWithoutPropagation:
     case WebInputEvent::GestureScrollUpdate: eventName = "GestureScrollUpdate"; break;
     case WebInputEvent::GestureFlingStart:   eventName = "GestureFlingStart"; break;
     case WebInputEvent::GestureFlingCancel:  eventName = "GestureFlingCancel"; break;
diff --git a/Tools/DumpRenderTree/chromium/TestRunner/src/TestRunner.h b/Tools/DumpRenderTree/chromium/TestRunner/src/TestRunner.h
index 84f1eb8..578134c 100644
--- a/Tools/DumpRenderTree/chromium/TestRunner/src/TestRunner.h
+++ b/Tools/DumpRenderTree/chromium/TestRunner/src/TestRunner.h
@@ -632,7 +632,7 @@
     // request callback.
     bool m_dumpResourceRequestCallbacks;
 
-    // If true, the test_shell will output the MIME type for each resource that 
+    // If true, the test_shell will output the MIME type for each resource that
     // was loaded.
     bool m_dumpResourceResponseMIMETypes;
 
diff --git a/Tools/DumpRenderTree/chromium/TestRunner/src/WebTestInterfaces.cpp b/Tools/DumpRenderTree/chromium/TestRunner/src/WebTestInterfaces.cpp
index 5f34563..18cea20 100644
--- a/Tools/DumpRenderTree/chromium/TestRunner/src/WebTestInterfaces.cpp
+++ b/Tools/DumpRenderTree/chromium/TestRunner/src/WebTestInterfaces.cpp
@@ -31,6 +31,7 @@
 #include "public/testing/WebTestInterfaces.h"
 
 #include "MockWebAudioDevice.h"
+#include "MockWebCrypto.h"
 #include "MockWebMIDIAccessor.h"
 #include "MockWebMediaStreamCenter.h"
 #include "MockWebRTCPeerConnectionHandler.h"
@@ -115,4 +116,9 @@
     return new MockWebAudioDevice(sampleRate);
 }
 
+WebCrypto* WebTestInterfaces::crypto()
+{
+    return MockWebCrypto::get();
+}
+
 }
diff --git a/Tools/Scripts/print-json-test-results b/Tools/Scripts/print-json-test-results
index b0f2c4c..678ba71 100755
--- a/Tools/Scripts/print-json-test-results
+++ b/Tools/Scripts/print-json-test-results
@@ -4,6 +4,9 @@
 import os
 import sys
 
+from webkitpy.common.host import Host
+from webkitpy.layout_tests.port import platform_options, configuration_options
+
 
 def main(argv):
     parser = optparse.OptionParser(usage='%prog [path-to-results.json]')
@@ -17,17 +20,22 @@
                       help='show passing tests')
     parser.add_option('--ignored-failures-path', action='store',
                       help='ignore failures seen in a previous run')
+    parser.add_options(platform_options())
+    parser.add_options(configuration_options())
     options, args = parser.parse_args(argv)
 
-    if args and args[0] != '-':
-        if os.path.exists(args[0]):
+    host = Host()
+    if args:
+        if args[0] == '-':
+            txt = sys.stdin.read()
+        elif os.path.exists(args[0]):
             with open(args[0], 'r') as fp:
                 txt = fp.read()
         else:
             print >> sys.stderr, "file not found: %s" % args[0]
             sys.exit(1)
     else:
-        txt = sys.stdin.read()
+        txt = host.filesystem.read_text_file(host.filesystem.join(host.port_factory.get(options=options).results_directory(), 'full_results.json'))
 
     if txt.startswith('ADD_RESULTS(') and txt.endswith(');'):
         txt = txt[12:-2]  # ignore optional JSONP wrapper
diff --git a/Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py b/Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py
index 72c0e26..6b1fb41 100644
--- a/Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py
+++ b/Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py
@@ -903,7 +903,7 @@
             test_needs_rebaselining: whether test was marked as REBASELINE"""
         if result in expected_results:
             return True
-        if result in (TEXT, IMAGE, IMAGE_PLUS_TEXT, AUDIO, MISSING) and (NEEDS_REBASELINE in expected_results or NEEDS_MANUAL_REBASELINE in expected_results):
+        if result in (PASS, TEXT, IMAGE, IMAGE_PLUS_TEXT, AUDIO, MISSING) and (NEEDS_REBASELINE in expected_results or NEEDS_MANUAL_REBASELINE in expected_results):
             return True
         if result in (TEXT, IMAGE_PLUS_TEXT, AUDIO) and (FAIL in expected_results):
             return True
diff --git a/Tools/Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py b/Tools/Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py
index 8fb11ab..0a72d21 100644
--- a/Tools/Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py
+++ b/Tools/Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py
@@ -121,6 +121,7 @@
         self.assertEqual(TestExpectations.result_was_expected(MISSING, set([PASS]), test_needs_rebaselining=True), True)
         self.assertEqual(TestExpectations.result_was_expected(MISSING, set([PASS]), test_needs_rebaselining=False), False)
 
+        self.assertTrue(TestExpectations.result_was_expected(PASS, set([NEEDS_REBASELINE]), test_needs_rebaselining=False))
         self.assertTrue(TestExpectations.result_was_expected(MISSING, set([NEEDS_REBASELINE]), test_needs_rebaselining=False))
         self.assertTrue(TestExpectations.result_was_expected(TEXT, set([NEEDS_REBASELINE]), test_needs_rebaselining=False))
         self.assertTrue(TestExpectations.result_was_expected(IMAGE, set([NEEDS_REBASELINE]), test_needs_rebaselining=False))
diff --git a/public/platform/WebAudioBus.h b/public/platform/WebAudioBus.h
index 608deca..7c42fc5 100644
--- a/public/platform/WebAudioBus.h
+++ b/public/platform/WebAudioBus.h
@@ -45,7 +45,7 @@
 public:
     WebAudioBus() : m_private(0) { }
     ~WebAudioBus() { reset(); }
-    
+
     // initialize() allocates memory of the given length for the given number of channels.
     WEBKIT_EXPORT void initialize(unsigned numberOfChannels, size_t length, double sampleRate);
 
@@ -55,11 +55,11 @@
 
     // reset() releases the memory allocated from initialize().
     WEBKIT_EXPORT void reset();
-    
+
     WEBKIT_EXPORT unsigned numberOfChannels() const;
     WEBKIT_EXPORT size_t length() const;
     WEBKIT_EXPORT double sampleRate() const;
-    
+
     WEBKIT_EXPORT float* channelData(unsigned channelIndex);
 
 #if WEBKIT_IMPLEMENTATION
diff --git a/public/platform/WebAudioDevice.h b/public/platform/WebAudioDevice.h
index ebdf804..8021979 100644
--- a/public/platform/WebAudioDevice.h
+++ b/public/platform/WebAudioDevice.h
@@ -44,7 +44,7 @@
     protected:
         virtual ~RenderCallback() { }
     };
-  
+
     virtual ~WebAudioDevice() { }
 
     virtual void start() = 0;
diff --git a/public/platform/WebCrypto.h b/public/platform/WebCrypto.h
index 4b091d1..f11bcbd 100644
--- a/public/platform/WebCrypto.h
+++ b/public/platform/WebCrypto.h
@@ -32,12 +32,14 @@
 #define WebCrypto_h
 
 #include "WebCommon.h"
+#include "WebCryptoKey.h"
+#include "WebPrivatePtr.h"
 
 namespace WebKit {
 
 class WebArrayBuffer;
-class WebCryptoAlgorithm;
-class WebCryptoKey;
+class WebCryptoKeyOperation;
+class WebCryptoKeyOperationResult;
 class WebCryptoOperation;
 class WebCryptoOperationResult;
 
@@ -49,17 +51,17 @@
     // The following methods begin an asynchronous multi-part cryptographic
     // operation.
     //
-    // Let the WebCryptoOperationResult* be called "result".
+    // Let the WebCryptoOperationResult& be called "result".
     //
-    // Implementations can either:
+    // Before returning, implementations can either:
     //
     // * Synchronously fail initialization by calling:
-    //   result->initializationFailed(errorDetails)
+    //   result.initializationFailed(errorDetails)
     //
     // OR
     //
     // * Create a new WebCryptoOperation* and return it by calling:
-    //   result->initializationSucceeded(cryptoOperation)
+    //   result.initializationSucceeded(cryptoOperation)
     //
     // If initialization succeeds, then Blink will subsequently call
     // methods on cryptoOperation:
@@ -68,10 +70,11 @@
     //   - cryptoOperation->finish() to indicate there is no more data
     //   - cryptoOperation->abort() to cancel.
     //
-    // The embedder may call result->completeWithXXX() at any time while the
-    // cryptoOperation is "in progress". Typically completion is set once
-    // cryptoOperation->finish() is called, however it can also be called
-    // during cryptoOperation->process() (for instance to set an error).
+    // The embedder may call result.completeWithXXX() at any time while the
+    // cryptoOperation is "in progress" (can copy the initial "result" object).
+    // Typically completion is set once cryptoOperation->finish() is called,
+    // however it can also be called during cryptoOperation->process() (for
+    // instance to set an error).
     //
     // The cryptoOperation pointer MUST remain valid while it is "in progress".
     // The cryptoOperation is said to be "in progress" from the time after
@@ -79,12 +82,43 @@
     //
     //   - Blink calls cryptoOperation->abort()
     //   OR
-    //   - Embedder calls result->completeWithXXX()
+    //   - Embedder calls result.completeWithXXX()
     //
-    // Once the cryptoOperation is no longer "in progress" the "result" pointer
-    // is no longer valid. At this time the embedder is responsible for freeing
-    // the cryptoOperation.
-    virtual void digest(const WebCryptoAlgorithm&, WebCryptoOperationResult*) { }
+    // Once the cryptoOperation is no longer "in progress" the embedder is
+    // responsible for freeing the cryptoOperation.
+    virtual void digest(const WebCryptoAlgorithm&, WebCryptoOperationResult&) { }
+
+    // The following methods begin an asynchronous single-part key operation.
+    //
+    // Let the WebCryptoKeyOperationResult& be called "result".
+    //
+    // Before returning, implementations can either:
+    //
+    // (a) Synchronously fail initialization by calling:
+    //     result.initializationFailed(errorDetails)
+    //     (this results in throwing a Javascript exception)
+    //
+    // (b) Synchronously complete the request (success or error) by calling:
+    //     result.completeWithXXX()
+    //
+    // (c) Defer completion by calling
+    //     result.initializationSucceeded(keyOperation)
+    //
+    // If asynchronous completion (c) was chosen, then the embedder can notify
+    // completion after returning by calling result.completeWithXXX() (can make
+    // a copy of "result").
+    //
+    // The keyOperation pointer MUST remain valid while it is "in progress".
+    // The keyOperation is said to be "in progress" from the time after
+    // result->initializationSucceded() has been called, up until either:
+    //
+    //   - Blink calls keyOperation->abort()
+    //   OR
+    //   - Embedder calls result.completeWithXXX()
+    //
+    // Once the keyOperation is no longer "in progress" the embedder is
+    // responsible for freeing the cryptoOperation.
+    virtual void importKey(WebCryptoKeyFormat, const unsigned char* keyData, size_t keyDataSize, const WebCryptoAlgorithm&, bool extractable, WebCryptoKeyUsageMask, WebCryptoKeyOperationResult&) { }
 
 protected:
     virtual ~WebCrypto() { }
@@ -109,19 +143,110 @@
     virtual ~WebCryptoOperation() { }
 };
 
-// FIXME: Add error types.
-class WebCryptoOperationResult {
+// Can be implemented by embedder for unit-testing.
+class WebCryptoOperationResultPrivate {
 public:
-    // Only one of these should be called.
-    virtual void initializationFailed() = 0;
-    virtual void initializationSucceded(WebCryptoOperation*) = 0;
+    virtual ~WebCryptoOperationResultPrivate() { }
 
-    // Only one of these should be called to set the result.
+    virtual void initializationFailed() = 0;
+    virtual void initializationSucceeded(WebCryptoOperation*) = 0;
     virtual void completeWithError() = 0;
     virtual void completeWithArrayBuffer(const WebArrayBuffer&) = 0;
 
+    virtual void ref() = 0;
+    virtual void deref() = 0;
+};
+
+// FIXME: Add error types.
+class WebCryptoOperationResult {
+public:
+    explicit WebCryptoOperationResult(WebCryptoOperationResultPrivate* impl)
+    {
+        assign(impl);
+    }
+
+    ~WebCryptoOperationResult() { reset(); }
+
+    WebCryptoOperationResult(const WebCryptoOperationResult& o)
+    {
+        assign(o);
+    }
+
+    WebCryptoOperationResult& operator=(const WebCryptoOperationResult& o)
+    {
+        assign(o);
+        return *this;
+    }
+
+    WEBKIT_EXPORT void initializationFailed();
+    WEBKIT_EXPORT void initializationSucceeded(WebCryptoOperation*);
+    WEBKIT_EXPORT void completeWithError();
+    WEBKIT_EXPORT void completeWithArrayBuffer(const WebArrayBuffer&);
+
+private:
+    WEBKIT_EXPORT void reset();
+    WEBKIT_EXPORT void assign(const WebCryptoOperationResult&);
+    WEBKIT_EXPORT void assign(WebCryptoOperationResultPrivate*);
+
+    WebPrivatePtr<WebCryptoOperationResultPrivate> m_impl;
+};
+
+class WebCryptoKeyOperation {
+public:
+    // Cancels the in-progress operation.
+    //   * Implementations should delete |this| after aborting.
+    virtual void abort() = 0;
+
 protected:
-    virtual ~WebCryptoOperationResult() { }
+    virtual ~WebCryptoKeyOperation() { }
+};
+
+// Can be implemented by embedder for unit-testing.
+class WebCryptoKeyOperationResultPrivate {
+public:
+    virtual ~WebCryptoKeyOperationResultPrivate() { }
+
+    virtual void initializationFailed() = 0;
+    virtual void initializationSucceeded(WebCryptoKeyOperation*) = 0;
+    virtual void completeWithError() = 0;
+    virtual void completeWithKey(const WebCryptoKey&) = 0;
+
+    virtual void ref() = 0;
+    virtual void deref() = 0;
+};
+
+class WebCryptoKeyOperationResult {
+public:
+    explicit WebCryptoKeyOperationResult(WebCryptoKeyOperationResultPrivate* impl)
+    {
+        assign(impl);
+    }
+
+    ~WebCryptoKeyOperationResult() { reset(); }
+
+    WebCryptoKeyOperationResult(const WebCryptoKeyOperationResult& o)
+    {
+        assign(o);
+    }
+
+    WebCryptoKeyOperationResult& operator=(const WebCryptoKeyOperationResult& o)
+    {
+        assign(o);
+        return *this;
+    }
+
+    WEBKIT_EXPORT void initializationFailed();
+    WEBKIT_EXPORT void initializationSucceeded(WebCryptoKeyOperation*);
+
+    WEBKIT_EXPORT void completeWithError();
+    WEBKIT_EXPORT void completeWithKey(const WebCryptoKey&);
+
+private:
+    WEBKIT_EXPORT void reset();
+    WEBKIT_EXPORT void assign(const WebCryptoKeyOperationResult&);
+    WEBKIT_EXPORT void assign(WebCryptoKeyOperationResultPrivate*);
+
+    WebPrivatePtr<WebCryptoKeyOperationResultPrivate> m_impl;
 };
 
 } // namespace WebKit
diff --git a/public/platform/WebCryptoAlgorithm.h b/public/platform/WebCryptoAlgorithm.h
index 73f32b8..b122732 100644
--- a/public/platform/WebCryptoAlgorithm.h
+++ b/public/platform/WebCryptoAlgorithm.h
@@ -42,6 +42,7 @@
 
 enum WebCryptoAlgorithmId {
     WebCryptoAlgorithmIdAesCbc,
+    WebCryptoAlgorithmIdHmac,
     WebCryptoAlgorithmIdSha1,
     WebCryptoAlgorithmIdSha224,
     WebCryptoAlgorithmIdSha256,
@@ -56,10 +57,12 @@
     WebCryptoAlgorithmParamsTypeNone,
     WebCryptoAlgorithmParamsTypeAesCbcParams,
     WebCryptoAlgorithmParamsTypeAesKeyGenParams,
+    WebCryptoAlgorithmParamsTypeHmacParams,
 };
 
 class WebCryptoAesCbcParams;
 class WebCryptoAesKeyGenParams;
+class WebCryptoHmacParams;
 
 class WebCryptoAlgorithmParams;
 class WebCryptoAlgorithmPrivate;
@@ -93,6 +96,7 @@
     // type of parameters. Retrieving an invalid parameter will return 0.
     WEBKIT_EXPORT WebCryptoAesCbcParams* aesCbcParams() const;
     WEBKIT_EXPORT WebCryptoAesKeyGenParams* aesKeyGenParams() const;
+    WEBKIT_EXPORT WebCryptoHmacParams* hmacParams() const;
 
 private:
     WEBKIT_EXPORT void assign(const WebCryptoAlgorithm& other);
diff --git a/public/platform/WebCryptoAlgorithmParams.h b/public/platform/WebCryptoAlgorithmParams.h
index eea3ab7..37056bb 100644
--- a/public/platform/WebCryptoAlgorithmParams.h
+++ b/public/platform/WebCryptoAlgorithmParams.h
@@ -87,6 +87,20 @@
     const unsigned short m_length;
 };
 
+class WebCryptoHmacParams : public WebCryptoAlgorithmParams {
+public:
+    WebCryptoHmacParams(const WebCryptoAlgorithm& hash)
+        : WebCryptoAlgorithmParams(WebCryptoAlgorithmParamsTypeHmacParams)
+        , m_hash(hash)
+    {
+    }
+
+    const WebCryptoAlgorithm& hash() const { return m_hash; }
+
+private:
+    WebCryptoAlgorithm m_hash;
+};
+
 } // namespace WebKit
 
 #endif
diff --git a/public/platform/WebCryptoKey.h b/public/platform/WebCryptoKey.h
index 94f437c..7441b2c 100644
--- a/public/platform/WebCryptoKey.h
+++ b/public/platform/WebCryptoKey.h
@@ -58,6 +58,13 @@
 // A bitfield of WebCryptoKeyUsage
 typedef int WebCryptoKeyUsageMask;
 
+enum WebCryptoKeyFormat {
+    WebCryptoKeyFormatRaw,
+    WebCryptoKeyFormatPkcs8,
+    WebCryptoKeyFormatSpki,
+    WebCryptoKeyFormatJwk,
+};
+
 class WebCryptoAlgorithm;
 class WebCryptoKeyPrivate;
 class WebCryptoKeyHandle;
diff --git a/public/platform/WebGraphicsMemoryStats.h b/public/platform/WebGraphicsMemoryStats.h
index c932f39..b66a464 100644
--- a/public/platform/WebGraphicsMemoryStats.h
+++ b/public/platform/WebGraphicsMemoryStats.h
@@ -45,7 +45,7 @@
     // of the buffer is known by the GPU process).
     bool backbufferRequested;
 
-    WebGraphicsManagedMemoryStats() 
+    WebGraphicsManagedMemoryStats()
         : bytesVisible(0)
         , bytesVisibleAndNearby(0)
         , bytesAllocated(0)
diff --git a/public/platform/WebHTTPLoadInfo.h b/public/platform/WebHTTPLoadInfo.h
index 09bf169..8966e3c 100644
--- a/public/platform/WebHTTPLoadInfo.h
+++ b/public/platform/WebHTTPLoadInfo.h
@@ -47,7 +47,7 @@
     ~WebHTTPLoadInfo() { reset(); }
     WebHTTPLoadInfo(const WebHTTPLoadInfo& r) { assign(r); }
     WebHTTPLoadInfo& operator =(const WebHTTPLoadInfo& r)
-    { 
+    {
         assign(r);
         return *this;
     }
diff --git a/public/platform/WebLayer.h b/public/platform/WebLayer.h
index a21ffed..8c6a92d 100644
--- a/public/platform/WebLayer.h
+++ b/public/platform/WebLayer.h
@@ -122,7 +122,7 @@
     // WebFilterOperations object.
     virtual void setFilters(const WebFilterOperations&) = 0;
 
-    // Set the root of the image filter graph for this layer. The 
+    // Set the root of the image filter graph for this layer. The
     // implementation should grab a ref on the passed-in filter in order
     // to retain ownership. The passed-in graph will be unref'ed by the
     // caller after this call.
diff --git a/public/platform/WebMediaStream.h b/public/platform/WebMediaStream.h
index e52c14c..e9923dd 100644
--- a/public/platform/WebMediaStream.h
+++ b/public/platform/WebMediaStream.h
@@ -59,18 +59,12 @@
 
     WEBKIT_EXPORT void assign(const WebMediaStream&);
 
-    // DEPRECATED
-    WEBKIT_EXPORT void initialize(const WebString& label, const WebVector<WebMediaStreamSource>& audioSources, const WebVector<WebMediaStreamSource>& videoSources);
-
     WEBKIT_EXPORT void initialize(const WebVector<WebMediaStreamTrack>& audioTracks, const WebVector<WebMediaStreamTrack>& videoTracks);
     WEBKIT_EXPORT void initialize(const WebString& label, const WebVector<WebMediaStreamTrack>& audioTracks, const WebVector<WebMediaStreamTrack>& videoTracks);
 
     WEBKIT_EXPORT void reset();
     bool isNull() const { return m_private.isNull(); }
 
-    // DEPRECATED
-    WEBKIT_EXPORT WebString label() const;
-
     WEBKIT_EXPORT WebString id() const;
 
     WEBKIT_EXPORT void audioTracks(WebVector<WebMediaStreamTrack>&) const;
@@ -79,10 +73,6 @@
     WEBKIT_EXPORT void addTrack(const WebMediaStreamTrack&);
     WEBKIT_EXPORT void removeTrack(const WebMediaStreamTrack&);
 
-    // DEPRECATED
-    void audioSources(WebVector<WebMediaStreamTrack>& tracks) const { audioTracks(tracks); }
-    void videoSources(WebVector<WebMediaStreamTrack>& tracks) const { videoTracks(tracks); }
-
     // Extra data associated with this WebMediaStream.
     // If non-null, the extra data pointer will be deleted when the object is destroyed.
     // Setting the extra data pointer will cause any existing non-null
diff --git a/public/platform/WebRTCStatsRequest.h b/public/platform/WebRTCStatsRequest.h
index 0980502..8f9ad30 100644
--- a/public/platform/WebRTCStatsRequest.h
+++ b/public/platform/WebRTCStatsRequest.h
@@ -61,7 +61,7 @@
 //   size_t elementIndex = response.addElement(reportIndex, true, dateNow());
 //   For each statistic being reported on:
 //     response.addStatistic(reportIndex, true, elementIndex,
-//                           "name of statistic", "statistic value"); 
+//                           "name of statistic", "statistic value");
 //   Remote information (typically RTCP-derived) is added in the same way.
 // When finished adding information:
 // request.requestSucceeded(response);
diff --git a/public/platform/WebString.h b/public/platform/WebString.h
index 7d607d7..5ebd74f 100644
--- a/public/platform/WebString.h
+++ b/public/platform/WebString.h
@@ -33,6 +33,7 @@
 
 #include "WebCommon.h"
 #include "WebPrivatePtr.h"
+#include <string>
 
 #if INSIDE_WEBKIT
 #include <wtf/Forward.h>
@@ -88,11 +89,16 @@
     bool isEmpty() const { return !length(); }
     bool isNull() const { return m_private.isNull(); }
 
-    BLINK_COMMON_EXPORT WebCString utf8() const;
+    BLINK_COMMON_EXPORT std::string utf8() const;
 
     BLINK_COMMON_EXPORT static WebString fromUTF8(const char* data, size_t length);
     BLINK_COMMON_EXPORT static WebString fromUTF8(const char* data);
 
+    static WebString fromUTF8(const std::string& s)
+    {
+        return fromUTF8(s.data(), s.length());
+    }
+
     template <int N> WebString(const char (&data)[N])
     {
         assign(fromUTF8(data, N - 1));
@@ -113,7 +119,6 @@
     BLINK_COMMON_EXPORT WebString& operator=(const WTF::AtomicString&);
     BLINK_COMMON_EXPORT operator WTF::AtomicString() const;
 #else
-
     WebString(const base::string16& s)
     {
         assign(s.data(), s.length());
@@ -151,12 +156,6 @@
     {
         return base::NullableString16(operator base::string16(), m_private.isNull());
     }
-
-    template <class UTF8String>
-    static WebString fromUTF8(const UTF8String& s)
-    {
-        return fromUTF8(s.data(), s.length());
-    }
 #endif
 
 private:
diff --git a/public/platform/WebURL.h b/public/platform/WebURL.h
index 5f47dc3..2721e59 100644
--- a/public/platform/WebURL.h
+++ b/public/platform/WebURL.h
@@ -138,11 +138,6 @@
     bool m_isValid;
 };
 
-inline bool operator<(const WebURL& a, const WebURL& b)
-{
-    return a.spec() < b.spec();
-}
-
 inline bool operator==(const WebURL& a, const WebURL& b)
 {
     return !a.spec().compare(b.spec());
diff --git a/public/platform/WebVector.h b/public/platform/WebVector.h
index f704fd2..b190043 100644
--- a/public/platform/WebVector.h
+++ b/public/platform/WebVector.h
@@ -131,7 +131,7 @@
         WEBKIT_ASSERT(i < m_size);
         return m_ptr[i];
     }
-    
+
     bool contains(const T& value) const
     {
         for (size_t i = 0; i < m_size; i++) {
diff --git a/public/testing/WebFrameTestProxy.h b/public/testing/WebFrameTestProxy.h
index e18d63d..78eda03 100644
--- a/public/testing/WebFrameTestProxy.h
+++ b/public/testing/WebFrameTestProxy.h
@@ -66,14 +66,6 @@
     }
 
     // WebFrameClient implementation.
-    virtual void willPerformClientRedirect(WebKit::WebFrame* frame, const WebKit::WebURL& from, const WebKit::WebURL& to, double interval, double fireTime)
-    {
-        Base::willPerformClientRedirect(frame, from, to, interval, fireTime);
-    }
-    virtual void didCancelClientRedirect(WebKit::WebFrame* frame)
-    {
-        Base::didCancelClientRedirect(frame);
-    }
     virtual void didStartProvisionalLoad(WebKit::WebFrame* frame)
     {
         Base::didStartProvisionalLoad(frame);
diff --git a/public/testing/WebTestInterfaces.h b/public/testing/WebTestInterfaces.h
index 8949a75..78227d8 100644
--- a/public/testing/WebTestInterfaces.h
+++ b/public/testing/WebTestInterfaces.h
@@ -36,6 +36,7 @@
 
 namespace WebKit {
 class WebAudioDevice;
+class WebCrypto;
 class WebFrame;
 class WebMediaStreamCenter;
 class WebMediaStreamCenterClient;
@@ -77,6 +78,8 @@
 
     WebKit::WebAudioDevice* createAudioDevice(double sampleRate);
 
+    WebKit::WebCrypto* crypto();
+
 #if WEBTESTRUNNER_IMPLEMENTATION
     TestInterfaces* testInterfaces();
 #endif
diff --git a/public/web/WebAccessibilityRole.h b/public/web/WebAccessibilityRole.h
index 196ef22..c2c0598 100644
--- a/public/web/WebAccessibilityRole.h
+++ b/public/web/WebAccessibilityRole.h
@@ -45,12 +45,12 @@
     WebAccessibilityRoleApplicationLog,
     WebAccessibilityRoleApplicationMarquee,
     WebAccessibilityRoleApplicationStatus,
-    WebAccessibilityRoleApplicationTimer, 
+    WebAccessibilityRoleApplicationTimer,
     WebAccessibilityRoleBrowser,
     WebAccessibilityRoleBusyIndicator,
     WebAccessibilityRoleButton,
     WebAccessibilityRoleCanvas,
-    WebAccessibilityRoleCell, 
+    WebAccessibilityRoleCell,
     WebAccessibilityRoleCheckBox,
     WebAccessibilityRoleColorWell,
     WebAccessibilityRoleColumn,
diff --git a/public/web/WebAudioSourceProvider.h b/public/web/WebAudioSourceProvider.h
index c23d3c1..122cfa5 100644
--- a/public/web/WebAudioSourceProvider.h
+++ b/public/web/WebAudioSourceProvider.h
@@ -28,7 +28,7 @@
 #include "../platform/WebVector.h"
 
 namespace WebKit {
-    
+
 class WebAudioSourceProviderClient;
 
 // Abstract interface for a pull-model client.
diff --git a/public/web/WebFileWriter.h b/public/web/WebFileWriter.h
index e2a534b..fa5b0ff 100644
--- a/public/web/WebFileWriter.h
+++ b/public/web/WebFileWriter.h
@@ -51,7 +51,7 @@
     // Do not call cancel when there is no write or truncate in progress.
     virtual void cancel() = 0;
 };
-    
+
 } // namespace WebKit
 
 #endif
diff --git a/public/web/WebFontDescription.h b/public/web/WebFontDescription.h
index 145fd59..4ef5b7f 100644
--- a/public/web/WebFontDescription.h
+++ b/public/web/WebFontDescription.h
@@ -57,7 +57,7 @@
         SmoothingSubpixel
     };
 
-    enum Weight { 
+    enum Weight {
         Weight100,
         Weight200,
         Weight300,
diff --git a/public/web/WebImageDecoder.h b/public/web/WebImageDecoder.h
index da8f46b..309220e 100644
--- a/public/web/WebImageDecoder.h
+++ b/public/web/WebImageDecoder.h
@@ -62,7 +62,7 @@
 
     // Returns true if image decoding failed.
     WEBKIT_EXPORT bool isFailed() const;
-    
+
     // Returns true if size information is available for the decoder.
     WEBKIT_EXPORT bool isSizeAvailable() const;
 
diff --git a/public/web/WebMenuItemInfo.h b/public/web/WebMenuItemInfo.h
index eef2528..f15caac 100644
--- a/public/web/WebMenuItemInfo.h
+++ b/public/web/WebMenuItemInfo.h
@@ -47,7 +47,7 @@
         SubMenu
     };
 
-    WebMenuItemInfo() 
+    WebMenuItemInfo()
         : type(Option)
         , action(0)
         , textDirection(WebTextDirectionDefault)
diff --git a/public/web/WebSecurityOrigin.h b/public/web/WebSecurityOrigin.h
index b511c8b..41d0257 100644
--- a/public/web/WebSecurityOrigin.h
+++ b/public/web/WebSecurityOrigin.h
@@ -92,7 +92,7 @@
     // be used as a file.  Should be used in storage APIs only.
     WEBKIT_EXPORT WebString databaseIdentifier() const;
 
-    // Returns true if this WebSecurityOrigin can access usernames and 
+    // Returns true if this WebSecurityOrigin can access usernames and
     // passwords stored in password manager.
     WEBKIT_EXPORT bool canAccessPasswordManager() const;
 
diff --git a/public/web/WebView.h b/public/web/WebView.h
index 128aae1..8d5cc56 100644
--- a/public/web/WebView.h
+++ b/public/web/WebView.h
@@ -31,6 +31,7 @@
 #ifndef WebView_h
 #define WebView_h
 
+#include "../platform/WebColor.h"
 #include "../platform/WebString.h"
 #include "../platform/WebVector.h"
 #include "WebDragOperation.h"
@@ -64,6 +65,7 @@
 struct WebMediaPlayerAction;
 struct WebPluginAction;
 struct WebPoint;
+struct WebWindowFeatures;
 
 class WebView : public WebWidget {
 public:
@@ -128,6 +130,16 @@
     virtual bool isTransparent() const = 0;
     virtual void setIsTransparent(bool) = 0;
 
+    // Sets the base color used for this WebView's background. This is in effect
+    // the default background color used for pages with no background-color
+    // style in effect, or used as the alpha-blended basis for any pages with
+    // translucent background-color style. (For pages with opaque
+    // background-color style, this property is effectively ignored).
+    // Setting this takes effect for the currently loaded page, if any, and
+    // persists across subsequent navigations. Defaults to white prior to the
+    // first call to this method.
+    virtual void setBaseBackgroundColor(WebColor) = 0;
+
     // Controls whether pressing Tab key advances focus to links.
     virtual bool tabsToLinks() const = 0;
     virtual void setTabsToLinks(bool) = 0;
@@ -145,6 +157,11 @@
     // Allows disabling domain relaxation.
     virtual void setDomainRelaxationForbidden(bool, const WebString& scheme) = 0;
 
+    // Allows setting the state of the various bars exposed via BarProp
+    // properties on the window object. The size related fields of
+    // WebWindowFeatures are ignored.
+    virtual void setWindowFeatures(const WebWindowFeatures&) = 0;
+
 
     // Closing -------------------------------------------------------------
 
diff --git a/public/web/WebWindowFeatures.h b/public/web/WebWindowFeatures.h
index 7bd7ce5..db794a4 100644
--- a/public/web/WebWindowFeatures.h
+++ b/public/web/WebWindowFeatures.h
@@ -100,6 +100,30 @@
         , additionalFeatures(f.additionalFeatures)
     {
     }
+
+    operator WebCore::WindowFeatures() const
+    {
+        WebCore::WindowFeatures result;
+        result.x = x;
+        result.xSet = xSet;
+        result.y = y;
+        result.ySet = ySet;
+        result.width = width;
+        result.widthSet = widthSet;
+        result.height = height;
+        result.heightSet = heightSet;
+        result.menuBarVisible = menuBarVisible;
+        result.statusBarVisible = statusBarVisible;
+        result.toolBarVisible = toolBarVisible;
+        result.locationBarVisible = locationBarVisible;
+        result.scrollbarsVisible = scrollbarsVisible;
+        result.resizable = resizable;
+        result.fullscreen = fullscreen;
+        result.dialog = dialog;
+        for (size_t i = 0; i < additionalFeatures.size(); ++i)
+            result.additionalFeatures.append(additionalFeatures[i]);
+        return result;
+    }
 #endif
 };